implemented command line arguments