def METHOD_NAME(rows):
    header, rows = rows[0], rows[1:]
    assert not [True for r in rows if len(r) != len(header)]
    widths = []
    for i, h in enumerate(header):
        widths.append(max([len(h)] + [len(r[i]) for r in rows]))
    def print_row(row):
        print ' | '.join(c + (' ' * (widths[i] - len(c))) for i, c in enumerate(row))
    print_row(header)
    print_row(['-' * w for w in widths])
    for r in rows:
        print_row(r)