More work on type generics