Coverage for fastapi/utils.py: 100%

91 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2024-11-18 22:23 +0000

1import re 1abcde

2import warnings 1abcde

3from dataclasses import is_dataclass 1abcde

4from typing import ( 1abcde

5 TYPE_CHECKING, 

6 Any, 

7 Dict, 

8 MutableMapping, 

9 Optional, 

10 Set, 

11 Type, 

12 Union, 

13 cast, 

14) 

15from weakref import WeakKeyDictionary 1abcde

16 

17import fastapi 1abcde

18from fastapi._compat import ( 1abcde

19 PYDANTIC_V2, 

20 BaseConfig, 

21 ModelField, 

22 PydanticSchemaGenerationError, 

23 Undefined, 

24 UndefinedType, 

25 Validator, 

26 lenient_issubclass, 

27) 

28from fastapi.datastructures import DefaultPlaceholder, DefaultType 1abcde

29from pydantic import BaseModel, create_model 1abcde

30from pydantic.fields import FieldInfo 1abcde

31from typing_extensions import Literal 1abcde

32 

33if TYPE_CHECKING: # pragma: nocover 1abcde

34 from .routing import APIRoute 

35 

36# Cache for `create_cloned_field` 

37_CLONED_TYPES_CACHE: MutableMapping[Type[BaseModel], Type[BaseModel]] = ( 1abcde

38 WeakKeyDictionary() 

39) 

40 

41 

42def is_body_allowed_for_status_code(status_code: Union[int, str, None]) -> bool: 1abcde

43 if status_code is None: 2a qirisiti)d*d+d,d-d.dui(8vi)8*8wi+8OhPh,8QhxiyiziAiRhBiCiDiEi7bFi8b9b-8GiHi.hIi!bJiDhKiLiMi.8/8NiOi#bJ IbPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i:8{i|i}i~iajbjcj/d:d;d=d?ddjejfjgjhj/h:hij;8jj=8kjlj?8mjnjoj@8pjqj[8rj]8sjtjujvjwj^8xjK L M N O k f #dyj_8zj`8AjBjCjShDjEjFjGjHjIjJjKjLjMj{83f4f|8NjOj}8PjQj~8RjSjTja9UjThVjUhm P Q ybzbR Wjb9XjYjZjc90j1j2j3j4jd95j6j7j8j9j!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~jakbkckdkekfkgkhkike9jkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkJbS CkDkf9Ekg9FkGkh9HkIkJki9KkLkMkNkOkPkQkRkSkTkVhUkBhVcVkWkXkYkZk0k1k2k3k4kj95k6k7k8k9k!k#k$k%k'k(k)k*k+k,k-k.k/k:k;k=k?k@k[k]k^k_k`k{k|kKbWcLbXcWh}k~kalbl+ , - clobpb$b+ck9dlell9flglm9hliln9jlklo9llmlp9nlolq9plqlr9rlsls9tlult9vlwlu9xlylv9zlAlw9BlClDlElx9FlGlHlIly9JlKlLlMlz9NlOlPlA9QlRlSlB9TlUlVlC9WlXlYlD9Zl0l1lE92l3l4lF95l6l7l8l9l!lG9#l$l%lH9'lI9(l)l*l+lJ9,l-l.l/l:l;lK9=l?l@lL9[lM9]l^l_lN9`l{l|lO9}l~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmP9EmFmGmHmImQ9JmKmR9LmMmXhNmEhOmFhPmGhQmRmSmTmUmVmWmXmYmZm0mS91mT92mU93mV94m5m6m7m8m9m!mYh#m$m%m'm(m)m*m+m,m-m.m/m:m;m=mZh?m@m[m]m^m_m`m{m|m}m~manW9bncndnenfngnX9hninY9Z9jnknln09mnnnon19pn29qn39rnsn4959tn{f5f6funvnwnxnynzn69AnBn79Cn89Dn99EnFnGnHnInJnKnLnMnNn!9#9$9On%9'9PnQnRnSn(9TnUn)9Vn*9+9WnXn,9Yn-9Zn.90n/91n2n3n:94n5n6n;97n8n9n!n#n$n%n'n(n)n*n+n,n-n.n/n:n;n=n?n=9@n[n]n^n_n`n?9{n@9|n[9}n]9~n^9ao_9bo`9codo{9eo|9fo}9go~9hoa!iojokolob!monoc!ood!poe!f!qorosog!touovoh!woxoi!yoj!zok!Aol!Bom!Con!Doo!Eop!Foq!r!GoHos!Iot!Jou!Kov!Low!x!MoNo0h1hOo2hPoQoRo3hSoToUoVoWoy!z!A!XoB!YoZoC!0o1o2o3oD!E!4o5o6oF!7o8o9oG!!oH!I!#o$o%oJ!'o(o)o*oK!+o,oL!-o.o/oM!:o;oN!=oO!?o@oP![o]o^oQ!_o`oR!S!{o|o}oT!~oapbpcpU!dpepfpgpV!hpipW!jpkpX!lpmpnpY!opppZ!qprp0!sptp1!upvp2!wp3!xp4!yp5!zp6!Ap7!Bp8!Cp9!Dp!!Ep#!FpGpHpIp$!Jp%!Kp'!(!YcLp)!Mp*!+!NpOp,!PpQp-!Rp.!Sp/!Tp:!Up;!Vp=!WpXpYp?!Zp0p1p@!2p3p4p5p6p7p8p9p[!!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~paqbqcq_!dqeqfqgqhqiqjqkqlq`!mqnqoqpq{!qqrqsqtquq|!vqwq}!xq;h7f8fyq~!zqa#Aqb#c#BqCqd#DqEqFqe#Gq%bHq@d[d]d^d_d`dIq{d|d}d~daebeJqf#KqLqg#MqNqOqPqE Mbh#b QqRqSqTqcedeeefegeheUqi#Vqj#k#Wql#4h5hm#6hXqYqZq0q7h1q2q3q4q'b5q(b)bn#6q7q=h8q*b9qHh!q#q$qo#p#%q'q+bT Nb(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrq#wrxryrzrArBrCriejekelemeDrErFrGrHr?h@hIrr#Jrs#KrLrt#MrNrOru#PrQrv#Rrw#SrTrUrVrWrx#XrU V W X Y l g $dYry#Zrz#0r1r2r8h3r4r5r6r7r8r9r!r#r$rA#9f!fB#%r'rC#(r)rD#*r+r,rE#-r9h.r!hn Z 0 AbBb1 /rF#:r;r=rG#?r@r[r]r^rH#_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsxsyszsAsBsCsDsEsFsGsHsIsI#JsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1sOb2 2s3sJ#4sK#5s6sL#7s8s9sM#!s#s$s%s's(s)s*s+s,s#h-sChZc.s/s:s;s=s?s@s[s]s^sN#_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxtPb0cQb1c$hytztAtBt. / : Ctqbrb,b,cO#DtEtP#FtGtQ#HtItR#JtKtS#LtMtT#NtOtU#PtQtV#RtStW#TtUtX#VtWtY#XtYtZ#Zt0t0#1t2t3t4t1#5t6t7t8t2#9t!t#t$t3#%t't(t4#)t*t+t5#,t-t.t6#/t:t;t7#=t?t@t8#[t]t^t9#_t`t{t|t}t~t!#aubucu##du$#eufuguhu%#iujukulumunu'#oupuqu(#ru)#sutuuu*#vuwuxu+#yuzuAuBuCuDuEuFuGuHuIuJuKuLuMuNuOuPuQuRuSuTuUuVuWuXuYuZu0u1u2u3u,#4u5u6u7u8u-#9u!u.##u$u%h%uIh'uJh(uKh)u*u+u,u-u.u/u:u;u=u?u-b@u/#[u:#]u;#^u=#_u`u{u|u}u~uav'hbvcvdvevfvgvhvivjvkvlvmvnvovpv(hqvrvsvtvuvvvwvxvyvzvAvBvCvDvEv)hFvGvHvIvJvKvLvMvNvOvPvQv?#RvSvTvUvVvWv@#XvYv[#Zv0v]#^#1v2v3v_#4v5v6v`#7v8v9v{#!v|##v}#$v~#%va$'v(vb$c$)v*vd$e$+v|f#f$f,v-v.v/v:v;vf$=v?vg$@vh$[vi$.bj$]v^v_v`v{v|v}v~vawbwk$l$m$cwn$o$dwewfwgwp$hwiwq$jwr$s$kwlwt$mwu$nwv$oww$pwx$qwy$rwswtwz$uwvwwwA$xwywzwB$AwBwCwDwEwFwGwHwIwJwKwLwMwNwOwPwQwRwSwTwUwVwWwXwYwZw0wC$1w2w3w4w5w6wD$7w8w9w!w#w$wE$%wF$'wG$(wH$)wI$*wJ$+wK$,wL$-w.wM$/wN$:wO$;wP$=wQ$?wR$@wS$[w]w^w_wT$`w{wU$|wV$}wW$X$~waxbxY$cxdxexZ$fxgx0$hx1$ix2$jx3$kx4$lx5$mx6$nx7$ox8$px9$qx!$#$rxsx$$tx%$ux'$vx($wx)$*$xxyx*h+hzx,hAxBxCx-hDxExFxGxHx+$,$-$Ix.$/$Jx:$KxLx;$MxNxOxPx=$?$QxRxSx@$TxUxVx[$Wx]$^$XxYxZx_$0x1x2x`$3x4x5x6x{$7x8x|$9x!x}$#x$x~$%x'x(xa%)x*xb%+x,xc%-x.xd%/xe%:x;xf%=x?xg%@x[x]xh%^x_xi%j%`x{x|xk%}x~xaybyl%cydyeyfym%gyhyiyjyn%kylyo%mynyp%oypyq%qyrysyr%tyuyvys%wyxyt%yyzyu%AyByv%CyDyw%EyFyx%GyHyy%IyJyz%KyLyA%MyB%NyC%OyD%PyE%QyF%RyG%SyH%TyI%UyJ%VyK%WyL%XyM%YyN%ZyO%0y1y2y3yP%4yQ%5yR%S%2c6yT%7yU%8yV%W%9y!yX%#y$yY%%yZ%'y0%(y1%)y2%*y3%+y4%,y5%-y.y/y6%:y;y=y7%?y@y[y8%]y^y_y`y{y|y}y~y9%azbzczdzezfzgzhz!%izjzkzlzmznzozpz#%qzrzsztzuzvzwz$%xzyzzzAzBzCzDzEzFzGzHzIzJzKzLz%%MzNzOzPzQzRzSzTzUzVzWzXzYzZz0z'%1z2z3z4z5z6z7z8z9z!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+%bAcA,%dAeA-%fAgA.%hA[h%f'fiA/%jA:%kA;%=%lAmA?%nAoAr pA@%qA/brAneoepeqeresesAteuevewexeyetA:bzeAeBeCeDeuA[%vAwA]%xAyAzAAAF Rb^%c BACADAEAEeFeGeHeIeJeFA_%GA`%{%HA|%IAJA}%KALAMANAOAPAQARASATA;bUA=b?b~%VAWA]hXA@bYA^hZA0A1Aa'b'2A3A[b3 Sb4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBc'lBmBnBoBpBqBrBKeLeMeNeOesBtBuBvBwB_h`hxBd'yBe'zBABf'BBCBDBg'EBFBh'GBi'HBIBJBKBLBj'MB; = ? @ [ s h %dNBk'OBl'PBQBRBSBTBUBVBWBXBYBZB0B1B2Bm'(f)fn'3B4Bo'5B6Bp'7B8B9Bq'!B#B$B%Bo 4 5 CbDb6 'Br'(B)B*Bs'+B,B-B.B/Bt':B;B=B?B@B[B]B^B_B`B{B|B}B~BaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACu'BCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCTb7 ]b-c^b.c_b`bUCVCv'WCw'XCYCx'ZC0C1Cy'2C3C4C5C6C7C8C9C!C#C$C%CLh3c'C(C)C*C+C,C-C.C/C:Cz';C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDUb4cVb5crDsDtDuDvD] ^ _ wDsbtb{b/cA'xDyDB'zDADC'BDCDD'DDEDE'FDGDF'HDIDG'JDKDH'LDMDI'NDODJ'PDQDK'RDSDL'TDUDM'VDWDXDYDN'ZD0D1D2DO'3D4D5D6DP'7D8D9DQ'!D#D$DR'%D'D(DS')D*D+DT',D-D.DU'/D:D;DV'=D?D@D[D]D^DW'_D`D{DX'|DY'}D~DaEbEZ'cEdEeEfEgEhE0'iEjEkE1'lE2'mEnEoE3'pEqErE4'sEtEuEvEwExEyEzEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXE5'YEZE0E1E2E6'3E4E7'5E6E7E8E{h9E|h!E}h#E$E%E'E(E)E*E+E,E-E.E/E:E|b}b~b;E8'=E9'?E!'@E#'[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQF$'RFSFTFUFVFWFXFYF%'ZF0F1F2F3F4F''5F6F('7F8F)'9F!F*'#F$F+','%F'F(F-')F*F+F.',F-F.F/'/F:F;F:'=F?F@F;'[F=']F?'^F@'_F['`F]'{F^'|F}F_'`'~FaG{'|'bGcG}'~'dG}f*f+feGfGgGhGiGjGa(kGlGb(mGc(nGd(ace(bcf(ccg(oGpGqGrGsGtGuGvGwGxGh(i(j(yGk(l(zGAGBGCGm(DGEGn(FGo(p(GGHGq(IGr(JGs(KGt(LGu(MGv(NGw(OGx(PGy(QGz(RGSGTGA(UGVGWGB(XGYGZGC(0G1G2G3G4G5G6G7G8G9G!G#G$G%G'G(G)G*G+G,G-G.G/G:G;G=G?GD(@G[G]G^G_G`GE({G|G}G~GaHbHF(cHG(dHH(eHI(fHJ(gHK(hHL(iHM(jHN(kHO(lHmHP(nHoHQ(pHR(qHS(rHT(sHU(tHV(uHW(vHwHxHyHX(zHAHY(BHZ(CH0(1(DHEHFH2(GHHHIH3(JHKH4(LH5(MH6(NH7(OH8(PH9(QH!(RH#(SH$(TH%(UH'(VH((WH)(XH*(YH+(ZH,(0H-(.(1H2H/(3H:(4H;(5H=(6H?(@(7H8H9H!H#H$H%H'H(H)H*H+H,H-H.H[(](^(/H_(`(:H{(|(;H}(=H?H~(@H[H]H^Ha)b)_H`H{Hc)|H}H~Hd)aIe)bIf)g)cIdIeIh)fIgIhIi)iIjIkIj)lImInIk)oIpIqIrIl)sItIm)uIvIn)wIxIo)yIzIp)AIBIq)CIDIEIr)FIGIs)HIIIt)JIKIu)LIv)MINIw)OIPIx)QIRISIy)TIUIz)VIWIA)XIYIB)ZI0IC)D)1I2I3IE)4I5I6I7IF)8I9I!I#IG)$I%I'I(IH))I*I+I,II)-I.I/I:IJ);I=IK)?I@IL)[I]IM)^I_I`IN){I|I}IO)~IaJP)bJcJQ)dJeJR)fJgJS)hJiJT)jJkJU)lJmJV)nJoJW)pJX)qJY)rJZ)sJ0)tJ1)uJ2)vJ3)wJ4)xJ5)yJ6)zJ7)AJ8)BJ9)CJ!)DJEJFJGJ#)HJ$)IJ%)JJ')()6c7cKJ))LJ*)+)MJNJ,)OJ-)PJ.)/)QJRJ:)SJTJ;)UJVJ=)WJXJ?)YJ@)ZJ[)0J])1J^)2J_)3J`)4J{)5J|)6J})7J~)8Ja*9Jb*!Jc*#J$J%Jd*'J(J)Je**J+J,Jf*-J.J/J:J;J=J?J@Jg*[J]J^J_J`J{J|J}Jh*~JaKbKcKdKeKfKgKi*hKiKjKkKlKmKnKoKj*pKqKrKsKtKuKvKwKk*xKyKzKAKBKCKDKl*EKFKGKHKIKJKKKLKMKNKOKPKQKRKSKm*TKUKVKWKXKYKZK0K1K2K3K4K5K6K7Kn*8K9K!K#K$K%K'K(K)K*K+K,K-K.K/Ko*:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLp*bLcLdLeLfLgLhLiLjLkLlLmLnLoLpLq*qLrLsLtLuLvLwLxLyLr*zLALBLCLs*DLELFLGLHLILJLKLLLt*MLNLu*OLPLv*QLRLw*SLTLx*ULVLy*WL~h,f-fXLz*YLA*ZLB*C*0L1LD*2L3Lt u v 4LE*5Ldc6LPeQeReSeTeUe7LVeWeXeYeZe0e8Lec1e2e3e4e5e9Lfc6e7e8e9e!e!Lgc#e$e%e'e(e#L` F*$L%LG*'L(L)L*LG WbH*d +L,L-L.L)e*e+e,e-e.e/LI*:LJ*K*;LL*=L?LM*@L[L]L^L_L`L{L|L}L~LhcaMicjcN*bMcMaidMkceMbifMgMhMO*P*iMjMlc8 XbkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM0M1MQ*2M3M4M5M6M7M8M/e:e;e=e?e9M!M#M$M%Mcidi'MR*(MS*)M*MT*+M,M-MU*.M/MV*:MW*;M=M?M@M[MX*]M{ | } ~ abw i 'd^MY*_MZ*`M{M|M}M~MaNbNcNdNeNfNgNhNiN0*.f/f1*jNkN2*lNmN3*nNoNpN4*qNrNsNtNp 9 ! EbFb# uN5*vNwNxN6*yNzNANBNCN7*DNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N*N8*+N,N-N.N/N:N;N=N?N@N[N]N^N_N`N{N|N}N~NYb$ mc:cnc;cocpcaObO9*cO!*dOeO#*fOgOhO$*iOjOkOlOmOnOoOpOqOrOsOtOMh8cuOvOwOxOyOzOAOBOCODO%*EOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO0O1O2O3O4O5O6O7OZb9c0b!c8O9O!O#O$Obbcbdb%Oubvbqc=c'*'O(O(*)O*O)*+O,O**-O.O+*/O:O,*;O=O-*?O@O.*[O]O/*^O_O:*`O{O;*|O}O=*~OaP?*bPcPdPeP@*fPgPhPiP[*jPkPlPmP]*nPoPpP^*qPrPsP_*tPuPvP`*wPxPyP{*zPAPBP|*CPDPEP}*FPGPHPIPJPKP~*LPMPNPa+OPb+PPQPRPSPc+TPUPVPWPXPYPd+ZP0P1Pe+2Pf+3P4P5Pg+6P7P8Ph+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~PaQbQcQdQi+eQfQgQhQiQj+jQkQk+lQmQnQoQeipQfiqQgirQsQtQuQvQwQxQyQzQAQBQCQDQrcsctcEQl+FQm+GQn+HQo+IQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q!Q#Q$Q%Q'Q(Q)Q*Q+Q,Q-Q.Q/Q:Q;Q=Q?Q@Q[Q]Q^Q_Q`Q{Qp+|Q}Q~QaRbRcRdReRq+fRgRhRiRjRkRr+lRmRs+nRoRt+pRqRu+rRsRv+w+tRuRvRx+wRxRyRy+zRARBRz+CRDRERA+FRGRHRB+IRC+JRD+KRE+LRF+MRG+NRH+ORPRI+J+QRRRK+L+SRTRM+N+UR~f:f;fVRWRXRYRZR0RO+1R2RP+3RQ+4RR+ucS+vcT+wcU+5R6R7R8R9R!R#R$R%R'RV+W+X+(RY+Z+)R*R+R,R0+-R.R1+/R2+3+:R;R4+=R5+?R6+@R7+[R8+]R9+^R!+_R#+`R$+{R%+|R}R~R'+aSbScS(+dSeSfS)+gShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGS*+HSISJSKSLSMS++NSOSPSQSRSSS,+TS-+US.+VS/+WS:+XS;+YS=+ZS?+0S@+1S[+2S3S]+4S5S^+6S_+7S`+8S{+9S|+!S}+#S~+$S%S'S(Sa,)S*Sb,+Sc,,Sd,e,-S.S/Sf,:S;S=Sg,?S@Sh,[Si,]Sj,^Sk,_Sl,`Sm,{Sn,|So,}Sp,~Sq,aTr,bTs,cTt,dTu,eTv,fTw,gTx,y,hTiTz,jTA,kTB,lTC,mTD,E,nToTpTqTrTsTtTuTvTwTxTyTzTATBTF,G,H,CTI,J,DTK,L,ETM,FTGTN,HTITJTKTO,P,LTMTNTQ,OTPTQTR,RTS,STT,U,TTUTVTV,WTXTYTW,ZT0T1TX,2T3T4TY,5T6T7T8TZ,9T!T0,#T$T1,%T'T2,(T)T3,*T+T4,,T-T.T5,/T:T6,;T=T7,?T@T8,[T9,]T^T!,_T`T#,{T|T}T$,~TaU%,bUcU',dUeU(,fUgU),*,hUiUjU+,kUlUmUnU,,oUpUqUrU-,sUtUuUvU.,wUxUyUzU/,AUBUCUDU:,EUFU;,GUHU=,IUJU?,KULUMU@,NUOUPU[,QURU],SUTU^,UUVU_,WUXU`,YUZU{,0U1U|,2U3U},4U5U~,6Ua-7Ub-8Uc-9Ud-!Ue-#Uf-$Ug-%Uh-'Ui-(Uj-)Uk-*Ul-+Um-,Un--U.U/U:Uo-;Up-=Uq-?Ur-s-#c$c@Ut-[Uu-v-]U^Uw-_Ux-`Uy-z-{U|UA-}U~UB-aVbVC-cVdVD-eVE-fVF-gVG-hVH-iVI-jVJ-kVK-lVL-mVM-nVN-oVO-pVP-qVQ-rVsVtVR-uVvVwVS-xVyVzVT-AVBVCVDVEVFVGVHVU-IVJVKVLVMVNVOVPVV-QVRVSVTVUVVVWVXVW-YVZV0V1V2V3V4V5VX-6V7V8V9V!V#V$V%VY-'V(V)V*V+V,V-VZ-.V/V:V;V=V?V@V[V]V^V_V`V{V|V}V0-~VaWbWcWdWeWfWgWhWiWjWkWlWmWnW1-oWpWqWrWsWtWuWvWwWxWyWzWAWBWCW2-DWEWFWGWHWIWJWKWLWMWNWOWPWQWRW3-SWTWUWVWWWXWYWZW0W1W2W3W4W5W6W4-7W8W9W!W#W$W%W'W(W5-)W*W+W,W6--W.W/W:W;W=W?W@W[W7-]W^W8-_W`W9-{W|W!-}W~W#-aXbX$-cXhi=f?fdX%-eX'-fX(-)-gXhX*-iXjXx y z kX+-lXxcmX@e[e]e^e_e`enX{e|e}e~eafbfoXyccfdfefffgfpXzchfifjfkflfqXAcmfnfofpfqfrXeb,-sXtX--uXvXwXxXH 1b.-e yXzXAXBXrfsftfufvfwfCX/-DX:-;-EX=-FXGX?-HXIXJXKXLXMXNXOXPXQXBcRXCcDc@-SXTXiiUXEcVXjiWXXXYX[-]-ZX0XFc% 2b1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhY^-iYjYkYlYmYnYoYxfyfzfAfBfpYqYrYsYtYkiliuY_-vY`-wYxY{-yYzYAY|-BYCY}-DY~-EYFYGYHYIYa.JYfbgbhbibjbA j (dKYb.LYc.MYNYOYPYQYRYSYTYUYVYWYXYYYZYd.@f[fe.0Y1Yf.2Y3Yg.4Y5Y6Yh.7Y8Y9Y!Yq ' ( GbHb) #Yi.$Y%Y'Yj.(Y)Y*Y+Y,Yk.-Y.Y/Y:Y;Y=Y?Y@Y[Y]Y^Y_Y`Y{Y|Y}Y~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZl.yZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZ3b* Gc?cHc@cIcJcRZSZm.TZn.UZVZo.WZXZYZp.ZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z9Z!ZNh%c#Z$Z%Z'Z(Z)Z*Z+Z,Z-Zq..Z/Z:Z;Z=Z?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0h0i0j0k0l0m0n04b'c5b(co0p0q0r0s0kblbmbt0wbxbKc[cr.u0v0s.w0x0t.y0z0u.A0B0v.C0D0w.E0F0x.G0H0y.I0J0z.K0L0A.M0N0B.O0P0C.Q0R0D.S0T0U0V0E.W0X0Y0Z0F.00102030G.405060H.708090I.!0#0$0J.%0'0(0K.)0*0+0L.,0-0.0M./0:0;0=0?0@0N.[0]0^0O._0P.`0{0|0}0Q.~0a1b1c1d1e1R.f1g1h1S.i1T.j1k1l1U.m1n1o1V.p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1W.V1W1X1Y1Z1X.0111Y.21314151mi61ni71oi8191!1#1$1%1'1(1)1*1+1,1-1LcMcNc.1Z./10.:11.;12.=1?1@1[1]1^1_1`1{1|1}1~1a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2H2I2J2K2L2M2N23.O2P2Q2R2S2T2U2V24.W2X2Y2Z202125.22326.42527.62728.82929.!.!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~2?.@.a3ag]f^fb3c3d3e3f3g3[.h3i3].j3^.k3_.Oc`.Pc{.Qc|.l3m3n3o3p3q3r3s3t3u3}.~.a/v3b/c/w3x3y3z3d/A3B3e/C3f/g/D3E3h/F3i/G3j/H3k/I3l/J3m/K3n/L3o/M3p/N3q/O3P3Q3r/R3S3T3s/U3V3W3t/X3Y3Z303132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3/3:3u/;3=3?3@3[3]3v/^3_3`3{3|3}3w/~3x/a4y/b4z/c4A/d4B/e4C/f4D/g4E/h4F/i4j4G/k4l4H/m4I/n4J/o4K/p4L/q4M/r4N/s4t4u4v4O/w4x4P/y4Q/z4R/S/A4B4C4T/D4E4F4U/G4H4V/I4W/J4X/K4Y/L4Z/M40/N41/O42/P43/Q44/R45/S46/T47/U48/V49/W4!/X4#/$/Y4Z4%/04'/14(/24)/34*/+/445464748494!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{/|/~4a5b5}/c5d5e5~/f5g5h5a:i5j5k5b:l5m5n5o5c:p5q5d:r5s5e:t5u5f:v5w5g:x5y5h:z5A5B5i:C5D5j:E5F5k:G5H5l:I5m:J5K5n:L5M5o:N5O5P5p:Q5R5q:S5T5r:U5V5s:W5X5t:u:Y5Z505v:15253545w:55657585x:95!5#5$5y:%5'5(5)5z:*5+5,5-5A:.5/5B::5;5C:=5?5D:@5[5]5E:^5_5`5F:{5|5G:}5~5H:a6b6I:c6d6J:e6f6K:g6h6L:i6j6M:k6l6N:m6O:n6P:o6Q:p6R:q6S:r6T:s6U:t6V:u6W:v6X:w6Y:x6Z:y60:z61:A6B6C6D62:E63:F64:G65:6:)c*cH67:I68:9:J6K6!:L6#:M6$:%:N6O6':P6Q6(:R6S6):T6U6*:V6+:W6,:X6-:Y6.:Z6/:06::16;:26=:36?:46@:56[:66]:76^:8696!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~6a7b7c7d7~:e7f7g7h7i7j7k7l7a;m7n7o7p7q7r7s7t7b;u7v7w7x7y7z7A7c;B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7d;Q7R7S7T7U7V7W7X7Y7Z70717273747e;5767778797!7#7$7%7'7(7)7*7+7,7f;-7.7/7:7;7=7?7@7[7]7^7_7`7{7|7g;}7~7a8b8c8d8e8f8g8h8i8j8k8l8m8h;n8o8p8q8r8s8t8u8v8i;w8x8y8z8j;A8B8C8D8E8F8G8H8I8k;J8K8l;L8M8m;N8O8n;P8Q8o;R8S8p;T8pi_f`fU8q;V8r;W8s;t;X8Y8u;Z808B C D 18v;28Rc38CfDfEfFfGfHf48IfJfKfLfMfNf58ScOfPfQfRfSf68TcTfUfVfWfXf78UcYfZf0f1f2f88nbw;98!8x;#8$8%8'8I 6by;

44 return True 2a (8)8*8+8OhPh,8QhRh-8.hDh.8/8J Ib:8;8=8?8@8[8]8^8K L M N O k f #d_8`8Sh{8|8}8~8a9ThUhm P Q ybzbR b9c9d9e9JbS f9g9h9i9VhBhVcj9WcXcWh+ , - obpb+ck9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9XhEhFhGhS9T9U9V9YhZhW9X9Y9Z9091929394959{f69798999!9#9$9%9'9(9)9*9+9,9-9.9/9:9;9=9?9@9[9]9^9_9`9{9|9}9~9a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!0h1h2h3hy!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!!!#!$!%!'!(!Yc)!*!+!,!-!.!/!:!;!=!?!@![!]!^!_!`!{!|!}!~!a#b#c#d#e#f#g#E Mbh#b i#j#k#l#4h5hm#6h7hn#=hHho#p#T Nbq#r#s#t#u#v#w#x#U V W X Y l g $dy#z#8hA#B#C#D#E#9h!hn Z 0 AbBb1 F#G#H#I#Ob2 J#K#L#M##hChZcN#0c1c$h. / : qbrb,cO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#%hIhJhKh/#:#;#=#'h(h)h?#@#[#]#^#_#`#{#|#}#~#a$b$c$d$e$|ff$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$6$7$8$9$!$#$$$%$'$($)$*$*h+h,h-h+$,$-$.$/$:$;$=$?$@$[$]$^$_$`${$|$}$~$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%2cT%U%V%W%X%Y%Z%0%1%2%3%4%5%6%7%8%9%!%#%$%%%'%(%)%*%+%,%-%.%/%:%;%=%?%r @%[%]%F Rb^%c _%`%{%|%IAJA}%KAPA~%]h^ha'b'3 Sbc'd'e'f'g'h'i'j'; = ? @ [ s h %dk'l'SBm'n'o'p'q'#B%Bo 4 5 CbDb6 r's't'u'Tb7 -c.cv'w'x'y'$CLh3cz'4c5crD] ^ _ sbtb/cA'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'7E{h|h}h8'9'!'#'}EoFEF$'%'''(')'*'+','-'.'/':';'='?'@'[']'^'_'`'{'|'}'~'}fa(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(6(7(8(9(!(#($(%('((()(*(+(,(-(.(/(:(;(=(?(@(9H!H$H)H[(](^(_(`({(|(}(~(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)6)7)8)9)!)#)$)%)')()6c7c))*)+),)-).)/):);)=)?)@)[)])^)_)`){)|)})~)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*t u v E*` F*G*G WbH*d I*J*K*L*=L?LM*@L`LN*aibiO*P*8 XbQ*R*S*T*U*V*W*X*{ | } ~ abw i 'dY*Z*}M0*1*2*3*4*rNtNp 9 ! EbFb# 5*6*7*8*Yb$ :c;c9*!*#*$*sOMh8c%*9c!c8Obbcbdbubvb=c'*(*)***+*,*-*.*/*:*;*=*?*@*[*]*^*_*`*{*|*}*~*a+b+c+d+e+f+g+h+i+j+k+nQeifigil+m+n+o+PQ5Q.Qp+q+r+s+t+u+v+w+x+y+z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+~fO+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,pTqTsTwTF,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-#c$ct-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-6-7-8-9-!-#-$-%-'-(-)-*-x y z +-eb,---H 1b.-e /-:-;-=-FXGX?-HXMX@-iiji[-]-% 2b^-_-`-{-|-}-~-a.fbgbhbibjbA j (db.c.PYd.e.f.g.h.8Y!Yq ' ( GbHb) i.j.k.l.3b* ?c@cm.n.o.p.9ZNh%cq.'c(co0kblbmbwbxb[cr.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.41minioiZ.0.1.2.`1l2B23.4.5.6.7.8.9.!.#.$.%.'.(.).*.+.,.-.../.:.;.=.?.@.ag[.].^._.`.{.|.}.~.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/6/7/8/9/!/#/$/%/'/(/)/*/+/647494%4,/-/.///:/;/=/?/@/[/]/^/_/`/{/|/}/~/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:6:)c*c7:8:9:!:#:$:%:':(:):*:+:,:-:.:/:::;:=:?:@:[:]:^:_:`:{:|:}:~:a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;B C D v;nbw;x;I 6by;

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

46 if status_code in { 2a qirisiti)d*d+d,d-d.duiviwixiyiziAiBiCiDiEi7bFi8b9bGiHi.hIi!bJiKiLiMiNiOi#bJ IbPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcj/d:d;d=d?ddjejfjgjhj/h:hijjjkjljmjnjojpjqjrjsjtjujvjwjxjK L M N O k f yjzjAjBjCjDjEjFjGjHjIjJjKjLjMj3f4fNjOjPjQjRjSjTjUjVjm P Q ybzbR WjXjYjZj0j1j2j3j4j5j6j7j8j9j!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~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkJbS CkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkBhVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)k*k+k,k-k.k/k:k;k=k?k@k[k]k^k_k`k{k|kKbLb}k~kalbl+ , - clobpb$bdlelflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!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~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSmTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'm(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn5f6funvnwnxnynznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!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~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!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~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxq;h7f8fyqzqAqBqCqDqEqFqGq%bHq@d[d]d^d_d`dIq{d|d}d~daebeJqKqLqMqNqOqPqE Mbb QqRqSqTqcedeeefegeheUqVqWqXqYqZq0q1q2q3q4q'b5q(b)b6q7q=h8q*b9q!q#q$q%q'q+bT Nb(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCriejekelemeDrErFrGrHr?h@hIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrU V W X Y l g YrZr0r1r2r3r4r5r6r7r8r9r!r#r$r9f!f%r'r(r)r*r+r,r-r.rn Z 0 AbBb1 /r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1sOb2 2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-sCh.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxtPbQbytztAtBt. / : Ctqbrb,bDtEtFtGtHtItJtKtLtMtNtOtPtQtRtStTtUtVtWtXtYtZt0t1t2t3t4t5t6t7t8t9t!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-b@u[u]u^u_u`u{u|u}u~uavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v$v%v'v(v)v*v+v#f$f,v-v.v/v:v;v=v?v@v[v.b]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,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`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~zaAbAcAdAeAfAgAhA[h%f'fiAjAkAlAmAnAoAr pAqA/brAneoepeqeresesAteuevewexeyetA:bzeAeBeCeDeuAvAwAxAyAzAAAF Rbc BACADAEAEeFeGeHeIeJeFAGAHALAMANAOAQARASATA;bUA=b?bVAWA]hXA@bYAZA0A1A2A3A[b3 Sb4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBKeLeMeNeOesBtBuBvBwB_h`hxByBzBABBBCBDBEBFBGBHBIBJBKBLBMB; = ? @ [ s h NBOBPBQBRBTBUBVBWBXBYBZB0B1B2B(f)f3B4B5B6B7B8B9B!B$Bo 4 5 CbDb6 'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCTb7 ]b^b_b`bUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C%CLh'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDUbVbsDtDuDvD] ^ _ wDsbtb{bxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E|b}b~b;E=E?E@E[E]E^E_E`E{E|E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdG*f+feGfGgGhGiGjGkGlGmGnGacbcccoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!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~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH0H1H2H3H4H5H6H7H8H#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,I-I.I/I:I;I=I?I@I[I]I^I_I`I{I|I}I~IaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!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~JaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWL~h,f-fXLYLZL0L1L2L3Lt u v 4L5Ldc6LPeQeReSeTeUe7LVeWeXeYeZe0e8Lec1e2e3e4e5e9Lfc6e7e8e9e!e!Lgc#e$e%e'e(e#L` $L%L'L(L)L*LG Wbd +L,L-L.L)e*e+e,e-e.e/L:L;L[L]L^L_L{L|L}L~LhcaMicjcbMcMaidMkceMfMgMhMiMjMlc8 XbkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M/e:e;e=e?e9M!M#M$M%Mcidi'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M{ | } ~ abw i ^M_M`M{M|M~MaNbNcNdNeNfNgNhNiN.f/fjNkNlNmNnNoNpNqNsNp 9 ! EbFb# uNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!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~NYb$ mcncocpcaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOtOMhuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO0O1O2O3O4O5O6O7OZb0b9O!O#O$Obbcbdb%Oubvbqc'O(O)O*O+O,O-O.O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!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~PaQbQcQdQeQfQgQhQiQjQkQlQmQoQpQqQrQsQtQuQvQwQxQyQzQAQBQCQDQrcsctcEQFQGQHQIQJQKQLQMQNQOQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q6Q7Q8Q9Q!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:f;fVRWRXRYRZR0R1R2R3R4Rucvcwc5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnToTrTtTuTvTxTyTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!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~UaVbVcVdVeVfVgVhViVjVkVlVmVnVoVpVqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V6V7V8V9V!V#V$V%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~WaXbXcXhi=f?fdXeXfXgXhXiXjXx y z kXlXxcmX@e[e]e^e_e`enX{e|e}e~eafbfoXyccfdfefffgfpXzchfifjfkflfqXAcmfnfofpfqfrXebsXtXuXvXwXxXH 1be yXzXAXBXrfsftfufvfwfCXDXEXIXJXKXLXNXOXPXQXBcRXCcDcSXTXiiUXEcVXWXXXYXZX0XFc% 2b1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYxfyfzfAfBfpYqYrYsYtYkiliuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYfbgbhbibjbA j KYLYMYNYOYQYRYSYTYUYVYWYXYYYZY@f[f0Y1Y2Y3Y4Y5Y6Y7Y9Yq ' ( GbHb) #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~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZ3b* GcHcIcJcRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z!ZNh#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~Za0b0c0d0e0f0g0h0i0j0k0l0m0n04b5bp0q0r0s0kblbmbt0wbxbKcu0v0w0x0y0z0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121315161718191!1#1$1%1'1(1)1*1+1,1-1LcMcNc.1/1:1;1=1?1@1[1]1^1_1{1|1}1~1a2b2c2d2e2f2g2h2i2j2k2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!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~2a3]f^fb3c3d3e3f3g3h3i3j3k3OcPcQcl3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3/3:3;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445484!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,5-5.5/5:5;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!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~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z707172737475767778797!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~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8pi_f`fU8V8W8X8Y8Z808B C D 1828Rc38CfDfEfFfGfHf48IfJfKfLfMfNf58ScOfPfQfRfSf68TcTfUfVfWfXf78UcYfZf0f1f2f88nb98!8#8$8%8'8I 6b

47 "default", 

48 "1XX", 

49 "2XX", 

50 "3XX", 

51 "4XX", 

52 "5XX", 

53 }: 

54 return True 1abcde

55 current_status_code = int(status_code) 2a qirisiti)d*d+d,d-d.duiviwixiyiziAiBiCiDiEi7bFi8b9bGiHi.hIi!bJiKiLiMiNiOi#bJ IbPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcj/d:d;d=d?ddjejfjgjhj/h:hijjjkjljmjnjojpjqjrjsjtjujvjwjxjK L M N O k f yjzjAjBjCjDjEjFjGjHjIjJjKjLjMj3f4fNjOjPjQjRjSjTjUjVjm P Q ybzbR WjXjYjZj0j1j2j3j4j5j6j7j8j9j!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~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkJbS CkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkBhVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)k*k+k,k-k.k/k:k;k=k?k@k[k]k^k_k`k{k|kKbLb}k~kalbl+ , - clobpb$bdlelflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!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~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSmTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'm(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn5f6funvnwnxnynznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!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~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!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~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxq;h7f8fyqzqAqBqCqDqEqFqGq%bHq@d[d]d^d_d`dIq{d|d}d~daebeJqKqLqMqNqOqPqE Mbb QqRqSqTqcedeeefegeheUqVqWqXqYqZq0q1q2q3q4q'b5q(b)b6q7q=h8q*b9q!q#q$q%q'q+bT Nb(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCriejekelemeDrErFrGrHr?h@hIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrU V W X Y l g YrZr0r1r2r3r4r5r6r7r8r9r!r#r$r9f!f%r'r(r)r*r+r,r-r.rn Z 0 AbBb1 /r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1sOb2 2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-sCh.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxtPbQbytztAtBt. / : Ctqbrb,bDtEtFtGtHtItJtKtLtMtNtOtPtQtRtStTtUtVtWtXtYtZt0t1t2t3t4t5t6t7t8t9t!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-b@u[u]u^u_u`u{u|u}u~uavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v$v%v'v(v)v*v+v#f$f,v-v.v/v:v;v=v?v@v[v.b]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,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`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~zaAbAcAdAeAfAgAhA[h%f'fiAjAkAlAmAnAoAr pAqA/brAneoepeqeresesAteuevewexeyetA:bzeAeBeCeDeuAvAwAxAyAzAAAF Rbc BACADAEAEeFeGeHeIeJeFAGAHALAMANAOAQARASATA;bUA=b?bVAWA]hXA@bYAZA0A1A2A3A[b3 Sb4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBKeLeMeNeOesBtBuBvBwB_h`hxByBzBABBBCBDBEBFBGBHBIBJBKBLBMB; = ? @ [ s h NBOBPBQBRBTBUBVBWBXBYBZB0B1B2B(f)f3B4B5B6B7B8B9B!B$Bo 4 5 CbDb6 'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCTb7 ]b^b_b`bUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C%CLh'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDUbVbsDtDuDvD] ^ _ wDsbtb{bxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E|b}b~b;E=E?E@E[E]E^E_E`E{E|E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdG*f+feGfGgGhGiGjGkGlGmGnGacbcccoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!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~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH0H1H2H3H4H5H6H7H8H#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,I-I.I/I:I;I=I?I@I[I]I^I_I`I{I|I}I~IaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!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~JaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWL~h,f-fXLYLZL0L1L2L3Lt u v 4L5Ldc6LPeQeReSeTeUe7LVeWeXeYeZe0e8Lec1e2e3e4e5e9Lfc6e7e8e9e!e!Lgc#e$e%e'e(e#L` $L%L'L(L)L*LG Wbd +L,L-L.L)e*e+e,e-e.e/L:L;L[L]L^L_L{L|L}L~LhcaMicjcbMcMaidMkceMfMgMhMiMjMlc8 XbkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M/e:e;e=e?e9M!M#M$M%Mcidi'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M{ | } ~ abw i ^M_M`M{M|M~MaNbNcNdNeNfNgNhNiN.f/fjNkNlNmNnNoNpNqNsNp 9 ! EbFb# uNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!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~NYb$ mcncocpcaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOtOMhuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO0O1O2O3O4O5O6O7OZb0b9O!O#O$Obbcbdb%Oubvbqc'O(O)O*O+O,O-O.O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!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~PaQbQcQdQeQfQgQhQiQjQkQlQmQoQpQqQrQsQtQuQvQwQxQyQzQAQBQCQDQrcsctcEQFQGQHQIQJQKQLQMQNQOQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q6Q7Q8Q9Q!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:f;fVRWRXRYRZR0R1R2R3R4Rucvcwc5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnToTrTtTuTvTxTyTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!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~UaVbVcVdVeVfVgVhViVjVkVlVmVnVoVpVqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V6V7V8V9V!V#V$V%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~WaXbXcXhi=f?fdXeXfXgXhXiXjXx y z kXlXxcmX@e[e]e^e_e`enX{e|e}e~eafbfoXyccfdfefffgfpXzchfifjfkflfqXAcmfnfofpfqfrXebsXtXuXvXwXxXH 1be yXzXAXBXrfsftfufvfwfCXDXEXIXJXKXLXNXOXPXQXBcRXCcDcSXTXiiUXEcVXWXXXYXZX0XFc% 2b1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYxfyfzfAfBfpYqYrYsYtYkiliuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYfbgbhbibjbA j KYLYMYNYOYQYRYSYTYUYVYWYXYYYZY@f[f0Y1Y2Y3Y4Y5Y6Y7Y9Yq ' ( GbHb) #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~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZ3b* GcHcIcJcRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z!ZNh#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~Za0b0c0d0e0f0g0h0i0j0k0l0m0n04b5bp0q0r0s0kblbmbt0wbxbKcu0v0w0x0y0z0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121315161718191!1#1$1%1'1(1)1*1+1,1-1LcMcNc.1/1:1;1=1?1@1[1]1^1_1{1|1}1~1a2b2c2d2e2f2g2h2i2j2k2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!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~2a3]f^fb3c3d3e3f3g3h3i3j3k3OcPcQcl3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3/3:3;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445484!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,5-5.5/5:5;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!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~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z707172737475767778797!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~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8pi_f`fU8V8W8X8Y8Z808B C D 1828Rc38CfDfEfFfGfHf48IfJfKfLfMfNf58ScOfPfQfRfSf68TcTfUfVfWfXf78UcYfZf0f1f2f88nb98!8#8$8%8'8I 6b

56 return not (current_status_code < 200 or current_status_code in {204, 205, 304}) 2a qirisiti)d*d+d,d-d.duiviwixiyiziAiBiCiDiEi7bFi8b9bGiHi.hIi!bJiKiLiMiNiOi#bJ IbPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcj/d:d;d=d?ddjejfjgjhj/h:hijjjkjljmjnjojpjqjrjsjtjujvjwjxjK L M N O k f yjzjAjBjCjDjEjFjGjHjIjJjKjLjMj3f4fNjOjPjQjRjSjTjUjVjm P Q ybzbR WjXjYjZj0j1j2j3j4j5j6j7j8j9j!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~jakbkckdkekfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzkAkBkJbS CkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkBhVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k'k(k)k*k+k,k-k.k/k:k;k=k?k@k[k]k^k_k`k{k|kKbLb}k~kalbl+ , - clobpb$bdlelflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzlAlBlClDlElFlGlHlIlJlKlLlMlNlOlPlQlRlSlTlUlVlWlXlYlZl0l1l2l3l4l5l6l7l8l9l!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~lambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSmTmUmVmWmXmYmZm0m1m2m3m4m5m6m7m8m9m!m#m$m%m'm(m)m*m+m,m-m.m/m:m;m=m?m@m[m]m^m_m`m{m|m}m~manbncndnenfngnhninjnknlnmnnnonpnqnrnsntn5f6funvnwnxnynznAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n1n2n3n4n5n6n7n8n9n!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~oapbpcpdpepfpgphpipjpkplpmpnpopppqprpsptpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp0p1p2p3p4p5p6p7p8p9p!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~paqbqcqdqeqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxq;h7f8fyqzqAqBqCqDqEqFqGq%bHq@d[d]d^d_d`dIq{d|d}d~daebeJqKqLqMqNqOqPqE Mbb QqRqSqTqcedeeefegeheUqVqWqXqYqZq0q1q2q3q4q'b5q(b)b6q7q=h8q*b9q!q#q$q%q'q+bT Nb(q)q*q+q,q-q.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzrArBrCriejekelemeDrErFrGrHr?h@hIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrU V W X Y l g YrZr0r1r2r3r4r5r6r7r8r9r!r#r$r9f!f%r'r(r)r*r+r,r-r.rn Z 0 AbBb1 /r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsqsrssstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsQsRsSsTsUsVsWsXsYsZs0s1sOb2 2s3s4s5s6s7s8s9s!s#s$s%s's(s)s*s+s,s-sCh.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptqtrtstttutvtwtxtPbQbytztAtBt. / : Ctqbrb,bDtEtFtGtHtItJtKtLtMtNtOtPtQtRtStTtUtVtWtXtYtZt0t1t2t3t4t5t6t7t8t9t!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-b@u[u]u^u_u`u{u|u}u~uavbvcvdvevfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvwvxvyvzvAvBvCvDvEvFvGvHvIvJvKvLvMvNvOvPvQvRvSvTvUvVvWvXvYvZv0v1v2v3v4v5v6v7v8v9v!v#v$v%v'v(v)v*v+v#f$f,v-v.v/v:v;v=v?v@v[v.b]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,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`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~zaAbAcAdAeAfAgAhA[h%f'fiAjAkAlAmAnAoAr pAqA/brAneoepeqeresesAteuevewexeyetA:bzeAeBeCeDeuAvAwAxAyAzAAAF Rbc BACADAEAEeFeGeHeIeJeFAGAHALAMANAOAQARASATA;bUA=b?bVAWA]hXA@bYAZA0A1A2A3A[b3 Sb4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A,A-A.A/A:A;A=A?A@A[A]A^A_A`A{A|A}A~AaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBKeLeMeNeOesBtBuBvBwB_h`hxByBzBABBBCBDBEBFBGBHBIBJBKBLBMB; = ? @ [ s h NBOBPBQBRBTBUBVBWBXBYBZB0B1B2B(f)f3B4B5B6B7B8B9B!B$Bo 4 5 CbDb6 'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCTb7 ]b^b_b`bUCVCWCXCYCZC0C1C2C3C4C5C6C7C8C9C!C#C%CLh'C(C)C*C+C,C-C.C/C:C;C=C?C@C[C]C^C_C`C{C|C}C~CaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDUbVbsDtDuDvD] ^ _ wDsbtb{bxDyDzDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=D?D@D[D]D^D_D`D{D|D}D~DaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE0E1E2E3E4E5E6E8E9E!E#E$E%E'E(E)E*E+E,E-E.E/E:E|b}b~b;E=E?E@E[E]E^E_E`E{E|E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFpFqFrFsFtFuFvFwFxFyFzFAFBFCFDFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF0F1F2F3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F@F[F]F^F_F`F{F|F}F~FaGbGcGdG*f+feGfGgGhGiGjGkGlGmGnGacbcccoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!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~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzHAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH0H1H2H3H4H5H6H7H8H#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,I-I.I/I:I;I=I?I@I[I]I^I_I`I{I|I}I~IaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J6J7J8J9J!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~JaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/K:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzLALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWL~h,f-fXLYLZL0L1L2L3Lt u v 4L5Ldc6LPeQeReSeTeUe7LVeWeXeYeZe0e8Lec1e2e3e4e5e9Lfc6e7e8e9e!e!Lgc#e$e%e'e(e#L` $L%L'L(L)L*LG Wbd +L,L-L.L)e*e+e,e-e.e/L:L;L[L]L^L_L{L|L}L~LhcaMicjcbMcMaidMkceMfMgMhMiMjMlc8 XbkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzMAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM0M1M2M3M4M5M6M7M8M/e:e;e=e?e9M!M#M$M%Mcidi'M(M)M*M+M,M-M.M/M:M;M=M?M@M[M]M{ | } ~ abw i ^M_M`M{M|M~MaNbNcNdNeNfNgNhNiN.f/fjNkNlNmNnNoNpNqNsNp 9 ! EbFb# uNvNwNxNyNzNANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!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~NYb$ mcncocpcaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOtOMhuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO0O1O2O3O4O5O6O7OZb0b9O!O#O$Obbcbdb%Oubvbqc'O(O)O*O+O,O-O.O/O:O;O=O?O@O[O]O^O_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP0P1P2P3P4P5P6P7P8P9P!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~PaQbQcQdQeQfQgQhQiQjQkQlQmQoQpQqQrQsQtQuQvQwQxQyQzQAQBQCQDQrcsctcEQFQGQHQIQJQKQLQMQNQOQQQRQSQTQUQVQWQXQYQZQ0Q1Q2Q3Q4Q6Q7Q8Q9Q!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:f;fVRWRXRYRZR0R1R2R3R4Rucvcwc5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@R[R]R^R_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTgThTiTjTkTlTmTnToTrTtTuTvTxTyTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT0T1T2T3T4T5T6T7T8T9T!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~UaVbVcVdVeVfVgVhViVjVkVlVmVnVoVpVqVrVsVtVuVvVwVxVyVzVAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V6V7V8V9V!V#V$V%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~WaXbXcXhi=f?fdXeXfXgXhXiXjXx y z kXlXxcmX@e[e]e^e_e`enX{e|e}e~eafbfoXyccfdfefffgfpXzchfifjfkflfqXAcmfnfofpfqfrXebsXtXuXvXwXxXH 1be yXzXAXBXrfsftfufvfwfCXDXEXIXJXKXLXNXOXPXQXBcRXCcDcSXTXiiUXEcVXWXXXYXZX0XFc% 2b1X2X3X4X5X6X7X8X9X!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X`X{X|X}X~XaYbYcYdYeYfYgYhYiYjYkYlYmYnYoYxfyfzfAfBfpYqYrYsYtYkiliuYvYwYxYyYzYAYBYCYDYEYFYGYHYIYJYfbgbhbibjbA j KYLYMYNYOYQYRYSYTYUYVYWYXYYYZY@f[f0Y1Y2Y3Y4Y5Y6Y7Y9Yq ' ( GbHb) #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~YaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZ3b* GcHcIcJcRZSZTZUZVZWZXZYZZZ0Z1Z2Z3Z4Z5Z6Z7Z8Z!ZNh#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~Za0b0c0d0e0f0g0h0i0j0k0l0m0n04b5bp0q0r0s0kblbmbt0wbxbKcu0v0w0x0y0z0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0(0)0*0+0,0-0.0/0:0;0=0?0@0[0]0^0_0`0{0|0}0~0a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121315161718191!1#1$1%1'1(1)1*1+1,1-1LcMcNc.1/1:1;1=1?1@1[1]1^1_1{1|1}1~1a2b2c2d2e2f2g2h2i2j2k2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z202122232425262728292!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~2a3]f^fb3c3d3e3f3g3h3i3j3k3OcPcQcl3m3n3o3p3q3r3s3t3u3v3w3x3y3z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z303132333435363738393!3#3$3%3'3(3)3*3+3,3-3.3/3:3;3=3?3@3[3]3^3_3`3{3|3}3~3a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z404142434445484!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,5-5.5/5:5;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z606162636465666768696!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~6a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z707172737475767778797!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~7a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8pi_f`fU8V8W8X8Y8Z808B C D 1828Rc38CfDfEfFfGfHf48IfJfKfLfMfNf58ScOfPfQfRfSf68TcTfUfVfWfXf78UcYfZf0f1f2f88nb98!8#8$8%8'8I 6b

57 

58 

59def get_path_param_names(path: str) -> Set[str]: 1abcde

60 return set(re.findall("{(.*?)}", path)) 2a )d*d+d,d-d.d7b4g8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?dig/h:hK L M N O k f #d3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS + , - obpb$b+c{f5f6f;h(g7f8f]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgz;b cedeeefegehe'b)g(b)b*b+bT Nbiemgngjeogpgkeqglergsgmetg?h@hU V W X Y l g $d9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 . / : qbrb,b,c-b|f#f$f.b[h@g%f'f^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF RbugvgwgA;c EeFeGeHeIeJe;b[g=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg_h`h; = ? @ [ s h %d(f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b] ^ _ sbtb{b/c|b}b~b}f*f+facbccc~hch,f-f_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgB;d )e*e+e,e-e.ehcdhicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePgcidi{ | } ~ abw i 'd.f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpcbbcbdbubvbqc=crcsctc~f:f;fucvcwchioh=f?f`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSgC;e rfsftfufvfwfBcphCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gkilifbgbhbibjbA j (d@f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJckblbmbwbxbKc[cLcMcNcag]f^fOcPcQcpiAh_f`f{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3gD;

61 

62 

63def create_model_field( 1abcde

64 name: str, 

65 type_: Any, 

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

67 default: Optional[Any] = Undefined, 

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

69 model_config: Type[BaseConfig] = BaseConfig, 

70 field_info: Optional[FieldInfo] = None, 

71 alias: Optional[str] = None, 

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

73) -> ModelField: 

74 class_validators = class_validators or {} 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

75 if PYDANTIC_V2: 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

76 field_info = field_info or FieldInfo( 2a )d*d+d,d-d.d7b8b9b!b#bIb/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbVcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeMbjgkglgb cedeeefegehe'b(b)b*b+bNbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 ObZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeRbugvgwgc EeFeGeHeIeJe;b=b?b@b[bSbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` WbFgGgHgd )e*e+e,e-e.ehcicjckclcXb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Ybmc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfeb1bQgRgSge rfsftfufvfwfBcCcDcEcFc2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3bGc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnb6b1g2g3g

77 annotation=type_, default=default, alias=alias 

78 ) 

79 else: 

80 field_info = field_info or FieldInfo() 2a )d*d+d,d-d.d7b8b9b!b#bJ /dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q R S VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE jgkglgb cedeeefegehe'b(b)b*b+bT iemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 1 2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF ugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 KexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 6 7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G FgGgHgd )e*e+e,e-e.ehcicjckclc8 /eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! # $ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH QgRgSge rfsftfufvfwfBcCcDcEcFc% xfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( ) * Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 1g2g3g

81 kwargs = {"name": name, "field_info": field_info} 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

82 if PYDANTIC_V2: 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

83 kwargs.update({"mode": mode}) 2a )d*d+d,d-d.d7b8b9b!b#bIb/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbVcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeMbjgkglgb cedeeefegehe'b(b)b*b+bNbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 ObZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeRbugvgwgc EeFeGeHeIeJe;b=b?b@b[bSbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` WbFgGgHgd )e*e+e,e-e.ehcicjckclcXb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Ybmc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfeb1bQgRgSge rfsftfufvfwfBcCcDcEcFc2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3bGc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnb6b1g2g3g

84 else: 

85 kwargs.update( 2a )d*d+d,d-d.d7b8b9b!b#bJ /dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q R S VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE jgkglgb cedeeefegehe'b(b)b*b+bT iemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 1 2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF ugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 KexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 6 7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G FgGgHgd )e*e+e,e-e.ehcicjckclc8 /eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! # $ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH QgRgSge rfsftfufvfwfBcCcDcEcFc% xfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( ) * Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 1g2g3g

86 { 

87 "type_": type_, 

88 "class_validators": class_validators, 

89 "default": default, 

90 "required": required, 

91 "model_config": model_config, 

92 "alias": alias, 

93 } 

94 ) 

95 try: 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

96 return ModelField(**kwargs) # type: ignore[arg-type] 2a )d*d+d,d-d.d7b8b9b!b#bJ Ib/dbgcg:ddgeg;dfg=dgghg?digK L M N O k f #d|c}c~cadbdcdddedfdgdhdidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+cYc]c%b@d[d]d^d_d`d{d|d}d~daebeE Mbjgkglgb cedeeefegehe'b(b)b*b+bT NbiemgngjeogpgkeqglergsgmetgU V W X Y l g $djdkdldmdndodpdqdrdsdtdudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b.b2c^cr /bneoepeqereseteuevewexeye:bzeAeBeCeDeF Rbugvgwgc EeFeGeHeIeJe;b=b?b@b[b3 SbKexgygLezgAgMeBgNeCgDgOeEg; = ? @ [ s h %dvdwdxdydzdAdBdCdDdEdFdGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~bacbccc6c7c_ct u v dcPeQeReSeTeUeVeWeXeYeZe0eec1e2e3e4e5efc6e7e8e9e!egc#e$e%e'e(e` G WbFgGgHgd )e*e+e,e-e.ehcicjckclc8 Xb/eIgJg:eKgLg;eMg=eNgOg?ePg{ | } ~ abw i 'dJdKdLdMdNdOdPdQdRdSdTdUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctcucvcwc#c$c`cx y z xc@e[e]e^e_e`e{e|e}e~eafbfyccfdfefffgfzchfifjfkflfAcmfnfofpfqfebH 1bQgRgSge rfsftfufvfwfBcCcDcEcFc% 2bxfTgUgyfVgWgzfXgAfYgZgBf0gfbgbhbibjbA j (dXdYdZd0d1d2d3d4d5d6d7d8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcOcPcQc)c*c{cB C D RcCfDfEfFfGfHfIfJfKfLfMfNfScOfPfQfRfSfTcTfUfVfWfXfUcYfZf0f1f2fnbI 6b1g2g3g

97 except (RuntimeError, PydanticSchemaGenerationError): 2VcKbWcLbXcYcZcPb0cQb1c2c3cUb4cVb5c6c7c8cZb9c0b!c#c$c%c4b'c5b(c)c*c

98 raise fastapi.exceptions.FastAPIError( 2VcKbWcLbXcYcZcPb0cQb1c2c3cUb4cVb5c6c7c8cZb9c0b!c#c$c%c4b'c5b(c)c*c

99 "Invalid args for response field! Hint: " 

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

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

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

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

104 "parameter response_model=None. Read more: " 

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

106 ) from None 

107 

108 

109def create_cloned_field( 1abcde

110 field: ModelField, 

111 *, 

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

113) -> ModelField: 

114 if PYDANTIC_V2: 2a J IbK L M N O k f m P Q ybzbR JbS + , - obpbE Mbb T NbU V W X Y l g n Z 0 AbBb1 Ob2 . / : qbrbr F Rbc 3 Sb; = ? @ [ s h o 4 5 CbDb6 Tb7 ] ^ _ sbtbt u v ` G Wbd 8 Xb{ | } ~ abw i p 9 ! EbFb# Yb$ bbcbdbubvbx y z ebH 1be % 2bfbgbhbibjbA j q ' ( GbHb) 3b* kblbmbwbxbB C D nbI 6b

115 return field 2a IbK L M N O k f m P Q ybzbR Jb+ , - obpbMbb NbU V W X Y l g n Z 0 AbBb1 Ob. / : qbrbr Rbc Sb; = ? @ [ s h o 4 5 CbDb6 Tb] ^ _ sbtbt u v ` Wbd Xb{ | } ~ abw i p 9 ! EbFb# Ybbbcbdbubvbx y z eb1be 2bfbgbhbibjbA j q ' ( GbHb) 3bkblbmbwbxbB C D nb6b

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

117 # performance by avoiding unnecessary cloning 

118 if cloned_types is None: 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

119 cloned_types = _CLONED_TYPES_CACHE 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

120 

121 original_type = field.type_ 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

122 if is_dataclass(original_type) and hasattr(original_type, "__pydantic_model__"): 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

123 original_type = original_type.__pydantic_model__ 1abcde

124 use_type = original_type 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

125 if lenient_issubclass(original_type, BaseModel): 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

126 original_type = cast(Type[BaseModel], original_type) 2a J K L M N O k f m P Q R S E b T U V W X Y l g n Z 0 1 2 r F c 3 ; = ? @ [ s h o 4 5 6 7 t u v G d 8 { | } ~ abw i p 9 ! # $ x y z H e % fbgbhbibjbA j q ' ( ) * B C D I

127 use_type = cloned_types.get(original_type) 2a J K L M N O k f m P Q R S E b T U V W X Y l g n Z 0 1 2 r F c 3 ; = ? @ [ s h o 4 5 6 7 t u v G d 8 { | } ~ abw i p 9 ! # $ x y z H e % fbgbhbibjbA j q ' ( ) * B C D I

128 if use_type is None: 2a J K L M N O k f m P Q R S E b T U V W X Y l g n Z 0 1 2 r F c 3 ; = ? @ [ s h o 4 5 6 7 t u v G d 8 { | } ~ abw i p 9 ! # $ x y z H e % fbgbhbibjbA j q ' ( ) * B C D I

129 use_type = create_model(original_type.__name__, __base__=original_type) 1aJfmSEbTgn2rFc3ho7tuvGd8ip$xyzHe%jq*BCDI

130 cloned_types[original_type] = use_type 1aJfmSEbTgn2rFc3ho7tuvGd8ip$xyzHe%jq*BCDI

131 for f in original_type.__fields__.values(): 1aJfmSEbTgn2rFc3ho7tuvGd8ip$xyzHe%jq*BCDI

132 use_type.__fields__[f.name] = create_cloned_field( 1aJfmSEbTgn2rFc3ho7tuvGd8ip$xyzHe%jq*BCDI

133 f, cloned_types=cloned_types 

134 ) 

135 new_field = create_model_field(name=field.name, type_=use_type) 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

136 new_field.has_alias = field.has_alias # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

137 new_field.alias = field.alias # type: ignore[misc] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

138 new_field.class_validators = field.class_validators # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

139 new_field.default = field.default # type: ignore[misc] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

140 new_field.required = field.required # type: ignore[misc] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

141 new_field.model_config = field.model_config # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

142 new_field.field_info = field.field_info 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

143 new_field.allow_none = field.allow_none # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

144 new_field.validate_always = field.validate_always # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

145 if field.sub_fields: # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

146 new_field.sub_fields = [ # type: ignore[attr-defined] 2a K L M N O k f m P Q R + , - E b U V W X Y l g n Z 0 1 . / : F c ; = ? @ [ s h o 4 5 6 ] ^ _ ` G d { | } ~ abw i p 9 ! # bbcbdbebH e fbgbhbibjbA j q ' ( ) kblbmbnbI

147 create_cloned_field(sub_field, cloned_types=cloned_types) 

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

149 ] 

150 if field.key_field: # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

151 new_field.key_field = create_cloned_field( # type: ignore[attr-defined] 2a + , - b . / : c ] ^ _ ` d bbcbdbebe kblbmbnb

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

153 cloned_types=cloned_types, 

154 ) 

155 new_field.validators = field.validators # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

156 new_field.pre_validators = field.pre_validators # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

157 new_field.post_validators = field.post_validators # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

158 new_field.parse_json = field.parse_json # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

159 new_field.shape = field.shape # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

160 new_field.populate_validators() # type: ignore[attr-defined] 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

161 return new_field 2a J K L M N O k f m P Q R S + , - obpbE b T U V W X Y l g n Z 0 1 2 . / : qbrbr F c 3 ; = ? @ [ s h o 4 5 6 7 ] ^ _ sbtbt u v ` G d 8 { | } ~ abw i p 9 ! # $ bbcbdbubvbx y z ebH e % fbgbhbibjbA j q ' ( ) * kblbmbwbxbB C D nbI

162 

163 

164def generate_operation_id_for_path( 1abcde

165 *, name: str, path: str, method: str 1abcde

166) -> str: # pragma: nocover 1abcde

167 warnings.warn( 

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

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

170 DeprecationWarning, 

171 stacklevel=2, 

172 ) 

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

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

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

176 return operation_id 

177 

178 

179def generate_unique_id(route: "APIRoute") -> str: 1abcde

180 operation_id = f"{route.name}{route.path_format}" 2a 7b4g8b9b!b#bJ Ibk f 3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT Nbl g 9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sbs h (f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xbw i .f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bA j @f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

181 operation_id = re.sub(r"\W", "_", operation_id) 2a 7b4g8b9b!b#bJ Ibk f 3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT Nbl g 9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sbs h (f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xbw i .f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bA j @f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

182 assert route.methods 2a 7b4g8b9b!b#bJ Ibk f 3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT Nbl g 9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sbs h (f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xbw i .f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bA j @f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

183 operation_id = f"{operation_id}_{list(route.methods)[0].lower()}" 2a 7b4g8b9b!b#bJ Ibk f 3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT Nbl g 9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sbs h (f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xbw i .f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bA j @f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

184 return operation_id 2a 7b4g8b9b!b#bJ Ibk f 3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT Nbl g 9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sbs h (f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xbw i .f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bA j @f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

185 

186 

187def deep_dict_update(main_dict: Dict[Any, Any], update_dict: Dict[Any, Any]) -> None: 1abcde

188 for key, value in update_dict.items(): 2OhPhQhRhDhK L M N O k f ShThUhybzbVhBhWhXhEhFhGhYhZh0h1h2h3h4h5h6h7hHhU V W X Y l g 8h9h!hAbBb#hCh$h%hIhJhKh'h(h)h*h+h,h-hIAJAKAPA^h; = ? @ [ s h SB#B%BCbDb$CLhrD7E{h|h}h}EoFEF9H!H$H)H=L?L@L`Lbi{ | } ~ abw i }MrNtNEbFbsOMh8OnQeifigiPQ5Q.QpTqTsTwTFXGXHXMXjifbgbhbibjbA j PY8Y!YGbHb9ZNho041minioi`1l2B2647494%4

189 if ( 2OhPhQhRhDhK L M N O k f ShThUhybzbVhBhWhXhEhFhGhYhZh0h1h2h3h4h5h6h7hHhU V W X Y l g 8h9h!hAbBb#hCh$h%hIhJhKh'h(h)h*h+h,h-h

190 key in main_dict 

191 and isinstance(main_dict[key], dict) 

192 and isinstance(value, dict) 

193 ): 

194 deep_dict_update(main_dict[key], value) 2DhEhFhGhHhIhJhKh^h{h|h}hbieifigijiminioi

195 elif ( 2OhPhQhRhDhK L M N O k f ShThUhybzbVhBhWhXhEhFhGhYhZh0h1h2h3h4h5h6h7hHhU V W X Y l g 8h9h!hAbBb#hCh$h%hIhJhKh'h(h)h*h+h,h-h

196 key in main_dict 

197 and isinstance(main_dict[key], list) 

198 and isinstance(update_dict[key], list) 

199 ): 

200 main_dict[key] = main_dict[key] + update_dict[key] 2Th9h#BrN8Y

201 else: 

202 main_dict[key] = value 2OhPhQhRhDhK L M N O k f ShUhybzbVhBhWhXhEhFhGhYhZh0h1h2h3h4h5h6h7hHhU V W X Y l g 8h!hAbBb#hCh$h%hIhJhKh'h(h)h*h+h,h-hIAJAKAPA^h; = ? @ [ s h SB%BCbDb$CLhrD7E{h|h}h}EoFEF9H!H$H)H=L?L@L`Lbi{ | } ~ abw i }MtNEbFbsOMh8OnQeifigiPQ5Q.QpTqTsTwTFXGXHXMXjifbgbhbibjbA j PY!YGbHb9ZNho041minioi`1l2B2647494%4

203 

204 

205def get_value_or_default( 1abcde

206 first_item: Union[DefaultPlaceholder, DefaultType], 

207 *extra_items: Union[DefaultPlaceholder, DefaultType], 

208) -> Union[DefaultPlaceholder, DefaultType]: 

209 """ 

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

211 

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

213 

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

215 """ 

216 items = (first_item,) + extra_items 2a 7b4g8b9b!b#bJ IbK L M N O k f #d3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT NbU V W X Y l g $d9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sb; = ? @ [ s h %d(f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xb{ | } ~ abw i 'd.f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bfbgbhbibjbA j (d@f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

217 for item in items: 2a 7b4g8b9b!b#bJ IbK L M N O k f #d3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT NbU V W X Y l g $d9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sb; = ? @ [ s h %d(f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xb{ | } ~ abw i 'd.f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bfbgbhbibjbA j (d@f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

218 if not isinstance(item, DefaultPlaceholder): 2a 7b4g8b9b!b#bJ IbK L M N O k f #d3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT NbU V W X Y l g $d9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sb; = ? @ [ s h %d(f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xb{ | } ~ abw i 'd.f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bfbgbhbibjbA j (d@f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b

219 return item 2a K L M N O k f #d]cb U V W X Y l g $d^cc ; = ? @ [ s h %d_cd { | } ~ abw i 'd`ce fbgbhbibjbA j (d{c

220 return first_item 2a 7b4g8b9b!b#bJ IbK L M N O k f #d3f4f|c}c~cadbdcdddedfdgdhd5g6g7g8g9g!g#g$g%g'gidm P Q ybzbR JbS VcKbWcLbXc+ , - obpb$b+c{f5f6fYc(g7f8f]c%bE Mbb 'b)g(b)b*b+bT NbU V W X Y l g $d9f!fjdkdldmdndodpdqdrdsdtd*g+g,g-g.g/g:g;g=g?gudn Z 0 AbBb1 Ob2 ZcPb0cQb1c. / : qbrb,b,c-b|f#f$f.b2c@g%f'f^cr /b:bF Rbc ;b[g=b?b@b[b3 Sb; = ? @ [ s h %d(f)fvdwdxdydzdAdBdCdDdEdFd]g^g_g`g{g|g}g~gahbhGdo 4 5 CbDb6 Tb7 ]b-c^bHd.cId_b`b3cUb4cVb5c] ^ _ sbtb{b/c|b}b~b}f*f+facbccc6c7cch,f-f_ct u v dcecfcgc` G Wbd hcdhicjckclc8 Xb{ | } ~ abw i 'd.f/fJdKdLdMdNdOdPdQdRdSdTdehfhghhhihjhkhlhmhnhUdp 9 ! EbFb# Yb$ mc:cncVd;cWdocpc8cZb9c0b!cbbcbdbubvbqc=crcsctc~f:f;fucvcwc#c$coh=f?f`cx y z xcyczcAcebH 1be BcphCcDcEcFc% 2bfbgbhbibjbA j (d@f[fXdYdZd0d1d2d3d4d5d6d7dqhrhshthuhvhwhxhyhzh8dq ' ( GbHb) 3b* Gc?cHc9d@c!dIcJc%c4b'c5b(ckblbmbwbxbKc[cLcMcNcag]f^fOcPcQc)c*cAh_f`f{cB C D RcScTcUcnbI 6b