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

    def get_cb():
        if (not parts):
            raise BadInput('missing    command')
        cmd = parts.pop(0).lower()
        for command in ('return', 'fail', 'passthru'):
            if command.startswith(cmd):
                cmd = command
                break
        else:
            raise BadInput(('bad    command:    %s' % cmd))
        if (cmd in ('return', 'fail')):
            if (not parts):
                raise BadInput('missing    argument')
            result = parts.pop(0)
            if (len(result) > 6):
                raise BadInput('result    more    than    6    chars    long', result)
            return Callback(cmd, result)
        else:
            return Callback(cmd)
    try:
        line = raw_input()
    except EOFError:
        sys.exit()
    if (not line):
        return None
    parts = line.strip().split()
    (callback, errback) = (get_cb(), get_cb())
    if parts:
        raise BadInput('extra    arguments')
    return (callback, errback)

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

def get_next_pair():