Add support for generics