add descriptions, rename function