code: def update_groups_for_user(self, user: User, state: State = None):
          
          if state is None:
              state = user.profile.state
          for config in self.filter(states=state):
              # grant user new groups for their state
              config.update_group_membership_for_user(user)
          for config in self.exclude(states=state):
              # ensure user does not have groups from previous state
              config.remove_user_from_alliance_groups(user)
              config.remove_user_from_corp_groups(user)
docs: Update the Group memberships for the given users state
          :param user: User to update for
          :param state: State to update user for
          :return: