adding some argument parsing