UnsupportedValueImpl extends ValueImpl implements UnsupportedValue { @Override public boolean equals(Object other) { if (!(other instanceof UnsupportedValueImpl)) { return false; } UnsupportedValueImpl otherValue = (UnsupportedValueImpl) other; return typeString.equals(otherValue.getTypeJsonString()) && contents.equals(otherValue.getContents()); } @JsonCreator private  UnsupportedValueImpl(
			@JsonProperty("type")
			String typeString); @Override T accept(ValueVisitor<T> valueVisitor); @Override @JsonProperty("type") String getTypeJsonString(); @Override String toString(); @Override int hashCode(); @Override boolean equals(Object other);  }
@Test public void testEquals() throws IOException { Value otherValue = mapper.readValue(JSON_UNSUPPORTED_VALUE_1, ValueImpl.class); assertEquals(firstValue, otherValue); assertNotEquals(secondValue, otherValue); }