def main()

in heats.py [0:0]


def main(args=None):
    if not args:
        parser = argparse.ArgumentParser()
        set_argparser(parser)
        args = parser.parse_args()

    damon_result = _damon_result.parse_damon_result(
            args.input, args.input_type)
    if not damon_result:
        print('monitoring result file (%s) parsing failed' % args.input)
        exit(1)

    # Use 80x40 resolution as default for ascii plot
    if args.heatmap == 'stdout' and args.resol == [500, 500]:
        args.resol = [40, 80]

    if args.guide:
        pr_guide(damon_result)
    else:
        set_missed_args(args, damon_result)
        orig_stdout = sys.stdout
        if args.heatmap and args.heatmap != 'stdout':
            tmp_path = tempfile.mkstemp()[1]
            tmp_file = open(tmp_path, 'w')
            sys.stdout = tmp_file

        pr_heats(args, damon_result)

        if args.heatmap and args.heatmap != 'stdout':
            sys.stdout = orig_stdout
            tmp_file.flush()
            tmp_file.close()
            plot_heatmap(tmp_path, args.heatmap, args)