def medium_file(file_path):
    """Open a medium file (headerless tsv, 2 columns (str, float))
    Return a generator of (str, float) tuples
    This function is used by argparse for type validation."""
    def row_generator(file_path):
        with open(file_path, "r") as fh:
            for line in fh:
                reaction_id, lower_bound, upper_bound = line.rstrip().split("\t")
                yield (reaction_id, float(lower_bound), float(upper_bound))
    return row_generator(file_path)