auto gen form