Transform M into row reduced echelon form (rref)

Gauss-Jordan Elimination

Mark first row (*) as next result row
M = * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000001111101101111000010000000100000000000
      0000000000000000000000000001011010000010111100000001000000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000001110110101001111000000100000000000000
      0000000000000000000000000001000000011001010100001000000000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000001101101001100100010100000000000000000
Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M = * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000001111101101111000010000000100000000000
      0000000000000000000000000001011010000010111100000001000000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000001110110101001111000000100000000000000
      0000000000000000000000000001000000011001010100001000000000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000001101101001100100010100000000000000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001010101001111011010000000001000000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000001111101101111000010000000100000000000
      0000000000000000000000000001011010000010111100000001000000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000001110110101001111000000100000000000000
      0000000000000000000000000001000000011001010100001000000000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000001101101001100100010100000000000000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001010101001111011010000000001000000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000000101000100000011000000000101000000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000100011100110100010000100001000000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000111000000011111000100000001000000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001010101001111011010000000001000000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000000101000100000011000000000101000000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000100011100110100010000100001000000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000111000000011111000100000001000000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000100000001000000000000000000100000000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000101010111100000110000000010000000000
      0000000000000000000000000000101000100000011000000000101000000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000100011100110100010000100001000000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000111000000011111000100000001000000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000100000001000000000000000000100000000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000011000001011111000100000001100000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000100000001000000000000000000100000000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000011000001011111000100000001100000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001010101001111011010000000001000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000011011101010011110000010000000000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000010101010110001110001000001000000000
      0000000000000000000000000000011110000100111110010000000000000000
      0000000000000000000000000000011000001011111000100000001100000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001001110100101000100000010001000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000011011101010011110000010000000000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000001110111100010000001010001000000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001001110100101000100000010001000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000011011101010011110000010000000000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000001110111100010000001010001000000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001001110100101000100000010001000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000011011101010011110000010000000000000
      0000000000000000000000000000001000000100000000000000000010000000
    * 0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000001010110100000110000000010100000000
      0000000000000000000000000000001000101000011000000000101100000000
      0000000000000000000000000000001111001101100110000001001000000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000001110111100010000001010001000000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000110100001000100000010001010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
    * 0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000111001001100110000001001010000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000110111000010000001010001010000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000110100001000100000010001010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
    * 0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000111001001100110000001001010000000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000110111000010000001010001010000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000110100001000100000010001010000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000111001001100110000001001010000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000110111000010000001010001010000000
      0000000000000000000000000000000101101110100000010010000000000000
      0000000000000000000000000000000011100001100110100010001100000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000111001001100110000001001010000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000010100111000110010011001010000000
      0000000000000000000000000000000011100001100110100010001100000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000111001001100110000001001010000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000010100111000110010011001010000000
      0000000000000000000000000000000011100001100110100010001100000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010011101110011110000010000010000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000111001001100110000001001010000000
      0000000000000000000000000000000010000010000000000000000001000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000010110000000110000000010110000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000011101110100010000100001100000000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000010100111000110010011001010000000
      0000000000000000000000000000000011100001100110100010001100000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010001101100011110000010000011000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000101001011100110000001001011000000
      0000000000000000000000000000000010000010000000000000000001000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000001101100100010000100001101000000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000001100011100110100010001101000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010001101100011110000010000011000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000101001011100110000001001011000000
      0000000000000000000000000000000010000010000000000000000001000000
    * 0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000001101100100010000100001101000000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000001100011100110100010001101000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000001101000100010000011000000000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010001101100011110000010000011000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000101001011100110000001001011000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001101100100010000100001101000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000001110001110110001011000000000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000001100011100110100010001101000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100100111000100000101000110000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001101100100010000100001101000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000000001111000100100110000000000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100100111000100000101000110000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001101100100010000100001101000000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000000001111000100100110000000000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100100111000100000101000110000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001101100100010000100001101000000
      0000000000000000000000000000000000110010000110000000010111000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000100101000110010011001011000000
      0000000000000000000000000000000000001111000100100110000000000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100010101000010000101010001000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001011110100100000100011010000000
      0000000000000000000000000000000000110010000110000000010111000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000011110011110000000111001000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000010111000000010011011100000000
      0000000000000000000000000000000000001111000100100110000000000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100010101000010000101010001000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001011110100100000100011010000000
      0000000000000000000000000000000000110010000110000000010111000000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000011110011110000000111001000000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000010111000000010011011100000000
      0000000000000000000000000000000000001111000100100110000000000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100010101000010000101010001000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001011110100100000100011010000000
      0000000000000000000000000000000000110010000110000000010111000000
      0000000000000000000000000000000000011110011110000000111001000000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000011101010100001111001101000000
      0000000000000000000000000000000000010111000000010011011100000000
      0000000000000000000000000000000000001111000100100110000000000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100001011011100000101101000000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000011110011110000000111001000000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000001101011000000000101110100000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000001001011110010011100101000000
      0000000000000000000000000000000000001111000100100110000000000000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100001011011100000101101000000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000011110011110000000111001000000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000001101011000000000101110100000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000001001011110010011100101000000
      0000000000000000000000000000000000001111000100100110000000000000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000001000000000000000000100000000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100001011011100000101101000000000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000101100011000000000101110000000
      0000000000000000000000000000000000011110011110000000111001000000
      0000000000000000000000000000000000001000100000000000000000010000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000001101011000000000101110100000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000001001011110010011100101000000
      0000000000000000000000000000000000001111000100100110000000000000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100100111000000000101110010000
      0000000000000000000000000000000000010110111110000000111001010000
      0000000000000000000000000000000000001000100000000000000000010000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000111100100100110000000010000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100100111000000000101110010000
      0000000000000000000000000000000000010110111110000000111001010000
      0000000000000000000000000000000000001000100000000000000000010000
    * 0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000111100100100110000000010000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000100000000000111001101000000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000100000000000000000010000000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100100111000000000101110010000
      0000000000000000000000000000000000010110111110000000111001010000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000111100100100110000000010000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000010011100100110101110100000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000010011100100110101110100000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000011111100000101101000010000
      0000000000000000000000000000000010000010000000000000000001000000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010011000110000000010111100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000010010000000000000000001000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000011001010001111110100000000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000010011100100110101110100000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000001101100000101101000011000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010001010110000000010111101000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000010010000000000000000001000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000000001100100110101110101000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000001101100000101101000011000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010001010110000000010111101000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000010010000000000000000001000
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000000001100100110101110101000

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000001111000000111100011110000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000001111000000000101100110000
      0000000000000000000000000000000100000001101100000101101000011000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100001000000000000000000100000
      0000000000000000000000000000000000010001010110000000010111101000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000101111000000000101110110000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000001111110010011100101010000
      0000000000000000000000000000000000000000001100100110101110101000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000100010001000010111111000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000000100010001111011000111000
      0000000000000000000000000000000100000000110110001010011100010000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000100100010001111011010111000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000100100011100010001011000
      0000000000000000000000000000000000000000001100100110101110101000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000000100010001000010111111000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000000100010001111011000111000
      0000000000000000000000000000000100000000110110001010011100010000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000100100010001111011010111000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
    * 0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000100100011100010001011000
      0000000000000000000000000000000000000000001100100110101110101000

Increment next result row.
M =   0000000000000000000000000001000000000000100010001000010111111000
      0000000000000000000000000000100000000000100000000000000100010000
      0000000000000000000000000000010000000000111100000110001110000000
      0000000000000000000000000000001000000000100010001111011000111000
      0000000000000000000000000000000100000000110110001010011100010000
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000111010000100100011000000
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000100000000000000000010000
      0000000000000000000000000000000000000100100010001111011010111000
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000000101000000000000000000100
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000100100011100010001011000
      0000000000000000000000000000000000000000001100100110101110101000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000001010001000010111111100
      0000000000000000000000000000100000000000001000000000000100010100
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000001010001111011000111100
      0000000000000000000000000000000100000000011110001010011100010100
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000001000000000000000010100
      0000000000000000000000000000000000000100001010001111011010111100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000000101000000000000000000100
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000001100011100010001011100
      0000000000000000000000000000000000000000001100100110101110101000

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000000001010001000010111111100
      0000000000000000000000000000100000000000001000000000000100010100
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000001010001111011000111100
      0000000000000000000000000000000100000000011110001010011100010100
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000001000000000000000010100
      0000000000000000000000000000000000000100001010001111011010111100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000000101000000000000000000100
    * 0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000001100011100010001011100
      0000000000000000000000000000000000000000001100100110101110101000

Increment next result row.
M =   0000000000000000000000000001000000000000001010001000010111111100
      0000000000000000000000000000100000000000001000000000000100010100
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000001010001111011000111100
      0000000000000000000000000000000100000000011110001010011100010100
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000011010001111110100101000
      0000000000000000000000000000000000010000001100001111100011100000
      0000000000000000000000000000000000001000001000000000000000010100
      0000000000000000000000000000000000000100001010001111011010111100
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001011010001111110100001000
      0000000000000000000000000000000000000000101000000000000000000100
      0000000000000000000000000000000000000000001100000000000000000010
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000001100011100010001011100
      0000000000000000000000000000000000000000001100100110101110101000

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000100110101110101010

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
    * 0000000000000000000000000000000000000000000000000000000000000001
      0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000100110101110101010

Swap pivot row and next result row; Increment next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
    * 0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000000000000000000001

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
    * 0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000000000000000000001

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
    * 0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000000000000000000001

Increment next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
      0000000000000000000000000000000000000000000000011100010001011110
    * 0000000000000000000000000000000000000000000000000000000000000001

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
      0000000000000000000000000000000000000000000000011100010001011110
    * 0000000000000000000000000000000000000000000000000000000000000001

Highlight next pivot row and column
Find first row with leftmost bit set starting from next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
      0000000000000000000000000000000000000000000000011100010001011110
    * 0000000000000000000000000000000000000000000000000000000000000001

Increment next result row.
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
      0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000000000000000000001

Clear pivot column.
Add pivot row to all other rows with bit set in pivot column
M =   0000000000000000000000000001000000000000000110001000010111111110
      0000000000000000000000000000100000000000000100000000000100010110
      0000000000000000000000000000010000000000010100000110001110000100
      0000000000000000000000000000001000000000000110001111011000111110
      0000000000000000000000000000000100000000010010001010011100010110
      0000000000000000000000000000000010000000010000000000000001001000
      0000000000000000000000000000000001000000010010000100100011000100
      0000000000000000000000000000000000100000010110001111110100101010
      0000000000000000000000000000000000010000000000001111100011100010
      0000000000000000000000000000000000001000000100000000000000010110
      0000000000000000000000000000000000000100000110001111011010111110
      0000000000000000000000000000000000000010010000000000000000001000
      0000000000000000000000000000000000000001010110001111110100001010
      0000000000000000000000000000000000000000100100000000000000000110
      0000000000000000000000000000000000000000001100000000000000000010
      0000000000000000000000000000000000000000000000100110101110101010
      0000000000000000000000000000000000000000000000011100010001011110
      0000000000000000000000000000000000000000000000000000000000000001

Done.
M = 0000000000000000000000000001000000000000000110001000010111111110
    0000000000000000000000000000100000000000000100000000000100010110
    0000000000000000000000000000010000000000010100000110001110000100
    0000000000000000000000000000001000000000000110001111011000111110
    0000000000000000000000000000000100000000010010001010011100010110
    0000000000000000000000000000000010000000010000000000000001001000
    0000000000000000000000000000000001000000010010000100100011000100
    0000000000000000000000000000000000100000010110001111110100101010
    0000000000000000000000000000000000010000000000001111100011100010
    0000000000000000000000000000000000001000000100000000000000010110
    0000000000000000000000000000000000000100000110001111011010111110
    0000000000000000000000000000000000000010010000000000000000001000
    0000000000000000000000000000000000000001010110001111110100001010
    0000000000000000000000000000000000000000100100000000000000000110
    0000000000000000000000000000000000000000001100000000000000000010
    0000000000000000000000000000000000000000000000100110101110101010
    0000000000000000000000000000000000000000000000011100010001011110
    0000000000000000000000000000000000000000000000000000000000000001


See also: