Implement generics.