finish generics