### Question:
CObject extends CValue { @Override public int hashCode() { return data != null ? data.hashCode() : 0; } CObject(Map<String, CValue> data); Map<String, CValue> data(); @Override Set<String> referencedKeys(); @Override void replace(String key, String resolvedValue); @Override String toString(); @Override boolean equals(final Object o); @Override int hashCode();  }### Answer:
@Test public void testHashCode() throws Exception { assertEquals(cObject.hashCode(), new CObject(values).hashCode()); }