support generic list class directly