+
    (iH                      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                  &    ] 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       8/usr/lib/python3/dist-packages/referencing/jsonschema.pyr   r   $   s     
Hr!   r   c                    V ^8  d   QhRRRR/#    contentsSchemareturn
URI | Noner   )formats   "r"   __annotate__r+   /   s       J r!   c                T    \        V \        4      '       d   R # V P                  R4      # )N$id)
isinstanceboolget)r&   s   &r"   
_dollar_idr1   /   s!    (D!!<<r!   c                    V ^8  d   QhRRRR/# r$   r   )r*   s   "r"   r+   r+   5   s       : r!   c                    \        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/   r0   
startswithr&   ids   & r"   _legacy_dollar_idr9   5   sF    (D!!Vx%7	e	B	~bmmC00	 1~r!   c                    V ^8  d   QhRRRR/# )r%   r&   ObjectSchemar(   r)   r   )r*   s   "r"   r+   r+   =   s       * r!   c                x    R V 9   d   R# V P                  R4      pVe   VP                  R4      '       g   V# R# R# )r4   Nr8   r5   )r0   r6   r7   s   & r"   
_legacy_idr=   =   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*   s   "r"   r+   r+   E   s&     
 
(

 "
r!   c              #    "   \        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/   r0   r   create_resourceDynamicAnchor)r?   r&   anchordynamic_anchors   &&  r"   _anchorrJ   E   s      (D!!\\)$F"228<
 	

 \\"23N!"228<
 	
 "s   BBc               $    V ^8  d   QhRRRRRR/# r%   r?   r@   r&   r'   r(   zIterable[Anchor[Schema]]r   )r*   s   "r"   r+   r+   Z   &      ( r!   c                    \        V\        4      '       d   . # VP                  R 4      pVf   . # \        VV P	                  V4      R7      .# )rB   rC   )r.   r/   r0   r   rF   )r?   r&   rH   s   && r"   _anchor_2019rO   Z   sQ     (D!!	\\)$F~	"228<	
 r!   c               $    V ^8  d   QhRRRRRR/# rL   r   )r*   s   "r"   r+   r+   k   rM   r!   c                    \        V\        4      '       d   . # VP                  R R4      pVP                  R4      '       g   . # \	        VR,          V P                  V4      R7      .# )r-    r5      NNrC   )r.   r/   r0   r6   r   rF   r?   r&   r8   s   && r"   _legacy_anchor_in_dollar_idrV   k   sa     (D!!		eR	 B==	B"228<	
 r!   c               $    V ^8  d   QhRRRRRR/# )r%   r?   zSpecification[ObjectSchema]r&   r;   r(   zIterable[Anchor[ObjectSchema]]r   )r*   s   "r"   r+   r+   |   s&      . $r!   c                    VP                  R R4      pVP                  R4      '       g   . # \        VR,          V P                  V4      R7      .# )r8   rR   r5   rS   rC   )r0   r6   r   rF   rU   s   && r"   _legacy_anchor_in_idrY   |   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*   s   "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                    V ^8  d   QhRRRR/# r%   r&   r'   r(   Iterable[ObjectSchema]r   )r*   s   "r"   r+   &_subresources_of.<locals>.__annotate__   s     3 3& 3-C 3r!   c              3    <"   \        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&   eachr^   r]   r\   s   & r"   subresources_of)_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   r\   r]   r^   rh   s   fff r"   _subresources_ofrk      s    3 3 r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "r"   r+   r+      s&       r!   c                "   a aa R VVV 3R llpV# )G
Specifically handle older drafts where there are some funky keywords.
c                    V ^8  d   QhRRRR/# ra   r   )r*   s   "r"   r+   7_subresources_of_with_crazy_items.<locals>.__annotate__   s      & -C r!   c              3    <"   \        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/   rf   r0   r   )r&   rg   rr   r^   r]   r\   s   &  r"   rh   :_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   rj   s   fff r"   !_subresources_of_with_crazy_itemsrt      s     ( r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "r"   r+   r+      s&     $ $$$ $r!   c                "   a aa R VVV 3R llpV# )rn   c                    V ^8  d   QhRRRR/# ra   r   )r*   s   "r"   r+   D_subresources_of_with_crazy_items_dependencies.<locals>.__annotate__   s     " "& "-C "r!   c              3  ^  <"   \        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)Nrr   dependencies)r.   r/   rf   r0   r   iternextr   	r&   rg   rr   rz   rf   valuer^   r]   r\   s	   &     r"   rh   G_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   rj   s   fff r"   ._subresources_of_with_crazy_items_dependenciesr      s    " "6 r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "r"   r+   r+      s&     ' ''' 'r!   c                "   a aa R VVV 3R llpV# )zL
Specifically handle even older drafts where there are some funky keywords.
c                    V ^8  d   QhRRRR/# )r%   r&   r;   r(   rb   r   )r*   s   "r"   r+   G_subresources_of_with_crazy_aP_items_dependencies.<locals>.__annotate__   s      , 3I r!   c              3    <"   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)Nrr   rz   )additionalItemsadditionalProperties)rf   r0   r.   r   r{   r|   r   r}   s	   &     r"   rh   J_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   rj   s   fff r"   1_subresources_of_with_crazy_aP_items_dependenciesr      s     < r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "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*   s   "r"   r+   +_maybe_in_subresource.<locals>.__annotate__  s0     4 4%4 4 #4 
	4r!   c                   < \        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      # re   )r{   r|   in_subresourcer   r   r   	_segmentssegmentin_childr\   s   &&&  r"   maybe_in_subresource3_maybe_in_subresource.<locals>.maybe_in_subresource  sL    
 N	 Gh&x'4	4+@+H	 !
 &&{33r!   r   r\   r]   r^   r   r   s   f&& @r"   _maybe_in_subresourcer     s    
 )H4 4  r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "r"   r+   r+   /  &            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   r   )r*   s   "r"   r+   7_maybe_in_subresource_crazy_items.<locals>.__annotate__6  0     4 4%4 4 #4 
	4r!   c                  < \        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      # )rr   Nr{   r.   r&   r   r   r|   r   s   &&&  r"   r   ?_maybe_in_subresource_crazy_items.<locals>.maybe_in_subresource6  s    
 N	 G'!j$$' '  ..{;;h&x'4	4+@+H ! &&{33r!   r   r   s   f&& @r"   !_maybe_in_subresource_crazy_itemsr   /      
 )H4 4$  r!   c               $    V ^8  d   QhRRRRRR/# r[   r   )r*   s   "r"   r+   r+   K  r   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   r   )r*   s   "r"   r+   D_maybe_in_subresource_crazy_items_dependencies.<locals>.__annotate__R  r   r!   c                  < \        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      # )rr   N>   rr   rz   r   r   s   &&&  r"   r   L_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   r   s   f&& @r"   ._maybe_in_subresource_crazy_items_dependenciesr   K  r   r!   zdraft2020-12r   not)r\   r^   r]   )rD   id_ofrh   
anchors_inr   zdraft2019-09r   zdraft-07zdraft-06zdraft-04zdraft-03extends)r^   r]   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               $    V ^8  d   QhRRRRRR/# )r%   
dialect_idr   defaultzSpecification[Any] | _Unsetr(   zSpecification[Any]r   )r*   s   "r"   r+   r+   =  s&      ( r!   c                    \         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

r5   )r   r0   rstripr&   r   r   )r   r   rE   s   && r"   specification_withr   =  sI     "":#4#4S#9:H   &Z((Nr!   c                  <    ] tR tRt$ RtR]R&   R]R&   R R ltR	tR
# )rG   iS  z,
Dynamic anchors, introduced in draft 2020.
strrD   SchemaResourcerE   c                    V ^8  d   QhRRRR/# r%   r   z_Resolver[Schema]r(   z_Resolved[Schema]r   )r*   s   "r"   r+   DynamicAnchor.__annotate__\  s     
 
 1 
6G 
r!   c                d   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&   r   )rE   dynamic_scoperH   rD   r~   r   NoSuchAnchorr.   rG   	_Resolvedr&   r   )selfr   lastr   registryrH   s   &&    r"   resolve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"   rG   rG   S  s     I
 
r!   rG   c                    V ^8  d   QhRRRR/# r   r   )r*   s   "r"   r+   r+   n  s      #4 9J r!   c                   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).
r5   z$recursiveAnchor)lookupr.   r&   r   r0   r   )r   resolvedr   _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thenrr   containscontentSchemapropertyNamesunevaluatedItemsr   unevaluatedProperties>   allOfanyOfoneOfprefixItems>   
propertiesdefinitionsdependentSchemaspatternProperties$defs>   r   r   r   r   r   r   r   r   r   r   r   >   r   r   r   >   r   r   r   r   r   r   r   r   >   r   r   r   >   r   r   r   r   r   >   r   r   r   )B__conditional_annotations__r   
__future__r   collections.abcr   r   r   typingr   r   referencingr   r	   r
   r   r   referencing._attrsr   referencing._corer   r   r   r   	_Resolverr   referencing.typingr   
AnchorTyper   r   r;   r/   r'   r   r   r   r   	Exceptionr   r1   r9   r=   rJ   rO   rV   rY   	frozensetrk   rt   r   r   r   r   r   DRAFT202012DRAFT201909DRAFT7DRAFT6DRAFT4DRAFT3opaquer   r   rG   r   )r   r?   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
