+
    ,i  c                   s~    ^ RI Ht ^RIHt ^RIHt ^RIHtHt ]! RR7       ! R R]4      4       t	 ! R	 R
]4      t
R# )i    )	dataclass)
PolicyEnum)DiffResultDescriptor)
DifferenceDifferenceResultT)Zfrozenc                   sB   a  ] tR t^t o RtV 3R lR ltV 3R ltRtV tR# )ModifiedPropertyz2Difference details for a modified policy property.c                s    < V ^8  d   QhRS[ /# )   return)boolZformat__classdict__   ">/usr/lib64/python3.14/site-packages/setools/diff/properties.py__annotate__ModifiedProperty.__annotate__   s     . .t .    c                s4    V P                   VP                   8  # )N)property)selfZothers   &&r   __lt__ZModifiedProperty.__lt__   s    }}u~~--r   c                s~   < V ^8  d   Qh/ S[ ;R&   S[S[,          S[,          ;R&   S[S[,          S[,          ;R&   # )r   r   ZaddedZremoved)Zstrr   r   Zintr	   r   r   r   r      s?     
 M  s""  $$$ r    N)	__name__
__module____qualname____firstlineno____doc__r   Z__annotate_func____static_attributes____classdictcell__r
      @r   r   r      s      =. .  r   r   c                   sf   a  ] tR t^t o RtV 3R lR lt]],          ! ]4      tV 3R lR lt	Rt
V tR# )PropertiesDifferencezf
Determine the difference in policy properties
(unknown permissions, MLS, etc.) between two policies.
c                   < V ^8  d   QhRR/# r   r   Nr   r	   r   r   r   !PropertiesDifference.__annotate__!   s     < < <r   c                s.   \         \        ,          ! 4       V n        V P                  P                  V P
                  P                  8w  dO   V P                  P                  \        R V P
                  P                  V P                  P                  4      4       V P                  P                  V P
                  P                  8w  dO   V P                  P                  \        RV P
                  P                  V P                  P                  4      4       V P                  P                  V P
                  P                  8w  dQ   V P                  P                  \        RV P
                  P                  V P                  P                  4      4       R# R# )handle_unknownZMLSversionN)	Zlistr   modified_propertiesZleft_policyr!   Zright_policyZappendZmlsr"   r      &r   diff_propertiesZ$PropertiesDifference.diff_properties!   s4   #'(8#9#; **d.?.?.N.NN$$++ !1!%!2!2!A!A!%!1!1!@!@BC
 4#4#4#8#88$$++ !%!2!2!6!6!%!1!1!5!578
 ##t'8'8'@'@@$$++ !%!2!2!:!:!%!1!1!9!9;< Ar   c                r   r   r   r	   r   r   r   r    ;   s     % %T %r   c                s@    V P                   P                  R4       V =R# )z%Reset diff results on policy changes.zResetting property differencesN)ZlogZdebugr#   r$   r%   r   _reset_diffZ PropertiesDifference._reset_diff;   s    78$r   )r#   N)r   r   r   r   r   r&   r   r   r#   r'   r   r   r   r   r   r   r      s1     
< <* //?@Q
% %r   r   N)Zdataclassesr    Z	policyrepr   Zdescriptorsr   Z
differencer   r   r   r   r   r   r   <module>r(      s@   
 " " - 4 $	.' 	. 	.$%: $%r   