use unsigned bitshift, remove logs