add auth funciton