refact annotation