@Override
	public boolean equals(Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj == null) {
			return false;
		}
		if (getClass() != obj.getClass()) {
			return false;
		}
		PrimitiveStrictTypesEntity other = (PrimitiveStrictTypesEntity) obj;
		if (Double.doubleToLongBits(doubleVal) != Double.doubleToLongBits(other.doubleVal)) {
			return false;
		}
		if (Float.floatToIntBits(floatVal) != Float.floatToIntBits(other.floatVal)) {
			return false;
		}
		if (integerVal != other.integerVal) {
			return false;
		}
		return true;
	}