wrote a command line parser