added annotation to some func