implement homogeneous list checks