add annotations for functions