Message: MP kicks ass! R_len: 64 M: 1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 S: 0 R: 0000000000000000000000000000000000000000000000000000000000000000 Step 1: We find ourselves at position 0 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1000000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0000000000000000000000000000000000000000000000000000000000000000. Step 2: We find ourselves at position 1 in M, that bit is 0. Because the bit is 0: We expand S: S = 00, and then screw S in R: R = 0000000000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0100000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It isn't, so we invert S: S = 11. Step 3: We find ourselves at position 2 in M, that bit is 0. Because the bit is 0: We expand S: S = 110, and then screw S in R: R = 1100000000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It isn't, so we invert S: S = 001. Step 4: We find ourselves at position 3 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1111000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 5: We find ourselves at position 4 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110100000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 6: We find ourselves at position 5 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010, and then screw S in R: R = 0110010000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110100000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 7: We find ourselves at position 6 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110001000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 8: We find ourselves at position 7 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000100000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 9: We find ourselves at position 8 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100, and then screw S in R: R = 0110000010000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0110000100000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 10: We find ourselves at position 9 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000001000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 11: We find ourselves at position 10 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000, and then screw S in R: R = 1110000000100000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0110000001000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 12: We find ourselves at position 11 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000, and then screw S in R: R = 0110000000010000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 13: We find ourselves at position 12 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000, and then screw S in R: R = 1110000000001000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 14: We find ourselves at position 13 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000, and then screw S in R: R = 1110000000000100000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 15: We find ourselves at position 14 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000010000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 16: We find ourselves at position 15 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000, and then screw S in R: R = 0110000000000001000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000010000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 17: We find ourselves at position 16 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000, and then screw S in R: R = 1110000000000000100000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 18: We find ourselves at position 17 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000, and then screw S in R: R = 0110000000000000010000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 19: We find ourselves at position 18 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000, and then screw S in R: R = 0110000000000000001000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 20: We find ourselves at position 19 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000, and then screw S in R: R = 1110000000000000000100000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 21: We find ourselves at position 20 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000010000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 22: We find ourselves at position 21 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000001000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 23: We find ourselves at position 22 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000, and then screw S in R: R = 1110000000000000000000100000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000001000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 24: We find ourselves at position 23 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000010000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 25: We find ourselves at position 24 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000, and then screw S in R: R = 0110000000000000000000001000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000010000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 26: We find ourselves at position 25 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000100000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 27: We find ourselves at position 26 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000010000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 28: We find ourselves at position 27 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000001000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 29: We find ourselves at position 28 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000100000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 30: We find ourselves at position 29 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000, and then screw S in R: R = 1110000000000000000000000000010000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000100000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 31: We find ourselves at position 30 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000001000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 32: We find ourselves at position 31 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000, and then screw S in R: R = 0110000000000000000000000000000100000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000001000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 33: We find ourselves at position 32 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000, and then screw S in R: R = 1110000000000000000000000000000010000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 34: We find ourselves at position 33 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000001000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 35: We find ourselves at position 34 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000100000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 36: We find ourselves at position 35 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000010000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 37: We find ourselves at position 36 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000000, and then screw S in R: R = 0110000000000000000000000000000000001000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000010000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 38: We find ourselves at position 37 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000100000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 39: We find ourselves at position 38 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000010000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 40: We find ourselves at position 39 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000001000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 41: We find ourselves at position 40 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000100000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 42: We find ourselves at position 41 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000010000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 43: We find ourselves at position 42 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000001000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 44: We find ourselves at position 43 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000100000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000001000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 45: We find ourselves at position 44 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000010000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 46: We find ourselves at position 45 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000000000001000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000010000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 47: We find ourselves at position 46 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000100000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 48: We find ourselves at position 47 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000000010000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 49: We find ourselves at position 48 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000001000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 50: We find ourselves at position 49 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000000000100000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 51: We find ourselves at position 50 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000010000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 52: We find ourselves at position 51 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000000000001000000000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000000000010000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 53: We find ourselves at position 52 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000000000000000000100000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 54: We find ourselves at position 53 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0110000000000000000000000000000000000000000000000000010000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 55: We find ourselves at position 54 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000001000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0110000000000000000000000000000000000000000000000000000000000000. Step 56: We find ourselves at position 55 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000000100000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 57: We find ourselves at position 56 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000000000000000000000010000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000000100000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 58: We find ourselves at position 57 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000000000000000001000000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 59: We find ourselves at position 58 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000000000000000000100000, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 60: We find ourselves at position 59 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000000000000000000000000010000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 61: We find ourselves at position 60 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000000000000000, and then screw S in R: R = 1110000000000000000000000000000000000000000000000000000000001000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 62: We find ourselves at position 61 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000000000000100, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 63: We find ourselves at position 62 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000000000000010, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 64: We find ourselves at position 63 in M, that bit is 0. Because the bit is 0: We expand S: S = 00100000000000000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000000000000000000000001, and then flip the M_pos%R_len-th bit in R: R = 0110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1110000000000000000000000000000000000000000000000000000000000010, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1110000000000000000000000000000000000000000000000000000000000000. Step 65: We find ourselves at position 64 in M, that bit is 0. Because the bit is 0: We expand S: S = 001000000000000000000000000000000, and then screw S in R: R = 0110000000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1110000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It isn't, so we invert S: S = 110111111111111111111111111111111. Step 66: We find ourselves at position 65 in M, that bit is 0. Because the bit is 0: We expand S: S = 1101111111111111111111111111111110, and then screw S in R: R = 1110000000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1010000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 67: We find ourselves at position 66 in M, that bit is 0. Because the bit is 0: We expand S: S = 11011111111111111111111111111111100, and then screw S in R: R = 0010000000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0000000000000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 68: We find ourselves at position 67 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1000000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1001000000000000000000000000000000000000000000000000000000000000. Step 69: We find ourselves at position 68 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001000000000000000000000000000000000000000000000000000000000000. Step 70: We find ourselves at position 69 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001000000000000000000000000000000000000000000000000000000000000. Step 71: We find ourselves at position 70 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001000000000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0001001000000000000000000000000000000000000000000000000000000000. Step 72: We find ourselves at position 71 in M, that bit is 0. Because the bit is 0: We expand S: S = 110111111111111111111111111111111000, and then screw S in R: R = 0001001000000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0001001100000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It isn't, so we invert S: S = 001000000000000000000000000000000111. Step 73: We find ourselves at position 72 in M, that bit is 0. Because the bit is 0: We expand S: S = 0010000000000000000000000000000001110, and then screw S in R: R = 1001001100000000000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It isn't, so we invert S: S = 1101111111111111111111111111111110001. Step 74: We find ourselves at position 73 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001111000000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001001110000000000000000000000000000000000000000000000000000000. Step 75: We find ourselves at position 74 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001110100000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001001110000000000000000000000000000000000000000000000000000000. Step 76: We find ourselves at position 75 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001110010000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001001110000000000000000000000000000000000000000000000000000000. Step 77: We find ourselves at position 76 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001110001000000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 1001001110000000000000000000000000000000000000000000000000000000. Step 78: We find ourselves at position 77 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001110000100000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001001110000000000000000000000000000000000000000000000000000000. Step 79: We find ourselves at position 78 in M, that bit is 0. Because the bit is 0: We expand S: S = 11011111111111111111111111111111100010, and then screw S in R: R = 0001001110000010000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 1001001110000100000000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0001001110000000000000000000000000000000000000000000000000000000. Step 80: We find ourselves at position 79 in M, that bit is 0. Because the bit is 0: We expand S: S = 110111111111111111111111111111111000100, and then screw S in R: R = 0001001110000001000000000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 81: We find ourselves at position 80 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001001110000000100000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0001001110000000000000000000000000000000000000000000000000000000. Step 82: We find ourselves at position 81 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001001110000000010000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0001001110000000000000000000000000000000000000000000000000000000. Step 83: We find ourselves at position 82 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 0001001110000000001000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 0001001110000000000000000000000000000000000000000000000000000000. Step 84: We find ourselves at position 83 in M, that bit is 0. Because the bit is 0: We expand S: S = 1101111111111111111111111111111110001000, and then screw S in R: R = 1001001110000000000100000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Because the bit is 1: We halfscrew S in R: R = 0001001110000000001000000000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they don't match, we flip the M_pos%R_len-th bit of R: R = 0001001110000000000000000000000000000000000000000000000000000000. Step 85: We find ourselves at position 84 in M, that bit is 0. Because the bit is 0: We expand S: S = 11011111111111111111111111111111100010000, and then screw S in R: R = 0001001110000000000010000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 0001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 86: We find ourselves at position 85 in M, that bit is 0. Because the bit is 0: We expand S: S = 110111111111111111111111111111111000100000, and then screw S in R: R = 1001001110000000000001000000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 87: We find ourselves at position 86 in M, that bit is 0. Because the bit is 0: We expand S: S = 1101111111111111111111111111111110001000000, and then screw S in R: R = 1001001110000000000000100000000000000000000000000000000000000000, and then flip the M_pos%R_len-th bit in R: R = 1001001110000000000000000000000000000000000000000000000000000000, We check to see if the M_pos%R_len-th bit in R is 0: It is, so we rewind by one. Step 88: We find ourselves at position 87 in M, that bit is 1. Because the bit is 1: We halfscrew S in R: R = 1001001110000000000000010000000000000000000000000000000000000000, We compare the M_pos%R_len-th bit of R with the M_pos%R_len-th bit of S: Because they match, we screw S in R: R = 1001001110000000000000000000000000000000000000000000000000000000. Our work has ended. The message was: 1001101101000010000011010111101001110001111010111110011100000110000111100111110011100001 We used 43 bits for the state machine. The resulting hash is: 1001001110000000000000000000000000000000000000000000000000000000