separate generate entityes