generation process