use list to store rows