def main(arglist):
    # Parse
    parser = create_parser()
    args = parser.parse_args(arglist)
    kwargs = vars(args)
    if 'run_keys' not in kwargs and not kwargs['run_keys']:
        kwargs['run_keys'] = ["fsf", "feat"]
    if 'vars' not in kwargs:
        template_vars = {}
    else:
        template_vars = dict(kwargs.pop("vars"))
            
    # Logger
    loglevel = get_loglevel(args.verbosity)
    log = create_logger("coordinate_subjects", loglevel, args.log)
    
    subjects = kwargs.pop("subjects")
    for subject in subjects:
        try:
            log.title("Subject: %s" % subject)
            template_vars['subject'] = subject
            fromYamlSubject(user_template_vars=template_vars, logger=log, **kwargs)
            del template_vars['subject']
        except (LoggerError, LoggerCritical) as err:
            pass
def main(arglist):
    # Parse
    parser = create_parser()
    args = parser.parse_args(arglist)
    kwargs = vars(args)
    
    # Template vars
    if 'vars' not in kwargs:
        template_vars = {}
    else:
        template_vars = dict(kwargs.pop("vars"))
    
    # Logger
    loglevel = get_loglevel(args.verbosity)
    log = create_logger("coordinate_subjects", loglevel, args.log)
    
    # Loop through subjects
    if 'subjects' in kwargs:
        subjects = kwargs.pop("subjects")
        for subject in subjects:
            log.title("Subject: %s" % subject)
            template_vars['subject'] = subject
            run_subject(log, args, template_vars)
            del template_vars['subject']
    else:
        run_subject(log, args, template_vars)
    return