code: private static <K, V> Multimap<K, V> filterFiltered(FilteredMultimap<K, V> multimap,
        Predicate<? super Entry<K, V>> entryPredicate) {
      Predicate<Entry<K, V>> predicate
          = Predicates.and(multimap.entryPredicate(), entryPredicate);
      return new FilteredEntryMultimap<K, V>(multimap.unfiltered(), predicate);
    }
docs: Support removal operations when filtering a filtered multimap. Since a
  filtered multimap has iterators that don't support remove, passing one to
  the FilteredEntryMultimap constructor would lead to a multimap whose removal
  operations would fail. This method combines the predicates to avoid that
  problem.