int shiftDown64(int value) { if (value & 0x8000000000000000 == 0) { return value >> 8; } return (value & 0x7fffffffffffffff) >> 8 | 0x0080000000000000; }