### Question:
ExplainMap implements ImmutableBean, Serializable { public static ExplainMap of(Map<ExplainKey<?>, Object> map) { return new ExplainMap(map); } private  ExplainMap(
      Map<ExplainKey<?>, Object> map); static ExplainMap of(Map<ExplainKey<?>, Object> map); static ExplainMapBuilder builder(); @SuppressWarnings("unchecked") Optional<R> get(ExplainKey<R> key); String explanationString(); static ExplainMap.Meta meta(); @Override ExplainMap.Meta metaBean(); ImmutableMap<ExplainKey<?>, Object> getMap(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void coverage() { Map<ExplainKey<?>, Object> map = new HashMap<>(); map.put(ExplainKey.START_DATE, DATE1); map.put(ExplainKey.END_DATE, DATE2); ExplainMap test = ExplainMap.of(map); coverImmutableBean(test); Map<ExplainKey<?>, Object> map2 = new HashMap<>(); map.put(ExplainKey.START_DATE, DATE2); ExplainMap test2 = ExplainMap.of(map2); coverBeanEquals(test, test2); }
@Test public void test_serialization() { Map<ExplainKey<?>, Object> map = new HashMap<>(); map.put(ExplainKey.START_DATE, DATE1); map.put(ExplainKey.END_DATE, DATE2); ExplainMap test = ExplainMap.of(map); assertSerialization(test); }