Remove dependency on Generics