Generates pretty much everything, but stack overflows frequently