### Question:
Versioned { public synchronized <U> Versioned<U> map(Function<V, U> transformer) { return new Versioned<>(value != null ? transformer.apply(value) : null, version, creationTime); } Versioned(V value, long version, long creationTime);  Versioned(V value, long version); V value(); long version(); long creationTime(); synchronized Versioned<U> map(Function<V, U> transformer); static U valueOrElse(Versioned<U> versioned, U defaultValue); static U valueOrNull(Versioned<U> versioned); @Override int hashCode(); @Override boolean equals(Object other); @Override String toString();  }### Answer:
@Test public void testMap() { Versioned<String> tempObj = stats1.map(VersionedTest::transform); assertThat(tempObj.value(), is("1")); }