Generate based on annotations