Simplified return types, using generics.