-- tb v i j m = if testBit i v then setBit j m else m
tb v i j m =  m .|. (rotate  (v .&. (bit i)) (j-i))
tb v i j m =  m .|. (rotate  (v .&. (bit i)) (j-i))
tb v i j m =  m .|. (rotate  (v .&. (bit i)) (j-i))