five functions