generate now in a main