+
    €Ú,i¤  c                   sÈ   a € R t0 t ^ RIHt ^ RIt^ RIt^RIHtHtHt ]P                  ]P                  ,          tRt] ^ k  ! R R]P                  ]P                  4      tR# )i    )ÚIterableN)ÚmixinsÚ	policyrepÚqueryÚNodeconQueryc                   sæ   a € ] tR t^t o RtRtRtRt]V 3R lR l4       t	]	P                  V 3R lR l4       t	]V 3R lR	 l4       t]P                  V 3R
 lR l4       tV 3R lR ltV 3R ltRtV tR# )r   aÑ  
Query nodecon statements.

Parameter:
policy          The policy to query.

Keyword Parameters/Class attributes:
network         The IPv4/IPv6 address or IPv4/IPv6 network address
                with netmask, e.g. 192.168.1.0/255.255.255.0 or
                "192.168.1.0/24".
network_overlap If true, the net will match if it overlaps with
                the nodecon's network instead of equality.
ip_version      The IP version of the nodecon to match. (socket.AF_INET
                for IPv4 or socket.AF_INET6 for IPv6)
user            The criteria to match the context's user.
user_regex      If true, regular expression matching
                will be used on the user.
role            The criteria to match the context's role.
role_regex      If true, regular expression matching
                will be used on the role.
type_           The criteria to match the context's type.
type_regex      If true, regular expression matching
                will be used on the type.
range_          The criteria to match the context's range.
range_subset    If true, the criteria will match if it is a subset
                of the context's range.
range_overlap   If true, the criteria will match if it overlaps
                any of the context's range.
range_superset  If true, the criteria will match if it is a superset
                of the context's range.
range_proper    If true, use proper superset/subset operations.
                No effect if not using set operations.
NFc                sB   <€ V ^8„  d   QhRS[ P                  R,          /# ©é   ÚreturnN)r   ÚNodeconIPVersion©ÚformatÚ__classdict__ó   "€Ú;/usr/lib64/python3.14/site-packages/setools/nodeconquery.pyÚ__annotate__ÚNodeconQuery.__annotate__:   s   ø€ ÷  ñ  ™I×6Ñ6¸Õ=ñ  ó    c                ó   € V P                   # ©N)Ú_ip_version©Úselfó   &r   Ú
ip_versionÚNodeconQuery.ip_version9   s   € à×ÑÐr   c                sV   <€ V ^8„  d   QhRS[ P                  S[,          R,          RR/# ©r   ÚvalueNr   )r   r   Ústrr	   r   r   r   r   >   s+   ø€ ÷ $ñ $¡	× :Ñ :¹SÕ @À4Õ Gð $ÈDñ $r   c                sp   € V'       d'   \         P                  P                  V4      V n        R # R V n        R # r   )r   r   Zlookupr   ©r   r   ó   &&r   r   r   =   s&   € çÜ(×9Ñ9×@Ñ@ÀÓGˆDÖà#ˆDÖr   c                s.   <€ V ^8„  d   QhRS[ R,          /# r   )ÚAnyIPNetworkr	   r   r   r   r   E   s   ø€ ÷ ñ ™¨Õ,ñ r   c                r   r   )Ú_networkr   r   r   ÚnetworkÚNodeconQuery.networkD   s   € à}‰}Ðr   c                sB   <€ V ^8„  d   QhRS[ S[,          R,          RR/# r   )r   r   r	   r   r   r   r   I   s%   ø€ ÷ !ñ !™\©CÕ/°$Õ6ð !¸4ñ !r   c                s^   € V'       d   \         P                  ! V4      V n        R # R V n        R # r   )Ú	ipaddressZ
ip_networkr   r   r   r   r    r!   H   s   € çÜ%×0Ò0°Ó7ˆDŽMà ˆDŽMr   c                sD   <€ V ^8„  d   QhRS[ S[P                  ,          /# )r   r   )r    r   ZNodeconr	   r   r   r   r   O   s   ø€ ÷ ñ ™¡)×"3Ñ"3Õ4ñ r   c              #  s   "  € V P                   P                  RV P                   24       V P                   P                  RV P                  : RV P
                  : 24       V P                   P                  RV P                  : 24       V P                  V P                   4       V P                  P                  4        FÈ  pV P                  '       d^   V P
                  '       d/   V P                  P                  VP                  4      '       g   KT  MVP                  V P                  8X  g   Kr  V P                  '       d   V P                  VP                  8w  d   K¡  V P                  VP                  4      '       g   KÄ  Vx € KÊ  	  R# 5i)z-Generator which yields all matching nodecons.z Generating nodecon results from zself.network=z, self.network_overlap=zself.ip_version=N)ZlogZinfoZpolicyZdebugr    Únetwork_overlapr   Z_match_context_debugZnodeconsZoverlapsZ_match_contextZcontext)r   Znodecons   & r   ÚresultsZNodeconQuery.resultsO   s  é € à‰‰Ð8¸¿¹¸ÐFÔGØ‰‰˜-˜$Ÿ,™,™Ð(@¨4×+?Ñ+?Ñ*AÐBÔCØ‰‰Ð*˜$Ÿ/™/Ñ+Ð,Ô-Ø×!Ñ! $§(¡(Ô+à—{‘{×+Ñ+Ö-ˆGà||ˆ|Ø×'×'Ð'ØŸ<™<×0Ñ0°·±×AÒAÙ ð Bð #Ÿ?™?¨d¯l©lÔ:Ù àˆ 4§?¡?°g×6HÑ6HÔ#HÙà×&Ñ& w§¡×7Ò7ÙàŒMó! .ùs   ‚C$FÃ'*FÄ1FÅ=FÆFc                sn   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[;R&   S[P                  R,          ;R&   # )r   Nr   r#   r   )r   Zboolr   r   r	   r   r   r   r      sB   ø‡ ‚ ñH ˜TÕ!Ñ(ñI ñJ Ñ!ñK ñL ×+Ñ+¨dÕ2Ñ9òM r   )r   r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r   r#   r   Zpropertyr   Zsetterr    r$   Z__annotate_func__Z__static_attributes__Z__classdictcell__)r   ó   @r   r   r      s†   ø‡ € ñ ðD %)€HØ!€OØ59€Kà÷ ó ð ð ×Ñ÷$ó ð$ð ÷ó ðð ‡^^÷!ó ð!÷ð ÷} ƒ r   c                s„   € V ^8„  d   Qh/ ^ \         9   d,   \        P                  \        \        R3,          ,          ;R&   # )r   .Ú__all__)Ú__conditional_annotations__ÚtypingZFinalZtupler   )r
   s   "r   r   r      s,   € × $Ñ $÷ JÒ IŒ‰”eœC ˜H•oÕ	&Ñ Iò %r   )r   r   )r'   Zcollections.abcr    r"   r(   Z r   r   r   ZIPv4NetworkZIPv6Networkr   r&   ZMatchContextZPolicyQueryr   r   )r'   r%   r   Ú<module>r)      sT   øð÷ %Ò $Û Û ç &Ñ &à×$Ñ$ y×'<Ñ'<Õ<€à)I€Ó IôU6×&Ñ&¨×(9Ñ(9ö Ur   