+
        i	                         ^ RI Ht ^RIHt ^RIHtHtHt ^RIH	t	 ]! RRR7       ! R R]4      4       t
 ! R	 R
]4      tR# )    )	dataclass)DiffResultDescriptor)
DifferenceDifferenceResultSymbolWrapper)	policyrepT)frozenorderc                   0   a  ] tR t^t o RtV 3R ltRtV tR# )ModifiedCommonz8Difference details for a modified common permission set.c                   < V ^8  d   Qh/ S[ P                  ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   # )   commonadded_permsremoved_permsmatched_perms)r   Commonsetstr)format__classdict__s   ";/usr/lib64/python3.14/site-packages/setools/diff/commons.py__annotate__ModifiedCommon.__annotate__   sK     
   S  s8  s8      N)__name__
__module____qualname____firstlineno____doc____annotate_func____static_attributes____classdictcell__r   s   @r   r   r      s      C  r   r   c                      a  ] tR t^t o RtV 3R lR lt]]P                  ,          ! ]4      t	]]P                  ,          ! ]4      t
]],          ! ]4      tV 3R lR ltRtV tR# )CommonDifferencezJ
Determine the difference in common permission sets
between two policies.
c                   < V ^8  d   QhRR/# r   returnNr   )r   r   s   "r   r   CommonDifference.__annotate__   s     L Ld Lr   c           	     @   V P                   P                  RV P                   RV P                   24       V P	                  R V P                  P                  4        4       R V P                  P                  4        4       4      w  V n        V n        p\        \        ,          ! 4       V n
        V Fi  w  r#V P	                  VP                  VP                  RR7      w  rEpV'       g   V'       g   KB  V P                  P                  \        VVVV4      4       Kk  	  R# )z8Generate the difference in commons between the policies.z#Generating common differences from z to c              3   8   "   T F  p\        V4      x  K  	  R # 5iNr   .0cs   & r   	<genexpr>0CommonDifference.diff_commons.<locals>.<genexpr>%   s     B'A!]1'A   c              3   8   "   T F  p\        V4      x  K  	  R # 5ir.   r/   r0   s   & r   r3   r4   &   s     C'B!]1'Br5   F)unwrapN)loginfoleft_policyright_policy	_set_diffcommonsadded_commonsremoved_commonslistr   modified_commonspermsappend)selfmatched_commonsleft_commonright_commonr   r   r   s   &      r   diff_commonsCommonDifference.diff_commons   s    	1$2B2B1C4HYHYGZ[	] EINNBt'7'7'?'?'ABCt'8'8'@'@'BCEEAD0/ !%^ 4 6)8%K 9={GXGXGSGYGYNS 9G 9U5K mm%%,,^K<G<I<I.K L *9r   c                   < V ^8  d   QhRR/# r)   r   )r   r   s   "r   r   r+   >   s     " "T "r   c                H    V P                   P                  R4       V =V =V =R# )z%Reset diff results on policy changes.zResetting common differencesN)r8   debugr>   r?   rA   )rD   s   &r   _reset_diffCommonDifference._reset_diff>   s%    56 !r   )r>   rA   r?   N)r   r   r   r    r!   rH   r   r   r   r>   r?   r   rA   rM   r#   r$   r%   s   @r   r'   r'      s\     
L L2 ))9)9:<HM*9+;+;<\JO+N;LI
" "r   r'   N)dataclassesr   descriptorsr   
differencer   r   r    r   r   r'   r   r   r   <module>rS      sE   
 " - C C  $d#%  $,"z ,"r   