fix up corner cases with generator