completefunctions