redoing the nested outputter