+
     hY  c            	       s   R t ^ RIHt ^ RIHt ^ RIHtHt ^ RIH	t	 RRR^R^R	RR
//t
]! 4       t]! 4       t]! 4       t]	! ]
4      tR tR t]R8X  dm   ^ RIHt ]! 4       t]P+                  R]4       ]P+                  R]4       ]P+                  RR 4       ]P+                  RR 4       ]P+                  RR 4       R# R# )zN
A benchmark which tries to compare the possible slow subparts of validation.
)Registry)DRAFT202012)HashTrieMapHashTrieSet)Draft202012ValidatorZtypeZarrayZ	minLengthZ	maxLengthZitemsZintegerc                  sX    \         P                  R R4      \        P                  R 4      3# )fooZbar)hmapZinserthset     H/usr/lib/python3.14/site-packages/jsonschema/benchmarks/subcomponents.pyregistry_data_structuresr      s!    ;;ue$dkk%&888r	   c                  sd    \         P                  ! \        4      p \        P	                  R V R7      # )zurn:example)Zuriresource)r   Zcreate_resourceschemaregistryZwith_resource)r   s    r
   registry_addr      s(    **62H!!mh!GGr	   Z__main__)RunnerzHashMap/HashSet insertionzRegistry insertionZSuccessc                  s.    \         P                  ^.4      # )i   vZis_validr   r	   r
   <lambda>r   (   s    QCr	   ZFailurec                  s.    \         P                  R .4      # )r   r   r   r	   r
   r   r   )   s    UG)<r	   zMetaschema validationc                  s4    \         P                  \        4      # )N)r   Zcheck_schemar   r   r	   r
   r   r   *   s    q~~f7Mr	   N)Z__doc__Zreferencingr    Zreferencing.jsonschemar   Zrpdsr   r   Z
jsonschemar   r   r   r   r   r   r   r   Z__name__Zpyperfr   ZrunnerZ
bench_funcr   r	   r
   <module>r      s    ! . ) + Gfi 	
 }}: 9H
 zXF
13KL
*L9
i!89
i!<=
-/MN r	   