add all function