brief descriptions of each function