public class UnsatBitOps {
	private static int i() {
		int value = 3;
		value &= 1;
		value |= 4;
		value ^= 4;
		value <<= 2;
		value >>= 1;
		value = -value;
		value >>>= 1;
		return value;
	}

//	private static long l() {
//		long value = 3L;
//		value &= 1L;
//		value |= 4L;
//		value ^= 4L;
//		value <<= 2L;
//		value >>= 1L;
//		value = -value;
//		value >>>= 1L;
//		return value;
//	}


	public static void main(String[] args) {
		assert i() == 2147483646;
//		assert l() == 9223372036854775802L;
	}
}
