@classmethod
    def pull_users_and_groups(cls, domain, mobile_user_and_group_slugs, include_inactive=False):
        user_ids = cls.selected_user_ids(mobile_user_and_group_slugs)
        user_types = cls.selected_user_types(mobile_user_and_group_slugs)
        group_ids = cls.selected_group_ids(mobile_user_and_group_slugs)
        users = []
        if user_ids or HQUserType.REGISTERED not in user_types:
            users = util.get_all_users_by_domain(
                domain=domain,
                user_ids=user_ids,
                simplified=True,
                CommCareUser=CommCareUser,
            )
        user_filter = tuple([HQUserToggle(id, id in user_types) for id in range(4)])
        other_users = util.get_all_users_by_domain(
            domain=domain,
            user_filter=user_filter,
            simplified=True,
            CommCareUser=CommCareUser,
            include_inactive=include_inactive
        )
        groups = [Group.get(g) for g in group_ids]
        all_users = users + other_users

        user_dict = {}
        for group in groups:
            user_dict["%s|%s" % (group.name, group._id)] = util.get_all_users_by_domain(
                group=group,
                simplified=True
            )
        users_in_groups = [user for sublist in user_dict.values() for user in sublist]
        users_by_group = user_dict
        combined_users = remove_dups(all_users + users_in_groups, "user_id")

        return _UserData(
            users=all_users,
            admin_and_demo_users=other_users,
            groups=groups,
            users_by_group=users_by_group,
            combined_users=combined_users,
        )
dataset/ETHPy150Open dimagi/commcare-hq/corehq/apps/reports/filters/users.py/ExpandedMobileWorkerFilter.pull_users_and_groups/operator `in` -> `not in`