def main(args):
<EOL>ui = getUI(args)<EOL>if ui.optionIsSet("<STR_LIT:test>"):<EOL><INDENT>unittest.main(argv=[sys.argv[<NUM_LIT:0>]])<EOL><DEDENT>elif ui.optionIsSet("<STR_LIT>"):<EOL><INDENT>ui.usage()<EOL><DEDENT>else:<EOL><INDENT>verbose = (ui.optionIsSet("<STR_LIT>") is True) or DEFAULT_VERBOSITY<EOL>header = ui.optionIsSet("<STR_LIT>")<EOL>field = ui.getValue("<STR_LIT>") - <NUM_LIT:1><EOL>out_fh = sys.stdout<EOL>if ui.optionIsSet("<STR_LIT>"):<EOL><INDENT>out_fh = open(ui.getValue("<STR_LIT>"), "<STR_LIT:w>")<EOL><DEDENT>in_fh = sys.stdin<EOL>if ui.hasArgument(<NUM_LIT:0>):<EOL><INDENT>in_fh = open(ui.getArgument(<NUM_LIT:0>))<EOL><DEDENT>delim = DEFAULT_DELIM<EOL>data_table = DataTable()<EOL>data_table.load(in_fh, header, delim, verbose)<EOL>data_table.frame[field] =correct_pvals(data_table.frame[field], verbose=verbose)<EOL>data_table.write(out_fh, delim, verbose)<EOL><DEDENT>
main entry point for the FDR script.

:param args: the arguments for this script, as a list of string. Should
             already have had things like the script name stripped. That
             is, if there are no args provided, this should be an empty
             list.