Drastically simplified generic types.