fixed shadow functions/generics