move generators into one file