Switched to use argparse