code: private void shift() {
      if ((int)word ==0) {wordShift +=32; word = word >>>32; }
      if ((word & 0x0000FFFF) == 0) { wordShift +=16; word >>>=16; }
      if ((word & 0x000000FF) == 0) { wordShift +=8; word >>>=8; }
      indexArray = bitlist[(int)word & 0xff];
    }
docs: 64 bit shifts