async def __fetch_user_names_and_icons(client, users):
    """
    Get user display names and icon URLs for a list of users.
    Returns a dict structure:
    userid: {'display_name': display_name, 'icon_url': icon_url}

    client: the client from the context object.
    users: a list of userids. Uniqueness not required.
    """

    uset = set(users)

    results = {}

    for user in uset:
        # https://api.slack.com/methods/users.info
        res = await client.users_info(user=user)
        results[user] = {
            'display_name': res['user']['profile']['display_name_normalized'],
            'icon_url': res['user']['profile']['image_72']
            }

    return results