add types: GeneratorFunc, RuntimeOption