Implemented generator with fallback choices (some stuff remain to be fixed)