@Override
	public boolean equals(Object obj) {
		if (obj == null) {
			return false;
		}

		if (!this.getClass().equals(obj.getClass())) {
			return false;
		}

		Struct2<?, ?> t = (Struct2<?, ?>) obj;

		return Calc.areObjectsEqual(a, t.a) && Calc.areObjectsEqual(b, t.b);

	}