further collapsing of multiple generate methods