add data gen