add many func