annotation uncomplete function