simplify generics