core/src/main/java/com/moparisthebest/mirror/convert/ElementFilter.java
public static <E extends Element, F extends E> Set<F> setFilter(Iterable<? extends E> elements, Class<F> clazz, ElementKind... kinds) {
		// Return set preserving iteration order of input set.
		return collectionFilter(new LinkedHashSet<F>(), elements, clazz);
	}
public static <E extends Element, F extends E> Set<F> setFilter(Iterable<? extends E> elements, Class<F> clazz, ElementKind... kinds) {
		// Return set preserving iteration order of input set.
		return collectionFilter(new LinkedHashSet<F>(), elements, clazz);
	}
Assumes targetKinds and E are sensible.