start enum generation