add func complete template