Map<K, V> where(bool Function(K k, V v) test) { final list = <MapEntry<K, V>>[]; entries.forEach((element) { if (test(element.key, element.value)) list.add(element); }); return Map.fromEntries(list); }