rc<@ddlmZddlmZmZddlZddlmZmZm Z m Z m Z m Z m Z mZddlmZmZdZdZdZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+d Z,d!Z-d"Z.d#Z/d$Z0d%Z1d&Z2d'Z3d(Z4d)Z5d*Z6dS)+)Fraction) urldefragurljoinN) ensure_listequal extras_msgfind_additional_properties%find_evaluated_item_indexes_by_schema&find_evaluated_property_keys_by_schemaunbooluniq) FormatErrorValidationErrorc# K||dsdS|D]S\}}|D]9\}}tj||r|||||Ed{V:TdSNobjectpath schema_path)is_typeitemsresearchdescend) validatorpatternPropertiesinstanceschemapattern subschemakvs 8/usr/lib/python3/dist-packages/jsonschema/_validators.pyrrs   Xx 0 0/5577NN$$  DAqy!$$ $,,yqg- c#~K||dsdS|D]}|||Ed{V dS)Nr)rr)rr)r propertyNamesrrpropertys r#r&r&sn   Xx 0 0NN$$h}$MMMMMMMMMMNNr$c#zK||dsdStt||}||dr+|D]&}|||||Ed{V'dS|s|rd|vrt |dkrd}nd}ddt |D}dd t |dD}|d |d |} t| VdSd } t| t|zVdSdSdS) Nrrrdoesdo, c34K|]}t|VdSNrepr.0eachs r# z'additionalProperties..6s(EEdtDzzEEEEEEr$c34K|]}t|VdSr/r0r2s r#r5z'additionalProperties..7s9!!#T !!!!!!r$ z not match any of the regexes: z8Additional properties are not allowed (%s %s unexpected)) rsetr rlenjoinsortedrr) raPrrextrasextraverbjoinedpatternserrors r#additionalPropertiesrC&s   Xx 0 0 +Hf== > >FX&&> J JE ((%"5(II I I I I I I I I J J >F> & ( (6{{aYYEEfVnnEEEEEFyy!!'-f5H.I'J'J!!!HOOOOXOOE!%(( ( ( ( ( (NE!%*V*<*<"<== = = = = =>>>>r$c#VK||dsdSt|dg}t|}|dur!||krd|d|}t|VdSt ||D]&}|||||Ed{V'dS)Narray prefixItemsFzExpected at most z items, but found )rrr)rr9getrranger)rrrrprefixtotalmessageindexs r#rrAs   Xw / / M2.. / /F MME ~~%&..GfGGGGg&&&&&&&65))  E ((!%)          r$c #K||dr*||didrdSt|dg}||dr?t||d|D]#\}}||||Ed{V$dS|st|t|dgkrPd}t |t |t|dgdzVdSdSdS)NrErr)startr)z3Additional items are not allowed (%s %s unexpected))rrGr9 enumeraterrr)raIrr len_itemsrLitemrBs r#additionalItemsrSSs{   h 0 0   VZZ44h ? ? FJJw++,,IX&& $Xijj%9KKK ? ?KE4 ((r(>> > > > > > > > > ? ?  CMMC 7B(?(?$@$@@@E JxFJJw,C,C(D(D(E(EFGG G         @@r$c#VKt||st|dVdSdS)Nz was expected)rr)rconstrrs r#rUrUesE 5 ! !9777888888899r$c#K||dsdSd}|dd}|dt|}|D]Q}|||r&|dz }||krt d|dd| VdSR||kr5|st |d VdSt d |d |d d| VdSdS)NrEr minContainsr* maxContainsrz8Too many items match the given schema (expected at most ))rvalidator_valuez1 does not contain items matching the given schemaz8Too few items match the given schema (expected at least z but only z matched))rrGr9evolveis_validr)rcontainsrrmatches min_contains max_containsr4s r#r^r^js   Xw / /G::mQ//L::mS]];;L     8  , , 5 5d ; ;  qLG%%%9)5999+$0   !,,,      ">>>+2>>>' ,      r$c#vK||dsdS||krt|d|VdSdS)Nnumberz) is less than or equal to the minimum of rr)rminimumrrs r#exclusiveMinimumrfsv   Xx 0 07 * *% * *       r$c#vK||dsdS||krt|d|VdSdS)Nrcz, is greater than or equal to the maximum of rd)rmaximumrrs r#exclusiveMaximumrisv   Xx 0 07 - -!( - -       r$c#zK||dsdS||kr|d|}t|VdSdS)Nrcz is less than the minimum of rd)rrerrrKs r#reresc   Xx 0 0'IIgIIg&&&&&&&r$c#zK||dsdS||kr|d|}t|VdSdS)Nrcz is greater than the maximum of rd)rrhrrrKs r#rhrhsc   Xx 0 0'LLLLg&&&&&&&r$c#FK||dsdSt|trR||z } t||k}n=#t$r+t |t |z jdk}Yn wxYw||z}|rt|d|VdSdS)Nrcr*z is not a multiple of )r isinstancefloatint OverflowErrorr denominatorr)rdBrrquotientfaileds r# multipleOfrus   Xx 0 0"eb= J]]h.FF J J Jx((8B<<7DIFFF JB IGG2GGHHHHHHHIIsA 2A?>A?c#K||dr)t||krt|dVdSdSdS)NrE is too shortrr9rrmIrrs r#minItemsr{sa7++<H 0B0B:::;;;;;;;<<0B0Br$c#K||dr)t||krt|dVdSdSdS)NrE is too longrxrys r#maxItemsr~sa7++;H 0B0B999:::::::;;0B0Br$c#K|r;||dr't|st|dVdSdSdSdS)NrEz has non-unique elements)rr r)ruIrrs r# uniqueItemsrs G   h 0 0GXG EEEFFFFFFF GGGGGGr$c#K||dr-tj||st|d|VdSdSdS)Nstringz does not match )rrrr)rpatrnrrs r#rrsv(H--H %**HFFUFFGGGGGGG HHHHr$c#K|jS |j||dS#t$r(}t|j|jVYd}~dSd}~wwxYwdS)N)cause)format_checkercheckrrrKr)rformatrrrBs r#rrs+ D  $ * *8V < < < < < D D D!%-u{CCC C C C C C C C C C D,+s( AAAc#K||dr)t||krt|dVdSdSdS)NrrwrxrmLrrs r# minLengthrsa8,,<X1C1C:::;;;;;;;<<1C1Cr$c#K||dr)t||krt|dVdSdSdS)Nrr}rxrs r# maxLengthrsa8,,;X1C1C999:::::::;;1C1Cr$c#K||dsdS|D]+\}}||vr |D]}||vr|d|}t|V,dS)Nrz is a dependency of )rrr)rdependentRequiredrrr' dependencyr4rKs r#rrs   Xx 0 0 1 7 7 9 9//* 8 # #  / /D8##!EEEE%g..... / //r$c#K||dsdS|D](\}}||vr ||||Ed{V)dS)Nrrrrr)rdependentSchemasrrr'rs r#rr s   Xx 0 0 0 6 6 8 8  * 8 # # $$ jh%            r$c#K|dks|dkrDt|tfd|Drt|d|VdSdS||vrt|d|VdSdS)Nrr*c3>K|]}t|kVdSr/)r )r3r4unbooleds r#r5zenum..s.::Dx6$<<'::::::r$z is not one of )r allr)renumsrrrs @r#enumrs1}}A (## ::::E::: : : K!X"I"I"I"IJJ J J J J J K K   EEEEEFFFFFFF  r$c#Kt|jdd}|Q|j|5}|||Ed{VddddS#1swxYwYdS|j|\}}|j| |||Ed{V|jdS#|jwxYw)Nresolve)getattrresolver resolvingrr push_scope pop_scope)rrefrrrresolvedscopes r#rr sUi()T::G   ) )# . . =( ((8<< < < < < < < < = = = = = = = = = = = = = = = = = =$,44S99x%%e,,, + ((8<< < < < < < < <   ( ( * * * * *I  ( ( * * * *sAA#&A#$CC6c#Kt|\}}|jjD]}t||}|j|5}d|vr7||dkr+|||Ed{V ddddSdddn #1swxYwY|j|5}|||Ed{VddddS#1swxYwYdS)Nz$dynamicAnchor)rr _scopes_stackrrr) r dynamicRefrr_fragmenturl lookup_urlr s r#rr/sJ''KAx!/ > >S*--   ) )* 5 5  I-- I.>$???$,,XyAAAAAAAAA                            ) )* 5 5 > ((9== = = = = = = = > > > > > > > > > > > > > > > > > >s$ .BB B ;C%%C),C)c#Kt|}tfd|Ds7dd|D}td|VdSdS)Nc3DK|]}|VdSr/)r)r3typerrs r#r5ztype..As3CCTy  400CCCCCCr$r-c34K|]}t|VdSr/r0)r3rs r#r5ztype..Bs(77$t**777777r$z is not of type )ranyr:r)rtypesrrreprss` ` r#rr>s   E CCCCCUCCC C CF 7777777DDUDDEEEEEEEFFr$c#K||dsdS|D].\}}||vr%||||||Ed{V/dSrr)r propertiesrrr'r s r#rrFs   Xx 0 0)//11) x   (("$ )       r$c#tK||dsdS|D]}||vrt|dVdS)Nrz is a required propertyrd)rrequiredrrr's r#rrTsi   Xx 0 0JJ 8 # #!X"H"H"HII I I IJJr$c#K||dr)t||krt|dVdSdSdS)Nrz does not have enough propertiesrxrmPrrs r# minPropertiesr\sd8,,OX1C1CMMMNNNNNNNOO1C1Cr$c#K||dsdS||dr)t||krt|dVdSdSdS)Nrz has too many propertiesrxrs r# maxPropertiesras   Xx 0 08,,GX1C1CEEEFFFFFFFGG1C1Cr$c#pKt|D]#\}}||||Ed{V$dS)Nr)rOr)rallOfrrrLr s r#rrhs`%e,,MMy$$Xye$LLLLLLLLLLMMr$c#Kg}t|D]D\}}t||||}|sdS||Et |d|VdS)Nr, is not valid under any of the given schemascontext)rOlistrextendr)ranyOfrr all_errorsrLr errss r#rrmsJ%e,,   yI%%h u%MMNN  EE$ G G G        r$c#Kt|}g}|D]E\}}t||}|s|} n,||Ft d|Vfd|D} | rL| | dd| D} t d| VdSdS)Nrrrclg|]0\}}|.|1S)rY)r\r])r3rr4rrs r# zoneOf..sRD   4  ( ( 1 1( ; ; r$r-c34K|]}t|VdSr/r0)r3rs r#r5zoneOf..s(@@6$v,,@@@@@@r$z is valid under each of )rOrrrrappendr:) roneOfrr subschemasrrLr r first_valid more_validrs ` ` r#rr{sI5!!JJ&   yI%%h u%MMNN #K E$ G G G      &JN+&&& @@Z@@@@@LLULLMMMMMMMNNr$c#K|||r|d|}t|VdSdS)NrYz should not be valid under )r\r]r)r not_schemarrrKs r#not_rsdz**33H=='JJJJJg&&&&&&&''r$c#K|||r.d|vr(|d}|||dEd{VdSdSd|vr(|d}|||dEd{VdSdS)NrYthenrelse)r\r]r)r if_schemarrrelse_s r#if_rsy))228<<J V  &>D ((4V(LL L L L L L L L L L   6  v$$Xu&$IIIIIIIIIII  r$c#K||dsdSt|||fdt|D}|r%d}t|t |zVdSdS)NrEc"g|] \}}|v | Sr)r3rLrRevaluated_item_indexess r#rz$unevaluatedItems..s3 . . . . . .r$z4Unevaluated items are not allowed (%s %s unexpected))rr rOrr)runevaluatedItemsrrunevaluated_itemsrBrs @r#rrs   Xw / /B8V )( 3 3EFej1B&C&CCDDDDDDDEEr$c#.K||dsdSt|||}g}|D]=}||vr7||||||D]}||>|r%d}t |t |zVdSdS)Nrrz9Unevaluated properties are not allowed (%s %s unexpected))rr rrrr) runevaluatedPropertiesrrevaluated_property_keysunevaluated_property_keysr'rrBs r#rrs   Xx 0 0D8V!#;; 2 2 2&&"%$ ' ; ; *00:::: MKej1J&K&KKLLLLLLLMMr$c#K||dsdStt||D]'\\}}}|||||Ed{V(dS)NrE)rrrr)rziprOr)rrFrrrLrRr s r#rFrFs   Xw / /$' ((;(;[$I$I   y$$ %            r$)7 fractionsr urllib.parserrrjsonschema._utilsrrrr r r r r jsonschema.exceptionsrrrr&rCrrSrUr^rfrirerhrur{r~rrrrrrrrrrrrrrrrrrrrrrrFrr$r#rs++++++++                     ?>>>>>>>   NNN>>>6$   $999   F      ''''''III6<<< ;;; GGGHHHDDD<<< ;;; / / /    GGG + + + > > >FFF   JJJOOO GGGMMM    NNN2''' JJJ E E EMMM,      r$