private static <K, V> Map<K, V> filterFiltered(
      AbstractFilteredMap<K, V> map, Predicate<? super Entry<K, V>> entryPredicate) {
    return new FilteredEntryMap<>(
        map.unfiltered, Predicates.<Entry<K, V>>and(map.predicate, entryPredicate));
  }
private static <K, V> Map<K, V> filterFiltered(
      AbstractFilteredMap<K, V> map, Predicate<? super Entry<K, V>> entryPredicate) {
    return new FilteredEntryMap<>(
        map.unfiltered, Predicates.<Entry<K, V>>and(map.predicate, entryPredicate));
  }
private static < K , V > Map < K , V > filterFiltered ( AbstractFilteredMap < K , V > map , Predicate < ? super Entry < K , V > > entryPredicate ) { return new FilteredEntryMap <> ( map . unfiltered , Predicates . < Entry < K , V > > and ( map . predicate , entryPredicate ) ) ; }
Support {@code clear()}, {@code removeAll()}, and {@code retainAll()} when filtering a filtered
map.
Support {