Coverage for fastapi/utils.py: 100%

107 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2025-12-04 08:29 +0000

1import re 2a b c d e f Pb

2import warnings 2a b c d e f Pb

3from dataclasses import is_dataclass 2a b c d e f Pb

4from typing import ( 2a b c d e f Pb

5 TYPE_CHECKING, 

6 Any, 

7 Dict, 

8 MutableMapping, 

9 Optional, 

10 Set, 

11 Type, 

12 Union, 

13 cast, 

14) 

15from weakref import WeakKeyDictionary 2a b c d e f Pb

16 

17import fastapi 2a b c d e f Pb

18from fastapi._compat import ( 2a b c d e f Pb

19 PYDANTIC_V2, 

20 BaseConfig, 

21 ModelField, 

22 PydanticSchemaGenerationError, 

23 Undefined, 

24 UndefinedType, 

25 Validator, 

26 annotation_is_pydantic_v1, 

27 lenient_issubclass, 

28 may_v1, 

29) 

30from fastapi.datastructures import DefaultPlaceholder, DefaultType 2a b c d e f Pb

31from pydantic import BaseModel 2a b c d e f Pb

32from pydantic.fields import FieldInfo 2a b c d e f Pb

33from typing_extensions import Literal 2a b c d e f Pb

34 

35if TYPE_CHECKING: # pragma: nocover 2a b c d e f Pb

36 from .routing import APIRoute 

37 

38# Cache for `create_cloned_field` 

39_CLONED_TYPES_CACHE: MutableMapping[Type[BaseModel], Type[BaseModel]] = ( 2a b c d e f Pb

40 WeakKeyDictionary() 

41) 

42 

43 

44def is_body_allowed_for_status_code(status_code: Union[int, str, None]) -> bool: 2a b c d e f Pb

45 if status_code is None: 2a yjzjAjBjCjDj#)Ej$)%)Fj')JiKi()LiGjHjIjJjMiKjLjMjNjKcOjLcMc))PjQj%iRjNc'bSjTjUjVjWjXjYjZj0j1j2j*)3j4j5j6j7j8j9j!jwi#j$j%j+),)'j(jOcDb(b)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j_j`j{j|j}j~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBk-)CkDkEkFkGk=e?e@e[e]eHkIkJkKkLkMkNkOkPk'i(iQkRkSkvgwgxbTkUkVk.)Wk/)XkYk:)Zk0k1k;)2k3k4k5k=)6k?)7k8k9k!k#k$k%k'k(k@))kS T U V W m g Ve*k[)])+k^),k-k.kNi/k:k;k=k?k@k[k]k^k_k_)xgyg`)`k{){k|k|)}k})~kalbl~)a*clOidlPio X Y QbRbZ elb*flglhliljlc*klllmlnlold*plqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3le*4l5l6l7l8l9l!lf*#l$l%l'l(l)l*l+l,lg*h*-l.l/l:l;l=l?l@l[l]l^l_l`l{l|l}li*~lambmcmdmemfmgmhmimjmkmj*lmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSm)bEbTmUmk*Vml*WmXmm*YmZm0m1m2m3mn*4m5m6m7m8m9m!m#m$m%mQi'mui|b2e(m)m*m+m,m-m.m/m:m;mo*=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn0b}b1b~bRiunzgvnwnxnE F G yn/ : Pcsdznp*q*AnBnr*CnDns*EnFnt*GnHnu*InJnv*KnLnw*MnNnx*OnPny*QnRnz*SnTnA*UnVnB*WnXnC*YnZn0n1nD*2n3n4n5nE*6n7n8n9nF*!n#n$nG*%n'n(nH*)n*n+nI*,n-n.nJ*/n:n;nK*=n?n@nL*[n]n^n_n`n{nM*|n}n~nN*aoO*bocodoeoP*fogohoiojokoQ*lomonoR*ooS*poqoroT*sotouoU*vowoxoyozoAoBoCoDoEoFoGoHoIoJoKoLoMoNoOoPoQoRoSoToUoVoWoXoYoZo0o1o2o3oV*4o5o6o7o8oW*9o!o#oX*$oY*%o'oSi(oxi)oyi*ozi+o,o-o.o/o:o;o=oZ*?o@o[o0*]o^o1*_o2*`o3*{o|o}o~oapbpcpTidpepfpgphpipjpkplpmpnpop4*ppqprpsptpup5*6*vpwpxp7*yp8*zpAp9*!*BphhAgBgCpDpEpFpGpHp#*IpJp$*Kp%*LpMpNpOpPpQpRpSpTpUp'*(*)*Vp**+*WpXpYpZp,*0p1p-*2p.*/*3p4p:*5p;*6p7p8p=*9p!p#p$p%p'p(p)p*p+p,p-p.p/p?*:p@*;p[*=p]*?p^*@p_*[p]p`*^p{*_p|*`p}*{p~*|p}p~paqa+bqcqb+dqc+eqd+e+fqgqhqf+iqjqkqg+lqmqh+nqoqpqi+qqj+rqk+sql+tqm+uqn+o+vqwqp+xqq+yqr+zqs+Aqt+u+BqCqUiViDqWiEqFqGqXiHqIqJqKqLqv+w+x+Mqy+NqOqz+PqQqRqSqA+TqB+UqC+VqD+E+WqXqYqF+Zq0q1qG+2qH+I+3q4q5q6qJ+7q8q9qK+!qL+#q$q%qM+'q(q)qN+O+*q+q,qP+-q.q/q:qQ+;q=qR+?q@qS+[q]qT+^qU+_qV+`qW+{qX+|q}q~qarY+brZ+cr0+1+acdr2+er3+4+frgr5+hrir6+jr7+kr8+lr9+mrnror!+prqrrrsrtrurvrwr#+xryrzrArBrCrDr$+ErFrGrHrIrJrKrLrMr%+NrOrPrQrRr'+SrTr(+Ur)iVrWr)+Xr*+Yr++,+Zr0r-+1r2r.+3rQc4r5r^e_e`e{e|e}e6r/+7r8r*b:+9r!r;+#r$r%r'r(r=+s b )r*r+r,r-r.r?+/r@+[+:r]+YiZi^+0i;r=r?r@r1i[r]r^r_rRc`rScTc_+{r|r*i}rUc+b~rasbscsdsesfsgshsisjs`+kslsmsnsospsqsrsAisstsus{+|+vswsVcFb,bxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1s2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s}+-s.s/s:s;s~eafbfcfdf=s?s@s[s]s^s_s`s{s+i,i|s}s~sCgDgybatbtct~+dta,etftb,gthtitc,jtktltmtd,nte,otptqtrtstttutvtwtf,xt0 1 2 3 4 n h Weytg,h,zti,AtBtCt2iDtEtFtGtHtItJtKtLtMtj,EgFgk,Ntl,OtPtm,Qtn,RtStTto,p,Ut3iVt4ip 5 6 SbTb7 Wtq,XtYtZt0t1tr,2t3t4t5t6ts,7t8t9t!t#t$t%t't(t)t*t+t,t-t.t/t:t;t=t?t@t[t]t^t_t`t{t|t}t~taubucudueufuguhuiujukut,lumunuoupuquruu,sutuuuvuwuxuyuzuAuv,w,BuCuDuEuFuGuHuIuJuKuLuMuNuOuPuQux,RuSuTuUuVuWuXuYuZu0u1u2uy,3u4u5u6u7u8u9u!u#u$u%u'u(u)u*u+u,u-u.u/u:u;u=u?u@u[u]u^u_u`u{u|u}u~u-bGbavbvz,cvA,dvevB,fvgvhvivjvkvC,lvmvnvovpvqvrvsvtvuv5ivvvibc3ewvxvyvzvAvBvCvDvEvFvD,GvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v2bcc3bdc6i$vGg%v'v(vH I J )v; = Wctd*vE,F,+v,vG,-v.vH,/v:vI,;v=vJ,?v@vK,[v]vL,^v_vM,`v{vN,|v}vO,~vawP,bwcwQ,dwewR,fwgwhwiwS,jwkwlwmwT,nwowpwqwU,rwswtwV,uwvwwwW,xwywzwX,AwBwCwY,DwEwFwZ,GwHwIw0,JwKwLwMwNwOw1,PwQwRw2,Sw3,TwUwVwWw4,XwYwZw0w1w2w5,3w4w5w6,6w7,7w8w9w8,!w#w$w9,%w'w(w)w*w+w,w-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~waxbxcxdxexfxgxhxixjxkx!,lxmxnxoxpx#,qxrxsx$,tx%,uxvx7iwxBixxCiyxDizxAxBxCxDxExFxGx',HxIxJx(,KxLx),Mx*,Nx+,OxPxQxRxSxTxUx8iVxWxXxYxZx0x1x2x3x4x5x6x,,7x8x9x!x#x$x-,.,%x'x(x/,)x:,*x+x;,=,,xihHgIg-x.x/x:x;x=x?,?x@x@,[x[,]x^x_x`x{x|x}x~xayby],^,_,cy`,{,dyeyfygy|,hyiy},jy~,a-kylyb-myc-nyoypyd-qyrysytyuyvywyxyyyzyAyByCyDye-Eyf-Fyg-Gyh-Hyi-Iyj-JyKyk-Lyl-Mym-Nyn-Oyo-PyQyRySyp-TyUyq-Vyr-Wys-t-XyYyZyu-0y1y2yv-3y4yw-5y6y7yx-8yy-9yz-!yA-#yB-$yC-D-%y'yE-(yF-)yG-*yH-+yI-J-,y-y9i!i.y#i/y:y;y$i=y?y@y[y]yK-L-M-^yN-_y`yO-{y|y}y~yP-azQ-bzR-czS-T-dzezfzU-gzhzizV-jzW-X-kzlzmznzY-ozpzqzZ-rz0-sztzuz1-vzwzxz2-3-yzzzAz4-BzCzDzEz5-FzGz6-HzIz7-JzKz8-Lz9-Mz!-Nz#-Oz$-PzQzRzSz%-Tz'-Uz(-)-ecVz*-Wz+-,-XzYz--Zz0z.-1z/-2z:-3z;-4z5z6z=-7z8z9z!z#z$z%z'z?-(z)z*z+z,z-z.z@-/z:z;z=z?z@z[z]z^z[-_z`z{z|z}z]-~zaA^-bA-icAdA_-eA`-fA{-|-gAhA}-iAjA~-kAXclAmAefffgfhfifjfnAa.oApA.bb.qArAc.sAtAuAvAwAd.t c xAyAzAAABACAe.DAf.g.EAh.FAGAi.HAIAJAKALAMANAOAPAQAYcRAZc0cj.SATA.iUA1c/bVAWAXAYAZA0A1A2A3A4A5Ak.6A7A8A9A!A#A$A%A/i'A(A)Al.m.*A+A2cHb:b,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzBABBBCBDBEBn.FBGBHBIBJBkflfmfnfofKBLBMBNBOBPBQBRBSB:i;iTBUBVBJgKgzbWBXBYBo.ZBp.0B1Bq.2B3B4Br.5B6B7B8Bs.9Bt.!B#B$B%B'B(B)B*B+Bu.,B~ abbbcbdbu i Xe-Bv.w..Bx./B:B;B=B?B@B[B]B^B_B`B{B|B}By.LgMgz.~BA.aCbCB.cCC.dCeCfCD.E.gChCiCjCq 8 9 UbVb! kCF.lCmCnCoCpCG.qCrCsCtCuCH.vCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9CI.!C#C$C%C'C(C)CJ.*C+C,C-C.C/C:C;C=CK.L.?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDM.fDgDhDiDjDkDlDmDnDoDpDqDN.rDsDtDuDvDwDxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYD;bIb3cud4cvd5c6cZD0DO.1DP.2D3DQ.4D5D6D7D8D9DR.!D#D$D%D'D(D)D*D+D,D-D.DEifc4e/D:D;D=D?D@D[D]D^D_DS.`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAE4bgc5bhcBECENgDEEEFEK L M GE? @ HET.7cwdIEU.V.JEKEW.LEMEX.NEOEY.PEQEZ.RESE0.TEUE1.VEWE2.XEYE3.ZE0E4.1E2E5.3E4E6.5E6E7.7E8E9E!E8.#E$E%E'E9.(E)E*E+E!.,E-E.E#./E:E;E$.=E?E@E%.[E]E^E'._E`E{E(.|E}E~E).aFbFcFdFeFfF*.gFhFiF+.jF,.kFlFmFnF-.oFpFqFrFsFtF..uFvFwF/.xF:.yFzFAF;.BFCFDF=.EFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F?.%F'F(F)FOg*F@.+F,F-F[..F]./F:F;F=F=i?F?i@F@i[F]F^F_F`F{F|F}F^.~FaGbG_.cGdG`.eG{.fG|.gGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG}.AGBGCGDGEGFG~.a/GGHGIGb/JGc/KGLGd/e/MGjhPgQgNGOGPGQGRGSGf/TGUGg/VGh/WGXGYGZG0G1G2G3G4G5Gi/j/k/6Gl/m/7G8G9G!Gn/#G$Go/%Gp/q/'G(Gr/)Gs/*G+G,Gt/-G.G/G:G;G=G?G@G[G]G^G_G`G{Gu/|Gv/}Gw/~Gx/aHy/bHz/cHdHA/eHB/fHC/gHD/hHE/iHjHkHlHF/mHnHG/oHH/pHI/J/qHrHsHK/tHuHvHL/wHxHM/yHzHAHN/BHO/CHP/DHQ/EHR/FHS/T/GHHHU/IHV/JHW/KHX/LHY/Z/MHNHOHPHQHRHSHTHUHVHWHXHYHZH0H0/1/2/1H3/2H3H4/4H5H6H7H5/8H6/9H7/!H8/9/#H$H%H!/'H(H)H#/*H$/%/+H,H-H.H'//H:H;H(/=H)/?H@H[H*/]H^H_H+/,/`H{H|H-/}H~HaIbI./cIdI//eIfI:/gIhI;/iI=/jI?/kI@/lI[/mInIoIpI]/qI^/rI_/`/icsI{/tI|/}/uIvI~/wIxIa:yIb:zIc:AId:BICIDIe:EIFIGIHIIIJIKILIf:MINIOIPIQIRISIg:TIUIVIWIXIYIZI0I1Ih:2I3I4I5I6Ii:7I8Ij:9I[i!I#Ik:$Il:%Im:n:'I(Io:)I*Ip:+I8c,I-Ipfqfrfsftfuf.IN q:/I:I=br:;I=Is:?I@I[I]I^It:v d _I`I{I|I}I~Iu:aJv:w:bJx:cJdJy:eJfJgJhJiJjJkJlJmJnJ9coJ!c#cz:pJqJ]irJ$c?bsJtJuJvJwJxJyJzJAJBJCJA:DJEJFJGJHJIJJJKJ^iLJMJNJB:C:OJPJ%cJb@bQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!J#J$J%J'J(J)J*J+J,J-J.J/J:J;J=J?J@J[J]J^J_J`J{J|J}J~JaKbKD:cKdKeKfKgKvfwfxfyfzfhKiKjKkKlKmKnKoKpK_i`iqKrKsKRgSgAbtKuKvKE:wKF:xKyKG:zKAKBKH:CKDKEKFKI:GKJ:HKIKJKKKLKMKNKOKPKK:QKebfbgbhbibw j YeRKL:M:SKN:TKUKVKWKXKYKZK0K1K2K3K4K5K6KO:TgUgP:7KQ:8K9KR:!KS:#K$K%KT:U:'K(K)K*Kr # $ WbXb% +KV:,K-K.K/K:KW:;K=K?K@K[KX:]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLY:HLILJLKLLLMLNLZ:OLPLQLRLSLTLULVLWL0:1:XLYLZL0L1L2L3L4L5L6L7L8L9L!L#L$L2:%L'L(L)L*L+L,L-L.L/L:L;L3:=L?L@L[L]L^L_L`L{L|L}L~LaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvM[bKb'cxd(cyd)c*cwMxM4:yM5:zMAM6:BMCMDMEMFMGM7:HMIMJMKMLMMMNMOMPMQMRMSMFijc5eTMUMVMWMXMYMZM0M1M2M8:3M4M5M6M7M8M9M!M#M$M%M'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M^M_M`M{M|M6bkc7blc}M~MVgaNbNcNO P Q dN[ ] eN9:+czdfN!:#:gNhN$:iNjN%:kNlN':mNnN(:oNpN):qNrN*:sNtN+:uNvN,:wNxN-:yNzN.:ANBN/:CNDN::ENFNGNHN;:INJNKNLN=:MNNNONPN?:QNRNSN@:TNUNVN[:WNXNYN]:ZN0N1N^:2N3N4N_:5N6N7N`:8N9N!N#N$N%N{:'N(N)N|:*N}:+N,N-N.N~:/N:N;N=N?N@Na;[N]N^Nb;_Nc;`N{N|Nd;}N~NaOe;bOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOf;KOLOMONOWgOOg;POQOROh;SOi;TOUOVOWO{iXO|iYO}iZO0O1O2O3O4O5O6Oj;7O8O9Ok;!O#Ol;$Om;%On;'O(O)O*O+O,O-O.O/O:O;O=O?O@O[O]O^O_O`O{Oo;|O}O~OaPbPcPp;q;dPePfPr;gPs;hPiPt;u;jPkhXgYgkPlPmPnPoPpPv;qPrPw;sPx;tPuPvPwPxPyPzPAPBPCPy;z;A;DPB;C;EPFPGPHPD;IPJPE;KPF;G;LPMPH;NPI;OPPPQPJ;RPSPTPUPVPWPXPYPZP0P1P2P3P4PK;5PL;6PM;7PN;8PO;9PP;!P#PQ;$PR;%PS;'PT;(PU;)P*P+P,PV;-P.PW;/PX;:PY;Z;;P=P?P0;@P[P]P1;^P_P2;`P{P|P3;}P4;~P5;aQ6;bQ7;cQ8;9;dQeQ!;fQ#;gQ$;hQ%;iQ';(;jQkQlQmQnQoQpQqQrQsQtQuQvQwQxQ);*;+;yQ,;zQAQ-;BQCQDQEQ.;FQ/;GQ:;HQ;;=;IQJQKQ?;LQMQNQ@;OQ[;];PQQQRQSQ^;TQUQVQ_;WQ`;XQYQZQ{;0Q1Q2Q|;};3Q4Q5Q~;6Q7Q8Q9Qa=!Q#Qb=$Q%Qc='Q(Qd=)Qe=*Qf=+Qg=,Qh=-Q.Q/Q:Qi=;Qj==Qk=l=mc?Qm=@Qn=o=[Q]Qp=^Q_Qq=`Qr={Qs=|Qt=}Q~QaRu=bRcRdReRfRgRhRiRv=jRkRlRmRnRoRpRw=qRrRsRtRuRvRwRxRyRx=zRARBRCRDRy=ERFRz=GR~iHRIRA=JRB=KRC=D=LRMRE=NRORF=PR,cQRRRAfBfCfDfEfFfSRR G=TRUR]bH=VRWRI=XRYRZR0R1RJ=x e 2R3R4R5R6R7RK=8RL=M=9RN=!R#RO=$R%R'R(R)R*R+R,R-R.R[c/R]c^cP=:R;Raj=R_cnc?R@R[R]R^R_R`R{R|R}R~RQ=aSbScSdSeSfSgShSbjiSjSkSR=S=lSmS`cLbocnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9ST=!S#S$S%S'SGfHfIfJfKf(S)S*S+S,S-S.S/S:Scjdj;S=S?SZg0gBb@S[S]SU=^SV=_S`SW={S|S}SX=~SaTbTcTY=dTZ=eTfTgThTiTjTkTlTmT0=nTnbobpbqbrbA k 6eoT1=2=pT3=qTrTsTtTuTvTwTxTyTzTATBTCTDT4=1g2g5=ET6=FTGT7=HT8=ITJTKT9=!=LTMTNTOTy ^ _ 8b9b` PT#=QTRTSTTTUT$=VTWTXTYTZT%=0T1T2T3T4T5T6T7T8T9T!T#T$T%T'T(T)T*T+T,T-T.T/T:T;T=T?T@T[T]T^T_T`T{T|T}T~TaUbUcUdU'=eUfUgUhUiUjUkU(=lUmUnUoUpUqUrUsUtU)=*=uUvUwUxUyUzUAUBUCUDUEUFUGUHUIUJU+=KULUMUNUOUPUQURUSUTUUUVU,=WUXUYUZU0U1U2U3U4U5U6U7U8U9U!U#U$U%U'U(U)U*U+U,U-U.U/U:U;U=U?U@U[U]UpcMb{cBd|cCd}c~c^U_U-=`U.={U|U/=}U~UaVbVcVdV:=eVfVgVhViVjVkVlVmVnVoVpVGi-c9eqVrVsVtVuVvVwVxVyVzV;=AVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^b.c_b/c6V7V3g8V9V!V' ( ) #Vjbkb$V==adDd%V?=@='V(V[=)V*V]=+V,V^=-V.V_=/V:V`=;V=V{=?V@V|=[V]V}=^V_V~=`V{Va?|V}Vb?~VaWc?bWcWdWeWd?fWgWhWiWe?jWkWlWmWf?nWoWpWg?qWrWsWh?tWuWvWi?wWxWyWj?zWAWBWk?CWDWEWl?FWGWHWIWJWKWm?LWMWNWn?OWo?PWQWRWSWp?TWUWVWWWXWYWq?ZW0W1Wr?2Ws?3W4W5Wt?6W7W8Wu?9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[W]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXv?hXiXjXkX4glXw?mXnXoXx?pXy?qXrXsXtXejuXfjvXgjwXxXyXzXAXBXCXDXz?EXFXGXA?HXIXB?JXC?KXD?LXMXNXOXPXQXRXSXTXUXVXWXXXYXZX0X1X2X3X4XE?5X6X7X8X9X!XF?G?#X$X%XH?'XI?(X)XJ?K?*Xlh5g6g+X,X-X.X/X:XL?;X=XM??XN?@X[X]X^X_X`X{X|X}X~XO?P?Q?aYR?S?bYcYdYeYT?fYgYU?hYV?W?iYjYX?kYY?lYmYnYZ?oYpYqYrYsYtYuYvYwYxYyYzYAYBY0?CY1?DY2?EY3?FY4?GY5?HYIY6?JY7?KY8?LY9?MY!?NYOYPYQY#?RYSY$?TY%?UY'?(?VYWYXY)?YYZY0Y*?1Y2Y+?3Y4Y5Y,?6Y-?7Y.?8Y/?9Y:?!Y;?=?#Y$Y??%Y@?'Y[?(Y]?)Y^?_?*Y+Y,Y-Y.Y/Y:Y;Y=Y?Y@Y[Y]Y^Y_Y`?{?|?`Y}?{Y|Y~?}Y~YaZbZa@cZb@dZc@eZd@e@fZgZhZf@iZjZkZg@lZh@i@mZnZoZpZj@qZrZsZk@tZl@uZvZwZm@xZyZzZn@o@AZBZCZp@DZEZFZGZq@HZIZr@JZKZs@LZMZt@NZu@OZv@PZw@QZx@RZSZTZUZy@VZz@WZA@B@:cXZC@YZD@E@ZZ0ZF@1Z2ZG@3ZH@4ZI@5ZJ@6Z7Z8ZK@9Z!Z#Z$Z%Z'Z(Z)ZL@*Z+Z,Z-Z.Z/Z:ZM@;Z=Z?Z@Z[Z]Z^Z_Z`ZN@{Z|Z}Z~Za0O@b0c0P@d0hje0f0Q@g0R@h0S@T@i0j0U@k0l0V@m0bdn0o0LfMfNfOfPfQfp0* W@q0r0qcX@s0t0Y@u0v0w0x0y0Z@B f z0A0B0C0D0E00@F01@2@G03@H0I04@J0K0L0M0N0O0P0Q0R0S0cdT0dded5@U0V0ijW0fdrcX0Y0Z000102030405060706@8090!0#0$0%0'0(0jj)0*0+07@8@,0-0gdNbsc.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G19@H1I1J1K1L1RfSfTfUfVfM1N1O1P1Q1R1S1T1U1kjljV1W1X17g8gCbY1Z101!@11#@2131$@415161%@718191!1'@#1(@$1%1'1(1)1*1+1,1-1)@.1sbtbubvbwbC l 7e/1*@+@:1,@;1=1?1@1[1]1^1_1`1{1|1}1~1a2-@9g!g.@b2/@c2d2:@e2;@f2g2h2=@?@i2j2k2l2z { | !b#b} m2@@n2o2p2q2r2[@s2t2u2v2w2]@x2y2z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!2#2^@$2%2'2(2)2*2+2_@,2-2.2/2:2;2=2?2@2`@{@[2]2^2_2`2{2|2}2~2a3b3c3d3e3f3g3|@h3i3j3k3l3m3n3o3p3q3r3s3}@t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303tcObhdEdidFdjdkd1323~@33a[4353b[63738393!3#3c[$3%3'3(3)3*3+3,3-3.3/3:3Hi;c!e;3=3?3@3[3]3^3_3`3{3d[|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4`b=c{b?cD4E4#gF4G4H4+ , - I4lbmbJ4e[ldGdK4f[g[L4M4h[N4O4i[P4Q4j[R4S4k[T4U4l[V4W4m[X4Y4n[Z404o[1424p[3444q[5464r[7484s[94!4#4$4t[%4'4(4)4u[*4+4,4-4v[.4/4:4w[;4=4?4x[@4[4]4y[^4_4`4z[{4|4}4A[~4a5b5B[c5d5e5f5g5h5C[i5j5k5D[l5E[m5n5o5p5F[q5r5s5t5u5v5G[w5x5y5H[z5I[A5B5C5J[D5E5F5K[G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z505152535455565758595!5#5$5%5'5L[(5)5*5+5$g,5M[-5.5/5N[:5O[;5=5?5@5mj[5nj]5oj^5_5`5{5|5}5~5a6P[b6c6d6Q[e6f6R[g6S[h6T[i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6A6B6U[C6D6E6F6G6H6V[W[I6J6K6X[L6Y[M6N6Z[0[O6mh%g'gP6Q6R6S6T6U61[V6W62[X63[Y6Z606162636465666764[5[6[867[8[96!6#6$69[%6'6![(6#[$[)6*6%[+6'[,6-6.6([/6:6;6=6?6@6[6]6^6_6`6{6|6}6)[~6*[a7+[b7,[c7-[d7.[e7f7/[g7:[h7;[i7=[j7?[k7l7m7n7@[o7p7[[q7][r7^[_[s7t7u7`[v7w7x7{[y7z7|[A7B7C7}[D7~[E7a]F7b]G7c]H7d]e]I7J7f]K7g]L7h]M7i]N7j]k]O7P7Q7R7S7T7U7V7W7X7Y7Z7071727l]m]n]37o]4757p]67778797q]!7r]#7s]$7t]u]%7'7(7v])7*7+7w],7x]y]-7.7/7:7z];7=7?7A]@7B][7]7^7C]_7`7{7D]E]|7}7~7F]a8b8c8d8G]e8f8H]g8h8I]i8j8J]k8K]l8L]m8M]n8N]o8p8q8r8O]s8P]t8Q]R]@cu8S]v8T]U]w8x8V]y8z8W]A8X]B8Y]C8Z]D8E8F80]G8H8I8J8K8L8M8N81]O8P8Q8R8S8T8U82]V8W8X8Y8Z8081828383]48586878884]98!85]#8pj$8%86]'87](88]9])8*8!]+8,8#]-8md.8/8WfXfYfZf0f1f:8. $];8=8uc%]?8@8'][8]8^8_8`8(]D Pb{8|8}8~8a9b9)]c9*]+]d9,]e9f9-]g9h9i9j9k9l9m9n9o9p9Ndq9OdPd.]r9s9qjt9Qdvcu9rjv9w9x9/]:]y9z9RdwcA9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z909192939495969798999!9#9$9%9'9(9)9*9+9,9-9.9/9;]:9;9=9?9@93f4f5f6f7f[9]9^9_9`9{9|9}9~9sjtja!b!c!(g)gAdd!e!f!=]g!?]h!i!@]j!k!l![]m!n!o!p!]]q!r!s!t!u!v!w!x!y!^]z!ndodpdqdrdYbZb2fA!_]`]B!{]C!D!E!F!G!H!I!J!K!L!M!N!O!P!|]*g}]Q!~]R!S!a^T!b^U!V!W!c^d^X!Y!Z!0!xcyczc$b%bAc1!e^2!3!4!5!6!f^7!8!9!!!#!g^$!%!'!(!)!*!+!,!-!.!/!:!;!=!?!@![!]!^!_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#h^q#r#s#t#u#v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#BcSdZeTd0eUdVdO#P#i^Q#j^R#S#k^T#U#V#W#X#Y#l^Z#0#1#2#3#4#5#6#7#8#9#!#Iipe##$#%#'#(#)#*#+#,#-#m^.#/#:#;#=#?#@#[#]#^#_#`#{#|#}#~#a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$HdqeIdreq$r$+gs$t$u$CcDcEcv$FcGcw$n^Wd1ex$o^p^y$z$q^A$B$r^C$D$s^E$F$t^G$H$u^I$J$v^K$L$w^M$N$x^O$P$y^Q$R$z^S$T$A^U$V$B^W$X$Y$Z$C^0$1$2$3$D^4$5$6$7$E^8$9$!$F^#$$$%$G^'$($)$H^*$+$,$I^-$.$/$J^:$;$=$K^?$@$[$]$^$_$L^`${$|$M^}$N^~$a%b%c%O^d%e%f%g%h%i%P^j%k%l%Q^m%R^n%o%p%S^q%r%s%T^t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%0%1%U^2%3%4%5%,g6%V^7%8%9%W^!%X^#%$%%%'%uj(%vj)%wj*%+%,%-%.%/%:%;%Y^=%?%@%Z^[%]%0^^%1^_%2^`%{%|%}%~%a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'3^p'q'r's't'u'4^5^v'w'x'6^y'7^z'A'8^B'nh-g.gC'D'E'F'G'H'9^I'J'!^K'#^L'M'N'O'P'Q'R'S'T'U'$^%^'^V'(^)^W'X'Y'Z'*^0'1'+^2',^3'4'-^5'.^6'7'8'/^9'!'#'$'%'''(')'*'+','-'.'/':^:';^;'=^='?^?'@^@'[^[']']^^'^^_'_^`'`^{'{^|'}'~'a(|^b(c(}^d(~^e(a_b_f(g(h(c_i(j(k(d_l(m(e_n(o(p(f_q(g_r(h_s(i_t(j_u(k_l_v(w(m_x(n_y(o_z(p_A(q_B(C(D(E(F(G(H(I(J(K(L(r_s_M(t_N(O(u_P(Q(R(S(v_w_T(U(V(x_W(X(Y(y_Z(z_A_0(1(2(3(B_4(5(6(C_7(D_8(9(!(E_#($(%(F_G_'((()(H_*(+(,(-(I_.(/(J_:(;(K_=(?(L_@(M_[(N_](O_^(_(`({(P_|(Q_}(R_S_se~(T_a)U_V_b)c)W_d)e)X_f)Y_g)Z_h)i)j)0_k)l)m)n)o)p)q)r)1_s)t)u)v)w)x)y)2_z)A)B)C)D)E)F)G)H)3_I)J)K)L)M)4_N)O)5_P)xjQ)R)6_S)7_T)8_9_U)V)!_W)X)#_Y)XdZ)0)8f9f!f#f$f%f1)Hc$_2)3)Ic%_4)5)'_6)7)8)9)!)(_Jc

46 return True 2a #)$)%)')JiKi()LiMi))%i'b*)wi+),)Db(b-)xb.)/):);)=)?)@)S T U V W m g Ve[)])^)Ni_)`){)|)})~)a*OiPio X Y QbRbZ b*c*d*e*f*g*h*i*j*)bEbk*l*m*n*Qiui|b2eo*}b~bRiE F G / : sdp*q*r*s*t*u*v*w*x*y*z*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*SixiyiziZ*0*1*2*3*Ti4*5*6*7*8*9*!*hh#*$*%*'*(*)***+*,*-*.*/*:*;*=*?*@*[*]*^*_*`*{*|*}*~*a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+UiViWiXiv+w+x+y+z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+0+1+ac2+3+4+5+6+7+8+9+!+#+$+%+'+(+)+*+++,+-+.+/+*b:+;+=+s b ?+@+[+]+YiZi^+0i1i_+*i+b`+Ai{+|+Fb,b}+yb~+a,b,c,d,e,f,0 1 2 3 4 n h Weg,h,i,2ij,k,l,m,n,o,p,3i4ip 5 6 SbTb7 q,r,s,t,u,v,w,x,y,-bGbz,A,B,C,5ivibc3eD,ccdc6iH I J ; = tdE,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9,!,#,$,%,7iBiCiDi',(,),*,+,8i,,-,.,/,:,;,=,ih?,@,[,],^,_,`,{,|,},~,a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-A-B-C-D-E-F-G-H-I-J-9i!i#i$iK-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-0-1-2-3-4-5-6-7-8-9-!-#-$-%-'-(-)-ec*-+-,---.-/-:-;-=-?-@-[-]-^-_-`-{-|-}-~-a..bb.c.d.t c e.f.g.h.FAGAi.HAMAj..i/bk./il.m.Hb:bn.zbo.p.q.r.s.t.u.~ abbbcbdbu i Xev.w.x.=By.z.A.B.C.D.E.hCjCq 8 9 UbVb! F.G.H.I.J.K.L.M.N.;bIbudvdO.P.Q.R.-DEifc4eS.gchcBEK L M ? @ T.wdU.V.W.X.Y.Z.0.1.2.3.4.5.6.7.8.9.!.#.$.%.'.(.).*.+.,.-.../.:.;.=.?.@.[.].;F=i?i@i^._.`.{.|.nG}.~.a/b/c/d/e/jhf/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/OHPHRHVH0/1/2/3/4/5/6/7/8/9/!/#/$/%/'/(/)/*/+/,/-/.///:/;/=/?/@/[/]/^/_/`/ic{/|/}/~/a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:N q:=br:s:t:v d u:v:w:x:cJdJy:eJjJz:]i?bA:^iB:C:Jb@bD:AbE:F:G:H:I:J:K:ebfbgbhbibw j YeL:M:N:WKO:P:Q:R:S:T:U:(K*Kr # $ WbXb% V:W:X:Y:Z:0:1:2:3:[bKbxdyd4:5:6:7:RMFijc5e8:kclc}MO P Q [ ] 9:zd!:#:$:%:':(:):*:+:,:-:.:/:::;:=:?:@:[:]:^:_:`:{:|:}:~:a;b;c;d;e;f;g;h;i;VO{i|i}ij;k;l;m;n;.Oo;p;q;r;s;t;u;khv;w;x;y;z;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;0;1;2;3;4;5;6;7;8;9;!;#;$;%;';(;lQmQoQsQ);*;+;,;-;.;/;:;;;=;?;@;[;];^;_;`;{;|;};~;a=b=c=d=e=f=g=h=i=j=k=l=mcm=n=o=p=q=r=s=t=u=v=w=x=y=z=A=B=C=D=E=F=R G=]bH=I=J=x e K=L=M=N=!R#RO=$R*RP=ajncQ=bjR=S=LbocT=BbU=V=W=X=Y=Z=0=nbobpbqbrbA k 6e1=2=3=tT4=5=6=7=8=9=!=MTOTy ^ _ 8b9b` #=$=%='=(=)=*=+=,=pcMbBdCd-=.=/=:=oVGi-c9e;=.c/c6V' ( ) jbkb==Dd?=@=[=]=^=_=`={=|=}=~=a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?sXejfjgjz?A?B?C?D?SXE?F?G?H?I?J?K?lhL?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?0?1?2?3?4?5?6?7?8?9?!?#?$?%?'?(?)?*?+?,?-?.?/?:?;?=???@?[?]?^?_?,Y-Y/Y?Y`?{?|?}?~?a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@A@B@:cC@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@* W@qcX@Y@Z@B f 0@1@2@3@H0I04@J0O05@ijrc6@jj7@8@Nbsc9@Cb!@#@$@%@'@(@)@sbtbubvbwbC l 7e*@+@,@@1-@.@/@:@;@=@?@j2l2z { | !b#b} @@[@]@^@_@`@{@|@}@tcObEdFd~@a[b[c[/3Hi;c!ed[=c?cD4+ , - lbmbe[Gdf[g[h[i[j[k[l[m[n[o[p[q[r[s[t[u[v[w[x[y[z[A[B[C[D[E[F[G[H[I[J[K[L[M[N[O[?5mjnjojP[Q[R[S[T[p6U[V[W[X[Y[Z[0[mh1[2[3[4[5[6[7[8[9[![#[$[%['[([)[*[+[,[-[.[/[:[;[=[?[@[[[][^[_[`[{[|[}[~[a]b]c]d]e]f]g]h]i]j]k]Q7R7T7X7l]m]n]o]p]q]r]s]t]u]v]w]x]y]z]A]B]C]D]E]F]G]H]I]J]K]L]M]N]O]P]Q]R]@cS]T]U]V]W]X]Y]Z]0]1]2]3]4]5]6]7]8]9]!]#]. $]uc%]'](]D Pb)]*]+],]e9f9-]g9l9.]qjvcrj/]:]wc;]Ad=]?]@][]]]^]ndodpdqdrdYbZb2f_]`]{]F!|]}]~]a^b^c^d^Y!0!xcyczc$b%bAce^f^g^h^BcZe0ei^j^k^l^9#Iipem^qereq$CcDcEcFcGcn^1eo^p^q^r^s^t^u^v^w^x^y^z^A^B^C^D^E^F^G^H^I^J^K^L^M^N^O^P^Q^R^S^T^U^V^W^X^%%ujvjwjY^Z^0^1^2^c'3^4^5^6^7^8^nh9^!^#^$^%^'^(^)^*^+^,^-^.^/^:^;^=^?^@^[^]^^^_^`^{^|^}^~^a_b_c_d_e_f_g_h_i_j_k_l_m_n_o_p_q_D(E(G(r_s_t_u_v_w_x_y_z_A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P_Q_R_S_seT_U_V_W_X_Y_Z_0_1_2_3_4_5_6_7_8_9_!_#_Hc$_Ic%_'_(_Jc

47 # Ref: https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#patterned-fields-1 

48 if status_code in { 2a yjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjKcOjLcMcPjQj%iRjNc'bSjTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(jOcDb(b)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j_j`j{j|j}j~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkCkDkEkFkGk=e?e@e[e]eHkIkJkKkLkMkNkOkPk'i(iQkRkSkvgwgTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)kS T U V W m g *k+k,k-k.k/k:k;k=k?k@k[k]k^k_kxgyg`k{k|k}k~kalblcldlo X Y QbRbZ elflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!l#l$l%l'l(l)l*l+l,l-l.l/l:l;l=l?l@l[l]l^l_l`l{l|l}l~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSm)bEbTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'mui(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn0b1bunzgvnwnxnE F G yn/ : PcznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!n#n$n%n'n(n)n*n+n,n-n.n/n:n;n=n?n@n[n]n^n_n`n{n|n}n~naobocodoeofogohoiojokolomonooopoqorosotouovowoxoyozoAoBoCoDoEoFoGoHoIoJoKoLoMoNoOoPoQoRoSoToUoVoWoXoYoZo0o1o2o3o4o5o6o7o8o9o!o#o$o%o'o(o)o*o+o,o-o.o/o:o;o=o?o@o[o]o^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpAgBgCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!p#p$p%p'p(p)p*p+p,p-p.p/p:p;p=p?p@p[p]p^p_p`p{p|p}p~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqSqTqUqVqWqXqYqZq0q1q2q3q4q5q6q7q8q9q!q#q$q%q'q(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrUr)iVrWrXrYrZr0r1r2r3rQc4r5r^e_e`e{e|e}e6r7r8r*b9r!r#r$r%r'r(rs b )r*r+r,r-r.r/r:r;r=r?r@r[r]r^r_rRc`rScTc{r|r*i}rUc+b~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsVcFb,bxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1s2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-s.s/s:s;s~eafbfcfdf=s?s@s[s]s^s_s`s{s+i,i|s}s~sCgDgatbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxt0 1 2 3 4 n h ytztAtBtCtDtEtFtGtHtItJtKtLtMtEgFgNtOtPtQtRtStTtUtVtp 5 6 SbTb7 WtXtYtZt0t1t2t3t4t5t6t7t8t9t!t#t$t%t't(t)t*t+t,t-t.t/t:t;t=t?t@t[t]t^t_t`t{t|t}t~taubucudueufuguhuiujukulumunuoupuqurusutuuuvuwuxuyuzuAuBuCuDuEuFuGuHuIuJuKuLuMuNuOuPuQuRuSuTuUuVuWuXuYuZu0u1u2u3u4u5u6u7u8u9u!u#u$u%u'u(u)u*u+u,u-u.u/u:u;u=u?u@u[u]u^u_u`u{u|u}u~u-bGbavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvviwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v2b3b$vGg%v'v(vH I J )v; = Wc*v+v,v-v.v/v:v;v=v?v@v[v]v^v_v`v{v|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwvwwwxwywzwAwBwCwDwEwFwGwHwIwJwKwLwMwNwOwPwQwRwSwTwUwVwWwXwYwZw0w1w2w3w4w5w6w7w8w9w!w#w$w%w'w(w)w*w+w,w-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~waxbxcxdxexfxgxhxixjxkxlxmxnxoxpxqxrxsxtxuxvxwxxxyxzxAxBxCxDxExFxGxHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxWxXxYxZx0x1x2x3x4x5x6x7x8x9x!x#x$x%x'x(x)x*x+x,xHgIg-x.x/x:x;x=x?x@x[x]x^x_x`x{x|x}x~xaybycydyeyfygyhyiyjykylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTyUyVyWyXyYyZy0y1y2y3y4y5y6y7y8y9y!y#y$y%y'y(y)y*y+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqzrzsztzuzvzwzxzyzzzAzBzCzDzEzFzGzHzIzJzKzLzMzNzOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z'z(z)z*z+z,z-z.z/z:z;z=z?z@z[z]z^z_z`z{z|z}z~zaAbA-icAdAeAfAgAhAiAjAkAXclAmAefffgfhfifjfnAoApA.bqArAsAtAuAvAwAt c xAyAzAAABACADAEAIAJAKALANAOAPAQAYcRAZc0cSATA.iUA1c/bVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A2cHb:b,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBkflfmfnfofKBLBMBNBOBPBQBRBSB:i;iTBUBVBJgKgWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B'B(B)B*B+B,B~ abbbcbdbu i -B.B/B:B;B?B@B[B]B^B_B`B{B|B}BLgMg~BaCbCcCdCeCfCgCiCq 8 9 UbVb! kClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYD;bIb3c4c5c6cZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D.DEi/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAE4b5bCENgDEEEFEK L M GE? @ HE7cIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E7E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E;E=E?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)FOg*F+F,F-F.F/F:F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGPgQgNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G'G(G)G*G+G,G-G.G/G:G;G=G?G@G[G]G^G_G`G{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHQHSHTHUHWHXHYHZH0H1H2H3H4H5H6H7H8H9H!H#H$H%H'H(H)H*H+H,H-H.H/H:H;H=H?H@H[H]H^H_H`H{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzIAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI0I1I2I3I4I5I6I7I8I9I[i!I#I$I%I'I(I)I*I+I8c,I-Ipfqfrfsftfuf.IN /I:I=b;I=I?I@I[I]I^Iv d _I`I{I|I}I~IaJbJfJgJhJiJkJlJmJnJ9coJ!c#cpJqJ]irJ$c?bsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJ%cJb@bQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!J#J$J%J'J(J)J*J+J,J-J.J/J:J;J=J?J@J[J]J^J_J`J{J|J}J~JaKbKcKdKeKfKgKvfwfxfyfzfhKiKjKkKlKmKnKoKpK_i`iqKrKsKRgSgtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKebfbgbhbibw j RKSKTKUKVKXKYKZK0K1K2K3K4K5K6KTgUg7K8K9K!K#K$K%K'K)Kr # $ WbXb% +K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9L!L#L$L%L'L(L)L*L+L,L-L.L/L:L;L=L?L@L[L]L^L_L`L{L|L}L~LaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvM[bKb'c(c)c*cwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMSMFiTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M9M!M#M$M%M'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M^M_M`M{M|M6b7b~MVgaNbNcNO P Q dN[ ] eN+cfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N*N+N,N-N.N/N:N;N=N?N@N[N]N^N_N`N{N|N}N~NaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOWgOOPOQOROSOTOUOWOXOYOZO0O1O2O3O4O5O6O7O8O9O!O#O$O%O'O(O)O*O+O,O-O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPXgYgkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!P#P$P%P'P(P)P*P+P,P-P.P/P:P;P=P?P@P[P]P^P_P`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQnQpQqQrQtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q!Q#Q$Q%Q'Q(Q)Q*Q+Q,Q-Q.Q/Q:Q;Q=Q?Q@Q[Q]Q^Q_Q`Q{Q|Q}Q~QaRbRcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRuRvRwRxRyRzRARBRCRDRERFRGR~iHRIRJRKRLRMRNRORPR,cQRRRAfBfCfDfEfFfSRR TRUR]bVRWRXRYRZR0R1Rx e 2R3R4R5R6R7R8R9R%R'R(R)R+R,R-R.R[c/R]c^c:R;Raj=R_cnc?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmS`cLbocnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'SGfHfIfJfKf(S)S*S+S,S-S.S/S:Scjdj;S=S?SZg0g@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnTnbobpbqbrbA k oTpTqTrTsTuTvTwTxTyTzTATBTCTDT1g2gETFTGTHTITJTKTLTNTy ^ _ 8b9b` PTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!T#T$T%T'T(T)T*T+T,T-T.T/T:T;T=T?T@T[T]T^T_T`T{T|T}T~TaUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUsUtUuUvUwUxUyUzUAUBUCUDUEUFUGUHUIUJUKULUMUNUOUPUQURUSUTUUUVUWUXUYUZU0U1U2U3U4U5U6U7U8U9U!U#U$U%U'U(U)U*U+U,U-U.U/U:U;U=U?U@U[U]UpcMb{c|c}c~c^U_U`U{U|U}U~UaVbVcVdVeVfVgVhViVjVkVlVmVnVpVGiqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^b_b7V3g8V9V!V' ( ) #Vjbkb$Vad%V'V(V)V*V+V,V-V.V/V:V;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWDWEWFWGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWWXWYWZW0W1W2W3W4W5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[W]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkX4glXmXnXoXpXqXrXtXuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRXTXUXVXWXXXYXZX0X1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X5g6g+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYpYqYrYsYtYuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYKYLYMYNYOYPYQYRYSYTYUYVYWYXYYYZY0Y1Y2Y3Y4Y5Y6Y7Y8Y9Y!Y#Y$Y%Y'Y(Y)Y*Y+Y.Y:Y;Y=Y@Y[Y]Y^Y_Y`Y{Y|Y}Y~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z9Z!Z#Z$Z%Z'Z(Z)Z*Z+Z,Z-Z.Z/Z:Z;Z=Z?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0hje0f0g0h0i0j0k0l0m0bdn0o0LfMfNfOfPfQfp0* q0r0qcs0t0u0v0w0x0y0B f z0A0B0C0D0E0F0G0K0L0M0N0P0Q0R0S0cdT0ddedU0V0ijW0fdrcX0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0gdNbsc.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1RfSfTfUfVfM1N1O1P1Q1R1S1T1U1kjljV1W1X17g8gY1Z101112131415161718191!1#1$1%1'1(1)1*1+1,1-1.1sbtbubvbwbC l /1:1;1=1?1[1]1^1_1`1{1|1}1~1a29g!gb2c2d2e2f2g2h2i2k2z { | !b#b} m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!2#2$2%2'2(2)2*2+2,2-2.2/2:2;2=2?2@2[2]2^2_2`2{2|2}2~2a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303tcObhdidjdkd132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3:3Hi;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4`b{bE4#gF4G4H4+ , - I4lbmbJ4ldK4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445464748494!4#4$4%4'4(4)4*4+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z505152535455565758595!5#5$5%5'5(5)5*5+5$g,5-5.5/5:5;5=5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6%g'gP6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!6#6$6%6'6(6)6*6+6,6-6.6/6:6;6=6?6@6[6]6^6_6`6{6|6}6~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7S7U7V7W7Y7Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7:7;7=7?7@7[7]7^7_7`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z808182838485868788898!8#8pj$8%8'8(8)8*8+8,8-8md.8/8WfXfYfZf0f1f:8. ;8=8uc?8@8[8]8^8_8`8D Pb{8|8}8~8a9b9c9d9h9i9j9k9m9n9o9p9Ndq9OdPdr9s9qjt9Qdvcu9v9w9x9y9z9RdwcA9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z909192939495969798999!9#9$9%9'9(9)9*9+9,9-9.9/9:9;9=9?9@93f4f5f6f7f[9]9^9_9`9{9|9}9~9sjtja!b!c!(g)gd!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!ndodpdqdrdYbZbA!B!C!D!E!G!H!I!J!K!L!M!N!O!P!*gQ!R!S!T!U!V!W!X!Z!xcyczc$b%bAc1!2!3!4!5!6!7!8!9!!!#!$!%!'!(!)!*!+!,!-!.!/!:!;!=!?!@![!]!^!_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#BcSdTdUdVdO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#!#Ii##$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#`#{#|#}#~#a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$HdIdr$+gs$t$u$CcDcEcv$FcGcw$Wdx$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$0$1$2$3$4$5$6$7$8$9$!$#$$$%$'$($)$*$+$,$-$.$/$:$;$=$?$@$[$]$^$_$`${$|$}$~$a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%0%1%2%3%4%5%,g6%7%8%9%!%#%$%'%(%)%*%+%,%-%.%/%:%;%=%?%@%[%]%^%_%`%{%|%}%~%a'b'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'A'B'-g.gC'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'0'1'2'3'4'5'6'7'8'9'!'#'$'%'''(')'*'+','-'.'/':';'='?'@'[']'^'_'`'{'|'}'~'a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z(A(B(C(F(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z(0(1(2(3(4(5(6(7(8(9(!(#($(%('((()(*(+(,(-(.(/(:(;(=(?(@([(](^(_(`({(|(}(~(a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)xjQ)R)S)T)U)V)W)X)Y)XdZ)0)8f9f!f#f$f%f1)Hc2)3)Ic4)5)6)7)8)9)!)Jc

49 "default", 

50 "1XX", 

51 "2XX", 

52 "3XX", 

53 "4XX", 

54 "5XX", 

55 }: 

56 return True 2a b c d e f Pb

57 current_status_code = int(status_code) 2a yjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjKcOjLcMcPjQj%iRjNc'bSjTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(jOcDb(b)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j_j`j{j|j}j~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkCkDkEkFkGk=e?e@e[e]eHkIkJkKkLkMkNkOkPk'i(iQkRkSkvgwgTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)kS T U V W m g *k+k,k-k.k/k:k;k=k?k@k[k]k^k_kxgyg`k{k|k}k~kalblcldlo X Y QbRbZ elflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!l#l$l%l'l(l)l*l+l,l-l.l/l:l;l=l?l@l[l]l^l_l`l{l|l}l~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSm)bEbTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'mui(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn0b1bunzgvnwnxnE F G yn/ : PcznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!n#n$n%n'n(n)n*n+n,n-n.n/n:n;n=n?n@n[n]n^n_n`n{n|n}n~naobocodoeofogohoiojokolomonooopoqorosotouovowoxoyozoAoBoCoDoEoFoGoHoIoJoKoLoMoNoOoPoQoRoSoToUoVoWoXoYoZo0o1o2o3o4o5o6o7o8o9o!o#o$o%o'o(o)o*o+o,o-o.o/o:o;o=o?o@o[o]o^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpAgBgCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!p#p$p%p'p(p)p*p+p,p-p.p/p:p;p=p?p@p[p]p^p_p`p{p|p}p~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqSqTqUqVqWqXqYqZq0q1q2q3q4q5q6q7q8q9q!q#q$q%q'q(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrUr)iVrWrXrYrZr0r1r2r3rQc4r5r^e_e`e{e|e}e6r7r8r*b9r!r#r$r%r'r(rs b )r*r+r,r-r.r/r:r;r=r?r@r[r]r^r_rRc`rScTc{r|r*i}rUc+b~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsVcFb,bxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1s2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-s.s/s:s;s~eafbfcfdf=s?s@s[s]s^s_s`s{s+i,i|s}s~sCgDgatbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxt0 1 2 3 4 n h ytztAtBtCtDtEtFtGtHtItJtKtLtMtEgFgNtOtPtQtRtStTtUtVtp 5 6 SbTb7 WtXtYtZt0t1t2t3t4t5t6t7t8t9t!t#t$t%t't(t)t*t+t,t-t.t/t:t;t=t?t@t[t]t^t_t`t{t|t}t~taubucudueufuguhuiujukulumunuoupuqurusutuuuvuwuxuyuzuAuBuCuDuEuFuGuHuIuJuKuLuMuNuOuPuQuRuSuTuUuVuWuXuYuZu0u1u2u3u4u5u6u7u8u9u!u#u$u%u'u(u)u*u+u,u-u.u/u:u;u=u?u@u[u]u^u_u`u{u|u}u~u-bGbavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvviwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v2b3b$vGg%v'v(vH I J )v; = Wc*v+v,v-v.v/v:v;v=v?v@v[v]v^v_v`v{v|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwvwwwxwywzwAwBwCwDwEwFwGwHwIwJwKwLwMwNwOwPwQwRwSwTwUwVwWwXwYwZw0w1w2w3w4w5w6w7w8w9w!w#w$w%w'w(w)w*w+w,w-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~waxbxcxdxexfxgxhxixjxkxlxmxnxoxpxqxrxsxtxuxvxwxxxyxzxAxBxCxDxExFxGxHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxWxXxYxZx0x1x2x3x4x5x6x7x8x9x!x#x$x%x'x(x)x*x+x,xHgIg-x.x/x:x;x=x?x@x[x]x^x_x`x{x|x}x~xaybycydyeyfygyhyiyjykylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTyUyVyWyXyYyZy0y1y2y3y4y5y6y7y8y9y!y#y$y%y'y(y)y*y+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqzrzsztzuzvzwzxzyzzzAzBzCzDzEzFzGzHzIzJzKzLzMzNzOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z'z(z)z*z+z,z-z.z/z:z;z=z?z@z[z]z^z_z`z{z|z}z~zaAbA-icAdAeAfAgAhAiAjAkAXclAmAefffgfhfifjfnAoApA.bqArAsAtAuAvAwAt c xAyAzAAABACADAEAIAJAKALANAOAPAQAYcRAZc0cSATA.iUA1c/bVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A2cHb:b,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBkflfmfnfofKBLBMBNBOBPBQBRBSB:i;iTBUBVBJgKgWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B'B(B)B*B+B,B~ abbbcbdbu i -B.B/B:B;B?B@B[B]B^B_B`B{B|B}BLgMg~BaCbCcCdCeCfCgCiCq 8 9 UbVb! kClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYD;bIb3c4c5c6cZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D.DEi/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAE4b5bCENgDEEEFEK L M GE? @ HE7cIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E7E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E;E=E?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)FOg*F+F,F-F.F/F:F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGPgQgNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G'G(G)G*G+G,G-G.G/G:G;G=G?G@G[G]G^G_G`G{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHQHSHTHUHWHXHYHZH0H1H2H3H4H5H6H7H8H9H!H#H$H%H'H(H)H*H+H,H-H.H/H:H;H=H?H@H[H]H^H_H`H{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzIAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI0I1I2I3I4I5I6I7I8I9I[i!I#I$I%I'I(I)I*I+I8c,I-Ipfqfrfsftfuf.IN /I:I=b;I=I?I@I[I]I^Iv d _I`I{I|I}I~IaJbJfJgJhJiJkJlJmJnJ9coJ!c#cpJqJ]irJ$c?bsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJ%cJb@bQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!J#J$J%J'J(J)J*J+J,J-J.J/J:J;J=J?J@J[J]J^J_J`J{J|J}J~JaKbKcKdKeKfKgKvfwfxfyfzfhKiKjKkKlKmKnKoKpK_i`iqKrKsKRgSgtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKebfbgbhbibw j RKSKTKUKVKXKYKZK0K1K2K3K4K5K6KTgUg7K8K9K!K#K$K%K'K)Kr # $ WbXb% +K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9L!L#L$L%L'L(L)L*L+L,L-L.L/L:L;L=L?L@L[L]L^L_L`L{L|L}L~LaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvM[bKb'c(c)c*cwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMSMFiTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M9M!M#M$M%M'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M^M_M`M{M|M6b7b~MVgaNbNcNO P Q dN[ ] eN+cfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N*N+N,N-N.N/N:N;N=N?N@N[N]N^N_N`N{N|N}N~NaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOWgOOPOQOROSOTOUOWOXOYOZO0O1O2O3O4O5O6O7O8O9O!O#O$O%O'O(O)O*O+O,O-O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPXgYgkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!P#P$P%P'P(P)P*P+P,P-P.P/P:P;P=P?P@P[P]P^P_P`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQnQpQqQrQtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q!Q#Q$Q%Q'Q(Q)Q*Q+Q,Q-Q.Q/Q:Q;Q=Q?Q@Q[Q]Q^Q_Q`Q{Q|Q}Q~QaRbRcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRuRvRwRxRyRzRARBRCRDRERFRGR~iHRIRJRKRLRMRNRORPR,cQRRRAfBfCfDfEfFfSRR TRUR]bVRWRXRYRZR0R1Rx e 2R3R4R5R6R7R8R9R%R'R(R)R+R,R-R.R[c/R]c^c:R;Raj=R_cnc?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmS`cLbocnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'SGfHfIfJfKf(S)S*S+S,S-S.S/S:Scjdj;S=S?SZg0g@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnTnbobpbqbrbA k oTpTqTrTsTuTvTwTxTyTzTATBTCTDT1g2gETFTGTHTITJTKTLTNTy ^ _ 8b9b` PTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!T#T$T%T'T(T)T*T+T,T-T.T/T:T;T=T?T@T[T]T^T_T`T{T|T}T~TaUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUsUtUuUvUwUxUyUzUAUBUCUDUEUFUGUHUIUJUKULUMUNUOUPUQURUSUTUUUVUWUXUYUZU0U1U2U3U4U5U6U7U8U9U!U#U$U%U'U(U)U*U+U,U-U.U/U:U;U=U?U@U[U]UpcMb{c|c}c~c^U_U`U{U|U}U~UaVbVcVdVeVfVgVhViVjVkVlVmVnVpVGiqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^b_b7V3g8V9V!V' ( ) #Vjbkb$Vad%V'V(V)V*V+V,V-V.V/V:V;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWDWEWFWGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWWXWYWZW0W1W2W3W4W5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[W]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkX4glXmXnXoXpXqXrXtXuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRXTXUXVXWXXXYXZX0X1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X5g6g+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYpYqYrYsYtYuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYKYLYMYNYOYPYQYRYSYTYUYVYWYXYYYZY0Y1Y2Y3Y4Y5Y6Y7Y8Y9Y!Y#Y$Y%Y'Y(Y)Y*Y+Y.Y:Y;Y=Y@Y[Y]Y^Y_Y`Y{Y|Y}Y~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z9Z!Z#Z$Z%Z'Z(Z)Z*Z+Z,Z-Z.Z/Z:Z;Z=Z?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0hje0f0g0h0i0j0k0l0m0bdn0o0LfMfNfOfPfQfp0* q0r0qcs0t0u0v0w0x0y0B f z0A0B0C0D0E0F0G0K0L0M0N0P0Q0R0S0cdT0ddedU0V0ijW0fdrcX0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0gdNbsc.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1RfSfTfUfVfM1N1O1P1Q1R1S1T1U1kjljV1W1X17g8gY1Z101112131415161718191!1#1$1%1'1(1)1*1+1,1-1.1sbtbubvbwbC l /1:1;1=1?1[1]1^1_1`1{1|1}1~1a29g!gb2c2d2e2f2g2h2i2k2z { | !b#b} m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!2#2$2%2'2(2)2*2+2,2-2.2/2:2;2=2?2@2[2]2^2_2`2{2|2}2~2a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303tcObhdidjdkd132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3:3Hi;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4`b{bE4#gF4G4H4+ , - I4lbmbJ4ldK4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445464748494!4#4$4%4'4(4)4*4+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z505152535455565758595!5#5$5%5'5(5)5*5+5$g,5-5.5/5:5;5=5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6%g'gP6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!6#6$6%6'6(6)6*6+6,6-6.6/6:6;6=6?6@6[6]6^6_6`6{6|6}6~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7S7U7V7W7Y7Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7:7;7=7?7@7[7]7^7_7`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z808182838485868788898!8#8pj$8%8'8(8)8*8+8,8-8md.8/8WfXfYfZf0f1f:8. ;8=8uc?8@8[8]8^8_8`8D Pb{8|8}8~8a9b9c9d9h9i9j9k9m9n9o9p9Ndq9OdPdr9s9qjt9Qdvcu9v9w9x9y9z9RdwcA9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z909192939495969798999!9#9$9%9'9(9)9*9+9,9-9.9/9:9;9=9?9@93f4f5f6f7f[9]9^9_9`9{9|9}9~9sjtja!b!c!(g)gd!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!ndodpdqdrdYbZbA!B!C!D!E!G!H!I!J!K!L!M!N!O!P!*gQ!R!S!T!U!V!W!X!Z!xcyczc$b%bAc1!2!3!4!5!6!7!8!9!!!#!$!%!'!(!)!*!+!,!-!.!/!:!;!=!?!@![!]!^!_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#BcSdTdUdVdO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#!#Ii##$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#`#{#|#}#~#a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$HdIdr$+gs$t$u$CcDcEcv$FcGcw$Wdx$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$0$1$2$3$4$5$6$7$8$9$!$#$$$%$'$($)$*$+$,$-$.$/$:$;$=$?$@$[$]$^$_$`${$|$}$~$a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%0%1%2%3%4%5%,g6%7%8%9%!%#%$%'%(%)%*%+%,%-%.%/%:%;%=%?%@%[%]%^%_%`%{%|%}%~%a'b'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'A'B'-g.gC'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'0'1'2'3'4'5'6'7'8'9'!'#'$'%'''(')'*'+','-'.'/':';'='?'@'[']'^'_'`'{'|'}'~'a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z(A(B(C(F(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z(0(1(2(3(4(5(6(7(8(9(!(#($(%('((()(*(+(,(-(.(/(:(;(=(?(@([(](^(_(`({(|(}(~(a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)xjQ)R)S)T)U)V)W)X)Y)XdZ)0)8f9f!f#f$f%f1)Hc2)3)Ic4)5)6)7)8)9)!)Jc

58 return not (current_status_code < 200 or current_status_code in {204, 205, 304}) 2a yjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjKcOjLcMcPjQj%iRjNc'bSjTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(jOcDb(b)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j_j`j{j|j}j~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkCkDkEkFkGk=e?e@e[e]eHkIkJkKkLkMkNkOkPk'i(iQkRkSkvgwgTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)kS T U V W m g *k+k,k-k.k/k:k;k=k?k@k[k]k^k_kxgyg`k{k|k}k~kalblcldlo X Y QbRbZ elflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!l#l$l%l'l(l)l*l+l,l-l.l/l:l;l=l?l@l[l]l^l_l`l{l|l}l~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSm)bEbTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'mui(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn0b1bunzgvnwnxnE F G yn/ : PcznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!n#n$n%n'n(n)n*n+n,n-n.n/n:n;n=n?n@n[n]n^n_n`n{n|n}n~naobocodoeofogohoiojokolomonooopoqorosotouovowoxoyozoAoBoCoDoEoFoGoHoIoJoKoLoMoNoOoPoQoRoSoToUoVoWoXoYoZo0o1o2o3o4o5o6o7o8o9o!o#o$o%o'o(o)o*o+o,o-o.o/o:o;o=o?o@o[o]o^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpAgBgCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!p#p$p%p'p(p)p*p+p,p-p.p/p:p;p=p?p@p[p]p^p_p`p{p|p}p~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqSqTqUqVqWqXqYqZq0q1q2q3q4q5q6q7q8q9q!q#q$q%q'q(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrUr)iVrWrXrYrZr0r1r2r3rQc4r5r^e_e`e{e|e}e6r7r8r*b9r!r#r$r%r'r(rs b )r*r+r,r-r.r/r:r;r=r?r@r[r]r^r_rRc`rScTc{r|r*i}rUc+b~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsVcFb,bxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1s2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-s.s/s:s;s~eafbfcfdf=s?s@s[s]s^s_s`s{s+i,i|s}s~sCgDgatbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxt0 1 2 3 4 n h ytztAtBtCtDtEtFtGtHtItJtKtLtMtEgFgNtOtPtQtRtStTtUtVtp 5 6 SbTb7 WtXtYtZt0t1t2t3t4t5t6t7t8t9t!t#t$t%t't(t)t*t+t,t-t.t/t:t;t=t?t@t[t]t^t_t`t{t|t}t~taubucudueufuguhuiujukulumunuoupuqurusutuuuvuwuxuyuzuAuBuCuDuEuFuGuHuIuJuKuLuMuNuOuPuQuRuSuTuUuVuWuXuYuZu0u1u2u3u4u5u6u7u8u9u!u#u$u%u'u(u)u*u+u,u-u.u/u:u;u=u?u@u[u]u^u_u`u{u|u}u~u-bGbavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvviwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v2b3b$vGg%v'v(vH I J )v; = Wc*v+v,v-v.v/v:v;v=v?v@v[v]v^v_v`v{v|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwvwwwxwywzwAwBwCwDwEwFwGwHwIwJwKwLwMwNwOwPwQwRwSwTwUwVwWwXwYwZw0w1w2w3w4w5w6w7w8w9w!w#w$w%w'w(w)w*w+w,w-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~waxbxcxdxexfxgxhxixjxkxlxmxnxoxpxqxrxsxtxuxvxwxxxyxzxAxBxCxDxExFxGxHxIxJxKxLxMxNxOxPxQxRxSxTxUxVxWxXxYxZx0x1x2x3x4x5x6x7x8x9x!x#x$x%x'x(x)x*x+x,xHgIg-x.x/x:x;x=x?x@x[x]x^x_x`x{x|x}x~xaybycydyeyfygyhyiyjykylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTyUyVyWyXyYyZy0y1y2y3y4y5y6y7y8y9y!y#y$y%y'y(y)y*y+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqzrzsztzuzvzwzxzyzzzAzBzCzDzEzFzGzHzIzJzKzLzMzNzOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z'z(z)z*z+z,z-z.z/z:z;z=z?z@z[z]z^z_z`z{z|z}z~zaAbA-icAdAeAfAgAhAiAjAkAXclAmAefffgfhfifjfnAoApA.bqArAsAtAuAvAwAt c xAyAzAAABACADAEAIAJAKALANAOAPAQAYcRAZc0cSATA.iUA1c/bVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A2cHb:b,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBkflfmfnfofKBLBMBNBOBPBQBRBSB:i;iTBUBVBJgKgWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B'B(B)B*B+B,B~ abbbcbdbu i -B.B/B:B;B?B@B[B]B^B_B`B{B|B}BLgMg~BaCbCcCdCeCfCgCiCq 8 9 UbVb! kClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYD;bIb3c4c5c6cZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D.DEi/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAE4b5bCENgDEEEFEK L M GE? @ HE7cIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E7E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E;E=E?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)FOg*F+F,F-F.F/F:F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGPgQgNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G'G(G)G*G+G,G-G.G/G:G;G=G?G@G[G]G^G_G`G{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHQHSHTHUHWHXHYHZH0H1H2H3H4H5H6H7H8H9H!H#H$H%H'H(H)H*H+H,H-H.H/H:H;H=H?H@H[H]H^H_H`H{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzIAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI0I1I2I3I4I5I6I7I8I9I[i!I#I$I%I'I(I)I*I+I8c,I-Ipfqfrfsftfuf.IN /I:I=b;I=I?I@I[I]I^Iv d _I`I{I|I}I~IaJbJfJgJhJiJkJlJmJnJ9coJ!c#cpJqJ]irJ$c?bsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJ%cJb@bQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!J#J$J%J'J(J)J*J+J,J-J.J/J:J;J=J?J@J[J]J^J_J`J{J|J}J~JaKbKcKdKeKfKgKvfwfxfyfzfhKiKjKkKlKmKnKoKpK_i`iqKrKsKRgSgtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKebfbgbhbibw j RKSKTKUKVKXKYKZK0K1K2K3K4K5K6KTgUg7K8K9K!K#K$K%K'K)Kr # $ WbXb% +K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9L!L#L$L%L'L(L)L*L+L,L-L.L/L:L;L=L?L@L[L]L^L_L`L{L|L}L~LaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvM[bKb'c(c)c*cwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMSMFiTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M9M!M#M$M%M'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M^M_M`M{M|M6b7b~MVgaNbNcNO P Q dN[ ] eN+cfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N*N+N,N-N.N/N:N;N=N?N@N[N]N^N_N`N{N|N}N~NaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOWgOOPOQOROSOTOUOWOXOYOZO0O1O2O3O4O5O6O7O8O9O!O#O$O%O'O(O)O*O+O,O-O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPXgYgkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!P#P$P%P'P(P)P*P+P,P-P.P/P:P;P=P?P@P[P]P^P_P`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQnQpQqQrQtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q!Q#Q$Q%Q'Q(Q)Q*Q+Q,Q-Q.Q/Q:Q;Q=Q?Q@Q[Q]Q^Q_Q`Q{Q|Q}Q~QaRbRcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRuRvRwRxRyRzRARBRCRDRERFRGR~iHRIRJRKRLRMRNRORPR,cQRRRAfBfCfDfEfFfSRR TRUR]bVRWRXRYRZR0R1Rx e 2R3R4R5R6R7R8R9R%R'R(R)R+R,R-R.R[c/R]c^c:R;Raj=R_cnc?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmS`cLbocnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'SGfHfIfJfKf(S)S*S+S,S-S.S/S:Scjdj;S=S?SZg0g@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnTnbobpbqbrbA k oTpTqTrTsTuTvTwTxTyTzTATBTCTDT1g2gETFTGTHTITJTKTLTNTy ^ _ 8b9b` PTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!T#T$T%T'T(T)T*T+T,T-T.T/T:T;T=T?T@T[T]T^T_T`T{T|T}T~TaUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUsUtUuUvUwUxUyUzUAUBUCUDUEUFUGUHUIUJUKULUMUNUOUPUQURUSUTUUUVUWUXUYUZU0U1U2U3U4U5U6U7U8U9U!U#U$U%U'U(U)U*U+U,U-U.U/U:U;U=U?U@U[U]UpcMb{c|c}c~c^U_U`U{U|U}U~UaVbVcVdVeVfVgVhViVjVkVlVmVnVpVGiqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^b_b7V3g8V9V!V' ( ) #Vjbkb$Vad%V'V(V)V*V+V,V-V.V/V:V;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWDWEWFWGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWWXWYWZW0W1W2W3W4W5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[W]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkX4glXmXnXoXpXqXrXtXuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRXTXUXVXWXXXYXZX0X1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X5g6g+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYpYqYrYsYtYuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYKYLYMYNYOYPYQYRYSYTYUYVYWYXYYYZY0Y1Y2Y3Y4Y5Y6Y7Y8Y9Y!Y#Y$Y%Y'Y(Y)Y*Y+Y.Y:Y;Y=Y@Y[Y]Y^Y_Y`Y{Y|Y}Y~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z9Z!Z#Z$Z%Z'Z(Z)Z*Z+Z,Z-Z.Z/Z:Z;Z=Z?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0hje0f0g0h0i0j0k0l0m0bdn0o0LfMfNfOfPfQfp0* q0r0qcs0t0u0v0w0x0y0B f z0A0B0C0D0E0F0G0K0L0M0N0P0Q0R0S0cdT0ddedU0V0ijW0fdrcX0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0gdNbsc.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1RfSfTfUfVfM1N1O1P1Q1R1S1T1U1kjljV1W1X17g8gY1Z101112131415161718191!1#1$1%1'1(1)1*1+1,1-1.1sbtbubvbwbC l /1:1;1=1?1[1]1^1_1`1{1|1}1~1a29g!gb2c2d2e2f2g2h2i2k2z { | !b#b} m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!2#2$2%2'2(2)2*2+2,2-2.2/2:2;2=2?2@2[2]2^2_2`2{2|2}2~2a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303tcObhdidjdkd132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3:3Hi;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4`b{bE4#gF4G4H4+ , - I4lbmbJ4ldK4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445464748494!4#4$4%4'4(4)4*4+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z505152535455565758595!5#5$5%5'5(5)5*5+5$g,5-5.5/5:5;5=5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6%g'gP6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!6#6$6%6'6(6)6*6+6,6-6.6/6:6;6=6?6@6[6]6^6_6`6{6|6}6~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7S7U7V7W7Y7Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7:7;7=7?7@7[7]7^7_7`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z808182838485868788898!8#8pj$8%8'8(8)8*8+8,8-8md.8/8WfXfYfZf0f1f:8. ;8=8uc?8@8[8]8^8_8`8D Pb{8|8}8~8a9b9c9d9h9i9j9k9m9n9o9p9Ndq9OdPdr9s9qjt9Qdvcu9v9w9x9y9z9RdwcA9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z909192939495969798999!9#9$9%9'9(9)9*9+9,9-9.9/9:9;9=9?9@93f4f5f6f7f[9]9^9_9`9{9|9}9~9sjtja!b!c!(g)gd!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!ndodpdqdrdYbZbA!B!C!D!E!G!H!I!J!K!L!M!N!O!P!*gQ!R!S!T!U!V!W!X!Z!xcyczc$b%bAc1!2!3!4!5!6!7!8!9!!!#!$!%!'!(!)!*!+!,!-!.!/!:!;!=!?!@![!]!^!_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#BcSdTdUdVdO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#!#Ii##$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#`#{#|#}#~#a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$HdIdr$+gs$t$u$CcDcEcv$FcGcw$Wdx$y$z$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$0$1$2$3$4$5$6$7$8$9$!$#$$$%$'$($)$*$+$,$-$.$/$:$;$=$?$@$[$]$^$_$`${$|$}$~$a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%0%1%2%3%4%5%,g6%7%8%9%!%#%$%'%(%)%*%+%,%-%.%/%:%;%=%?%@%[%]%^%_%`%{%|%}%~%a'b'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'A'B'-g.gC'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'0'1'2'3'4'5'6'7'8'9'!'#'$'%'''(')'*'+','-'.'/':';'='?'@'[']'^'_'`'{'|'}'~'a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z(A(B(C(F(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z(0(1(2(3(4(5(6(7(8(9(!(#($(%('((()(*(+(,(-(.(/(:(;(=(?(@([(](^(_(`({(|(}(~(a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)xjQ)R)S)T)U)V)W)X)Y)XdZ)0)8f9f!f#f$f%f1)Hc2)3)Ic4)5)6)7)8)9)!)Jc

59 

60 

61def get_path_param_names(path: str) -> Set[str]: 2a b c d e f Pb

62 return set(re.findall("{(.*?)}", path)) 2a KczhLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.f'i(ivgwgxb)_S T U V W m g VexgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEbzgE F G / : PcsdhhAgBg)iKhJdQc^e_e`e{e|e}e*bs /f:f;f*_b RcLhScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`f+i,iCgDgyb+_0 1 2 3 4 n h WeEgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbGgH I J ; = WctdihHgIg-iWhKdXcefffgfhfifjf.bt {f|f}f,_c YcXhZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofgg:i;iJgKgzb-_~ abbbcbdbu i XeLgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cNgK L M ? @ 7cwdOgjhPgQg[i8hLd8cpfqfrfsftfufN =bv hgigjg._d 9c9h!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrg_i`iRgSgAb/_ebfbgbhbibw j YeTgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cVgO P Q [ ] +czdWgkhXgYg~i-hMd,cAfBfCfDfEfFfR ]bx sgtgug:_e [c.h]c^c_cnc`cLbocGf/g:gHf;g=gIf?gJf@g[gKf]gcjdjZg0gBb;_nbobpbqbrbA k 6e1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c3g' ( ) jbkbadDd4glh5g6ghj`hnebdLfMfNfOfPfQf* qcB ^g_g`g=_f cd{hddedfdrcgdNbscRf{g|gSf}g~gTfahUfbhchVfdhkjlj7g8gCb?_sbtbubvbwbC l 7e9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd#g+ , - lbmbldGd$gmh%g'gpjhioemdWfXfYfZf0f1f. ucD ehfhgh@_PbNdiiOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhsjtj(g)gAd[_ndodpdqdrdYbZb2f*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVd+gCcDcEcFcGcWd1e,gnh-g.gxjti8eXd8f9f!f#f$f%fHcIcJcwhxhyh]_

63 

64 

65_invalid_args_message = ( 2a b c d e f Pb

66 "Invalid args for response field! Hint: " 

67 "check that {type_} is a valid Pydantic field type. " 

68 "If you are using a return type annotation that is not a valid Pydantic " 

69 "field (e.g. Union[Response, dict, None]) you can disable generating the " 

70 "response model from the type annotation with the path operation decorator " 

71 "parameter response_model=None. Read more: " 

72 "https://fastapi.tiangolo.com/tutorial/response-model/" 

73) 

74 

75 

76def create_model_field( 2a b c d e f Pb

77 name: str, 

78 type_: Any, 

79 class_validators: Optional[Dict[str, Validator]] = None, 

80 default: Optional[Any] = Undefined, 

81 required: Union[bool, UndefinedType] = Undefined, 

82 model_config: Union[Type[BaseConfig], None] = None, 

83 field_info: Optional[FieldInfo] = None, 

84 alias: Optional[str] = None, 

85 mode: Literal["validation", "serialization"] = "validation", 

86 version: Literal["1", "auto"] = "auto", 

87) -> ModelField: 

88 class_validators = class_validators or {} 2a KcLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )bEb|b2e0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cLbocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdNbscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

89 

90 v1_model_config = may_v1.BaseConfig 2a KcLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )bEb|b2e0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cLbocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdNbscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

91 v1_field_info = field_info or may_v1.FieldInfo() 2a KcLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )bEb|b2e0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cLbocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdNbscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

92 v1_kwargs = { 2a KcLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )bEb|b2e0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cLbocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdNbscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

93 "name": name, 

94 "field_info": v1_field_info, 

95 "type_": type_, 

96 "class_validators": class_validators, 

97 "default": default, 

98 "required": required, 

99 "model_config": v1_model_config, 

100 "alias": alias, 

101 } 

102 

103 if ( 2a KcLcMcNc'bOcDb(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )bEb|b2e0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVcFb,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2cHb:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%cJb@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtgug

104 annotation_is_pydantic_v1(type_) 

105 or isinstance(field_info, may_v1.FieldInfo) 

106 or version == "1" 

107 ): 

108 from fastapi._compat import v1 2a KcLcMcNcOcDb=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y Z Eb2eE F G / : PcsdJdQc^e_e`e{e|e}es /f:f;fb RcScTcUcVcFb~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 7 Gb3eH I J ; = WctdKdXcefffgfhfifjft {f|f}fc YcZc0c1c2cHbkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 ! Ib3cud4c|dvd}d5c6c4eK L M ? @ 7cwdLd8cpfqfrfsftfufN v hgigjgd 9c!c#c$c%cJbvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ % Kb'cxd(cleydme)c*c5eO P Q [ ] +czdMd,cAfBfCfDfEfFfR x sgtguge [c]c^c_c`cLbGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ ` Mb{cBd|cFeCdGe}c~c9e' ( ) jbkbadDdnebdLfMfNfOfPfQf* B ^g_g`gf cdddedfdgdNbRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | } ObhdEdidTeFdUejdkd!e+ , - lbmbldGdoemdWfXfYfZf0f1f. D ehfhgh

109 

110 try: 2a KcLcMcNcOcDb=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y Z Eb2eE F G / : PcsdJdQc^e_e`e{e|e}es /f:f;fb RcScTcUcVcFb~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 7 Gb3eH I J ; = WctdKdXcefffgfhfifjft {f|f}fc YcZc0c1c2cHbkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 ! Ib3cud4c|dvd}d5c6c4eK L M ? @ 7cwdLd8cpfqfrfsftfufN v hgigjgd 9c!c#c$c%cJbvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ % Kb'cxd(cleydme)c*c5eO P Q [ ] +czdMd,cAfBfCfDfEfFfR x sgtguge [c]c^c_c`cLbGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ ` Mb{cBd|cFeCdGe}c~c9e' ( ) jbkbadDdnebdLfMfNfOfPfQf* B ^g_g`gf cdddedfdgdNbRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | } ObhdEdidTeFdUejdkd!e+ , - lbmbldGdoemdWfXfYfZf0f1f. D ehfhgh

111 return v1.ModelField(**v1_kwargs) # type: ignore[no-any-return] 2a KcLcMcNcOcDb=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y Z Eb2eE F G / : PcsdJdQc^e_e`e{e|e}es /f:f;fb RcScTcUcVcFb~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 7 Gb3eH I J ; = WctdKdXcefffgfhfifjft {f|f}fc YcZc0c1c2cHbkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 ! Ib3cud4c|dvd}d5c6c4eK L M ? @ 7cwdLd8cpfqfrfsftfufN v hgigjgd 9c!c#c$c%cJbvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ % Kb'cxd(cleydme)c*c5eO P Q [ ] +czdMd,cAfBfCfDfEfFfR x sgtguge [c]c^c_c`cLbGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ ` Mb{cBd|cFeCdGe}c~c9e' ( ) jbkbadDdnebdLfMfNfOfPfQf* B ^g_g`gf cdddedfdgdNbRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | } ObhdEdidTeFdUejdkd!e+ , - lbmbldGdoemdWfXfYfZf0f1f. D ehfhgh

112 except RuntimeError: 22e3e4e5e9e!e

113 raise fastapi.exceptions.FastAPIError( 22e3e4e5e9e!e

114 _invalid_args_message.format(type_=type_) 

115 ) from None 

116 elif PYDANTIC_V2: 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

117 from ._compat import v2 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

118 

119 field_info = field_info or FieldInfo( 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

120 annotation=type_, default=default, alias=alias 

121 ) 

122 kwargs = {"mode": mode, "name": name, "field_info": field_info} 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

123 try: 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

124 return v2.ModelField(**kwargs) # type: ignore[return-value,arg-type] 2a KcLcMcNc'bOc(b=e'f(f?e)f*f@e+f[e,f-f]e.fxbS T U V W m g VeYdZd0d1d2d3d4d5d6d7d8d9do X Y QbRbZ )b|b0b}b1b~bE F G / : PcsdacJdQc^e_e`e{e|e}e*bs /f:f;fb RcScTcUc+bVc,b~e=f?faf@f[fbf]fcf^f_fdf`fyb0 1 2 3 4 n h We!d#d$d%d'd(d)d*d+d,d-d.dp 5 6 SbTb7 -bbc2bcc3bdcH I J ; = WctdecKdXcefffgfhfifjf.bt {f|f}fc YcZc0c1c/b2c:bkf~faglfbgcgmfdgnfegfgofggzb~ abbbcbdbu i Xe/d:d;d=d?d@d[d]d^d_d`d{dq 8 9 UbVb! ;b3cud4c|dvd}d5c6cfc4bgc5bhcK L M ? @ 7cwdicLd8cpfqfrfsftfufN =bv hgigjgd 9c!c#c$c?b%c@bvfkglgwfmgngxfogyfpgqgzfrgAbebfbgbhbibw j Ye~daebecedeeefegeheiejeker # $ WbXb% [b'cxd(cleydme)c*cjc6bkc7blcO P Q [ ] +czdmcMd,cAfBfCfDfEfFfR ]bx sgtguge [c]c^c_cnc`cocGf/g:gHf;g=gIf?gJf@g[gKf]gBbnbobpbqbrbA k 6eteuevewexeyezeAeBeCeDeEey ^ _ 8b9b` pc{cBd|cFeCdGe}c~c-c^b.c_b/c' ( ) jbkbadDd:cnebdLfMfNfOfPfQf* qcB ^g_g`gf cdddedfdrcgdscRf{g|gSf}g~gTfahUfbhchVfdhCbsbtbubvbwbC l 7eHeIeJeKeLeMeNeOePeQeReSez { | !b#b} tchdEdidTeFdUejdkd;c`b=c{b?c+ , - lbmbldGd@coemdWfXfYfZf0f1f. ucD ehfhghPbNdOdPdQdvcRdwc3fohph4fqhrh5fsh6fthuh7fvhAdndodpdqdrdYbZb2f#e$e%e'e(e)e*e+e,e-e.e/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdreCcDcEcFcGcWd1ese8eXd8f9f!f#f$f%fHcIcJcwhxhyh

125 except PydanticSchemaGenerationError: 2|b0b}b1b~bacbc2bcc3bdcecfc4bgc5bhcicjc6bkc7blcmc-c^b.c_b/c:c;c`b=c{b?c@cpeHdqeIdrese

126 raise fastapi.exceptions.FastAPIError( 2|b0b}b1b~bacbc2bcc3bdcecfc4bgc5bhcicjc6bkc7blcmc-c^b.c_b/c:c;c`b=c{b?c@cpeHdqeIdrese

127 _invalid_args_message.format(type_=type_) 

128 ) from None 

129 # Pydantic v2 is not installed, but it's not a Pydantic v1 ModelField, it could be 

130 # a Pydantic v1 type, like a constrained int 

131 from fastapi._compat import v1 2a xb|b0b}b1b~bE F G / : acb ybbc2bcc3bdcH I J ; = ecc zbfc4bgc5bhcK L M ? @ icN d Abjc6bkc7blcO P Q [ ] mcR e Bb-c^b.c_b/c' ( ) jbkb:c* f Cb;c`b=c{b?c+ , - lbmb@c.

132 

133 try: 2a xb|b0b}b1b~bE F G / : acb ybbc2bcc3bdcH I J ; = ecc zbfc4bgc5bhcK L M ? @ icN d Abjc6bkc7blcO P Q [ ] mcR e Bb-c^b.c_b/c' ( ) jbkb:c* f Cb;c`b=c{b?c+ , - lbmb@c.

134 return v1.ModelField(**v1_kwargs) # type: ignore[no-any-return] 2a xb|b0b}b1b~bE F G / : acb ybbc2bcc3bdcH I J ; = ecc zbfc4bgc5bhcK L M ? @ icN d Abjc6bkc7blcO P Q [ ] mcR e Bb-c^b.c_b/c' ( ) jbkb:c* f Cb;c`b=c{b?c+ , - lbmb@c.

135 except RuntimeError: 2|b0b}b1b~bacbc2bcc3bdcecfc4bgc5bhcicjc6bkc7blcmc-c^b.c_b/c:c;c`b=c{b?c@c

136 raise fastapi.exceptions.FastAPIError( 2|b0b}b1b~bacbc2bcc3bdcecfc4bgc5bhcicjc6bkc7blcmc-c^b.c_b/c:c;c`b=c{b?c@c

137 _invalid_args_message.format(type_=type_) 

138 ) from None 

139 

140 

141def create_cloned_field( 2a b c d e f Pb

142 field: ModelField, 

143 *, 

144 cloned_types: Optional[MutableMapping[Type[BaseModel], Type[BaseModel]]] = None, 

145) -> ModelField: 

146 if PYDANTIC_V2: 2a 'bDb(bxbS T U V W m g o X Y QbRbZ )bEbE F G / : *bs b +bFb,byb0 1 2 3 4 n h p 5 6 SbTb7 -bGbH I J ; = .bt c /bHb:bzb~ abbbcbdbu i q 8 9 UbVb! ;bIbK L M ? @ N =bv d ?bJb@bAbebfbgbhbibw j r # $ WbXb% [bKbO P Q [ ] R ]bx e ncLbocBbnbobpbqbrbA k y ^ _ 8b9b` pcMb' ( ) jbkb* qcB f rcNbscCbsbtbubvbwbC l z { | !b#b} tcOb+ , - lbmb. ucD PbvcwcAdndodpdqdrdYbZbxcyczc$b%bAcBcCcDcEcFcGcHcIcJc

147 from ._compat import v2 2a 'b(bxbS T U V W m g o X Y QbRbZ )bE F G / : *bs b +b,byb0 1 2 3 4 n h p 5 6 SbTb7 -bH I J ; = .bt c /b:bzb~ abbbcbdbu i q 8 9 UbVb! ;bK L M ? @ N =bv d ?b@bAbebfbgbhbibw j r # $ WbXb% [bO P Q [ ] R ]bx e ncocBbnbobpbqbrbA k y ^ _ 8b9b` pc' ( ) jbkb* qcB f rcscCbsbtbubvbwbC l z { | !b#b} tc+ , - lbmb. ucD PbvcwcAdndodpdqdrdYbZbxcyczc$b%bAcBcCcDcEcFcGcHcIcJc

148 

149 if isinstance(field, v2.ModelField): 2a 'b(bxbS T U V W m g o X Y QbRbZ )bE F G / : *bs b +b,byb0 1 2 3 4 n h p 5 6 SbTb7 -bH I J ; = .bt c /b:bzb~ abbbcbdbu i q 8 9 UbVb! ;bK L M ? @ N =bv d ?b@bAbebfbgbhbibw j r # $ WbXb% [bO P Q [ ] R ]bx e ncocBbnbobpbqbrbA k y ^ _ 8b9b` pc' ( ) jbkb* qcB f rcscCbsbtbubvbwbC l z { | !b#b} tc+ , - lbmb. ucD PbvcwcAdndodpdqdrdYbZbxcyczc$b%bAcBcCcDcEcFcGcHcIcJc

150 return field 2a 'b(bxbS T U V W m g o X Y QbRbZ )bE F G / : *bs b +b,byb0 1 2 3 4 n h p 5 6 SbTb7 -bH I J ; = .bt c /b:bzb~ abbbcbdbu i q 8 9 UbVb! ;bK L M ? @ N =bv d ?b@bAbebfbgbhbibw j r # $ WbXb% [bO P Q [ ] R ]bx e ncocBbnbobpbqbrbA k y ^ _ 8b9b` pc' ( ) jbkb* qcB f rcscCbsbtbubvbwbC l z { | !b#b} tc+ , - lbmb. ucD PbvcwcAdndodpdqdrdYbZbxcyczc$b%bAcBcCcDcEcFcGcHcIcJc

151 

152 from fastapi._compat import v1 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

153 

154 # cloned_types caches already cloned types to support recursive models and improve 

155 # performance by avoiding unnecessary cloning 

156 if cloned_types is None: 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

157 cloned_types = _CLONED_TYPES_CACHE 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

158 

159 original_type = field.type_ 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

160 if is_dataclass(original_type) and hasattr(original_type, "__pydantic_model__"): 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

161 original_type = original_type.__pydantic_model__ 1abcdef

162 use_type = original_type 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

163 if lenient_issubclass(original_type, v1.BaseModel): 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

164 original_type = cast(Type[v1.BaseModel], original_type) 2a DbS T U V W m g o X Y Z Ebs b Fb0 1 2 3 4 n h p 5 6 7 Gbt c Hb~ abbbcbdbu i q 8 9 ! Ibv d Jbebfbgbhbibw j r # $ % Kbx e LbnbobpbqbrbA k y ^ _ ` MbB f NbsbtbubvbwbC l z { | } ObD

165 use_type = cloned_types.get(original_type) 2a DbS T U V W m g o X Y Z Ebs b Fb0 1 2 3 4 n h p 5 6 7 Gbt c Hb~ abbbcbdbu i q 8 9 ! Ibv d Jbebfbgbhbibw j r # $ % Kbx e LbnbobpbqbrbA k y ^ _ ` MbB f NbsbtbubvbwbC l z { | } ObD

166 if use_type is None: 2a DbS T U V W m g o X Y Z Ebs b Fb0 1 2 3 4 n h p 5 6 7 Gbt c Hb~ abbbcbdbu i q 8 9 ! Ibv d Jbebfbgbhbibw j r # $ % Kbx e LbnbobpbqbrbA k y ^ _ ` MbB f NbsbtbubvbwbC l z { | } ObD

167 use_type = v1.create_model(original_type.__name__, __base__=original_type) 2a Dbg o Ebs b Fbh p Gbt c Hbi q Ibv d Jbj r Kbx e Lbk y MbB f Nbl z ObD

168 cloned_types[original_type] = use_type 2a Dbg o Ebs b Fbh p Gbt c Hbi q Ibv d Jbj r Kbx e Lbk y MbB f Nbl z ObD

169 for f in original_type.__fields__.values(): 2a Dbg o Ebs b Fbh p Gbt c Hbi q Ibv d Jbj r Kbx e Lbk y MbB f Nbl z ObD

170 use_type.__fields__[f.name] = create_cloned_field( 2a Dbg o Ebs b Fbh p Gbt c Hbi q Ibv d Jbj r Kbx e Lbk y MbB f Nbl z ObD

171 f, 

172 cloned_types=cloned_types, 

173 ) 

174 new_field = create_model_field(name=field.name, type_=use_type, version="1") 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

175 new_field.has_alias = field.has_alias # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

176 new_field.alias = field.alias # type: ignore[misc] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

177 new_field.class_validators = field.class_validators # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

178 new_field.default = field.default # type: ignore[misc] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

179 new_field.default_factory = field.default_factory # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

180 new_field.required = field.required # type: ignore[misc] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

181 new_field.model_config = field.model_config # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

182 new_field.field_info = field.field_info 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

183 new_field.allow_none = field.allow_none # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

184 new_field.validate_always = field.validate_always # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

185 if field.sub_fields: # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

186 new_field.sub_fields = [ # type: ignore[attr-defined] 2a S T U V W m g o X Y Z E F G b 0 1 2 3 4 n h p 5 6 7 H I J c ~ abbbcbdbu i q 8 9 ! K L M N d ebfbgbhbibw j r # $ % O P Q R e nbobpbqbrbA k y ^ _ ` ' ( ) * f sbtbubvbwbC l z { | } + , - .

187 create_cloned_field(sub_field, cloned_types=cloned_types) 

188 for sub_field in field.sub_fields # type: ignore[attr-defined] 

189 ] 

190 if field.key_field: # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

191 new_field.key_field = create_cloned_field( # type: ignore[attr-defined] 1aEFGbHIJcKLMNdOPQRe'()*f+,-.

192 field.key_field, # type: ignore[attr-defined] 

193 cloned_types=cloned_types, 

194 ) 

195 new_field.validators = field.validators # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

196 new_field.pre_validators = field.pre_validators # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

197 new_field.post_validators = field.post_validators # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

198 new_field.parse_json = field.parse_json # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

199 new_field.shape = field.shape # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

200 new_field.populate_validators() # type: ignore[attr-defined] 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

201 return new_field 2a DbxbS T U V W m g o X Y Z EbE F G / : s b Fbyb0 1 2 3 4 n h p 5 6 7 GbH I J ; = t c Hbzb~ abbbcbdbu i q 8 9 ! IbK L M ? @ N v d JbAbebfbgbhbibw j r # $ % KbO P Q [ ] R x e LbBbnbobpbqbrbA k y ^ _ ` Mb' ( ) jbkb* B f NbCbsbtbubvbwbC l z { | } Ob+ , - lbmb. D

202 

203 

204def generate_operation_id_for_path( 2a b c d e f Pb

205 *, name: str, path: str, method: str 1abcdef

206) -> str: # pragma: nocover 1abcdef

207 warnings.warn( 

208 "fastapi.utils.generate_operation_id_for_path() was deprecated, " 

209 "it is not used internally, and will be removed soon", 

210 DeprecationWarning, 

211 stacklevel=2, 

212 ) 

213 operation_id = f"{name}{path}" 

214 operation_id = re.sub(r"\W", "_", operation_id) 

215 operation_id = f"{operation_id}_{method.lower()}" 

216 return operation_id 

217 

218 

219def generate_unique_id(route: "APIRoute") -> str: 2a b c d e f Pb

220 operation_id = f"{route.name}{route.path_format}" 2a KczhLcMcNc'bOcDb(bvgwgxbm g xgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgybn h EgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzbu i LgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbw j TgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbA k 1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbC l 9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdYbZb*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

221 operation_id = re.sub(r"\W", "_", operation_id) 2a KczhLcMcNc'bOcDb(bvgwgxbm g xgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgybn h EgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzbu i LgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbw j TgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbA k 1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbC l 9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdYbZb*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

222 assert route.methods 2a KczhLcMcNc'bOcDb(bvgwgxbm g xgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgybn h EgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzbu i LgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbw j TgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbA k 1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbC l 9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdYbZb*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

223 operation_id = f"{operation_id}_{list(route.methods)[0].lower()}" 2a KczhLcMcNc'bOcDb(bvgwgxbm g xgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgybn h EgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzbu i LgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbw j TgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbA k 1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbC l 9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdYbZb*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

224 return operation_id 2a KczhLcMcNc'bOcDb(bvgwgxbm g xgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgybn h EgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzbu i LgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbw j TgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbA k 1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbC l 9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdYbZb*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

225 

226 

227def deep_dict_update(main_dict: Dict[Any, Any], update_dict: Dict[Any, Any]) -> None: 2a b c d e f Pb

228 for key, value in update_dict.items(): 2JiKiLiMiwiS T U V W m g NiOiPiQbRbQiuiRiSixiyiziTiUiViWiXiYiZi0i1iAi0 1 2 3 4 n h 2i3i4iSbTb5ivi6i7iBiCiDi8i9i!i#i$iFAGAHAMA/i~ abbbcbdbu i =BhCjCUbVb-DEiBE;F=i?i@inGOHPHRHVHcJdJeJjJ^iebfbgbhbibw j WK(K*KWbXbRMFi}MVO{i|i}i.OlQmQoQsQ!R#R$R*RbjnbobpbqbrbA k tTMTOT8b9boVGi6VsXejfjgjSX,Y-Y/Y?YH0I0J0O0jjsbtbubvbwbC l @1j2l2!b#b/3HiD4?5mjnjojp6Q7R7T7X7e9f9g9l9rjndodpdqdrdYbZbF!Y!0!$b%b9#Iiq$%%ujvjwjc'D(E(G(

229 if ( 2JiKiLiMiwiS T U V W m g NiOiPiQbRbQiuiRiSixiyiziTiUiViWiXiYiZi0i1iAi0 1 2 3 4 n h 2i3i4iSbTb5ivi6i7iBiCiDi8i9i!i#i$i

230 key in main_dict 

231 and isinstance(main_dict[key], dict) 

232 and isinstance(value, dict) 

233 ): 

234 deep_dict_update(main_dict[key], value) 2wixiyiziAiBiCiDi/i=i?i@i^i{i|i}ibjejfjgjjjmjnjojrjujvjwj

235 elif ( 2JiKiLiMiwiS T U V W m g NiOiPiQbRbQiuiRiSixiyiziTiUiViWiXiYiZi0i1iAi0 1 2 3 4 n h 2i3i4iSbTb5ivi6i7iBiCiDi8i9i!i#i$i

236 key in main_dict 

237 and isinstance(main_dict[key], list) 

238 and isinstance(update_dict[key], list) 

239 ): 

240 main_dict[key] = main_dict[key] + update_dict[key] 2Oi3ihC(KMTj2Y!

241 else: 

242 main_dict[key] = value 2JiKiLiMiwiS T U V W m g NiPiQbRbQiuiRiSixiyiziTiUiViWiXiYiZi0i1iAi0 1 2 3 4 n h 2i4iSbTb5ivi6i7iBiCiDi8i9i!i#i$iFAGAHAMA/i~ abbbcbdbu i =BjCUbVb-DEiBE;F=i?i@inGOHPHRHVHcJdJeJjJ^iebfbgbhbibw j WK*KWbXbRMFi}MVO{i|i}i.OlQmQoQsQ!R#R$R*RbjnbobpbqbrbA k tTOT8b9boVGi6VsXejfjgjSX,Y-Y/Y?YH0I0J0O0jjsbtbubvbwbC l @1l2!b#b/3HiD4?5mjnjojp6Q7R7T7X7e9f9g9l9rjndodpdqdrdYbZbF!0!$b%b9#Iiq$%%ujvjwjc'D(E(G(

243 

244 

245def get_value_or_default( 2a b c d e f Pb

246 first_item: Union[DefaultPlaceholder, DefaultType], 

247 *extra_items: Union[DefaultPlaceholder, DefaultType], 

248) -> Union[DefaultPlaceholder, DefaultType]: 

249 """ 

250 Pass items or `DefaultPlaceholder`s by descending priority. 

251 

252 The first one to _not_ be a `DefaultPlaceholder` will be returned. 

253 

254 Otherwise, the first item (a `DefaultPlaceholder`) will be returned. 

255 """ 

256 items = (first_item,) + extra_items 2a KczhLcMcNc'bOcDb(bvgwgxbS T U V W m g VexgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgyb0 1 2 3 4 n h WeEgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzb~ abbbcbdbu i XeLgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbebfbgbhbibw j YeTgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbnbobpbqbrbA k 6e1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbsbtbubvbwbC l 7e9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdndodpdqdrdYbZb2f*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

257 for item in items: 2a KczhLcMcNc'bOcDb(bvgwgxbS T U V W m g VexgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgyb0 1 2 3 4 n h WeEgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzb~ abbbcbdbu i XeLgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbebfbgbhbibw j YeTgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbnbobpbqbrbA k 6e1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbsbtbubvbwbC l 7e9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdndodpdqdrdYbZb2f*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

258 if not isinstance(item, DefaultPlaceholder): 2a KczhLcMcNc'bOcDb(bvgwgxbS T U V W m g VexgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgyb0 1 2 3 4 n h WeEgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzb~ abbbcbdbu i XeLgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbebfbgbhbibw j YeTgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbnbobpbqbrbA k 6e1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbsbtbubvbwbC l 7e9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdndodpdqdrdYbZb2f*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc

259 return item 2a S T U V W m g VeJdb 0 1 2 3 4 n h WeKdc ~ abbbcbdbu i XeLdd ebfbgbhbibw j YeMde nbobpbqbrbA k 6enef sbtbubvbwbC l 7eoePbndodpdqdrdYbZb2f8e

260 return first_item 2a KczhLcMcNc'bOcDb(bvgwgxbS T U V W m g VexgygYdZd0d1d2d3d4d5d6d7d8dAhBhChDhEhFhGhHhIhJh9do X Y QbRbZ )bEb|b2e0b}b1b~bzgE F G / : PcsdhhAgBgacKhJdQc*bs b RcLhScTcUc+bVcFb,bCgDgyb0 1 2 3 4 n h WeEgFg!d#d$d%d'd(d)d*d+d,d-dMhNhOhPhQhRhShThUhVh.dp 5 6 SbTb7 -bGbbc3e2bcc3bdcGgH I J ; = WctdihHgIgecWhKdXc.bt c YcXhZc0c1c/b2cHb:bJgKgzb~ abbbcbdbu i XeLgMg/d:d;d=d?d@d[d]d^d_d`dYhZh0h1h2h3h4h5h6h7h{dq 8 9 UbVb! ;bIb3cud4c|dvd}d5c6cfc4e4bgc5bhcNgK L M ? @ 7cwdOgjhPgQgic8hLd8cN =bv d 9c9h!c#c$c?b%cJb@bRgSgAbebfbgbhbibw j YeTgUg~daebecedeeefegeheieje!h#h$h%h'h(h)h*h+h,hker # $ WbXb% [bKb'cxd(cleydme)c*cjc5e6bkc7blcVgO P Q [ ] +czdWgkhXgYgmc-hMd,cR ]bx e [c.h]c^c_cnc`cLbocZg0gBbnbobpbqbrbA k 6e1g2gteuevewexeyezeAeBeCeDe/h:h;h=h?h@h[h]h^h_hEey ^ _ 8b9b` pcMb{cBd|cFeCdGe}c~c-c9e^b.c_b/c3g' ( ) jbkbadDd4glh5g6g:c`hnebd* qcB f cd{hddedfdrcgdNbsc7g8gCbsbtbubvbwbC l 7e9g!gHeIeJeKeLeMeNeOePeQeRe|h}h~haibicidieifigiSez { | !b#b} tcObhdEdidTeFdUejdkd;c!e`b=c{b?c#g+ , - lbmbldGd$gmh%g'g@chioemd. ucD PbNdiiOdPdQdvcRdwc(g)gAdndodpdqdrdYbZb2f*g#e$e%e'e(e)e*e+e,e-e.ejikiliminioipiqirisi/excyczc$b%bAcBcSdZeTd:e0e;eUdVdpeHdqeIdre+gCcDcEcFcGcWd1e,gnh-g.gseti8eXdHcIcJc