def get_ie(instance, key, data):
    """http://git.kernel.org/cgit/linux/kernel/git/jberg/iw.git/tree/scan.c?id=v3.17#n981.

    Positional arguments:
    instance -- `ie_print` class instance.
    key -- corresponding `ieprinters` dictionary key for the instance.
    data -- bytearray data to read.

    Returns:
    Dictionary of parsed data with string keys.
    """
    if not instance.print_:
        return dict()
    if len(data) < instance.minlen or len(data) > instance.maxlen:
        if data:
            return {'<invalid: {0} byte(s)>'.format(len(data)): ' '.join(format(x, '02x') for x in data)}
        return {'<invalid: no data>': data}
    return {instance.name: instance.print_(key, data)}