some argument parsing.