Testing with TEST_LENGTH = 67 test _bit_byte, _bit_mask, and bitstr_size i _bit_byte(i) _bit_mask(i) bitstr_size(i) 0 0 1 0 1 0 2 1 2 0 4 1 3 0 8 1 4 0 16 1 5 0 32 1 6 0 64 1 7 0 128 1 8 1 1 1 9 1 2 2 10 1 4 2 11 1 8 2 12 1 16 2 13 1 32 2 14 1 64 2 15 1 128 2 16 2 1 2 17 2 2 3 18 2 4 3 19 2 8 3 20 2 16 3 21 2 32 3 22 2 64 3 23 2 128 3 24 3 1 3 25 3 2 4 26 3 4 4 27 3 8 4 28 3 16 4 29 3 32 4 30 3 64 4 31 3 128 4 32 4 1 4 33 4 2 5 34 4 4 5 35 4 8 5 36 4 16 5 37 4 32 5 38 4 64 5 39 4 128 5 40 5 1 5 41 5 2 6 42 5 4 6 43 5 8 6 44 5 16 6 45 5 32 6 46 5 64 6 47 5 128 6 48 6 1 6 49 6 2 7 50 6 4 7 51 6 8 7 52 6 16 7 53 6 32 7 54 6 64 7 55 6 128 7 56 7 1 7 57 7 2 8 58 7 4 8 59 7 8 8 60 7 16 8 61 7 32 8 62 7 64 8 63 7 128 8 64 8 1 8 65 8 2 9 66 8 4 9 test bit_alloc, clearbits, bit_ffc, bit_ffs be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 test bit_set be: 1 0 1001001001001001001001001001001001001001001001001001001001001001001 is: 1 0 1001001001001001001001001001001001001001001001001001001001001001001 test bit_clear be: 0 3 0001000001000001000001000001000001000001000001000001000001000001000 is: 0 3 0001000001000001000001000001000001000001000001000001000001000001000 test bit_test using previous bitstring i bit_test(i) 0 0 1 0 2 0 3 8 4 0 5 0 6 0 7 0 8 0 9 2 10 0 11 0 12 0 13 0 14 0 15 128 16 0 17 0 18 0 19 0 20 0 21 32 22 0 23 0 24 0 25 0 26 0 27 8 28 0 29 0 30 0 31 0 32 0 33 2 34 0 35 0 36 0 37 0 38 0 39 128 40 0 41 0 42 0 43 0 44 0 45 32 46 0 47 0 48 0 49 0 50 0 51 8 52 0 53 0 54 0 55 0 56 0 57 2 58 0 59 0 60 0 61 0 62 0 63 128 64 0 65 0 66 0 test clearbits be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 test bit_nset and bit_nclear be: 0 1 0111111111111111111111111111111111111111111111111111111111111111110 is: 0 1 0111111111111111111111111111111111111111111111111111111111111111110 be: 0 1 0100000000000000000000000000000000000000000000000000000000000000010 is: 0 1 0100000000000000000000000000000000000000000000000000000000000000010 be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 be: 66 0 1111111111111111111111111111111111111111111111111111111111111111110 is: 66 0 1111111111111111111111111111111111111111111111111111111111111111110 be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 first 1 bit should move right 1 position each line 0 -1 0 1111111111111111111111111111111111111111111111111111111111111111111 1 0 1 0111111111111111111111111111111111111111111111111111111111111111111 2 0 2 0011111111111111111111111111111111111111111111111111111111111111111 3 0 3 0001111111111111111111111111111111111111111111111111111111111111111 4 0 4 0000111111111111111111111111111111111111111111111111111111111111111 5 0 5 0000011111111111111111111111111111111111111111111111111111111111111 6 0 6 0000001111111111111111111111111111111111111111111111111111111111111 7 0 7 0000000111111111111111111111111111111111111111111111111111111111111 8 0 8 0000000011111111111111111111111111111111111111111111111111111111111 9 0 9 0000000001111111111111111111111111111111111111111111111111111111111 10 0 10 0000000000111111111111111111111111111111111111111111111111111111111 11 0 11 0000000000011111111111111111111111111111111111111111111111111111111 12 0 12 0000000000001111111111111111111111111111111111111111111111111111111 13 0 13 0000000000000111111111111111111111111111111111111111111111111111111 14 0 14 0000000000000011111111111111111111111111111111111111111111111111111 15 0 15 0000000000000001111111111111111111111111111111111111111111111111111 16 0 16 0000000000000000111111111111111111111111111111111111111111111111111 17 0 17 0000000000000000011111111111111111111111111111111111111111111111111 18 0 18 0000000000000000001111111111111111111111111111111111111111111111111 19 0 19 0000000000000000000111111111111111111111111111111111111111111111111 20 0 20 0000000000000000000011111111111111111111111111111111111111111111111 21 0 21 0000000000000000000001111111111111111111111111111111111111111111111 22 0 22 0000000000000000000000111111111111111111111111111111111111111111111 23 0 23 0000000000000000000000011111111111111111111111111111111111111111111 24 0 24 0000000000000000000000001111111111111111111111111111111111111111111 25 0 25 0000000000000000000000000111111111111111111111111111111111111111111 26 0 26 0000000000000000000000000011111111111111111111111111111111111111111 27 0 27 0000000000000000000000000001111111111111111111111111111111111111111 28 0 28 0000000000000000000000000000111111111111111111111111111111111111111 29 0 29 0000000000000000000000000000011111111111111111111111111111111111111 30 0 30 0000000000000000000000000000001111111111111111111111111111111111111 31 0 31 0000000000000000000000000000000111111111111111111111111111111111111 32 0 32 0000000000000000000000000000000011111111111111111111111111111111111 33 0 33 0000000000000000000000000000000001111111111111111111111111111111111 34 0 34 0000000000000000000000000000000000111111111111111111111111111111111 35 0 35 0000000000000000000000000000000000011111111111111111111111111111111 36 0 36 0000000000000000000000000000000000001111111111111111111111111111111 37 0 37 0000000000000000000000000000000000000111111111111111111111111111111 38 0 38 0000000000000000000000000000000000000011111111111111111111111111111 39 0 39 0000000000000000000000000000000000000001111111111111111111111111111 40 0 40 0000000000000000000000000000000000000000111111111111111111111111111 41 0 41 0000000000000000000000000000000000000000011111111111111111111111111 42 0 42 0000000000000000000000000000000000000000001111111111111111111111111 43 0 43 0000000000000000000000000000000000000000000111111111111111111111111 44 0 44 0000000000000000000000000000000000000000000011111111111111111111111 45 0 45 0000000000000000000000000000000000000000000001111111111111111111111 46 0 46 0000000000000000000000000000000000000000000000111111111111111111111 47 0 47 0000000000000000000000000000000000000000000000011111111111111111111 48 0 48 0000000000000000000000000000000000000000000000001111111111111111111 49 0 49 0000000000000000000000000000000000000000000000000111111111111111111 50 0 50 0000000000000000000000000000000000000000000000000011111111111111111 51 0 51 0000000000000000000000000000000000000000000000000001111111111111111 52 0 52 0000000000000000000000000000000000000000000000000000111111111111111 53 0 53 0000000000000000000000000000000000000000000000000000011111111111111 54 0 54 0000000000000000000000000000000000000000000000000000001111111111111 55 0 55 0000000000000000000000000000000000000000000000000000000111111111111 56 0 56 0000000000000000000000000000000000000000000000000000000011111111111 57 0 57 0000000000000000000000000000000000000000000000000000000001111111111 58 0 58 0000000000000000000000000000000000000000000000000000000000111111111 59 0 59 0000000000000000000000000000000000000000000000000000000000011111111 60 0 60 0000000000000000000000000000000000000000000000000000000000001111111 61 0 61 0000000000000000000000000000000000000000000000000000000000000111111 62 0 62 0000000000000000000000000000000000000000000000000000000000000011111 63 0 63 0000000000000000000000000000000000000000000000000000000000000001111 64 0 64 0000000000000000000000000000000000000000000000000000000000000000111 65 0 65 0000000000000000000000000000000000000000000000000000000000000000011 66 0 66 0000000000000000000000000000000000000000000000000000000000000000001 first 0 bit should move right 1 position each line 0 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 1 1 0 1000000000000000000000000000000000000000000000000000000000000000000 2 2 0 1100000000000000000000000000000000000000000000000000000000000000000 3 3 0 1110000000000000000000000000000000000000000000000000000000000000000 4 4 0 1111000000000000000000000000000000000000000000000000000000000000000 5 5 0 1111100000000000000000000000000000000000000000000000000000000000000 6 6 0 1111110000000000000000000000000000000000000000000000000000000000000 7 7 0 1111111000000000000000000000000000000000000000000000000000000000000 8 8 0 1111111100000000000000000000000000000000000000000000000000000000000 9 9 0 1111111110000000000000000000000000000000000000000000000000000000000 10 10 0 1111111111000000000000000000000000000000000000000000000000000000000 11 11 0 1111111111100000000000000000000000000000000000000000000000000000000 12 12 0 1111111111110000000000000000000000000000000000000000000000000000000 13 13 0 1111111111111000000000000000000000000000000000000000000000000000000 14 14 0 1111111111111100000000000000000000000000000000000000000000000000000 15 15 0 1111111111111110000000000000000000000000000000000000000000000000000 16 16 0 1111111111111111000000000000000000000000000000000000000000000000000 17 17 0 1111111111111111100000000000000000000000000000000000000000000000000 18 18 0 1111111111111111110000000000000000000000000000000000000000000000000 19 19 0 1111111111111111111000000000000000000000000000000000000000000000000 20 20 0 1111111111111111111100000000000000000000000000000000000000000000000 21 21 0 1111111111111111111110000000000000000000000000000000000000000000000 22 22 0 1111111111111111111111000000000000000000000000000000000000000000000 23 23 0 1111111111111111111111100000000000000000000000000000000000000000000 24 24 0 1111111111111111111111110000000000000000000000000000000000000000000 25 25 0 1111111111111111111111111000000000000000000000000000000000000000000 26 26 0 1111111111111111111111111100000000000000000000000000000000000000000 27 27 0 1111111111111111111111111110000000000000000000000000000000000000000 28 28 0 1111111111111111111111111111000000000000000000000000000000000000000 29 29 0 1111111111111111111111111111100000000000000000000000000000000000000 30 30 0 1111111111111111111111111111110000000000000000000000000000000000000 31 31 0 1111111111111111111111111111111000000000000000000000000000000000000 32 32 0 1111111111111111111111111111111100000000000000000000000000000000000 33 33 0 1111111111111111111111111111111110000000000000000000000000000000000 34 34 0 1111111111111111111111111111111111000000000000000000000000000000000 35 35 0 1111111111111111111111111111111111100000000000000000000000000000000 36 36 0 1111111111111111111111111111111111110000000000000000000000000000000 37 37 0 1111111111111111111111111111111111111000000000000000000000000000000 38 38 0 1111111111111111111111111111111111111100000000000000000000000000000 39 39 0 1111111111111111111111111111111111111110000000000000000000000000000 40 40 0 1111111111111111111111111111111111111111000000000000000000000000000 41 41 0 1111111111111111111111111111111111111111100000000000000000000000000 42 42 0 1111111111111111111111111111111111111111110000000000000000000000000 43 43 0 1111111111111111111111111111111111111111111000000000000000000000000 44 44 0 1111111111111111111111111111111111111111111100000000000000000000000 45 45 0 1111111111111111111111111111111111111111111110000000000000000000000 46 46 0 1111111111111111111111111111111111111111111111000000000000000000000 47 47 0 1111111111111111111111111111111111111111111111100000000000000000000 48 48 0 1111111111111111111111111111111111111111111111110000000000000000000 49 49 0 1111111111111111111111111111111111111111111111111000000000000000000 50 50 0 1111111111111111111111111111111111111111111111111100000000000000000 51 51 0 1111111111111111111111111111111111111111111111111110000000000000000 52 52 0 1111111111111111111111111111111111111111111111111111000000000000000 53 53 0 1111111111111111111111111111111111111111111111111111100000000000000 54 54 0 1111111111111111111111111111111111111111111111111111110000000000000 55 55 0 1111111111111111111111111111111111111111111111111111111000000000000 56 56 0 1111111111111111111111111111111111111111111111111111111100000000000 57 57 0 1111111111111111111111111111111111111111111111111111111110000000000 58 58 0 1111111111111111111111111111111111111111111111111111111111000000000 59 59 0 1111111111111111111111111111111111111111111111111111111111100000000 60 60 0 1111111111111111111111111111111111111111111111111111111111110000000 61 61 0 1111111111111111111111111111111111111111111111111111111111111000000 62 62 0 1111111111111111111111111111111111111111111111111111111111111100000 63 63 0 1111111111111111111111111111111111111111111111111111111111111110000 64 64 0 1111111111111111111111111111111111111111111111111111111111111111000 65 65 0 1111111111111111111111111111111111111111111111111111111111111111100 66 66 0 1111111111111111111111111111111111111111111111111111111111111111110 first 0 bit should move left 1 position each line 0 -1 0 1111111111111111111111111111111111111111111111111111111111111111111 1 66 0 1111111111111111111111111111111111111111111111111111111111111111110 2 65 0 1111111111111111111111111111111111111111111111111111111111111111100 3 64 0 1111111111111111111111111111111111111111111111111111111111111111000 4 63 0 1111111111111111111111111111111111111111111111111111111111111110000 5 62 0 1111111111111111111111111111111111111111111111111111111111111100000 6 61 0 1111111111111111111111111111111111111111111111111111111111111000000 7 60 0 1111111111111111111111111111111111111111111111111111111111110000000 8 59 0 1111111111111111111111111111111111111111111111111111111111100000000 9 58 0 1111111111111111111111111111111111111111111111111111111111000000000 10 57 0 1111111111111111111111111111111111111111111111111111111110000000000 11 56 0 1111111111111111111111111111111111111111111111111111111100000000000 12 55 0 1111111111111111111111111111111111111111111111111111111000000000000 13 54 0 1111111111111111111111111111111111111111111111111111110000000000000 14 53 0 1111111111111111111111111111111111111111111111111111100000000000000 15 52 0 1111111111111111111111111111111111111111111111111111000000000000000 16 51 0 1111111111111111111111111111111111111111111111111110000000000000000 17 50 0 1111111111111111111111111111111111111111111111111100000000000000000 18 49 0 1111111111111111111111111111111111111111111111111000000000000000000 19 48 0 1111111111111111111111111111111111111111111111110000000000000000000 20 47 0 1111111111111111111111111111111111111111111111100000000000000000000 21 46 0 1111111111111111111111111111111111111111111111000000000000000000000 22 45 0 1111111111111111111111111111111111111111111110000000000000000000000 23 44 0 1111111111111111111111111111111111111111111100000000000000000000000 24 43 0 1111111111111111111111111111111111111111111000000000000000000000000 25 42 0 1111111111111111111111111111111111111111110000000000000000000000000 26 41 0 1111111111111111111111111111111111111111100000000000000000000000000 27 40 0 1111111111111111111111111111111111111111000000000000000000000000000 28 39 0 1111111111111111111111111111111111111110000000000000000000000000000 29 38 0 1111111111111111111111111111111111111100000000000000000000000000000 30 37 0 1111111111111111111111111111111111111000000000000000000000000000000 31 36 0 1111111111111111111111111111111111110000000000000000000000000000000 32 35 0 1111111111111111111111111111111111100000000000000000000000000000000 33 34 0 1111111111111111111111111111111111000000000000000000000000000000000 34 33 0 1111111111111111111111111111111110000000000000000000000000000000000 35 32 0 1111111111111111111111111111111100000000000000000000000000000000000 36 31 0 1111111111111111111111111111111000000000000000000000000000000000000 37 30 0 1111111111111111111111111111110000000000000000000000000000000000000 38 29 0 1111111111111111111111111111100000000000000000000000000000000000000 39 28 0 1111111111111111111111111111000000000000000000000000000000000000000 40 27 0 1111111111111111111111111110000000000000000000000000000000000000000 41 26 0 1111111111111111111111111100000000000000000000000000000000000000000 42 25 0 1111111111111111111111111000000000000000000000000000000000000000000 43 24 0 1111111111111111111111110000000000000000000000000000000000000000000 44 23 0 1111111111111111111111100000000000000000000000000000000000000000000 45 22 0 1111111111111111111111000000000000000000000000000000000000000000000 46 21 0 1111111111111111111110000000000000000000000000000000000000000000000 47 20 0 1111111111111111111100000000000000000000000000000000000000000000000 48 19 0 1111111111111111111000000000000000000000000000000000000000000000000 49 18 0 1111111111111111110000000000000000000000000000000000000000000000000 50 17 0 1111111111111111100000000000000000000000000000000000000000000000000 51 16 0 1111111111111111000000000000000000000000000000000000000000000000000 52 15 0 1111111111111110000000000000000000000000000000000000000000000000000 53 14 0 1111111111111100000000000000000000000000000000000000000000000000000 54 13 0 1111111111111000000000000000000000000000000000000000000000000000000 55 12 0 1111111111110000000000000000000000000000000000000000000000000000000 56 11 0 1111111111100000000000000000000000000000000000000000000000000000000 57 10 0 1111111111000000000000000000000000000000000000000000000000000000000 58 9 0 1111111110000000000000000000000000000000000000000000000000000000000 59 8 0 1111111100000000000000000000000000000000000000000000000000000000000 60 7 0 1111111000000000000000000000000000000000000000000000000000000000000 61 6 0 1111110000000000000000000000000000000000000000000000000000000000000 62 5 0 1111100000000000000000000000000000000000000000000000000000000000000 63 4 0 1111000000000000000000000000000000000000000000000000000000000000000 64 3 0 1110000000000000000000000000000000000000000000000000000000000000000 65 2 0 1100000000000000000000000000000000000000000000000000000000000000000 66 1 0 1000000000000000000000000000000000000000000000000000000000000000000 first 1 bit should move left 1 position each line 0 0 -1 0000000000000000000000000000000000000000000000000000000000000000000 1 0 66 0000000000000000000000000000000000000000000000000000000000000000001 2 0 65 0000000000000000000000000000000000000000000000000000000000000000011 3 0 64 0000000000000000000000000000000000000000000000000000000000000000111 4 0 63 0000000000000000000000000000000000000000000000000000000000000001111 5 0 62 0000000000000000000000000000000000000000000000000000000000000011111 6 0 61 0000000000000000000000000000000000000000000000000000000000000111111 7 0 60 0000000000000000000000000000000000000000000000000000000000001111111 8 0 59 0000000000000000000000000000000000000000000000000000000000011111111 9 0 58 0000000000000000000000000000000000000000000000000000000000111111111 10 0 57 0000000000000000000000000000000000000000000000000000000001111111111 11 0 56 0000000000000000000000000000000000000000000000000000000011111111111 12 0 55 0000000000000000000000000000000000000000000000000000000111111111111 13 0 54 0000000000000000000000000000000000000000000000000000001111111111111 14 0 53 0000000000000000000000000000000000000000000000000000011111111111111 15 0 52 0000000000000000000000000000000000000000000000000000111111111111111 16 0 51 0000000000000000000000000000000000000000000000000001111111111111111 17 0 50 0000000000000000000000000000000000000000000000000011111111111111111 18 0 49 0000000000000000000000000000000000000000000000000111111111111111111 19 0 48 0000000000000000000000000000000000000000000000001111111111111111111 20 0 47 0000000000000000000000000000000000000000000000011111111111111111111 21 0 46 0000000000000000000000000000000000000000000000111111111111111111111 22 0 45 0000000000000000000000000000000000000000000001111111111111111111111 23 0 44 0000000000000000000000000000000000000000000011111111111111111111111 24 0 43 0000000000000000000000000000000000000000000111111111111111111111111 25 0 42 0000000000000000000000000000000000000000001111111111111111111111111 26 0 41 0000000000000000000000000000000000000000011111111111111111111111111 27 0 40 0000000000000000000000000000000000000000111111111111111111111111111 28 0 39 0000000000000000000000000000000000000001111111111111111111111111111 29 0 38 0000000000000000000000000000000000000011111111111111111111111111111 30 0 37 0000000000000000000000000000000000000111111111111111111111111111111 31 0 36 0000000000000000000000000000000000001111111111111111111111111111111 32 0 35 0000000000000000000000000000000000011111111111111111111111111111111 33 0 34 0000000000000000000000000000000000111111111111111111111111111111111 34 0 33 0000000000000000000000000000000001111111111111111111111111111111111 35 0 32 0000000000000000000000000000000011111111111111111111111111111111111 36 0 31 0000000000000000000000000000000111111111111111111111111111111111111 37 0 30 0000000000000000000000000000001111111111111111111111111111111111111 38 0 29 0000000000000000000000000000011111111111111111111111111111111111111 39 0 28 0000000000000000000000000000111111111111111111111111111111111111111 40 0 27 0000000000000000000000000001111111111111111111111111111111111111111 41 0 26 0000000000000000000000000011111111111111111111111111111111111111111 42 0 25 0000000000000000000000000111111111111111111111111111111111111111111 43 0 24 0000000000000000000000001111111111111111111111111111111111111111111 44 0 23 0000000000000000000000011111111111111111111111111111111111111111111 45 0 22 0000000000000000000000111111111111111111111111111111111111111111111 46 0 21 0000000000000000000001111111111111111111111111111111111111111111111 47 0 20 0000000000000000000011111111111111111111111111111111111111111111111 48 0 19 0000000000000000000111111111111111111111111111111111111111111111111 49 0 18 0000000000000000001111111111111111111111111111111111111111111111111 50 0 17 0000000000000000011111111111111111111111111111111111111111111111111 51 0 16 0000000000000000111111111111111111111111111111111111111111111111111 52 0 15 0000000000000001111111111111111111111111111111111111111111111111111 53 0 14 0000000000000011111111111111111111111111111111111111111111111111111 54 0 13 0000000000000111111111111111111111111111111111111111111111111111111 55 0 12 0000000000001111111111111111111111111111111111111111111111111111111 56 0 11 0000000000011111111111111111111111111111111111111111111111111111111 57 0 10 0000000000111111111111111111111111111111111111111111111111111111111 58 0 9 0000000001111111111111111111111111111111111111111111111111111111111 59 0 8 0000000011111111111111111111111111111111111111111111111111111111111 60 0 7 0000000111111111111111111111111111111111111111111111111111111111111 61 0 6 0000001111111111111111111111111111111111111111111111111111111111111 62 0 5 0000011111111111111111111111111111111111111111111111111111111111111 63 0 4 0000111111111111111111111111111111111111111111111111111111111111111 64 0 3 0001111111111111111111111111111111111111111111111111111111111111111 65 0 2 0011111111111111111111111111111111111111111111111111111111111111111 66 0 1 0111111111111111111111111111111111111111111111111111111111111111111 0 bit should move right 1 position each line 0 0 1 0111111111111111111111111111111111111111111111111111111111111111111 1 1 0 1011111111111111111111111111111111111111111111111111111111111111111 2 2 0 1101111111111111111111111111111111111111111111111111111111111111111 3 3 0 1110111111111111111111111111111111111111111111111111111111111111111 4 4 0 1111011111111111111111111111111111111111111111111111111111111111111 5 5 0 1111101111111111111111111111111111111111111111111111111111111111111 6 6 0 1111110111111111111111111111111111111111111111111111111111111111111 7 7 0 1111111011111111111111111111111111111111111111111111111111111111111 8 8 0 1111111101111111111111111111111111111111111111111111111111111111111 9 9 0 1111111110111111111111111111111111111111111111111111111111111111111 10 10 0 1111111111011111111111111111111111111111111111111111111111111111111 11 11 0 1111111111101111111111111111111111111111111111111111111111111111111 12 12 0 1111111111110111111111111111111111111111111111111111111111111111111 13 13 0 1111111111111011111111111111111111111111111111111111111111111111111 14 14 0 1111111111111101111111111111111111111111111111111111111111111111111 15 15 0 1111111111111110111111111111111111111111111111111111111111111111111 16 16 0 1111111111111111011111111111111111111111111111111111111111111111111 17 17 0 1111111111111111101111111111111111111111111111111111111111111111111 18 18 0 1111111111111111110111111111111111111111111111111111111111111111111 19 19 0 1111111111111111111011111111111111111111111111111111111111111111111 20 20 0 1111111111111111111101111111111111111111111111111111111111111111111 21 21 0 1111111111111111111110111111111111111111111111111111111111111111111 22 22 0 1111111111111111111111011111111111111111111111111111111111111111111 23 23 0 1111111111111111111111101111111111111111111111111111111111111111111 24 24 0 1111111111111111111111110111111111111111111111111111111111111111111 25 25 0 1111111111111111111111111011111111111111111111111111111111111111111 26 26 0 1111111111111111111111111101111111111111111111111111111111111111111 27 27 0 1111111111111111111111111110111111111111111111111111111111111111111 28 28 0 1111111111111111111111111111011111111111111111111111111111111111111 29 29 0 1111111111111111111111111111101111111111111111111111111111111111111 30 30 0 1111111111111111111111111111110111111111111111111111111111111111111 31 31 0 1111111111111111111111111111111011111111111111111111111111111111111 32 32 0 1111111111111111111111111111111101111111111111111111111111111111111 33 33 0 1111111111111111111111111111111110111111111111111111111111111111111 34 34 0 1111111111111111111111111111111111011111111111111111111111111111111 35 35 0 1111111111111111111111111111111111101111111111111111111111111111111 36 36 0 1111111111111111111111111111111111110111111111111111111111111111111 37 37 0 1111111111111111111111111111111111111011111111111111111111111111111 38 38 0 1111111111111111111111111111111111111101111111111111111111111111111 39 39 0 1111111111111111111111111111111111111110111111111111111111111111111 40 40 0 1111111111111111111111111111111111111111011111111111111111111111111 41 41 0 1111111111111111111111111111111111111111101111111111111111111111111 42 42 0 1111111111111111111111111111111111111111110111111111111111111111111 43 43 0 1111111111111111111111111111111111111111111011111111111111111111111 44 44 0 1111111111111111111111111111111111111111111101111111111111111111111 45 45 0 1111111111111111111111111111111111111111111110111111111111111111111 46 46 0 1111111111111111111111111111111111111111111111011111111111111111111 47 47 0 1111111111111111111111111111111111111111111111101111111111111111111 48 48 0 1111111111111111111111111111111111111111111111110111111111111111111 49 49 0 1111111111111111111111111111111111111111111111111011111111111111111 50 50 0 1111111111111111111111111111111111111111111111111101111111111111111 51 51 0 1111111111111111111111111111111111111111111111111110111111111111111 52 52 0 1111111111111111111111111111111111111111111111111111011111111111111 53 53 0 1111111111111111111111111111111111111111111111111111101111111111111 54 54 0 1111111111111111111111111111111111111111111111111111110111111111111 55 55 0 1111111111111111111111111111111111111111111111111111111011111111111 56 56 0 1111111111111111111111111111111111111111111111111111111101111111111 57 57 0 1111111111111111111111111111111111111111111111111111111110111111111 58 58 0 1111111111111111111111111111111111111111111111111111111111011111111 59 59 0 1111111111111111111111111111111111111111111111111111111111101111111 60 60 0 1111111111111111111111111111111111111111111111111111111111110111111 61 61 0 1111111111111111111111111111111111111111111111111111111111111011111 62 62 0 1111111111111111111111111111111111111111111111111111111111111101111 63 63 0 1111111111111111111111111111111111111111111111111111111111111110111 64 64 0 1111111111111111111111111111111111111111111111111111111111111111011 65 65 0 1111111111111111111111111111111111111111111111111111111111111111101 66 66 0 1111111111111111111111111111111111111111111111111111111111111111110 1 bit should move right 1 position each line 0 1 0 1000000000000000000000000000000000000000000000000000000000000000000 1 0 1 0100000000000000000000000000000000000000000000000000000000000000000 2 0 2 0010000000000000000000000000000000000000000000000000000000000000000 3 0 3 0001000000000000000000000000000000000000000000000000000000000000000 4 0 4 0000100000000000000000000000000000000000000000000000000000000000000 5 0 5 0000010000000000000000000000000000000000000000000000000000000000000 6 0 6 0000001000000000000000000000000000000000000000000000000000000000000 7 0 7 0000000100000000000000000000000000000000000000000000000000000000000 8 0 8 0000000010000000000000000000000000000000000000000000000000000000000 9 0 9 0000000001000000000000000000000000000000000000000000000000000000000 10 0 10 0000000000100000000000000000000000000000000000000000000000000000000 11 0 11 0000000000010000000000000000000000000000000000000000000000000000000 12 0 12 0000000000001000000000000000000000000000000000000000000000000000000 13 0 13 0000000000000100000000000000000000000000000000000000000000000000000 14 0 14 0000000000000010000000000000000000000000000000000000000000000000000 15 0 15 0000000000000001000000000000000000000000000000000000000000000000000 16 0 16 0000000000000000100000000000000000000000000000000000000000000000000 17 0 17 0000000000000000010000000000000000000000000000000000000000000000000 18 0 18 0000000000000000001000000000000000000000000000000000000000000000000 19 0 19 0000000000000000000100000000000000000000000000000000000000000000000 20 0 20 0000000000000000000010000000000000000000000000000000000000000000000 21 0 21 0000000000000000000001000000000000000000000000000000000000000000000 22 0 22 0000000000000000000000100000000000000000000000000000000000000000000 23 0 23 0000000000000000000000010000000000000000000000000000000000000000000 24 0 24 0000000000000000000000001000000000000000000000000000000000000000000 25 0 25 0000000000000000000000000100000000000000000000000000000000000000000 26 0 26 0000000000000000000000000010000000000000000000000000000000000000000 27 0 27 0000000000000000000000000001000000000000000000000000000000000000000 28 0 28 0000000000000000000000000000100000000000000000000000000000000000000 29 0 29 0000000000000000000000000000010000000000000000000000000000000000000 30 0 30 0000000000000000000000000000001000000000000000000000000000000000000 31 0 31 0000000000000000000000000000000100000000000000000000000000000000000 32 0 32 0000000000000000000000000000000010000000000000000000000000000000000 33 0 33 0000000000000000000000000000000001000000000000000000000000000000000 34 0 34 0000000000000000000000000000000000100000000000000000000000000000000 35 0 35 0000000000000000000000000000000000010000000000000000000000000000000 36 0 36 0000000000000000000000000000000000001000000000000000000000000000000 37 0 37 0000000000000000000000000000000000000100000000000000000000000000000 38 0 38 0000000000000000000000000000000000000010000000000000000000000000000 39 0 39 0000000000000000000000000000000000000001000000000000000000000000000 40 0 40 0000000000000000000000000000000000000000100000000000000000000000000 41 0 41 0000000000000000000000000000000000000000010000000000000000000000000 42 0 42 0000000000000000000000000000000000000000001000000000000000000000000 43 0 43 0000000000000000000000000000000000000000000100000000000000000000000 44 0 44 0000000000000000000000000000000000000000000010000000000000000000000 45 0 45 0000000000000000000000000000000000000000000001000000000000000000000 46 0 46 0000000000000000000000000000000000000000000000100000000000000000000 47 0 47 0000000000000000000000000000000000000000000000010000000000000000000 48 0 48 0000000000000000000000000000000000000000000000001000000000000000000 49 0 49 0000000000000000000000000000000000000000000000000100000000000000000 50 0 50 0000000000000000000000000000000000000000000000000010000000000000000 51 0 51 0000000000000000000000000000000000000000000000000001000000000000000 52 0 52 0000000000000000000000000000000000000000000000000000100000000000000 53 0 53 0000000000000000000000000000000000000000000000000000010000000000000 54 0 54 0000000000000000000000000000000000000000000000000000001000000000000 55 0 55 0000000000000000000000000000000000000000000000000000000100000000000 56 0 56 0000000000000000000000000000000000000000000000000000000010000000000 57 0 57 0000000000000000000000000000000000000000000000000000000001000000000 58 0 58 0000000000000000000000000000000000000000000000000000000000100000000 59 0 59 0000000000000000000000000000000000000000000000000000000000010000000 60 0 60 0000000000000000000000000000000000000000000000000000000000001000000 61 0 61 0000000000000000000000000000000000000000000000000000000000000100000 62 0 62 0000000000000000000000000000000000000000000000000000000000000010000 63 0 63 0000000000000000000000000000000000000000000000000000000000000001000 64 0 64 0000000000000000000000000000000000000000000000000000000000000000100 65 0 65 0000000000000000000000000000000000000000000000000000000000000000010 66 0 66 0000000000000000000000000000000000000000000000000000000000000000001