<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def remove_subj(self, subj_str):
 """Remove all permissions for subject. Args: subj_str : str Subject for which to remove all permissions. Since subjects can only be present in the AccessPolicy when they have one or more permissions, this removes the subject itself as well. The subject may still have access to the obj. E.g.: * The obj has public access. * The subj has indirect access by being in a group which has access. * The subj has an equivalent subj that has access. * The subj is set as the rightsHolder for the object. """

        for subj_set in list(self._perm_dict.values()):
            subj_set -= {subj_str}