Add gen distribute

You can leave out the "Split long lines." commit.