updated argument parsing and function descriptions