added argparse and templating arguments