more solutions; minor reformat