增加泛型支持