fixed bug with overriding + generics