fixed generics errors