implemented command line options