splitting out module logic so we can both work