class Point {
	protected int x, y;
	
	public boolean equals(Object o) {
		if (o == null) return false;
		if (o.getClass() != Point.class) return false;
		Point other = (Point)o;
		return other.x == x && other.y == y;
	}
	
	public int hashCode() {
		return x * 31 + y;
	}
}

class BuggyInit {
	public static void main (String[] args) {
		Point a = new Point();
		a.x = 3;
		a.y = 5;
		
		Point b = new Point() { { x = 3; y = 5; } };
		
		System.out.println("a.x == b.x ? " + (a.x == b.x));
		System.out.println("a.y == b.y ? " + (a.y == b.y));
		System.out.println("a == b ? " + a.equals(b));
		System.out.println("b == a ? " + b.equals(a));
	}
}