list for type,almost ok