adding Argparse interface