add a fuction