off by 1 error in bitshift