human
Here's a good function header given the following:
I wrote the below code

    def try_shift(f, t, shifter, diff, counter):
        '    Try    to    apply    ``shifter``    in    order    to    bring    some    element    in    ``f``\n                                                nearer    to    its    counterpart    in    ``to``.    ``diff``    is    +/-    1    and\n                                                determines    the    effect    of    ``shifter``.    Counter    is    a    list    of    elements\n                                                blocking    the    shift.\n\n                                                Return    an    operator    if    change    was    possible,    else    None.\n                                '
        for (idx, (a, b)) in enumerate(zip(f, t)):
            if ((a - b).is_integer and (((b - a) / diff) > 0) and all(((a != x) for x in counter))):
                sh = shifter(idx)
                f[idx] += diff
                return sh
    fan = list(fro.an)
    fap = list(fro.ap)
    fbm = list(fro.bm)
    fbq = list(fro.bq)
    ops = []
    change = True
    while change:
        change = False
        op = try_shift(fan, to.an, (lambda i: MeijerUnShiftB(fan, fap, fbm, fbq, i, z)), 1, (fbm + fbq))
        if (op is not None):
            ops += [op]
            change = True
            continue
        op = try_shift(fap, to.ap, (lambda i: MeijerUnShiftD(fan, fap, fbm, fbq, i, z)), 1, (fbm + fbq))
        if (op is not None):
            ops += [op]
            change = True
            continue
        op = try_shift(fbm, to.bm, (lambda i: MeijerUnShiftA(fan, fap, fbm, fbq, i, z)), (-1), (fan + fap))
        if (op is not None):
            ops += [op]
            change = True
            continue
        op = try_shift(fbq, to.bq, (lambda i: MeijerUnShiftC(fan, fap, fbm, fbq, i, z)), (-1), (fan + fap))
        if (op is not None):
            ops += [op]
            change = True
            continue
        op = try_shift(fan, to.an, (lambda i: MeijerShiftB(fan[i])), (-1), [])
        if (op is not None):
            ops +=...

What's a good function header?
assistant
#Here's a good function header.

def devise_plan_meijer(fro, to, z):