class MyTest {
	static void f (bool a, bool b)
	{
		if (a != b)
			throw new System.Exception ("Something wrong: " + a + " vs. " + b);
	}
	public static void Main()
	{
		int? w = null;
		int? x = null;
		int? y = 0;
		int? z = 1;

		f (false, x == 0);
		f (true,  x != 0);
		f (false, x == y);
		f (true,  x != y);
		f (true,  x == w);
		f (false, x != w);
		f (true,  x == null);
		f (false, x != null);

		f (true,  0 == y);
		f (false, 0 != y);
		f (false, z == y);
		f (true,  z != y);
		f (false, null == y);
		f (true,  null != y);
	}
}