+
     hH  c                  s  a 0 t $ R t^ RIHt ^ RIHtHtHt ^ RIH	t	H
t
 ^ RIHtHtHtHtHt ^ RIHt ^ RIHtHtHtHt ^ RIHtHtHt ]]]	3,          t]
] ]3,          t!]]!,          t"]]!,          t#]! 4       t$R]%R	&   ] ! R
 R]&4      4       t'R R lt(R R lt)R R lt*R R lt+R R lt,R R lt-R R lt.]/! 4       ]/! 4       ]/! 4       3R R llt0]/! 4       ]/! 4       ]/! 4       3R R llt1]/! 4       ]/! 4       ]/! 4       3R R llt2]/! 4       ]/! 4       ]/! 4       3R  R! llt3]/! 4       ]/! 4       ]/! 4       3R" R# llt4]/! 4       ]/! 4       ]/! 4       3R$ R% llt5]/! 4       ]/! 4       ]/! 4       3R& R' llt6]! R(](]0! 0 RDm0 REm0 RFmR+7      ]+]4! 0 RDm0 REm0 RFmR+7      R,7      t7]! R-](]1! 0 RGm0 RHm0 RFmR+7      ],]5! 0 RGm0 RHm0 RFmR+7      R,7      t8]! R/])]2! 0 RIm0 RHm0 RJmR+7      ]-]6! 0 RIm0 RHm0 RJmR+7      R,7      t9]! R0])]2! 0 RKm0 RHm0 RJmR+7      ]-]6! 0 RKm0 RHm0 RJmR+7      R,7      t:]! R1]*]3! R*00 RHm0 RJmR+7      ].]6! 0 RLm0 RHm0 RJmR+7      R,7      t;]! R2]*]3! R300 RJmR47      ].]6! R.R)0R300 RJmR+7      R,7      t<]! R5]73R6]83R7]93R8]:3R9];3R:]<33 U Uu/ uF  w  rV ]P{                  V4      bK  	  upp 4      t>R;]%R<&   ]3R= R> llt?] ! R? R@4      4       t@RA RB ltARC# u upp i )MzI
Referencing implementations for JSON Schema specs (historic & current).
)annotations)IterableSequenceSet)AnyUnion)AnchorRegistryResourceSpecification
exceptions)frozen)_UNSETResolvedResolver_Unset)URIr   MappingSchemaRegistryEMPTY_REGISTRYc                  s&    ] tR t^$t$ RtR]R&   RtR# )UnknownDialectz
A dialect identifier was found for a dialect unknown by this library.

If it's a custom ("unofficial") dialect, be sure you've registered it.
r   uri N)__name__
__module____qualname____firstlineno____doc____annotations____static_attributes__r       ;/usr/lib/python3.14/site-packages/referencing/jsonschema.pyr   r   $   s     
Hr   r   c                    V ^8  d   QhRRRR/#    contentsSchemareturn
URI | Noner   Zformat   "r   __annotate__r)   /   s       J r   c                sT    \        V \        4      '       d   R # V P                  R4      # )N$id)
isinstanceboolget)r#   s   &r   
_dollar_idr.   /   s!    (D!!<<r   c               r    r!   r   r'   r(   r   r)   r)   5   s       : r   c                s    \        V \        4      '       g   R V 9   d   R# V P                  R4      pVe   VP                  R4      '       g   V# R# R# )$refNr*   #)r+   r,   r-   
startswithr#   id   & r   _legacy_dollar_idr5   5   sF    (D!!Vx%7	e	B	~bmmC00	 1~r   c               r    )r"   r#   ObjectSchemar%   r&   r   r'   r(   r   r)   r)   =   s       * r   c                sx    R V 9   d   R# V P                  R4      pVe   VP                  R4      '       g   V# R# R# )r/   Nr3   r0   )r-   r1   r2   r4   r   
_legacy_idr7   =   s:    	d	B	~bmmC00	 1~r   c               $    V ^8  d   QhRRRRRR/# )r"   specificationSpecification[Schema]r#   r$   r%   zIterable[AnchorType[Schema]]r   r'   r(   r   r)   r)   E   s&     
 
(

 "
r   c              #  s  "   \        V\        4      '       d   R # VP                  R4      pVe   \        VV P	                  V4      R7      x  VP                  R4      pVe!   \        VV P	                  V4      R7      x  R # R # 5i)N$anchornameresourcez$dynamicAnchor)r+   r,   r-   r   create_resourceDynamicAnchor)r9   r#   anchorZdynamic_anchors   &&  r   _anchorrB   E   s      (D!!\\)$F"228<
 	

 \\"23N!"228<
 	
 "s   BBc               r8   r"   r9   r:   r#   r$   r%   zIterable[Anchor[Schema]]r   r'   r(   r   r)   r)   Z   &      ( r   c                s    \        V\        4      '       d   . # VP                  R 4      pVf   . # \        VV P	                  V4      R7      .# )r;   r<   )r+   r,   r-   r   r?   )r9   r#   rA      && r   _anchor_2019rF   Z   sQ     (D!!	\\)$F~	"228<	
 r   c               r8   rC   r   r'   r(   r   r)   r)   k   rD   r   c                s    \        V\        4      '       d   . # VP                  R R4      pVP                  R4      '       g   . # \	        VR,          V P                  V4      R7      .# )r*    r0   i   NNr<   )r+   r,   r-   r1   r   r?   r9   r#   r3   rE   r   _legacy_anchor_in_dollar_idrJ   k   sa     (D!!		eR	 B==	B"228<	
 r   c               r8   )r"   r9   zSpecification[ObjectSchema]r#   r6   r%   zIterable[Anchor[ObjectSchema]]r   r'   r(   r   r)   r)   |   s&      . $r   c                s    VP                  R R4      pVP                  R4      '       g   . # \        VR,          V P                  V4      R7      .# )r3   rG   r0   rH   r<   )r-   r1   r   r?   rI   rE   r   _legacy_anchor_in_idrK   |   sO     
dB	B==	B"228<	
 r   c               $    V ^8  d   QhRRRRRR/# r"   in_valuezSet[str]in_subvaluesin_subarrayr   r'   r(   r   r)   r)      s&       r   c                "   a aa R VVV 3R llpV# )z
Create a callable returning JSON Schema specification-style subschemas.

Relies on specifying the set of keywords containing subschemas in their
values, in a subobject's values, or in a subarray.
c               r    r"   r#   r$   r%   Iterable[ObjectSchema]r   r'   r(   r   r)   Z&_subresources_of.<locals>.__annotate__   s     3 3& 3-C 3r   c              3  s  <"   \        V \        4      '       d   R # S F  pW9   g   K  W,          x  K  	  S F  pW9   g   K  W,           R j  xL
  K  	  S F)  pW9   g   K  W,          P                  4        R j  xL
  K+  	  R #  L9 L5iN)r+   r,   values)r#   eachrP   rO   rN   s   & r   subresources_ofZ)_subresources_of.<locals>.subresources_of   s{     h%%Dn$   D#>))   !D#>00222 ! * 3s4   !BBBB	B%B>B?BBr   rN   rO   rP   rW      fff r   _subresources_ofrZ      s    3 3 r   c               rL   rM   r   r'   r(   r   r)   r)      s&       r   c                rQ   )G
Specifically handle older drafts where there are some funky keywords.
c               r    rR   r   r'   r(   r   r)   Z7_subresources_of_with_crazy_items.<locals>.__annotate__   s      & -C r   c              3  s  <"   \        V \        4      '       d   R # S F  pW9   g   K  W,          x  K  	  S F  pW9   g   K  W,           R j  xL
  K  	  S F)  pW9   g   K  W,          P                  4        R j  xL
  K+  	  V P                  R4      pVe)   \        V\        4      '       d   T R j  xL
  R # Vx  R # R #  Lv LI L5i)Nitems)r+   r,   rU   r-   r   )r#   rV   r\   rP   rO   rN   s   &  r   rW   Z:_subresources_of_with_crazy_items.<locals>.subresources_of   s     h%%Dn$   D#>))   !D#>00222 ! W%%**   	  * 3
 !sF   !CCCCC%C>C?8C7C
8CC
Cr   rX   rY   r   !_subresources_of_with_crazy_itemsr]      s     ( r   c               rL   rM   r   r'   r(   r   r)   r)      s&     $ $$$ $r   c                rQ   )r[   c               r    rR   r   r'   r(   r   r)   ZD_subresources_of_with_crazy_items_dependencies.<locals>.__annotate__   s     " "& "-C "r   c              3  s^  <"   \        V \        4      '       d   R # S F  pW9   g   K  W,          x  K  	  S F  pW9   g   K  W,           R j  xL
  K  	  S F)  pW9   g   K  W,          P                  4        R j  xL
  K+  	  V P                  R4      pVe&   \        V\        4      '       d   T R j  xL
  MVx  V P                  R4      pVeN   \        VP                  4       4      p\        VR 4      p\        V\        4      '       d   Vx  T R j  xL
  R # R # R #  L L Lq L5i)Nr\   dependencies)r+   r,   rU   r-   r   iternextr   	r#   rV   r\   r^   rU   valuerP   rO   rN   	   &     r   rW   ZG_subresources_of_with_crazy_items_dependencies.<locals>.subresources_of   s    h%%Dn$   D#>))   !D#>00222 ! W%%**   ||N3#,--/0F&E%))!!! * $ * 3
 ! "sY   !D-D-D-D%D-%D->D'?8D-7D)8A"D-D+D-'D-)D-+D-r   rX   rY   r   ._subresources_of_with_crazy_items_dependenciesrd      s    " "6 r   c               rL   rM   r   r'   r(   r   r)   r)      s&     ' ''' 'r   c                rQ   )zL
Specifically handle even older drafts where there are some funky keywords.
c               r    )r"   r#   r6   r%   rS   r   r'   r(   r   r)   ZG_subresources_of_with_crazy_aP_items_dependencies.<locals>.__annotate__   s      , 3I r   c              3  s  <"   S F  pW9   g   K  W,          x  K  	  S F  pW9   g   K  W,           R j  xL
  K  	  S F)  pW9   g   K  W,          P                  4        R j  xL
  K+  	  V P                  R4      pVe&   \        V\        4      '       d   T R j  xL
  MVx  V P                  R4      pVeJ   \	        VP                  4       4      p\        VR 4      p\        V\        4      '       d   Vx  T R j  xL
  R F0  pV P                  V4      p\        V\        4      '       g   K,  Vx  K2  	  R #  EL L L LC5i)Nr\   r^   )additionalItemsadditionalProperties)rU   r-   r+   r   r_   r`   r   ra   rc   r   rW   ZJ_subresources_of_with_crazy_aP_items_dependencies.<locals>.subresources_of   s    Dn$   D#>))   !D#>00222 ! W%%**   ||N3#,--/0F&E%))!!!=DLL&E%)) >' * 3
 ! "s\   	EEED?EE&E'8EE A"EE-E5EEEEr   rX   rY   r   1_subresources_of_with_crazy_aP_items_dependenciesrg      s     < r   c               rL   rM   r   r'   r(   r   r)   r)     s&            r   c                .   a a W,          oR  VV 3R llpV# )c               (    V ^8  d   QhRRRRRRRR/# r"   segmentszSequence[int | str]resolverz_Resolver[Any]subresourcezResource[Any]r%   r   r'   r(   r   r)   Z+_maybe_in_subresource.<locals>.__annotate__  s0     4 4%4 4 #4 
	4r   c                s   < \        V 4      pV F%  pVS9  g   K  VS9  g   \        VR 4      e   K#  Vu # 	  VP                  V4      # rT   )r_   r`   in_subresourcerk   rl   rm   Z	_segmentsZsegmentin_childrN      &&&  r   maybe_in_subresourceZ3_maybe_in_subresource.<locals>.maybe_in_subresource  sL    
 N	 Gh&x'4	4+@+H	 !
 &&{33r   r   rN   rO   rP   rr   rp      f&& @r   _maybe_in_subresourceru     s    
 )H4 4  r   c               rL   rM   r   r'   r(   r   r)   r)   /  &            r   c                rh   )c               ri   rj   r   r'   r(   r   r)   Z7_maybe_in_subresource_crazy_items.<locals>.__annotate__6  0     4 4%4 4 #4 
	4r   c                s  < \        V 4      pV F_  pVR 8X  d4   \        VP                  \        4      '       d   VP	                  V4      u # VS9  g   KF  VS9  g   \        VR4      e   K]  Vu # 	  VP	                  V4      # )r\   Nr_   r+   r#   r   rn   r`   ro   rq   r   rr   Z?_maybe_in_subresource_crazy_items.<locals>.maybe_in_subresource6  s    
 N	 G'!j$$' '  ..{;;h&x'4	4+@+H ! &&{33r   r   rs   rt   r   !_maybe_in_subresource_crazy_itemsry   /      
 )H4 4$  r   c               rL   rM   r   r'   r(   r   r)   r)   K  rv   r   c                rh   )c               ri   rj   r   r'   r(   r   r)   ZD_maybe_in_subresource_crazy_items_dependencies.<locals>.__annotate__R  rw   r   c                s  < \        V 4      pV F_  pVR9   d4   \        VP                  \        4      '       d   VP	                  V4      u # VS9  g   KF  VS9  g   \        VR4      e   K]  Vu # 	  VP	                  V4      # )r\   N>   r\   r^   rx   ro   rq   r   rr   ZL_maybe_in_subresource_crazy_items_dependencies.<locals>.maybe_in_subresourceR  s    
 N	 G33
$$9 9  ..{;;h&x'4	4+@+H ! &&{33r   r   rs   rt   r   ._maybe_in_subresource_crazy_items_dependenciesr{   K  rz   r   zdraft2020-12rf   not)rN   rP   rO   )r=   Zid_ofrW   Z
anchors_inrr   zdraft2019-09re   zdraft-07zdraft-06zdraft-04zdraft-03Zextends)rP   rO   z,https://json-schema.org/draft/2020-12/schemaz,https://json-schema.org/draft/2019-09/schemaz&http://json-schema.org/draft-07/schemaz&http://json-schema.org/draft-06/schemaz&http://json-schema.org/draft-04/schemaz&http://json-schema.org/draft-03/schemazRegistry[Specification[Schema]]_SPECIFICATIONSc               r8   )r"   
dialect_idr   defaultzSpecification[Any] | _Unsetr%   zSpecification[Any]r   r'   r(   r   r)   r)   =  s&      ( r   c                s    \         P                  V P                  R4      4      pVe   VP                  # V\        J d   \        V 4      hV# )z
Retrieve the `Specification` with the given dialect identifier.

Raises:

    `UnknownDialect`

        if the given ``dialect_id`` isn't known

r0   )r}   r-   Zrstripr#   r   r   )r~   r   r>   rE   r   specification_withr   =  sI     "":#4#4S#9:H   &Z((Nr   c                  s<    ] tR tRt$ RtR]R&   R]R&   R R ltR	tR
# )r@   iS  z,
Dynamic anchors, introduced in draft 2020.
strr=   SchemaResourcer>   c               r    r"   rl   z_Resolver[Schema]r%   z_Resolved[Schema]r   r'   r(   r   r)   ZDynamicAnchor.__annotate__\  s     
 
 1 
6G 
r   c                sd   V P                   pVP                  4        FO  w  r4 VP                  W0P                  4      P                  p\        T\        4      '       g   KC  TP                   pKQ  	  \        VP                  VP                  V4      R7      #   \
        P                   d     K  i ; i)z"
Resolve this anchor dynamically.
)r#   rl   )r>   dynamic_scoperA   r=   rb   r
   ZNoSuchAnchorr+   r@   	_Resolvedr#   rn   )Zselfrl   Zlastr   ZregistryrA   s   &&    r   resolveZDynamicAnchor.resolve\  s     }}%335MC!ii8>> &-00 6 ]],,T2
 	
	 ** s   %BB/.B/r   N)r   r   r   r   r   r   r   r   r   r   r   r@   r@   S  s     I
 
r   r@   c               r    r   r   r'   r(   r   r)   r)   n  s      #4 9J r   c                s   V P                  R4      p\        VP                  \        4      '       d   VP                  P	                  R4      '       dq   V P                  4        F\  w  r#V P                  V4      p\        VP                  \        4      '       d"   VP                  P	                  R4      '       g    V# TpK^  	  V# )u   
Recursive references (via recursive anchors), present only in draft 2019.

As per the 2019 specification (§ 8.2.4.2.1), only the ``#`` recursive
reference is supported (and is therefore assumed to be the relevant
reference).
r0   z$recursiveAnchor)Zlookupr+   r#   r   r-   r   )rl   Zresolvedr   Z_Znext_resolveds   &    r   lookup_recursive_refr   n  s     s#H(##W--(2C2C2G2G3 3 ,,.FC$OOC0M&&  #++//0BCCO %H / Or   N>   ifr|   elsethenr\   containscontentSchemapropertyNamesunevaluatedItemsrf   unevaluatedProperties>   allOfanyOfoneOfZprefixItems>   
propertiesdefinitionsZdependentSchemaspatternPropertiesz$defs>   r   r|   r   r   r   r   r   re   r   rf   r   >   r   r   r   >   r   r|   r   r   r   r   re   rf   >   r   r   r   >   r|   r   r   re   rf   >   r|   re   rf   )B__conditional_annotations__r   Z
__future__r    Zcollections.abcr   r   r   Ztypingr   r   Zreferencingr   r   r   r	   r
   Zreferencing._attrsr   Zreferencing._corer   r   r   r   Z	_Resolverr   Zreferencing.typingr   Z
AnchorTyper   r   r6   r,   r$   r   r   r   r   Z	Exceptionr   r.   r5   r7   rB   rF   rJ   rK   Z	frozensetrZ   r]   rd   rg   ru   ry   r{   ZDRAFT202012ZDRAFT201909ZDRAFT7ZDRAFT6ZDRAFT4ZDRAFT3Zopaquer}   r   r@   r   )r~   r9   r   s   00@r   <module>r      s   # 3 3  M M %  B A sCx  
t\!	" &! &! "* + Y  
*""  #&[%K: #&[%KB #&[%K$P #&[%K'V #&[%K 0 #&[%K : #&[%K : 	
$
 ?
. .
 ?
72h 	
5
 0
. :
 0
72h 
	
B	
 0G +G	
 0G% 
D 
	
B
 0G
 +G
 0G

8 
	
E/G
 $GC/G
  
	
EKG $G#%;<KG
  4< <[I;[I5v>5v>5v>5v>*

*
%J 	HOOM22*

40 " ,2, 
 
 
4
s   K
