refine internal
refine List