Coverage for fastapi / _compat / shared.py: 100%
119 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
1import types 1bcda
2import typing 1bcda
3import warnings 1bcda
4from collections import deque 1bcda
5from collections.abc import Mapping, Sequence 1bcda
6from dataclasses import is_dataclass 1bcda
7from typing import ( 1bcda
8 Annotated,
9 Any,
10 TypeGuard,
11 TypeVar,
12 Union,
13 get_args,
14 get_origin,
15)
17from fastapi.types import UnionType 1bcda
18from pydantic import BaseModel 1bcda
19from pydantic.version import VERSION as PYDANTIC_VERSION 1bcda
20from starlette.datastructures import UploadFile 1bcda
22_T = TypeVar("_T") 1bcda
24# Copy from Pydantic: pydantic/_internal/_typing_extra.py
25WithArgsTypes: tuple[Any, ...] = ( 1bcda
26 typing._GenericAlias, # type: ignore[attr-defined]
27 types.GenericAlias,
28 types.UnionType,
29) # pyright: ignore[reportAttributeAccessIssue]
31PYDANTIC_VERSION_MINOR_TUPLE = tuple(int(x) for x in PYDANTIC_VERSION.split(".")[:2]) 1bcda
34sequence_annotation_to_type = { 1bcda
35 Sequence: list,
36 list: list,
37 tuple: tuple,
38 set: set,
39 frozenset: frozenset,
40 deque: deque,
41}
43sequence_types: tuple[type[Any], ...] = tuple(sequence_annotation_to_type.keys()) 1bcda
46# Copy of Pydantic: pydantic/_internal/_utils.py with added TypeGuard
47def lenient_issubclass( 1bcda
48 cls: Any, class_or_tuple: type[_T] | tuple[type[_T], ...] | None
49) -> TypeGuard[type[_T]]:
50 try: 2b 6%7%8%9%!%#%$%%%'%(%)%*%+%t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m,%_Q`Q{Q|Q}Q~QaRbRR4S4=k?k-%.%qt/%rt{Af [o]o.fstttutvt:%wt;%xt{x=%?%7jytcRdReRfRgRhRiRjRkRlRmRnR@%[%]%oRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsq^%_%ARBR`%{%zt|%}%AtBt~%|A}Aa'T4CRDRERFRb'GRHRIR,z-zCtDtJR@kc'[kKR]k^kEt]N^N_N9o~AaB!o#o$od'bBHdIdJdKdLdMdNd/fe'LR_kf'`kg'h'MRNRi'ORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[Rj'k'?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jl'm'n'o'p'X4Y4q'r's't'u'v'w'x'y'z'A'tq]RB'C'D'E'F'iBG'H'`NI'J'OdPdQdRdSdTdUdK'tjujjBkBL'Z4lBmBnBoB^RpBqBM'04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSN'eSfS/Qvj:Q;Qzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?iO'lSmSP'Z5Q'R'nSoSpSqSrSsSS'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(sBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBB(C(KBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSD(E(LSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyF(G(yxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mH(I(flanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnJ(K(FjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsyL(M(@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyN(O(OyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipP(jpkpQ(lpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqR(S(MqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7BT(U(8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5V(W(+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOX(Y(vOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_BZ(0(`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S1(2(9S!S#S$S%S'S3(4((S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e65(6(f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSO7(8(TOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsC9(!(tCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~S#($(aTbTcTdTeTfTzCACBCCC%('((()(*(+(,(-(.(/(%o:(l6;(m6=(KtLt(p)p?(@(gThTMtNtOtPtQtRtStiTSqTqTt[(Ut$c%cVt](Wt^(_(`({(|(}(~(a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)pnUqVqWqXqYqp)q)r)s)t)qnZq0q1q2q3qu)4qrn5q6q7q8qv)w)x)y)z)A)B)jTkTlTmTC)n6o6nToTD)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)9qV)!qW)ZOX)Y)Z)0)1)UyVy2)3)4)pTqT5)r DCECs 6)rTsT7)t FCGCu tThluTvTilwT0i8)9)!)xTHCv ICw #)$)%)')yTzTATBTCTDTETFTGTHTIT()JTKTLTMTNTOTPTBeQTRTSTTTCeUTVT));f*)+),)-).)/):);)=)?)@)=f[)])^)_)`)?f{)|)@f})~)p6[fq6]fr6a*JCx KCy LCs6snt6u6tnv6unw6x6b*c*d*e*MCz NCA OCPCQCRCSCB TCC f*y6^fz6A6B6C6D6E6F6_fg*h*G6H6I6`fJ6{fK6|fL6}fi*j*UCD VCE WCXCYCZC0C1C2CF 3CG k*l*M6vnN6wnO6P6Q6R6S6T6U6xnV6m*n*o*W6~fX6agY6bgZ6061626cg36dg46566676egp*86fg96gg!6#6$6q*%6hg'6(6)6*6ig+6r*,6jg-6kg.6/6s*t*lgu*v*w*x*mgy*z*VdA*WdB*C*ngD*ogE*WTDeF*XTEeYTFeG*ZTGe0TH*I*J*1T2T3T4CXt5CYt6C7C8C9CZt!C0t#CK*L*$C1t%C2t'C3t(C4t)C*C+C,CM*N*-C5t.C6t/C:C;Cyn=Czn?C@CO*P*4Tjl5TklQ*7tR*8tS**pT*+pU*V*W*9tX*,pY*Z*0*1*2*3*4*5*6*7*8*9*!*#*$*%*'*(*)***pg+*qg!t,*#tAd-*6TBd.*/*:*;*[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fD=*?*@*gDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY [*]*^*_*`*{*QDRDZ SD0 TDUD1 VD2 |*}*7T8T#q9T!T#T$t$T$q%T'T~*a+b+(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~Tc+d+e+aUHebUcUIedUJeeUfUKef+g+gUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUh+i+j+wULexUMeyUulk+vll+m+:6n+o+;6An=6@ip+q+r+s+t+rgu+sgzU1iAU2iv+-pw+.p(tx+)ty+z+A+B+C+XdD+E+YdF+G+H+I+J+K+L+BUCUM+DUEUN+FUGUO+?6@6[6P+Q+R+S+]6^6_6T+WD*tXD+tYD,tZD-t0D1D2D3DU+V+4D.t5D/t6D7D8D9D!D#DW+:tX+;t$D=t%D?t'D(D)D*D+D,[email protected][tY+Z+/D]t:D;D=DBn?D@D0+1+[D^t]D_t^D_D`DCn{D|D}D2+3+Dn0O`t1O{t2O3Oqk4Ork5O4+5+tg6+7+ug8+9+!+#+$+%+Oc6OPc'+(+)+*+++vg,+wg-+.+/+:+;+=+xg?+ygzg@+[+Ag]+^+Bg_+`+Cg{+Dg|+}+Eg~+`6{6a,|6}6b,HUc,d,IUe,JUKULUMUNUf,g,h,~DskaEtkbEFgcEGgdEeEi,j,k,l,OUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3Um,n,4UUe5UVe6UWe7UXe8U9U!U#U$U%Uo,p,'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=Uq,r,?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaVs,t,~6!ja7#jb7c7d7e7f7g7u,v,h7$ji7%jj7'jk7l7m7n7o7(jw,p7Hgq7r7Igx,fE3 gE4 y,hE5 iEjE6 z,kE7 lEmE8 bVcVA,nE9 oEB,! C,pE# qE$ rED,E,sEuktEJguEvkvEwExEyEzEF,G,AEwkBEKgCEDELgEEFEGEHEH,I,IExkJEMgKEykLENgMENEJ,K,dVwleVxlfVylgVhViVzlL,M,jVAlkVBllVClmVDlnVoVN,O,OEzkPEOgQEAkREPgSETEUEVEP,Q,WEBkXEQgYEZERg0ECk1ER,S,2EDk3ESg4EEk5E6E7ETgT,U,8EFk9EUg!EGk#EVg$E%EV,W,'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQcX,Y,9O:c!ORcs7Ijt73iu7v7Z,0,w7)jx7Jj1,2,y7z7/EJk:EYg;E=E3,4,^AA7XcB7C7Yc5,6,7,]z^z#O$O_z/p`zRp%O'OWyXy8,9,4i|t}tEl[iFl5iEn]iFnGnHn!,#,(O~t)O(qYyauZy)q$,%,BxCxDxExFxKjGx^i0y1y',bu(,HxcuIxSp2y3yTp),*,?Edu@Eeu[E]Efu^Egu_E`E{E|E}E+,,,~EhuaFbFiucFjudFeFfFgFhFiFjFkF-,.,lFkumF*qnFoFpFluqF+qrFsFtFuF/,:,,qJxKxLxMxNxmuOxPxnuQx-qRxSxpV;,qV6e=,?,@,[,],^,_,`,Zd0d{,Zg|,0g},~,1ga-2gb-3gD7E7c-d-'oF74gG7e-5grVGlsVtVHlf-g-uVIlvVJlh-wVKlxVLlyV7ezV8ei-9ej-k-6gH77gl-8gI79gm-Inn-J7JnK7Kno-Lnp-MnL7NnM7Onq-Pnr-QnN7RnO7Sns-t-u-v-w-x-y-z-A-B-C-D-ou.qpu/qqu:q;q=q?qE-F-ru@qsu[qtu]q^q_q`qG-H-{q|q}q~qarbruucrvudrwuerfrgrxuhryuI-J-irjrkrlrmrnrorprqrrrK-L-M-N-O-P-Q-R-S-T-U-V-W-1dX-2dY-3dZ-4d0-zuAu1-2-3-4-*OBu+O,OCu5-!g6-#g7-8-9-!-#-$-%-'-P75dQ76d(-7d)-8dR79dS7!d*-#d+-$d,---.-/-:-Du;-$g=-?-%g@-[-Ml]-AV!eBV#e^-NlCVDVvFwF% ' ( ) * + , - . / : ; = ? _-EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%d`-{-|-Zc}-Eu~-Fua.GuHuIub.JuKuc.d.e.U7V7W7X7Y7f.'g$e%e'eFVc d g.h.i.j.k.l.m.n.o.p.q.r.s.Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7Vnt.GVHVIVJVKVLVMVNV:7;7OlPlu.v.Luw.MuHFg rpsp(gNuOuPuQux.Ruy.Su4yz.A.*jTuOVPVQVRVSVTVUVVVWVXVYVZVB.C.D.0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#VsrE.F.$V%VG.H.UuI.J.VuWuK.IFJFL.=7'V(V)V*VM.+V,V-V{z|zXuYu.VQlN.Rl/VSlTlZu-O.O/O(oKFLF)o*o+oO.MF'd(d)d*d+d,d-d)gP.:VUlQ.VlR.S.;V=VT.?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWU.V.WnKkXnWlXlYlLk+j_i'c`i?75y@7[7,jW.X.Y.Z.0.]7^71.2.3.4.5.6.7.8.9.!.#.trEW$.%.'.(.).TF*.+.:O,.-..d/d:d;[email protected]/._7WFXFYFZFFW0F1F:.`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPW;.QWRW=QNj?Q@QCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbj=.XWYW?._8@.[.ZW0W1W2W3W4W].^._.`.{.|.}.~.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/!/#/3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F$/%/.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W'/(/:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y)/*/2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n+/,/5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+n-/./Xj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?y//:/eA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkz;/=/lzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKp?/@/LpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLr[/]/MrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhG^/_/iGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9`/{/n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlP|/}/mPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFG~/a:GGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXb:c:kXlXmXnXoXpXd:e:qXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9f:g:L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPh:i:KPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3Gj:k:4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXl:m:MXNXOXPXQXRX!G#G$G%Gn:o:p:q:r:s:t:u:v:w:,ox:R9y:S9z:5u6u:p;pA:B:SXTX7u8u9u!u#u$u%uUXSrTr'uC:(u(c)c)uD:*uE:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:/nUrVrWrXrYr0:1:2:3:4::nZr0r1r2r3r5:4r;n5r6r7r8r6:7:8:9:!:#:$:VXWXXXYX%:T9U9ZX0X':(:):*:+:,:-:.:/:::;:=:?:@:[:]:^:_:9r`:!r{:QP|:}:~:a;b;rzszc;d;e;1X2Xf;'Gbb(Gcbg;3X4Xh;)Gdb*Geb5X6X7X7l8X6ii;j;k;9X+Gfb,Ggbl;m;n;o;!X#X$X%X'X(X)X*X+X,X-Xp;.X/X:X;X=X?X@X[X]X^X_X@e`X{X[eq;+gr;s;t;u;v;w;x;y;z;A;,gB;C;D;E;F;G;-gH;.gI;J;K;V9/gW9:gX9L;-Ghb.Gib/GY9Z9=n09?n19@n29[n39M;N;O;P;:Gjb;Gkb=G?G@G[G]Glb^GmbQ;49;g5969798999!9#9=gR;S;?g$9@g%9'9(9)9[g*9]gT;U;_Gnb`Gob{G|G}G~GaHbHcHdHV;W;+9]n,9^n-9.9/9:9;9=9?9@9X;Y;Z;[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}g0;d!~ge!f!g!h!ah1;i!bhj!chk!l!m!n!2;o!dhp!ehq!r!3;4;fh5;6;7;8;gh9;!;[d#;]d$;%;';hh(;ih|X]e);}X^e~X_e*;aYbY+;,;-;cYdYeYeH+ufH,ugHhHiHjHkH-ulH.u.;/;mH/unH:uoHpHqHrHsHtH:;;;uH;uvHwH=uxHyH_nzH`nAHBH=;?;fY8lgY9l@;?u[;@u];=p^;?p_;`;{;[u|;@p};~;a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=jhv=kh]uw=^uDdx=hYEdy=z=A=B=C=CHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHD=E=F=RHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGbG=H=I=J=K=L=@H[HHb]HIb^H_HJb`HKbM=N=iYjYkYlYmY_unY#roY`upYO=P=$rQ=qYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lR=S=T=MY`eNYOY{ePY|eQYRY}eU=V=SY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7YW=X=Y=8Y~e9Yaf!Y+lZ=,l0=1=s!2=3=t!{nu!cj4=|n5=dj6=7=8=lh9=mh#Y7i$Y8i!=[p#=]p}u$=~u%='=(=)=*=+=^d,=-=_d.=/=:=;===?=@=[=%Y'Y]=(Y)Y^=*Y+Y_=v!w!x!`={=|=}=y!z!A!~={Hav|Hbv}Hcv~HdvaIbIcIdIa?b?eIevfIfvgIhIiIjIkIgvlIhvc?d?mIivnIjvoIpIqIrIsItIuIkvvIlve?f?wImvxInvyIzI}nAI~nBIg?h?CIovDIpvEIFIGIaoHIboIIJIi?j?RPqvSPrvTPUPNkVPOkWPk?l?nhm?n?oho?p?q?r?s?t?ScXPTcu?v?w?x?y?phz?qhA?B?C?D?E?F?G?rhshH?I?thJ?K?L?M?uhN?vhO?whP?xhQ?B!C!R?D!E!S?,YT?U?-YV?.Y/Y:Y;Y=YW?X?Y?KIPkLIQkMIyhNIzhOIPIZ?0?1?2??Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZ3?4?fZjfgZkfhZlfiZmfjZkZlZmZnZoZ5?6?pZnfqZofrZpfsZqftZuZvZwZxZyZzZAZ7?8?BZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZ9?!?F!-jG!.jH!/jI!:jJ!K!L!M!#?$?;jN!=jO!?jP!Q!R!@jS!T!U!%?V!AhW!X!Bh'?QILbRIMb(?SINbTIUIOb)?VIPbWIXIQbNZOZ*?YIRbZISb+?,?0ITb1IUb2I-?.?3IRk4ICh5I6I7I8I9I!I/?:?#ISk$IDh%I'I(I)I*I+I;?=?,ITk-IEh.I/I:I;I??@?PZ-lQZ.lRZSZTZUZ[?]?VZ/lWZ:lXZYZZZ0Z^?_?=IUk?IFh@IVk[IGh]I^I_I`I`?{?{IWk|IHh}I~IaJbJ|?}?cJXkdJIheJYkfJgJhJ~?Zka@iJjJkJ0klJJhmJnJb@c@oJpJKhqJrJsJ1ktJLhuJvJYP;cZPUcd@e@0P1PY!0jZ!9i0!1j1!!if@g@2![j3!2jh@i@4!5!wJ2kxJMhyJzJj@k@_A6!0c7!8!1cl@m@n@gAhA2P^p3PUpiA_pjAVp4P5Ptzuzo@p@svtv;lej=l#icofjdo$ieofoq@r@6Puv7P(rvzwzs@t@5x6x7x8x9x3j!xgjxzyzu@v@#xvv$xWpzzAzw@x@AJwvBJxvCJDJyvEJFJGJHJIJJJy@z@KJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJA@B@WJDvXJ)rYJEvZJ*r0J1J2J3J4J5JC@D@%x'x(x)x*x+x,xFv-x+r.x/x1ZE@vf2ZwfF@G@H@I@`dJ@{dK@L@M@N@|d}dO@NhP@OhQ@PhR@QhS@RhT@Sh9!!!U@V@-o#!Th$!UhW@3Z?l4Z5Z@lX@Y@6Z[l7Z]lZ@8Z^l9Z_l!Zxf#Zyf0@1@2@Vh%!Wh3@Xh'!Yh4@5@(!go)!ho6@7@io*!jo+!ko8@9@,!lo-!mo!@#@$@%@'@(@)@*@,rGv-rHv.r/r:r;r+@,@=rIv?rJv@rKv[r]r^rLv-@.@_r`r{r|r}r~rasMvbsNvcsdsesfs/@:@gshsisjskslsmsnsospsOvPv;@=@?@@@[@]@^@_@`@{@|@}@~@~da[aeb[bec[ced[QvRve[f[g[h[i[8PSv9P!PTvj[Zhk[0hl[m[n[o[p[q[r[s[.!de/!eet[feu[ge:!he;!iev[jew[kex[y[z[A[B[C[UvVvD[E[1hF[2hG[H[`lI[$Zzf%ZAfJ[{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!bK[)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!ooleL[M[N[2cO[WvP[XvQ[YvZv0vR[1v2vS[T[U[?!@![!]!^!V[3hBfCfDf*Za W[X[Y[Z[0[1[2[3[4[5[6[7[8[_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po9[+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l![#[3v$[4v+Je ~lamFd5v6v7v8v%[9v'[!vBz([)[]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0*[+[,[b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qs-[.[n0o0/[:[$v;[=[%v'v?[,J-J@[u#p0q0r0s0[[t0u0v0kAlAXpYpw0bm][cmx0dmem(v#P$P%P3k.J/J4k5k6k^[:J=c?c@c[c]c^c_c4h_[y0fm`[gm{[|[z0A0}[B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0~[a]^jhjqohmimjmij%iQf*cRf'P)v(P)P'ib]c]d]e]f]*P+Pg]h]i]j]k]l]m]n]o]p]q]rs)0r]s]t]u]v]^Jw]x],Py]z]`c{c|c}c~cadbdA]5h6h_J`JB]v#{J|J}J~J*0aKbKC]w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0D][0]0[Q4j]Q^Q-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjojE]}0~0F]q$G]H]a1b1c1d1e1f1I]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^dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKv^w^vKwKxKyKzKAKx^g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1y^w1x1z^A^y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vB^dq?vC^D^eq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyoE^pmzoF^G^qmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbkH^)hckI^J^*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzK^rAKzL^M^sALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwN^nwowO^P^pwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmQ^ImJmR^S^KmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsT^IsJsU^V^KsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKW^RKSKX^Y^TKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQZ^0^nQoQpQqQrQsQ1^uAvAwAxAyAzAAABACADAEAFAGAHAIAJA2^KALA3^4^MANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K5^(K)K6^7^*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T18^U1V19^!^W1X1Y1Z10111#^$^%^21314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQ'^(^LQMQNQOQPQQQ)^SATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A*^8A9A+^,^!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbL-^cLdL.^/^eLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1:^;^;1=1?1@1[1]1=^kLlLmLnL?^@^[^]^^^_^`^{^|^}^.o~^r$a_s$b_vwww/o:oc_d_^1_1Zp0p1p2p3p4p5p`1QsRsxwe_yw+c,czwf_Awg_h_i_j_k_l_m_n_o_p_q_r_s_t_u_v_w_x_y_z_A_B_DoSsTsUsVsWsC_D_E_F_G_EoXsYsZs0s1sH_2sFo3s4s5s6sI_J_K_L_M_N_O_{1|1}1~1P_t$u$a2b2Q_R_S_T_U_V_W_X_Y_Z_0_1_2_3_4_5_6_7_7s8_8s9_RQ!_#_$_%_'_BwCw(_)_*_c2d2+_oL.bpL,_e2f2-_qLrL/bg2h2i2Qmj2(i._/_k2sL:btL;b:_;_=_?_l2m2n2o2p2q2r2s2t2u2v2@_w2x2y2z2A2B2C2D2E2F2G2SfH2I2[_-h]_^___`_{_|_}_~_a`b`c`d`e`f`g`h`.hi`j`k`l`v$/hw$x$m`uL=bvLwLy$z$A$GoB$HoC$D$n`o`p`q`xL?byL@bzLALBLCLDLELr`E$:hF$G$H$I$J$K$L$s`t`M$N$O$P$Q$;hR$=hu`v`FL[bGL]bHLILJLKLLLMLNLOLw`x`S$IoT$JoU$V$W$X$Y$Z$0$1$y`z`A`2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$B`'$]h($)$*$+$C`,$^h-$.$/$:$;$D`=$_h?$@$[$E`F``hG`H`I`J`K`L`cdM`N`O`P`GdQ`J2TfR`K2L2UfS`M2N2T`U`V`O2P2Q2PLDwQLEwRLSLTLULVLWLW`X`XLFwYLGwZL0L1L2L3L4LY`Z`5LHw6L7L8L9LKo!L#L$L0`1`R2RmS2Sm2`3`4`6p5`6`7`;o8`9`!`7p#`=o$`%`'`(`)`*`+`,`-`.`/`:`;`=`?`@`[`]`^`{hIw_```T2.c{`|`}`~`%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@La{b{c{[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMd{e{f{g{h{i{BMCMdcDMEMFMecGMj{k{fcU2V2W2X2Y2JwZ29s0212l{m{n{223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2o{p{q{;2Vf=2?2@2Wf[2]2r{s{^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3t{u{v{j3Xfk3l3Zmw{x{y{]$z{A{^$Lo_$pjB{C{D{E{F{|hG{}hm3)in3H{?oI{8pJ{K{L{M{N{O{P{ddQ{R{S{T{U{V{W{o3p3X{q3r3Y{s3t3Z{`${$|$0{1{2{3{}$~$a%4{OzLwPzMwQzRzSzTzUzVz5{6{WzNwXzOwYzZz0z1z2z3z7{8{4zPw5zQw6z7z8z9z!z#z$z%z9{!{HMRwIMJMKMMoLMMM#{${NMSwOMPMQMRMNoSMTMUM%{'{)ATw*A+A,Aqj-A.A({){*{+{~h,{-{.{/{:{;{SQVc={?{@{[{]{^{ai_{`{{{|{}{~{bia|b|cic|d|e|f|dig|eih|i|fij|b%c%k|d%e%l|u3m|n|v3o|w3x3y3z3A3p|q|r|VM8kWMXMgiYMZM0Ms|t|u|v|B3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3w|x|R3S32fT3U33fV3W3X3Y3Z303y|z|134f23335f435363738393!3#3$3A|B|%36f'3(37f)3*3+3,3-3.3/3:3;3C|D|TQgkUQhkVQWQXQYQZQ0QE|F|1Qik2Qjk3Q4Q5Qkk6Q7Q8QG|f%hig%h%iiH|1Mgc2MhcI|3Mic4M5MjcJ|6M7Mkc8Mlc=3?3K|9Mmc!MncL|M|#Moc$Mpc%MN|O|ji'M9k(Mki)M*M+M,M-M!k.MP|Q|/M#k:Mli;M=M?M@M[M]MR|S|^M$k_Mmi`M%k{Mni|M}MT|U|@30m[31m]32m^33m_34m`35mV|W|{36m|37m}38m~39ma4!mb4#mX|Y|~M'kaNoibN(kcNpidNeNqifNgNZ|0|hN)kiNrijNkNlNmN1|2|nN*koNsipNqNrNsN3|4|titNuNvN+kwNuixN,kyNvi5|6|zNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah 7|8|;A!c=Ai 9Qzi!Qme#QAi$Qne9|Bi!|oei%lkj%5j#|mk$|k%l%6jHN:kINCiJNKNDi%|;k'|`Am%3cn%4co%5c(|)|*|?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(z+|,|UwVw$mrj%m*iOoPoQosjRo+i-|Ww.|#s*QXw+Q$s)zYw*z%s/|:|kqEilq8fmqFinq9foqGipq!fZw0w$pSo;|=|qq%prqTo1w'p2wUo?|@|LN3wMN4wNNONPN5wQN6wRN7wSN8wTNUN[|]|VNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N^|_|7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N`|{|:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4||#fd4$f}|~|a}b}edc}fdd}gde}hdf}g}idjdh}Hii}Iij}Jik}Kil}Lim}Mip%q%n}o}@or%Nis%Oip}Pie4'mf4(mg4)mq}r}*mh4+mi4,ms}-mj4.mk4/ml4%fm4'ft}u}(fv}Qit%Riw}Siu%Tix}Voy}Wov%Xow%Yoz}ZoA}0ox%1oy%2oB}3oC}4oz%5oA%6oD}E}F}G}H}I}J}K}L}M}N}O}P}Q},s-w-s.w.s/w/s:s;s:w;wR}S}=w=s?w?s@w@s[s]s^s[w]wT}U}_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wV}W}gthtitjtktltmtntotptX}Y}Z}0}1}2}3}4}5}6}7}8}9}!}#}$}kd%}ldmd'}nd(}odpd)}axbxcx*}+},}-}.},Qdx-Qex.Qfx/}Ui:}Vi;}=}?}@}[}]}^}_}`}{}|}B%qdC%rd}}sd~}tdD%udE%vda~wdb~xdc~d~e~f~g~h~i~j~gxhxk~Wil~Xim~Yin~o~:mp~n4)fo4*fq~;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr~r4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oyds~t~u~Wcv~ixw~jxx~kxlxmxy~nxoxz~A~B~G%H%I%J%K%C~Zi+f,f-fs4
51 return isinstance(cls, type) and issubclass(cls, class_or_tuple) # type: ignore[arg-type] 2b 6%7%8%9%!%#%$%%%'%(%)%*%+%t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m,%_Q`Q{Q|Q}Q~QaRbRR4S4=k?k-%.%qt/%rt{Af [o]o.fstttutvt:%wt;%xt{x=%?%7jytcRdReRfRgRhRiRjRkRlRmRnR@%[%]%oRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsq^%_%ARBR`%{%zt|%}%AtBt~%|A}Aa'T4CRDRERFRb'GRHRIR,z-zCtDtJR@kc'[kKR]k^kEt]N^N_N9o~AaB!o#o$od'bBHdIdJdKdLdMdNd/fe'LR_kf'`kg'h'MRNRi'ORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[Rj'k'?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jl'm'n'o'p'X4Y4q'r's't'u'v'w'x'y'z'A'tq]RB'C'D'E'F'iBG'H'`NI'J'OdPdQdRdSdTdUdK'tjujjBkBL'Z4lBmBnBoB^RpBqBM'04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSN'eSfS/Qvj:Q;Qzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?iO'lSmSP'Z5Q'R'nSoSpSqSrSsSS'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(sBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBB(C(KBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSD(E(LSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyF(G(yxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mH(I(flanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnJ(K(FjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsyL(M(@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyN(O(OyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipP(jpkpQ(lpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqR(S(MqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7BT(U(8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5V(W(+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOX(Y(vOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_BZ(0(`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S1(2(9S!S#S$S%S'S3(4((S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e65(6(f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSO7(8(TOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsC9(!(tCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~S#($(aTbTcTdTeTfTzCACBCCC%('((()(*(+(,(-(.(/(%o:(l6;(m6=(KtLt(p)p?(@(gThTMtNtOtPtQtRtStiTSqTqTt[(Ut$c%cVt](Wt^(_(`({(|(}(~(a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)pnUqVqWqXqYqp)q)r)s)t)qnZq0q1q2q3qu)4qrn5q6q7q8qv)w)x)y)z)A)B)jTkTlTmTC)n6o6nToTD)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)9qV)!qW)ZOX)Y)Z)0)1)UyVy2)3)4)pTqT5)r DCECs 6)rTsT7)t FCGCu tThluTvTilwT0i8)9)!)xTHCv ICw #)$)%)')yTzTATBTCTDTETFTGTHTIT()JTKTLTMTNTOTPTBeQTRTSTTTCeUTVT));f*)+),)-).)/):);)=)?)@)=f[)])^)_)`)?f{)|)@f})~)p6[fq6]fr6a*JCx KCy LCs6snt6u6tnv6unw6x6b*c*d*e*MCz NCA OCPCQCRCSCB TCC f*y6^fz6A6B6C6D6E6F6_fg*h*G6H6I6`fJ6{fK6|fL6}fi*j*UCD VCE WCXCYCZC0C1C2CF 3CG k*l*M6vnN6wnO6P6Q6R6S6T6U6xnV6m*n*o*W6~fX6agY6bgZ6061626cg36dg46566676egp*86fg96gg!6#6$6q*%6hg'6(6)6*6ig+6r*,6jg-6kg.6/6s*t*lgu*v*w*x*mgy*z*VdA*WdB*C*ngD*ogE*WTDeF*XTEeYTFeG*ZTGe0TH*I*J*1T2T3T4CXt5CYt6C7C8C9CZt!C0t#CK*L*$C1t%C2t'C3t(C4t)C*C+C,CM*N*-C5t.C6t/C:C;Cyn=Czn?C@CO*P*4Tjl5TklQ*7tR*8tS**pT*+pU*V*W*9tX*,pY*Z*0*1*2*3*4*5*6*7*8*9*!*#*$*%*'*(*)***pg+*qg!t,*#tAd-*6TBd.*/*:*;*[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fD=*?*@*gDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY [*]*^*_*`*{*QDRDZ SD0 TDUD1 VD2 |*}*7T8T#q9T!T#T$t$T$q%T'T~*a+b+(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~Tc+d+e+aUHebUcUIedUJeeUfUKef+g+gUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUh+i+j+wULexUMeyUulk+vll+m+:6n+o+;6An=6@ip+q+r+s+t+rgu+sgzU1iAU2iv+-pw+.p(tx+)ty+z+A+B+C+XdD+E+YdF+G+H+I+J+K+L+BUCUM+DUEUN+FUGUO+?6@6[6P+Q+R+S+]6^6_6T+WD*tXD+tYD,tZD-t0D1D2D3DU+V+4D.t5D/t6D7D8D9D!D#DW+:tX+;t$D=t%D?t'D(D)D*D+D,[email protected][tY+Z+/D]t:D;D=DBn?D@D0+1+[D^t]D_t^D_D`DCn{D|D}D2+3+Dn0O`t1O{t2O3Oqk4Ork5O4+5+tg6+7+ug8+9+!+#+$+%+Oc6OPc'+(+)+*+++vg,+wg-+.+/+:+;+=+xg?+ygzg@+[+Ag]+^+Bg_+`+Cg{+Dg|+}+Eg~+`6{6a,|6}6b,HUc,d,IUe,JUKULUMUNUf,g,h,~DskaEtkbEFgcEGgdEeEi,j,k,l,OUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3Um,n,4UUe5UVe6UWe7UXe8U9U!U#U$U%Uo,p,'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=Uq,r,?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaVs,t,~6!ja7#jb7c7d7e7f7g7u,v,h7$ji7%jj7'jk7l7m7n7o7(jw,p7Hgq7r7Igx,fE3 gE4 y,hE5 iEjE6 z,kE7 lEmE8 bVcVA,nE9 oEB,! C,pE# qE$ rED,E,sEuktEJguEvkvEwExEyEzEF,G,AEwkBEKgCEDELgEEFEGEHEH,I,IExkJEMgKEykLENgMENEJ,K,dVwleVxlfVylgVhViVzlL,M,jVAlkVBllVClmVDlnVoVN,O,OEzkPEOgQEAkREPgSETEUEVEP,Q,WEBkXEQgYEZERg0ECk1ER,S,2EDk3ESg4EEk5E6E7ETgT,U,8EFk9EUg!EGk#EVg$E%EV,W,'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQcX,Y,9O:c!ORcs7Ijt73iu7v7Z,0,w7)jx7Jj1,2,y7z7/EJk:EYg;E=E3,4,^AA7XcB7C7Yc5,6,7,]z^z#O$O_z/p`zRp%O'OWyXy8,9,4i|t}tEl[iFl5iEn]iFnGnHn!,#,(O~t)O(qYyauZy)q$,%,BxCxDxExFxKjGx^i0y1y',bu(,HxcuIxSp2y3yTp),*,?Edu@Eeu[E]Efu^Egu_E`E{E|E}E+,,,~EhuaFbFiucFjudFeFfFgFhFiFjFkF-,.,lFkumF*qnFoFpFluqF+qrFsFtFuF/,:,,qJxKxLxMxNxmuOxPxnuQx-qRxSxpV;,qV6e=,?,@,[,],^,_,`,Zd0d{,Zg|,0g},~,1ga-2gb-3gD7E7c-d-'oF74gG7e-5grVGlsVtVHlf-g-uVIlvVJlh-wVKlxVLlyV7ezV8ei-9ej-k-6gH77gl-8gI79gm-Inn-J7JnK7Kno-Lnp-MnL7NnM7Onq-Pnr-QnN7RnO7Sns-t-u-v-w-x-y-z-A-B-C-D-ou.qpu/qqu:q;q=q?qE-F-ru@qsu[qtu]q^q_q`qG-H-{q|q}q~qarbruucrvudrwuerfrgrxuhryuI-J-irjrkrlrmrnrorprqrrrK-L-M-N-O-P-Q-R-S-T-U-V-W-1dX-2dY-3dZ-4d0-zuAu1-2-3-4-*OBu+O,OCu5-!g6-#g7-8-9-!-#-$-%-'-P75dQ76d(-7d)-8dR79dS7!d*-#d+-$d,---.-/-:-Du;-$g=-?-%g@-[-Ml]-AV!eBV#e^-NlCVDVvFwF% ' ( ) * + , - . / : ; = ? _-EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%d`-{-|-Zc}-Eu~-Fua.GuHuIub.JuKuc.d.e.U7V7W7X7Y7f.'g$e%e'eFVc d g.h.i.j.k.l.m.n.o.p.q.r.s.Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7Vnt.GVHVIVJVKVLVMVNV:7;7OlPlu.v.Luw.MuHFg rpsp(gNuOuPuQux.Ruy.Su4yz.A.*jTuOVPVQVRVSVTVUVVVWVXVYVZVB.C.D.0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#VsrE.F.$V%VG.H.UuI.J.VuWuK.IFJFL.=7'V(V)V*VM.+V,V-V{z|zXuYu.VQlN.Rl/VSlTlZu-O.O/O(oKFLF)o*o+oO.MF'd(d)d*d+d,d-d)gP.:VUlQ.VlR.S.;V=VT.?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWU.V.WnKkXnWlXlYlLk+j_i'c`i?75y@7[7,jW.X.Y.Z.0.]7^71.2.3.4.5.6.7.8.9.!.#.trEW$.%.'.(.).TF*.+.:O,.-..d/d:d;[email protected]/._7WFXFYFZFFW0F1F:.`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPW;.QWRW=QNj?Q@QCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbj=.XWYW?._8@.[.ZW0W1W2W3W4W].^._.`.{.|.}.~.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/!/#/3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F$/%/.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W'/(/:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y)/*/2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n+/,/5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+n-/./Xj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?y//:/eA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkz;/=/lzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKp?/@/LpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLr[/]/MrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhG^/_/iGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9`/{/n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlP|/}/mPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFG~/a:GGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXb:c:kXlXmXnXoXpXd:e:qXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9f:g:L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPh:i:KPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3Gj:k:4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXl:m:MXNXOXPXQXRX!G#G$G%Gn:o:p:q:r:s:t:u:v:w:,ox:R9y:S9z:5u6u:p;pA:B:SXTX7u8u9u!u#u$u%uUXSrTr'uC:(u(c)c)uD:*uE:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:/nUrVrWrXrYr0:1:2:3:4::nZr0r1r2r3r5:4r;n5r6r7r8r6:7:8:9:!:#:$:VXWXXXYX%:T9U9ZX0X':(:):*:+:,:-:.:/:::;:=:?:@:[:]:^:_:9r`:!r{:QP|:}:~:a;b;rzszc;d;e;1X2Xf;'Gbb(Gcbg;3X4Xh;)Gdb*Geb5X6X7X7l8X6ii;j;k;9X+Gfb,Ggbl;m;n;o;!X#X$X%X'X(X)X*X+X,X-Xp;.X/X:X;X=X?X@X[X]X^X_X@e`X{X[eq;+gr;s;t;u;v;w;x;y;z;A;,gB;C;D;E;F;G;-gH;.gI;J;K;V9/gW9:gX9L;-Ghb.Gib/GY9Z9=n09?n19@n29[n39M;N;O;P;:Gjb;Gkb=G?G@G[G]Glb^GmbQ;49;g5969798999!9#9=gR;S;?g$9@g%9'9(9)9[g*9]gT;U;_Gnb`Gob{G|G}G~GaHbHcHdHV;W;+9]n,9^n-9.9/9:9;9=9?9@9X;Y;Z;[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}g0;d!~ge!f!g!h!ah1;i!bhj!chk!l!m!n!2;o!dhp!ehq!r!3;4;fh5;6;7;8;gh9;!;[d#;]d$;%;';hh(;ih|X]e);}X^e~X_e*;aYbY+;,;-;cYdYeYeH+ufH,ugHhHiHjHkH-ulH.u.;/;mH/unH:uoHpHqHrHsHtH:;;;uH;uvHwH=uxHyH_nzH`nAHBH=;?;fY8lgY9l@;?u[;@u];=p^;?p_;`;{;[u|;@p};~;a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=jhv=kh]uw=^uDdx=hYEdy=z=A=B=C=CHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHD=E=F=RHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGbG=H=I=J=K=L=@H[HHb]HIb^H_HJb`HKbM=N=iYjYkYlYmY_unY#roY`upYO=P=$rQ=qYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lR=S=T=MY`eNYOY{ePY|eQYRY}eU=V=SY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7YW=X=Y=8Y~e9Yaf!Y+lZ=,l0=1=s!2=3=t!{nu!cj4=|n5=dj6=7=8=lh9=mh#Y7i$Y8i!=[p#=]p}u$=~u%='=(=)=*=+=^d,=-=_d.=/=:=;===?=@=[=%Y'Y]=(Y)Y^=*Y+Y_=v!w!x!`={=|=}=y!z!A!~={Hav|Hbv}Hcv~HdvaIbIcIdIa?b?eIevfIfvgIhIiIjIkIgvlIhvc?d?mIivnIjvoIpIqIrIsItIuIkvvIlve?f?wImvxInvyIzI}nAI~nBIg?h?CIovDIpvEIFIGIaoHIboIIJIi?j?RPqvSPrvTPUPNkVPOkWPk?l?nhm?n?oho?p?q?r?s?t?ScXPTcu?v?w?x?y?phz?qhA?B?C?D?E?F?G?rhshH?I?thJ?K?L?M?uhN?vhO?whP?xhQ?B!C!R?D!E!S?,YT?U?-YV?.Y/Y:Y;Y=YW?X?Y?KIPkLIQkMIyhNIzhOIPIZ?0?1?2??Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZ3?4?fZjfgZkfhZlfiZmfjZkZlZmZnZoZ5?6?pZnfqZofrZpfsZqftZuZvZwZxZyZzZAZ7?8?BZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZ9?!?F!-jG!.jH!/jI!:jJ!K!L!M!#?$?;jN!=jO!?jP!Q!R!@jS!T!U!%?V!AhW!X!Bh'?QILbRIMb(?SINbTIUIOb)?VIPbWIXIQbNZOZ*?YIRbZISb+?,?0ITb1IUb2I-?.?3IRk4ICh5I6I7I8I9I!I/?:?#ISk$IDh%I'I(I)I*I+I;?=?,ITk-IEh.I/I:I;I??@?PZ-lQZ.lRZSZTZUZ[?]?VZ/lWZ:lXZYZZZ0Z^?_?=IUk?IFh@IVk[IGh]I^I_I`I`?{?{IWk|IHh}I~IaJbJ|?}?cJXkdJIheJYkfJgJhJ~?Zka@iJjJkJ0klJJhmJnJb@c@oJpJKhqJrJsJ1ktJLhuJvJYP;cZPUcd@e@0P1PY!0jZ!9i0!1j1!!if@g@2![j3!2jh@i@4!5!wJ2kxJMhyJzJj@k@_A6!0c7!8!1cl@m@n@gAhA2P^p3PUpiA_pjAVp4P5Ptzuzo@p@svtv;lej=l#icofjdo$ieofoq@r@6Puv7P(rvzwzs@t@5x6x7x8x9x3j!xgjxzyzu@v@#xvv$xWpzzAzw@x@AJwvBJxvCJDJyvEJFJGJHJIJJJy@z@KJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJA@B@WJDvXJ)rYJEvZJ*r0J1J2J3J4J5JC@D@%x'x(x)x*x+x,xFv-x+r.x/x1ZE@vf2ZwfF@G@H@I@`dJ@{dK@L@M@N@|d}dO@NhP@OhQ@PhR@QhS@RhT@Sh9!!!U@V@-o#!Th$!UhW@3Z?l4Z5Z@lX@Y@6Z[l7Z]lZ@8Z^l9Z_l!Zxf#Zyf0@1@2@Vh%!Wh3@Xh'!Yh4@5@(!go)!ho6@7@io*!jo+!ko8@9@,!lo-!mo!@#@$@%@'@(@)@*@,rGv-rHv.r/r:r;r+@,@=rIv?rJv@rKv[r]r^rLv-@.@_r`r{r|r}r~rasMvbsNvcsdsesfs/@:@gshsisjskslsmsnsospsOvPv;@=@?@@@[@]@^@_@`@{@|@}@~@~da[aeb[bec[ced[QvRve[f[g[h[i[8PSv9P!PTvj[Zhk[0hl[m[n[o[p[q[r[s[.!de/!eet[feu[ge:!he;!iev[jew[kex[y[z[A[B[C[UvVvD[E[1hF[2hG[H[`lI[$Zzf%ZAfJ[{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!bK[)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!ooleL[M[N[2cO[WvP[XvQ[YvZv0vR[1v2vS[T[U[?!@![!]!^!V[3hBfCfDf*Za W[X[Y[Z[0[1[2[3[4[5[6[7[8[_!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po9[+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l![#[3v$[4v+Je ~lamFd5v6v7v8v%[9v'[!vBz([)[]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0*[+[,[b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qs-[.[n0o0/[:[$v;[=[%v'v?[,J-J@[u#p0q0r0s0[[t0u0v0kAlAXpYpw0bm][cmx0dmem(v#P$P%P3k.J/J4k5k6k^[:J=c?c@c[c]c^c_c4h_[y0fm`[gm{[|[z0A0}[B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0~[a]^jhjqohmimjmij%iQf*cRf'P)v(P)P'ib]c]d]e]f]*P+Pg]h]i]j]k]l]m]n]o]p]q]rs)0r]s]t]u]v]^Jw]x],Py]z]`c{c|c}c~cadbdA]5h6h_J`JB]v#{J|J}J~J*0aKbKC]w#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0D][0]0[Q4j]Q^Q-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjojE]}0~0F]q$G]H]a1b1c1d1e1f1I]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^dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKv^w^vKwKxKyKzKAKx^g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1y^w1x1z^A^y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vB^dq?vC^D^eq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyoE^pmzoF^G^qmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbkH^)hckI^J^*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzK^rAKzL^M^sALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwN^nwowO^P^pwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmQ^ImJmR^S^KmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsT^IsJsU^V^KsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKW^RKSKX^Y^TKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQZ^0^nQoQpQqQrQsQ1^uAvAwAxAyAzAAABACADAEAFAGAHAIAJA2^KALA3^4^MANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K5^(K)K6^7^*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T18^U1V19^!^W1X1Y1Z10111#^$^%^21314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQ'^(^LQMQNQOQPQQQ)^SATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A*^8A9A+^,^!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbL-^cLdL.^/^eLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1:^;^;1=1?1@1[1]1=^kLlLmLnL?^@^[^]^^^_^`^{^|^}^.o~^r$a_s$b_vwww/o:oc_d_^1_1Zp0p1p2p3p4p5p`1QsRsxwe_yw+c,czwf_Awg_h_i_j_k_l_m_n_o_p_q_r_s_t_u_v_w_x_y_z_A_B_DoSsTsUsVsWsC_D_E_F_G_EoXsYsZs0s1sH_2sFo3s4s5s6sI_J_K_L_M_N_O_{1|1}1~1P_t$u$a2b2Q_R_S_T_U_V_W_X_Y_Z_0_1_2_3_4_5_6_7_7s8_8s9_RQ!_#_$_%_'_BwCw(_)_*_c2d2+_oL.bpL,_e2f2-_qLrL/bg2h2i2Qmj2(i._/_k2sL:btL;b:_;_=_?_l2m2n2o2p2q2r2s2t2u2v2@_w2x2y2z2A2B2C2D2E2F2G2SfH2I2[_-h]_^___`_{_|_}_~_a`b`c`d`e`f`g`h`.hi`j`k`l`v$/hw$x$m`uL=bvLwLy$z$A$GoB$HoC$D$n`o`p`q`xL?byL@bzLALBLCLDLELr`E$:hF$G$H$I$J$K$L$s`t`M$N$O$P$Q$;hR$=hu`v`FL[bGL]bHLILJLKLLLMLNLOLw`x`S$IoT$JoU$V$W$X$Y$Z$0$1$y`z`A`2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$B`'$]h($)$*$+$C`,$^h-$.$/$:$;$D`=$_h?$@$[$E`F``hG`H`I`J`K`L`cdM`N`O`P`GdQ`J2TfR`K2L2UfS`M2N2T`U`V`O2P2Q2PLDwQLEwRLSLTLULVLWLW`X`XLFwYLGwZL0L1L2L3L4LY`Z`5LHw6L7L8L9LKo!L#L$L0`1`R2RmS2Sm2`3`4`6p5`6`7`;o8`9`!`7p#`=o$`%`'`(`)`*`+`,`-`.`/`:`;`=`?`@`[`]`^`{hIw_```T2.c{`|`}`~`%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@La{b{c{[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMd{e{f{g{h{i{BMCMdcDMEMFMecGMj{k{fcU2V2W2X2Y2JwZ29s0212l{m{n{223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2o{p{q{;2Vf=2?2@2Wf[2]2r{s{^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3t{u{v{j3Xfk3l3Zmw{x{y{]$z{A{^$Lo_$pjB{C{D{E{F{|hG{}hm3)in3H{?oI{8pJ{K{L{M{N{O{P{ddQ{R{S{T{U{V{W{o3p3X{q3r3Y{s3t3Z{`${$|$0{1{2{3{}$~$a%4{OzLwPzMwQzRzSzTzUzVz5{6{WzNwXzOwYzZz0z1z2z3z7{8{4zPw5zQw6z7z8z9z!z#z$z%z9{!{HMRwIMJMKMMoLMMM#{${NMSwOMPMQMRMNoSMTMUM%{'{)ATw*A+A,Aqj-A.A({){*{+{~h,{-{.{/{:{;{SQVc={?{@{[{]{^{ai_{`{{{|{}{~{bia|b|cic|d|e|f|dig|eih|i|fij|b%c%k|d%e%l|u3m|n|v3o|w3x3y3z3A3p|q|r|VM8kWMXMgiYMZM0Ms|t|u|v|B3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3w|x|R3S32fT3U33fV3W3X3Y3Z303y|z|134f23335f435363738393!3#3$3A|B|%36f'3(37f)3*3+3,3-3.3/3:3;3C|D|TQgkUQhkVQWQXQYQZQ0QE|F|1Qik2Qjk3Q4Q5Qkk6Q7Q8QG|f%hig%h%iiH|1Mgc2MhcI|3Mic4M5MjcJ|6M7Mkc8Mlc=3?3K|9Mmc!MncL|M|#Moc$Mpc%MN|O|ji'M9k(Mki)M*M+M,M-M!k.MP|Q|/M#k:Mli;M=M?M@M[M]MR|S|^M$k_Mmi`M%k{Mni|M}MT|U|@30m[31m]32m^33m_34m`35mV|W|{36m|37m}38m~39ma4!mb4#mX|Y|~M'kaNoibN(kcNpidNeNqifNgNZ|0|hN)kiNrijNkNlNmN1|2|nN*koNsipNqNrNsN3|4|titNuNvN+kwNuixN,kyNvi5|6|zNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah 7|8|;A!c=Ai 9Qzi!Qme#QAi$Qne9|Bi!|oei%lkj%5j#|mk$|k%l%6jHN:kINCiJNKNDi%|;k'|`Am%3cn%4co%5c(|)|*|?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(z+|,|UwVw$mrj%m*iOoPoQosjRo+i-|Ww.|#s*QXw+Q$s)zYw*z%s/|:|kqEilq8fmqFinq9foqGipq!fZw0w$pSo;|=|qq%prqTo1w'p2wUo?|@|LN3wMN4wNNONPN5wQN6wRN7wSN8wTNUN[|]|VNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N^|_|7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N`|{|:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4||#fd4$f}|~|a}b}edc}fdd}gde}hdf}g}idjdh}Hii}Iij}Jik}Kil}Lim}Mip%q%n}o}@or%Nis%Oip}Pie4'mf4(mg4)mq}r}*mh4+mi4,ms}-mj4.mk4/ml4%fm4'ft}u}(fv}Qit%Riw}Siu%Tix}Voy}Wov%Xow%Yoz}ZoA}0ox%1oy%2oB}3oC}4oz%5oA%6oD}E}F}G}H}I}J}K}L}M}N}O}P}Q},s-w-s.w.s/w/s:s;s:w;wR}S}=w=s?w?s@w@s[s]s^s[w]wT}U}_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wV}W}gthtitjtktltmtntotptX}Y}Z}0}1}2}3}4}5}6}7}8}9}!}#}$}kd%}ldmd'}nd(}odpd)}axbxcx*}+},}-}.},Qdx-Qex.Qfx/}Ui:}Vi;}=}?}@}[}]}^}_}`}{}|}B%qdC%rd}}sd~}tdD%udE%vda~wdb~xdc~d~e~f~g~h~i~j~gxhxk~Wil~Xim~Yin~o~:mp~n4)fo4*fq~;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr~r4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oyds~t~u~Wcv~ixw~jxx~kxlxmxy~nxoxz~A~B~G%H%I%J%K%C~Zi+f,f-fs4
52 except TypeError: # pragma: no cover 2a e ~lamFdXpYp3k4k5k6k=c?c@c[c]c^c_c^jhjij%iQfRf'P)v(P)P'i*P+P`c{c|c}c~cadbd5h6h-c-P;P=P?P@P`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPm`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A/o:oZp0p1p2p3p4p5pBwCwcdGd6p;o7p=o.c?o8pddOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z)A*A+A,Aqj-A.ATQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioekqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydWc
53 if isinstance(cls, WithArgsTypes): 2a e ~lamFdXpYp3k4k5k6k=c?c@c[c]c^c_c^jhjij%iQfRf'P)v(P)P'i*P+P`c{c|c}c~cadbd5h6h-c-P;P=P?P@P`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPm`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A/o:oZp0p1p2p3p4p5pBwCwcdGd6p;o7p=o.c?o8pddOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z)A*A+A,Aqj-A.ATQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioekqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydWc
54 return False 2a e ~lamFdXpYp3k4k5k6k=c?c@c[c]c^c_c^jhjij%iQfRf'P)v(P)P'i*P+P`c{c|c}c~cadbd5h6h-c-P;P=P?P@P`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPm`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAtQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A/o:oZp0p1p2p3p4p5pBwCwcdGd6p;o7p=o.c?o8pddOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%z)A*A+A,Aqj-A.ATQUQVQWQXQYQZQ0Q1Q2Q3Q4Q5Q6Q7Q8Q/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioekqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydWc
55 raise # pragma: no cover
58def _annotation_is_sequence(annotation: type[Any] | None) -> bool: 1bcda
59 if lenient_issubclass(annotation, (str, bytes)): 2b t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m_Q`Q{Q|Q}Q~QaRbRR4S4=k?kqtrt{Af [o]o.fstttutvtwtxt{x7jytcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBRztAtBt|A}AT4CRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^kEt]N^N_N9o~AaB!o#o$obBHdIdJdKdLdMdNd/fLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[R?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jX4Y4tq]RiB`NOdPdQdRdSdTdUdtjujjBkBZ4lBmBnBoB^RpBqB04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSeSfSvjzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?ilSmSZ5nSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCC%ol6m6KtLt(p)pgThTMtNtOtPtQtRtStiTSqTqTtUt$c%cVtWtpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTn6o6nToT9q!qZOUyVypTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVT;f=f?f@fp6[fq6]fr6JCx KCy LCs6snt6u6tnv6unw6x6MCz NCA OCPCQCRCSCB TCC y6^fz6A6B6C6D6E6F6_fG6H6I6`fJ6{fK6|fL6}fUCD VCE WCXCYCZC0C1C2CF 3CG M6vnN6wnO6P6Q6R6S6T6U6xnV6W6~fX6agY6bgZ6061626cg36dg46566676eg86fg96gg!6#6$6%6hg'6(6)6*6ig+6,6jg-6kg.6/6lgmgVdWdngogWTDeXTEeYTFeZTGe0T1T2T3T4CXt5CYt6C7C8C9CZt!C0t#C$C1t%C2t'C3t(C4t)C*C+C,C-C5t.C6t/C:C;Cyn=Czn?C@C4Tjl5Tkl7t8t*p+p9t,ppgqg!t#tAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$t$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUwULexUMeyUulvl:6;[email protected](t)tXdYdBUCUDUEUFUGU?6@6[6]6^6_6WD*tXD+tYD,tZD-t0D1D2D3D4D.t5D/t6D7D8D9D!D#D:t;t$D=t%D?t'D(D)D*D+D,[email protected][t/D]t:D;D=DBn?D@D[D^t]D_t^D_D`DCn{D|D}DDn0O`t1O{t2O3Oqk4Ork5OtgugOc6OPcvgwgxgygzgAgBgCgDgEg`6{6|6}6HUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaV~6!ja7#jb7c7d7e7f7g7h7$ji7%jj7'jk7l7m7n7o7(jp7Hgq7r7IgfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQc9O:c!ORcs7Ijt73iu7v7w7)jx7Jjy7z7/EJk:EYg;E=E^AA7XcB7C7Yc]z^z#O$O_z/p`zRp%O'OWyXy4i|t}tEl[iFl5iEn]iFnGnHn(O~t)O(qYyauZy)qBxCxDxExFxKjGx^i0y1ybuHxcuIxSp2y3yTp?Edu@Eeu[E]Efu^Egu_E`E{E|E}E~EhuaFbFiucFjudFeFfFgFhFiFjFkFlFkumF*qnFoFpFluqF+qrFsFtFuF,qJxKxLxMxNxmuOxPxnuQx-qRxSxpVqV6eZd0dZg0g1g2g3gD7E7'oF74gG75grVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e6gH77g8gI79gInJ7JnK7KnLnMnL7NnM7OnPnQnN7RnO7Snou.qpu/qqu:q;q=q?qru@qsu[qtu]q^q_q`q{q|q}q~qarbruucrvudrwuerfrgrxuhryuirjrkrlrmrnrorprqrrr1d2d3d4dzuAu*OBu+O,OCu!g#gP75dQ76d7d8dR79dS7!d#d$dDu$g%gMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%dZcEuFuGuHuIuJuKuU7V7W7X7Y7'g$e%e'eFVc d Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7VnGVHVIVJVKVLVMVNV:7;7OlPlLuMuHFg rpsp(gNuOuPuQuRuSu4y*jTuOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VUuVuWuIFJF=7'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTlZu-O.O/O(oKFLF)o*o+oMF'd(d)d*d+d,d-d)g:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWWnKkXnWlXlYlLk+j_i'c`i?75y@7[7,j]7^7trEWTF:O.d/d:d;d=d?d@dLjMjUFVF_7WFXFYFZFFW0F1F`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPWQWRWNjCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbjXWYW_8ZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%G,oR9S95u6u:p;pSXTX7u8u9u!u#u$u%uUXSrTr'u(u(c)c)u*u/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXT9U9ZX0X9r!rQPrzsz1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e+g,g-g.gV9/gW9:gX9-Ghb.Gib/GY9Z9=n09?n19@n29[n39:Gjb;Gkb=G?G@G[G]Glb^Gmb49;g5969798999!9#9=g?g$9@g%9'9(9)9[g*9]g_Gnb`Gob{G|G}G~GaHbHcHdH+9]n,9^n-9.9/9:9;9=9?9@9[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}gd!~ge!f!g!h!ahi!bhj!chk!l!m!n!o!dhp!ehq!r!fhgh[d]dhhih|X]e}X^e~X_eaYbYcYdYeYeH+ufH,ugHhHiHjHkH-ulH.umH/unH:uoHpHqHrHsHtHuH;uvHwH=uxHyH_nzH`nAHBHfY8lgY9l?u@u=p?p[u@pjhkh]u^uDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmY_unY#roY`upY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,ls!t!{nu!cj|ndjlhmh#Y7i$Y8i[p]p}u~u^d_d%Y'Y(Y)Y*Y+Yv!w!x!y!z!A!{Hav|Hbv}Hcv~HdvaIbIcIdIeIevfIfvgIhIiIjIkIgvlIhvmIivnIjvoIpIqIrIsItIuIkvvIlvwImvxInvyIzI}nAI~nBICIovDIpvEIFIGIaoHIboIIJIRPqvSPrvTPUPNkVPOkWPnhohScXPTcphqhrhshthuhvhwhxhB!C!D!E!,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZF!-jG!.jH!/jI!:jJ!K!L!M!;jN!=jO!?jP!Q!R!@jS!T!U!V!AhW!X!BhQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJYP;cZPUc0P1PY!0jZ!9i0!1j1!!i2![j3!2j4!5!wJ2kxJMhyJzJ_A6!0c7!8!1cgAhA2P^p3PUpiA_pjAVp4P5Ptzuzsvtv;lej=l#icofjdo$ieofo6Puv7P(rvzwz5x6x7x8x9x3j!xgjxzyz#xvv$xWpzzAzAJwvBJxvCJDJyvEJFJGJHJIJJJKJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJWJDvXJ)rYJEvZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,xFv-x+r.x/x1Zvf2Zwf`d{d|d}dNhOhPhQhRhSh9!!!-o#!Th$!Uh3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#ZyfVh%!WhXh'!Yh(!go)!hoio*!jo+!ko,!lo-!mo,rGv-rHv.r/r:r;r=rIv?rJv@rKv[r]r^rLv_r`r{r|r}r~rasMvbsNvcsdsesfsgshsisjskslsmsnsospsOvPv~daebeceQvRv8PSv9P!PTvZh0h.!de/!eefege:!he;!iejekeUvVv1h2h`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!oole2cWvXvYvZv0v1v2v?!@![!]!^!3hBfCfDf*Za _!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l3v4v+Je ~lamFd5v6v7v8v9v!vBz]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0$v%v'v,J-Ju#p0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem(v#P$P%P3k.J/J4k5k6k:J=c?c@c[c]c^c_c4hy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0^jhjqohmimjmij%iQf*cRf'P)v(P)P'i*P+Prs)0^J,P`c{c|c}c~cadbd5h6h_J`Jv#{J|J}J~J*0aKbKw#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0[0]04j-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjoj}0~0q$a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL.or$s$vwww/o:o^1_1Zp0p1p2p3p4p5p`1QsRsxwyw+c,czwAwDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1t$u$a2b27s8sRQBwCwc2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2-h.hv$/hw$x$uL=bvLwLy$z$A$GoB$HoC$D$xL?byL@bzLALBLCLDLELE$:hF$G$H$I$J$K$L$M$N$O$P$Q$;hR$=hFL[bGL]bHLILJLKLLLMLNLOLS$IoT$JoU$V$W$X$Y$Z$0$1$2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$'$]h($)$*$+$,$^h-$.$/$:$;$=$_h?$@$[$`hcdGdJ2TfK2L2UfM2N2O2P2Q2PLDwQLEwRLSLTLULVLWLXLFwYLGwZL0L1L2L3L4L5LHw6L7L8L9LKo!L#L$LR2RmS2Sm6p;o7p=o{hIwT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2JwZ29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3j3Xfk3l3Zm]$^$Lo_$pj|h}hm3)in3?o8pddo3p3q3r3s3t3`${$|$}$~$a%OzLwPzMwQzRzSzTzUzVzWzNwXzOwYzZz0z1z2z3z4zPw5zQw6z7z8z9z!z#z$z%zHMRwIMJMKMMoLMMMNMSwOMPMQMRMNoSMTMUM)ATw*A+A,Aqj-A.A~hSQVcaibicidieifib%c%d%e%u3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;3TQgkUQhkVQWQXQYQZQ0Q1Qik2Qjk3Q4Q5Qkk6Q7Q8Qf%hig%h%ii1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioei%lkj%5jmkk%l%6jHN:kINCiJNKNDi;k`Am%3cn%4co%5c?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(zUwVw$mrj%m*iOoPoQosjRo+iWw#s*QXw+Q$s)zYw*z%skqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoLN3wMN4wNNONPN5wQN6wRN7wSN8wTNUNVNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4#fd4$fedfdgdhdidjdHiIiJiKiLiMip%q%@or%Nis%OiPie4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(fQit%RiSiu%TiVoWov%Xow%YoZo0ox%1oy%2o3o4oz%5oA%6o,s-w-s.w.s/w/s:s;s:w;w=w=s?w?s@w@s[s]s^s[w]w_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wgthtitjtktltmtntotptkdldmdndodpdaxbxcx,Qdx-Qex.QfxUiViB%qdC%rdsdtdD%udE%vdwdxdgxhxWiXiYi:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oydWcixjxkxlxmxnxoxG%H%I%J%K%Zi+f,f-fs4
60 return False 2b _Q`Q{Q|Q}Q~QaRbR=k?k{Af cRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBR|A}ACRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^k9o~AaB!o#o$obBLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[Rtq]RiBjBkBlBmBnBoB^RpBqBrB_R`R{R|R}R~RaSbScSdSeSfSgShSiSjSkS.i/i:ipk;i=i?ilSmSnSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSGt~kalHtblItcldlelflJtgl~N.z/zaO:zbO;z=z?z@zcO[zuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+SbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCCgThTiTSqTq$c%cpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTnToTpTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVTJCx KCy LCMCz NCA OCPCQCRCSCB TCC UCD VCE WCXCYCZC0C1C2CF 3CG WTDeXTEeYTFeZTGe0T1T2T3T4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;Cyn=Czn?C@C4Tjl5TklAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoUpU%qqUrU'qsUtUuUvUwULexUMeyUulvlzU1iAU2iBUCUDUEUFUGUWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=DBn?D@D[D]D^D_D`DCn{D|D}DDnqkrkHUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaVfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg/cQc:cRcIj3i/EJk:EYg;E=EXcYc]z^z#O$O_z`zRp%O'O4i|t}tElFl5i(O)O(q)q^iSpTp?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmF*qnFoFpFqF+qrFsFtFuF,qJxKxLxMxNxOxPxQx-qRxSxpVqV6erVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFZc$e%e'eFVc d GVHVIVJVKVLVMVNVOlPlHFg OVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VIFJF'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTl(oKFLF)o*o+oMF:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWtrEWTFUFVFWFXFYFZFFW0F1F2FGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWW{i|i}iMk~iajbjXWYWZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[W1uZl0l2u1l3u2l3l4l5l4u6l@O}z~z[OaA]ObAcAdAeA^OfAurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%GSXTXUXSrTr(c)c/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXZX0X1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e-Ghb.Gib/G:Gjb;Gkb=G?G@G[G]Glb^Gmb_Gnb`Gob{G|G}G~GaHbHcHdH|X]e}X^e~X_eaYbYcYdYeYeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyH_nzH`nAHBHfY8lgY9lDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmYnY#roYpY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSYTY%rUYVYWYXYYYZY0Y1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,l#Y7i$Y8i%Y'Y(Y)Y*Y+Y{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI}nAI~nBICIDIEIFIGIaoHIboIIJINkOk,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJ;cUc0j9i1j!iwJ2kxJMhyJzJ0c1cgAhA2P3PUpiAjAVp4P5Psvtv;l=l#i$i6P7P(rgjWpAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJ)rYJZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,x-x+r.x/x1Zvf2Zwf3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#Zyf,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsosps`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*J2cBfCfDf*Za +Z,Z-Z.Z/Z:Z;Z=Z|l}l+Je ?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0,J-Jp0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem3k.J/J4k5k6k:Jy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0rs)0^J_J`J{J|J}J~J*0aKbKcK+0,0-0.0/0:0;0=0?0@0[0]0^0_0`0{0|0jjkjlj7kmjnjoj}0~0a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1^vkmlm_vmm`vnmompmqm{vrm[PmAnA]PoA^PpAqArAsA_PtAsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL^1_1`1QsRs+c,cDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1a2b2c2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2uL=bvLwLxL?byL@bzLALBLCLDLELFL[bGL]bHLILJLKLLLMLNLOLJ2TfK2L2UfM2N2O2P2Q2PLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9LKo!L#L$LR2RmS2SmT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2Z29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3c3!sd3e3f3g3h3i3j3Xfk3l3Zmm3)in3o3p3q3r3s3t3OzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%zHMIMJMKMMoLMMMNMOMPMQMRMNoSMTMUMqju3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;31Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN9ch !ci zimeAineBioeHN:kINCiJNKNDi;k3c4c5c?A@A9p%Q'Q!p[A]A#p(Q)QUwVw$m%m*i+i#s*Q+Q$s%s8f9f!fSoToUoLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N's9N!N#N$N(s%N'N)s(N)N:x;x=x?x@x[x]x^x*s_x`x+sc4#fd4$fe4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(f,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotpt:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[NWc+f,f-fs4
61 return lenient_issubclass(annotation, sequence_types) 2b t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m_Q`Q{Q|Q}Q~QaRbRR4S4=k?kqtrt{Af [o]o.fstttutvtwtxt{x7jytcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBRztAtBt|A}AT4CRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^kEt]N^N_N9o~AaB!o#o$obBHdIdJdKdLdMdNd/fLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[R?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jX4Y4tq]RiB`NOdPdQdRdSdTdUdtjujjBkBZ4lBmBnBoB^RpBqB04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSeSfSvjzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?ilSmSZ5nSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCC%ol6m6KtLt(p)pgThTMtNtOtPtQtRtStiTSqTqTtUt$c%cVtWtpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTn6o6nToT9q!qZOUyVypTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVT;f=f?f@fp6[fq6]fr6JCx KCy LCs6snt6u6tnv6unw6x6MCz NCA OCPCQCRCSCB TCC y6^fz6A6B6C6D6E6F6_fG6H6I6`fJ6{fK6|fL6}fUCD VCE WCXCYCZC0C1C2CF 3CG M6vnN6wnO6P6Q6R6S6T6U6xnV6W6~fX6agY6bgZ6061626cg36dg46566676eg86fg96gg!6#6$6%6hg'6(6)6*6ig+6,6jg-6kg.6/6lgmgVdWdngogWTDeXTEeYTFeZTGe0T1T2T3T4CXt5CYt6C7C8C9CZt!C0t#C$C1t%C2t'C3t(C4t)C*C+C,C-C5t.C6t/C:C;Cyn=Czn?C@C4Tjl5Tkl7t8t*p+p9t,ppgqg!t#tAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$t$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUwULexUMeyUulvl:6;[email protected](t)tXdYdBUCUDUEUFUGU?6@6[6]6^6_6WD*tXD+tYD,tZD-t0D1D2D3D4D.t5D/t6D7D8D9D!D#D:t;t$D=t%D?t'D(D)D*D+D,[email protected][t/D]t:D;D=DBn?D@D[D^t]D_t^D_D`DCn{D|D}DDn0O`t1O{t2O3Oqk4Ork5OtgugOc6OPcvgwgxgygzgAgBgCgDgEg`6{6|6}6HUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaV~6!ja7#jb7c7d7e7f7g7h7$ji7%jj7'jk7l7m7n7o7(jp7Hgq7r7IgfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQc9O:c!ORcs7Ijt73iu7v7w7)jx7Jjy7z7/EJk:EYg;E=E^AA7XcB7C7Yc]z^z#O$O_z/p`zRp%O'OWyXy4i|t}tEl[iFl5iEn]iFnGnHn(O~t)O(qYyauZy)qBxCxDxExFxKjGx^i0y1ybuHxcuIxSp2y3yTp?Edu@Eeu[E]Efu^Egu_E`E{E|E}E~EhuaFbFiucFjudFeFfFgFhFiFjFkFlFkumF*qnFoFpFluqF+qrFsFtFuF,qJxKxLxMxNxmuOxPxnuQx-qRxSxpVqV6eZd0dZg0g1g2g3gD7E7'oF74gG75grVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e6gH77g8gI79gInJ7JnK7KnLnMnL7NnM7OnPnQnN7RnO7Snou.qpu/qqu:q;q=q?qru@qsu[qtu]q^q_q`q{q|q}q~qarbruucrvudrwuerfrgrxuhryuirjrkrlrmrnrorprqrrr1d2d3d4dzuAu*OBu+O,OCu!g#gP75dQ76d7d8dR79dS7!d#d$dDu$g%gMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%dZcEuFuGuHuIuJuKuU7V7W7X7Y7'g$e%e'eFVc d Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7VnGVHVIVJVKVLVMVNV:7;7OlPlLuMuHFg rpsp(gNuOuPuQuRuSu4y*jTuOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VUuVuWuIFJF=7'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTlZu-O.O/O(oKFLF)o*o+oMF'd(d)d*d+d,d-d)g:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWWnKkXnWlXlYlLk+j_i'c`i?75y@7[7,j]7^7trEWTF:O.d/d:d;d=d?d@dLjMjUFVF_7WFXFYFZFFW0F1F`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPWQWRWNjCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbjXWYW_8ZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%G,oR9S95u6u:p;pSXTX7u8u9u!u#u$u%uUXSrTr'u(u(c)c)u*u/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXT9U9ZX0X9r!rQPrzsz1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e+g,g-g.gV9/gW9:gX9-Ghb.Gib/GY9Z9=n09?n19@n29[n39:Gjb;Gkb=G?G@G[G]Glb^Gmb49;g5969798999!9#9=g?g$9@g%9'9(9)9[g*9]g_Gnb`Gob{G|G}G~GaHbHcHdH+9]n,9^n-9.9/9:9;9=9?9@9[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}gd!~ge!f!g!h!ahi!bhj!chk!l!m!n!o!dhp!ehq!r!fhgh[d]dhhih|X]e}X^e~X_eaYbYcYdYeYeH+ufH,ugHhHiHjHkH-ulH.umH/unH:uoHpHqHrHsHtHuH;uvHwH=uxHyH_nzH`nAHBHfY8lgY9l?u@u=p?p[u@pjhkh]u^uDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmY_unY#roY`upY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,ls!t!{nu!cj|ndjlhmh#Y7i$Y8i[p]p}u~u^d_d%Y'Y(Y)Y*Y+Yv!w!x!y!z!A!{Hav|Hbv}Hcv~HdvaIbIcIdIeIevfIfvgIhIiIjIkIgvlIhvmIivnIjvoIpIqIrIsItIuIkvvIlvwImvxInvyIzI}nAI~nBICIovDIpvEIFIGIaoHIboIIJIRPqvSPrvTPUPNkVPOkWPnhohScXPTcphqhrhshthuhvhwhxhB!C!D!E!,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZF!-jG!.jH!/jI!:jJ!K!L!M!;jN!=jO!?jP!Q!R!@jS!T!U!V!AhW!X!BhQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJYP;cZPUc0P1PY!0jZ!9i0!1j1!!i2![j3!2j4!5!wJ2kxJMhyJzJ_A6!0c7!8!1cgAhA2P^p3PUpiA_pjAVp4P5Ptzuzsvtv;lej=l#icofjdo$ieofo6Puv7P(rvzwz5x6x7x8x9x3j!xgjxzyz#xvv$xWpzzAzAJwvBJxvCJDJyvEJFJGJHJIJJJKJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJWJDvXJ)rYJEvZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,xFv-x+r.x/x1Zvf2Zwf`d{d|d}dNhOhPhQhRhSh9!!!-o#!Th$!Uh3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#ZyfVh%!WhXh'!Yh(!go)!hoio*!jo+!ko,!lo-!mo,rGv-rHv.r/r:r;r=rIv?rJv@rKv[r]r^rLv_r`r{r|r}r~rasMvbsNvcsdsesfsgshsisjskslsmsnsospsOvPv~daebeceQvRv8PSv9P!PTvZh0h.!de/!eefege:!he;!iejekeUvVv1h2h`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!oole2cWvXvYvZv0v1v2v?!@![!]!^!3hBfCfDf*Za _!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l3v4v+Je ~lamFd5v6v7v8v9v!vBz]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0$v%v'v,J-Ju#p0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem(v#P$P%P3k.J/J4k5k6k:J=c?c@c[c]c^c_c4hy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0^jhjqohmimjmij%iQf*cRf'P)v(P)P'i*P+Prs)0^J,P`c{c|c}c~cadbd5h6h_J`Jv#{J|J}J~J*0aKbKw#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0[0]04j-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjoj}0~0q$a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL.or$s$vwww/o:o^1_1Zp0p1p2p3p4p5p`1QsRsxwyw+c,czwAwDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1t$u$a2b27s8sRQBwCwc2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2-h.hv$/hw$x$uL=bvLwLy$z$A$GoB$HoC$D$xL?byL@bzLALBLCLDLELE$:hF$G$H$I$J$K$L$M$N$O$P$Q$;hR$=hFL[bGL]bHLILJLKLLLMLNLOLS$IoT$JoU$V$W$X$Y$Z$0$1$2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$'$]h($)$*$+$,$^h-$.$/$:$;$=$_h?$@$[$`hcdGdJ2TfK2L2UfM2N2O2P2Q2PLDwQLEwRLSLTLULVLWLXLFwYLGwZL0L1L2L3L4L5LHw6L7L8L9LKo!L#L$LR2RmS2Sm6p;o7p=o{hIwT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2JwZ29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3j3Xfk3l3Zm]$^$Lo_$pj|h}hm3)in3?o8pddo3p3q3r3s3t3`${$|$}$~$a%OzLwPzMwQzRzSzTzUzVzWzNwXzOwYzZz0z1z2z3z4zPw5zQw6z7z8z9z!z#z$z%zHMRwIMJMKMMoLMMMNMSwOMPMQMRMNoSMTMUM)ATw*A+A,Aqj-A.A~hSQVcaibicidieifib%c%d%e%u3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;3TQgkUQhkVQWQXQYQZQ0Q1Qik2Qjk3Q4Q5Qkk6Q7Q8Qf%hig%h%ii1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioei%lkj%5jmkk%l%6jHN:kINCiJNKNDi;k`Am%3cn%4co%5c?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(zUwVw$mrj%m*iOoPoQosjRo+iWw#s*QXw+Q$s)zYw*z%skqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoLN3wMN4wNNONPN5wQN6wRN7wSN8wTNUNVNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4#fd4$fedfdgdhdidjdHiIiJiKiLiMip%q%@or%Nis%OiPie4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(fQit%RiSiu%TiVoWov%Xow%YoZo0ox%1oy%2o3o4oz%5oA%6o,s-w-s.w.s/w/s:s;s:w;w=w=s?w?s@w@s[s]s^s[w]w_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wgthtitjtktltmtntotptkdldmdndodpdaxbxcx,Qdx-Qex.QfxUiViB%qdC%rdsdtdD%udE%vdwdxdgxhxWiXiYi:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oydWcixjxkxlxmxnxoxG%H%I%J%K%Zi+f,f-fs4
64def field_annotation_is_sequence(annotation: type[Any] | None) -> bool: 1bcda
65 origin = get_origin(annotation) 2b t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m_Q`Q{Q|Q}Q~QaRbRR4S4=k?kqtrt{Af [o]o.fstttutvtwtxt{x7jytcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBRztAtBt|A}AT4CRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^kEt]N^N_N9o~AaB!o#o$obBHdIdJdKdLdMdNd/fLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[R?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jX4Y4tq]RiB`NOdPdQdRdSdTdUdtjujjBkBZ4lBmBnBoB^RpBqB04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSeSfSvjzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?ilSmSZ5nSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCC%ol6m6KtLt(p)pgThTMtNtOtPtQtRtStiTSqTqTtUt$c%cVtWtpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTn6o6nToT9q!qZOUyVypTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVT;f=f?f@fp6[fq6]fr6JCx KCy LCs6snt6u6tnv6unw6x6MCz NCA OCPCQCRCSCB TCC y6^fz6A6B6C6D6E6F6_fG6H6I6`fJ6{fK6|fL6}fUCD VCE WCXCYCZC0C1C2CF 3CG M6vnN6wnO6P6Q6R6S6T6U6xnV6W6~fX6agY6bgZ6061626cg36dg46566676eg86fg96gg!6#6$6%6hg'6(6)6*6ig+6,6jg-6kg.6/6lgmgVdWdngogWTDeXTEeYTFeZTGe0T1T2T3T4CXt5CYt6C7C8C9CZt!C0t#C$C1t%C2t'C3t(C4t)C*C+C,C-C5t.C6t/C:C;Cyn=Czn?C@C4Tjl5Tkl7t8t*p+p9t,ppgqg!t#tAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$t$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUwULexUMeyUulvl:6;[email protected](t)tXdYdBUCUDUEUFUGU?6@6[6]6^6_6WD*tXD+tYD,tZD-t0D1D2D3D4D.t5D/t6D7D8D9D!D#D:t;t$D=t%D?t'D(D)D*D+D,[email protected][t/D]t:D;D=DBn?D@D[D^t]D_t^D_D`DCn{D|D}DDn0O`t1O{t2O3Oqk4Ork5OtgugOc6OPcvgwgxgygzgAgBgCgDgEg`6{6|6}6HUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaV~6!ja7#jb7c7d7e7f7g7h7$ji7%jj7'jk7l7m7n7o7(jp7Hgq7r7IgfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQc9O:c!ORcs7Ijt73iu7v7w7)jx7Jjy7z7/EJk:EYg;E=E^AA7XcB7C7Yc]z^z#O$O_z/p`zRp%O'OWyXy4i|t}tEl[iFl5iEn]iFnGnHn(O~t)O(qYyauZy)qBxCxDxExFxKjGx^i0y1ybuHxcuIxSp2y3yTp?Edu@Eeu[E]Efu^Egu_E`E{E|E}E~EhuaFbFiucFjudFeFfFgFhFiFjFkFlFkumF*qnFoFpFluqF+qrFsFtFuF,qJxKxLxMxNxmuOxPxnuQx-qRxSxpVqV6eZd0dZg0g1g2g3gD7E7'oF74gG75grVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e6gH77g8gI79gInJ7JnK7KnLnMnL7NnM7OnPnQnN7RnO7Snou.qpu/qqu:q;q=q?qru@qsu[qtu]q^q_q`q{q|q}q~qarbruucrvudrwuerfrgrxuhryuirjrkrlrmrnrorprqrrr1d2d3d4dzuAu*OBu+O,OCu!g#gP75dQ76d7d8dR79dS7!d#d$dDu$g%gMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%dZcEuFuGuHuIuJuKuU7V7W7X7Y7'g$e%e'eFVc d Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7VnGVHVIVJVKVLVMVNV:7;7OlPlLuMuHFg rpsp(gNuOuPuQuRuSu4y*jTuOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VUuVuWuIFJF=7'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTlZu-O.O/O(oKFLF)o*o+oMF'd(d)d*d+d,d-d)g:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWWnKkXnWlXlYlLk+j_i'c`i?75y@7[7,j]7^7trEWTF:O.d/d:d;d=d?d@dLjMjUFVF_7WFXFYFZFFW0F1F`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPWQWRWNjCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbjXWYW_8ZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%G,oR9S95u6u:p;pSXTX7u8u9u!u#u$u%uUXSrTr'u(u(c)c)u*u/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXT9U9ZX0X9r!rQPrzsz1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e+g,g-g.gV9/gW9:gX9-Ghb.Gib/GY9Z9=n09?n19@n29[n39:Gjb;Gkb=G?G@G[G]Glb^Gmb49;g5969798999!9#9=g?g$9@g%9'9(9)9[g*9]g_Gnb`Gob{G|G}G~GaHbHcHdH+9]n,9^n-9.9/9:9;9=9?9@9[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}gd!~ge!f!g!h!ahi!bhj!chk!l!m!n!o!dhp!ehq!r!fhgh[d]dhhih|X]e}X^e~X_eaYbYcYdYeYeH+ufH,ugHhHiHjHkH-ulH.umH/unH:uoHpHqHrHsHtHuH;uvHwH=uxHyH_nzH`nAHBHfY8lgY9l?u@u=p?p[u@pjhkh]u^uDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmY_unY#roY`upY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,ls!t!{nu!cj|ndjlhmh#Y7i$Y8i[p]p}u~u^d_d%Y'Y(Y)Y*Y+Yv!w!x!y!z!A!{Hav|Hbv}Hcv~HdvaIbIcIdIeIevfIfvgIhIiIjIkIgvlIhvmIivnIjvoIpIqIrIsItIuIkvvIlvwImvxInvyIzI}nAI~nBICIovDIpvEIFIGIaoHIboIIJIRPqvSPrvTPUPNkVPOkWPnhohScXPTcphqhrhshthuhvhwhxhB!C!D!E!,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZF!-jG!.jH!/jI!:jJ!K!L!M!;jN!=jO!?jP!Q!R!@jS!T!U!V!AhW!X!BhQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJYP;cZPUc0P1PY!0jZ!9i0!1j1!!i2![j3!2j4!5!wJ2kxJMhyJzJ_A6!0c7!8!1cgAhA2P^p3PUpiA_pjAVp4P5Ptzuzsvtv;lej=l#icofjdo$ieofo6Puv7P(rvzwz5x6x7x8x9x3j!xgjxzyz#xvv$xWpzzAzAJwvBJxvCJDJyvEJFJGJHJIJJJKJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJWJDvXJ)rYJEvZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,xFv-x+r.x/x1Zvf2Zwf`d{d|d}dNhOhPhQhRhSh9!!!-o#!Th$!Uh3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#ZyfVh%!WhXh'!Yh(!go)!hoio*!jo+!ko,!lo-!mo,rGv-rHv.r/r:r;r=rIv?rJv@rKv[r]r^rLv_r`r{r|r}r~rasMvbsNvcsdsesfsgshsisjskslsmsnsospsOvPv~daebeceQvRv8PSv9P!PTvZh0h.!de/!eefege:!he;!iejekeUvVv1h2h`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!oole2cWvXvYvZv0v1v2v?!@![!]!^!3hBfCfDf*Za _!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l3v4v+Je ~lamFd5v6v7v8v9v!vBz]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0$v%v'v,J-Ju#p0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem(v#P$P%P3k.J/J4k5k6k:J=c?c@c[c]c^c_c4hy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0^jhjqohmimjmij%iQf*cRf'P)v(P)P'i*P+Prs)0^J,P`c{c|c}c~cadbd5h6h_J`Jv#{J|J}J~J*0aKbKw#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0[0]04j-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjoj}0~0q$a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL.or$s$vwww/o:o^1_1Zp0p1p2p3p4p5p`1QsRsxwyw+c,czwAwDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1t$u$a2b27s8sRQBwCwc2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2-h.hv$/hw$x$uL=bvLwLy$z$A$GoB$HoC$D$xL?byL@bzLALBLCLDLELE$:hF$G$H$I$J$K$L$M$N$O$P$Q$;hR$=hFL[bGL]bHLILJLKLLLMLNLOLS$IoT$JoU$V$W$X$Y$Z$0$1$2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$'$]h($)$*$+$,$^h-$.$/$:$;$=$_h?$@$[$`hcdGdJ2TfK2L2UfM2N2O2P2Q2PLDwQLEwRLSLTLULVLWLXLFwYLGwZL0L1L2L3L4L5LHw6L7L8L9LKo!L#L$LR2RmS2Sm6p;o7p=o{hIwT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2JwZ29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3j3Xfk3l3Zm]$^$Lo_$pj|h}hm3)in3?o8pddo3p3q3r3s3t3`${$|$}$~$a%OzLwPzMwQzRzSzTzUzVzWzNwXzOwYzZz0z1z2z3z4zPw5zQw6z7z8z9z!z#z$z%zHMRwIMJMKMMoLMMMNMSwOMPMQMRMNoSMTMUM)ATw*A+A,Aqj-A.A~hSQVcaibicidieifib%c%d%e%u3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;3TQgkUQhkVQWQXQYQZQ0Q1Qik2Qjk3Q4Q5Qkk6Q7Q8Qf%hig%h%ii1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioei%lkj%5jmkk%l%6jHN:kINCiJNKNDi;k`Am%3cn%4co%5c?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(zUwVw$mrj%m*iOoPoQosjRo+iWw#s*QXw+Q$s)zYw*z%skqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoLN3wMN4wNNONPN5wQN6wRN7wSN8wTNUNVNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4#fd4$fedfdgdhdidjdHiIiJiKiLiMip%q%@or%Nis%OiPie4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(fQit%RiSiu%TiVoWov%Xow%YoZo0ox%1oy%2o3o4oz%5oA%6o,s-w-s.w.s/w/s:s;s:w;w=w=s?w?s@w@s[s]s^s[w]w_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wgthtitjtktltmtntotptkdldmdndodpdaxbxcx,Qdx-Qex.QfxUiViB%qdC%rdsdtdD%udE%vdwdxdgxhxWiXiYi:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oydWcixjxkxlxmxnxoxG%H%I%J%K%Zi+f,f-fs4
66 if origin is Union or origin is UnionType: 2b t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m_Q`Q{Q|Q}Q~QaRbRR4S4=k?kqtrt{Af [o]o.fstttutvtwtxt{x7jytcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBRztAtBt|A}AT4CRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^kEt]N^N_N9o~AaB!o#o$obBHdIdJdKdLdMdNd/fLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[R?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jX4Y4tq]RiB`NOdPdQdRdSdTdUdtjujjBkBZ4lBmBnBoB^RpBqB04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSeSfSvjzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?ilSmSZ5nSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCC%ol6m6KtLt(p)pgThTMtNtOtPtQtRtStiTSqTqTtUt$c%cVtWtpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTn6o6nToT9q!qZOUyVypTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVT;f=f?f@fp6[fq6]fr6JCx KCy LCs6snt6u6tnv6unw6x6MCz NCA OCPCQCRCSCB TCC y6^fz6A6B6C6D6E6F6_fG6H6I6`fJ6{fK6|fL6}fUCD VCE WCXCYCZC0C1C2CF 3CG M6vnN6wnO6P6Q6R6S6T6U6xnV6W6~fX6agY6bgZ6061626cg36dg46566676eg86fg96gg!6#6$6%6hg'6(6)6*6ig+6,6jg-6kg.6/6lgmgVdWdngogWTDeXTEeYTFeZTGe0T1T2T3T4CXt5CYt6C7C8C9CZt!C0t#C$C1t%C2t'C3t(C4t)C*C+C,C-C5t.C6t/C:C;Cyn=Czn?C@C4Tjl5Tkl7t8t*p+p9t,ppgqg!t#tAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$t$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUwULexUMeyUulvl:6;[email protected](t)tXdYdBUCUDUEUFUGU?6@6[6]6^6_6WD*tXD+tYD,tZD-t0D1D2D3D4D.t5D/t6D7D8D9D!D#D:t;t$D=t%D?t'D(D)D*D+D,[email protected][t/D]t:D;D=DBn?D@D[D^t]D_t^D_D`DCn{D|D}DDn0O`t1O{t2O3Oqk4Ork5OtgugOc6OPcvgwgxgygzgAgBgCgDgEg`6{6|6}6HUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaV~6!ja7#jb7c7d7e7f7g7h7$ji7%jj7'jk7l7m7n7o7(jp7Hgq7r7IgfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQc9O:c!ORcs7Ijt73iu7v7w7)jx7Jjy7z7/EJk:EYg;E=E^AA7XcB7C7Yc]z^z#O$O_z/p`zRp%O'OWyXy4i|t}tEl[iFl5iEn]iFnGnHn(O~t)O(qYyauZy)qBxCxDxExFxKjGx^i0y1ybuHxcuIxSp2y3yTp?Edu@Eeu[E]Efu^Egu_E`E{E|E}E~EhuaFbFiucFjudFeFfFgFhFiFjFkFlFkumF*qnFoFpFluqF+qrFsFtFuF,qJxKxLxMxNxmuOxPxnuQx-qRxSxpVqV6eZd0dZg0g1g2g3gD7E7'oF74gG75grVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e6gH77g8gI79gInJ7JnK7KnLnMnL7NnM7OnPnQnN7RnO7Snou.qpu/qqu:q;q=q?qru@qsu[qtu]q^q_q`q{q|q}q~qarbruucrvudrwuerfrgrxuhryuirjrkrlrmrnrorprqrrr1d2d3d4dzuAu*OBu+O,OCu!g#gP75dQ76d7d8dR79dS7!d#d$dDu$g%gMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%dZcEuFuGuHuIuJuKuU7V7W7X7Y7'g$e%e'eFVc d Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7VnGVHVIVJVKVLVMVNV:7;7OlPlLuMuHFg rpsp(gNuOuPuQuRuSu4y*jTuOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VUuVuWuIFJF=7'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTlZu-O.O/O(oKFLF)o*o+oMF'd(d)d*d+d,d-d)g:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWWnKkXnWlXlYlLk+j_i'c`i?75y@7[7,j]7^7trEWTF:O.d/d:d;d=d?d@dLjMjUFVF_7WFXFYFZFFW0F1F`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPWQWRWNjCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbjXWYW_8ZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%G,oR9S95u6u:p;pSXTX7u8u9u!u#u$u%uUXSrTr'u(u(c)c)u*u/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXT9U9ZX0X9r!rQPrzsz1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e+g,g-g.gV9/gW9:gX9-Ghb.Gib/GY9Z9=n09?n19@n29[n39:Gjb;Gkb=G?G@G[G]Glb^Gmb49;g5969798999!9#9=g?g$9@g%9'9(9)9[g*9]g_Gnb`Gob{G|G}G~GaHbHcHdH+9]n,9^n-9.9/9:9;9=9?9@9[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}gd!~ge!f!g!h!ahi!bhj!chk!l!m!n!o!dhp!ehq!r!fhgh[d]dhhih|X]e}X^e~X_eaYbYcYdYeYeH+ufH,ugHhHiHjHkH-ulH.umH/unH:uoHpHqHrHsHtHuH;uvHwH=uxHyH_nzH`nAHBHfY8lgY9l?u@u=p?p[u@pjhkh]u^uDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmY_unY#roY`upY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,ls!t!{nu!cj|ndjlhmh#Y7i$Y8i[p]p}u~u^d_d%Y'Y(Y)Y*Y+Yv!w!x!y!z!A!{Hav|Hbv}Hcv~HdvaIbIcIdIeIevfIfvgIhIiIjIkIgvlIhvmIivnIjvoIpIqIrIsItIuIkvvIlvwImvxInvyIzI}nAI~nBICIovDIpvEIFIGIaoHIboIIJIRPqvSPrvTPUPNkVPOkWPnhohScXPTcphqhrhshthuhvhwhxhB!C!D!E!,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZF!-jG!.jH!/jI!:jJ!K!L!M!;jN!=jO!?jP!Q!R!@jS!T!U!V!AhW!X!BhQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJYP;cZPUc0P1PY!0jZ!9i0!1j1!!i2![j3!2j4!5!wJ2kxJMhyJzJ_A6!0c7!8!1cgAhA2P^p3PUpiA_pjAVp4P5Ptzuzsvtv;lej=l#icofjdo$ieofo6Puv7P(rvzwz5x6x7x8x9x3j!xgjxzyz#xvv$xWpzzAzAJwvBJxvCJDJyvEJFJGJHJIJJJKJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJWJDvXJ)rYJEvZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,xFv-x+r.x/x1Zvf2Zwf`d{d|d}dNhOhPhQhRhSh9!!!-o#!Th$!Uh3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#ZyfVh%!WhXh'!Yh(!go)!hoio*!jo+!ko,!lo-!mo,rGv-rHv.r/r:r;r=rIv?rJv@rKv[r]r^rLv_r`r{r|r}r~rasMvbsNvcsdsesfsgshsisjskslsmsnsospsOvPv~daebeceQvRv8PSv9P!PTvZh0h.!de/!eefege:!he;!iejekeUvVv1h2h`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!oole2cWvXvYvZv0v1v2v?!@![!]!^!3hBfCfDf*Za _!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l3v4v+Je ~lamFd5v6v7v8v9v!vBz]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0$v%v'v,J-Ju#p0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem(v#P$P%P3k.J/J4k5k6k:J=c?c@c[c]c^c_c4hy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0^jhjqohmimjmij%iQf*cRf'P)v(P)P'i*P+Prs)0^J,P`c{c|c}c~cadbd5h6h_J`Jv#{J|J}J~J*0aKbKw#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0[0]04j-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjoj}0~0q$a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL.or$s$vwww/o:o^1_1Zp0p1p2p3p4p5p`1QsRsxwyw+c,czwAwDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1t$u$a2b27s8sRQBwCwc2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2-h.hv$/hw$x$uL=bvLwLy$z$A$GoB$HoC$D$xL?byL@bzLALBLCLDLELE$:hF$G$H$I$J$K$L$M$N$O$P$Q$;hR$=hFL[bGL]bHLILJLKLLLMLNLOLS$IoT$JoU$V$W$X$Y$Z$0$1$2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$'$]h($)$*$+$,$^h-$.$/$:$;$=$_h?$@$[$`hcdGdJ2TfK2L2UfM2N2O2P2Q2PLDwQLEwRLSLTLULVLWLXLFwYLGwZL0L1L2L3L4L5LHw6L7L8L9LKo!L#L$LR2RmS2Sm6p;o7p=o{hIwT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2JwZ29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3j3Xfk3l3Zm]$^$Lo_$pj|h}hm3)in3?o8pddo3p3q3r3s3t3`${$|$}$~$a%OzLwPzMwQzRzSzTzUzVzWzNwXzOwYzZz0z1z2z3z4zPw5zQw6z7z8z9z!z#z$z%zHMRwIMJMKMMoLMMMNMSwOMPMQMRMNoSMTMUM)ATw*A+A,Aqj-A.A~hSQVcaibicidieifib%c%d%e%u3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;3TQgkUQhkVQWQXQYQZQ0Q1Qik2Qjk3Q4Q5Qkk6Q7Q8Qf%hig%h%ii1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioei%lkj%5jmkk%l%6jHN:kINCiJNKNDi;k`Am%3cn%4co%5c?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(zUwVw$mrj%m*iOoPoQosjRo+iWw#s*QXw+Q$s)zYw*z%skqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoLN3wMN4wNNONPN5wQN6wRN7wSN8wTNUNVNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4#fd4$fedfdgdhdidjdHiIiJiKiLiMip%q%@or%Nis%OiPie4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(fQit%RiSiu%TiVoWov%Xow%YoZo0ox%1oy%2o3o4oz%5oA%6o,s-w-s.w.s/w/s:s;s:w;w=w=s?w?s@w@s[s]s^s[w]w_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wgthtitjtktltmtntotptkdldmdndodpdaxbxcx,Qdx-Qex.QfxUiViB%qdC%rdsdtdD%udE%vdwdxdgxhxWiXiYi:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oydWcixjxkxlxmxnxoxG%H%I%J%K%Zi+f,f-fs4
67 for arg in get_args(annotation): 2b {Af j k l m n o p q |A}A^kEt9o!o#o$ocBdBeBfBgBhB#ciB`NtjujjBkBlBmBnBoBpBqBrB{N|N}N.i/i:i;i=i?isBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCC%o$c%cpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qZOr DCECs t FCGCu 0iHCv ICw JCx KCy LCMCz NCA OCPCQCRCSCB TCC UCD VCE WCXCYCZC0C1C2CF 3CG 4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;Cyn=Czn?C@C[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 @i1i2iWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=DBn?D@D[D]D^D_D`DCn{D|D}DDn0O1O2O3Oqk4Ork5OOc6OPc~DaEbEFgcEGgdEeEfE3 gE4 hE5 iEjE6 kE7 lEmE8 nE9 oE! pE# qE$ rEsEtEJguEvEwExEyEzEAEBEKgCEDELgEEFEGEHEIEJEMgKELENgMENEOEPEOgQEREPgSETEUEVEWEXEQgYEZERg0E1E2E3ESg4E5E6E7ETg8E9EUg!E#EVg$E%E'E(E)E*E+E,EWg-E.EXg7O8OQc9O!ORc/E:EYg;E=E4i|t}tEl[iFl5iEn]iFnGnHn'o.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrr*O+O,OvFwF% ' ( ) * + , - . / : ; = ? @ [ xFyFzFAFBF] CFDFEFFFGFHuIuJuKuc d HFg ^ _ ` { | } ~ abIFJFTlZu(o)o*o+oNFOFPFQFRFSF'cTF:OLjMjUFVFWFXFYFZF0F1F2F;O=O?O{i|i}i~iajbj3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G,o(c)c/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rQP'Gbb(Gcb)Gdb*Geb6i+Gfb,Ggb-Ghb.Gib/G:Gjb;Gkb=G?G@G[G]Glb^Gmb_Gnb`Gob{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyH_nzH`nAHBHCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbcjdj7i8i{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI}nAI~nBICIDIEIFIGIaoHIboIIJIRPSPTPUPNkVPOkWPScXPTcKILIMIyhNIzhOIPIQILbRIMbSINbTIUIObVIPbWIXIQbYIRbZISb0ITb1IUb2I3I4ICh5I6I7I8I9I!I#I$IDh%I'I(I)I*I+I,I-IEh.I/I:I;I=I?IFh@I[IGh]I^I_I`I{I|IHh}I~IaJbJcJdJIheJfJgJhJiJjJkJlJJhmJnJoJpJKhqJrJsJtJLhuJvJYPZPUc0P1PwJxJMhyJzJsvtv;lej=l#icofjdo$ieofo-o,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsosps8P9P!P6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b8J9J!J#J$J%J'J(J)J*JZv0v1v2va +Je %b'b(b)b*b+b,b-b,J-Jem(v3k4k5k6k;J=J?J@J[J]J*c^J,P5h6h_J`J{J|J}J~JaKbKcK.P/P:PjjkjljmjnjojdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAK^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnL.o+c,cDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sRQoL.bpLqLrL/b(isL:btL;buL=bvLwLxL?byL@bzLALBLCLDLELFL[bGL]bHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9LKo!L#L$L%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcpj)iOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%zHMIMJMKMMoLMMMNMOMPMQMRMNoSMTMUM)A*A+A,Aqj-A.ASQVcVMWMXMgiYMZM0M1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc9Mmc!Mnc#Moc$Mpc%Mji'M(Mki)M*M+M,M-M.M/M:Mli;M=M?M@M[M]M^M_Mmi`M{Mni|M}M~MaNoibNcNpidNeNqifNgNhNiNrijNkNlNmNnNoNsipNqNrNsNtitNuNvNwNuixNyNvizNANwiBNCNxiDNENyiFNGN/A:Ah ;A=Ai HNINCiJNKNDiUwVw$mrj%m*iOoPoQosjRo+i@o,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotpt,Q-Q.Q*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[Nlxmxnxox
68 if field_annotation_is_sequence(arg): 2b {Af j k l m n o p q |A}A^kEt9o!o#o$ocBdBeBfBgBhB#ciB`NtjujjBkBlBmBnBoBpBqBrB{N|N}N.i/i:i;i=i?isBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCC%o$c%cpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qZOr DCECs t FCGCu 0iHCv ICw JCx KCy LCMCz NCA OCPCQCRCSCB TCC UCD VCE WCXCYCZC0C1C2CF 3CG 4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;Cyn=Czn?C@C[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 @i1i2iWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=DBn?D@D[D]D^D_D`DCn{D|D}DDn0O1O2O3Oqk4Ork5OOc6OPc~DaEbEFgcEGgdEeEfE3 gE4 hE5 iEjE6 kE7 lEmE8 nE9 oE! pE# qE$ rEsEtEJguEvEwExEyEzEAEBEKgCEDELgEEFEGEHEIEJEMgKELENgMENEOEPEOgQEREPgSETEUEVEWEXEQgYEZERg0E1E2E3ESg4E5E6E7ETg8E9EUg!E#EVg$E%E'E(E)E*E+E,EWg-E.EXg7O8OQc9O!ORc/E:EYg;E=E4i|t}tEl[iFl5iEn]iFnGnHn'o.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrr*O+O,OvFwF% ' ( ) * + , - . / : ; = ? @ [ xFyFzFAFBF] CFDFEFFFGFHuIuJuKuc d HFg ^ _ ` { | } ~ abIFJFTlZu(o)o*o+oNFOFPFQFRFSF'cTF:OLjMjUFVFWFXFYFZF0F1F2F;O=O?O{i|i}i~iajbj3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G,o(c)c/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rQP'Gbb(Gcb)Gdb*Geb6i+Gfb,Ggb-Ghb.Gib/G:Gjb;Gkb=G?G@G[G]Glb^Gmb_Gnb`Gob{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyH_nzH`nAHBHCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbcjdj7i8i{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI}nAI~nBICIDIEIFIGIaoHIboIIJIRPSPTPUPNkVPOkWPScXPTcKILIMIyhNIzhOIPIQILbRIMbSINbTIUIObVIPbWIXIQbYIRbZISb0ITb1IUb2I3I4ICh5I6I7I8I9I!I#I$IDh%I'I(I)I*I+I,I-IEh.I/I:I;I=I?IFh@I[IGh]I^I_I`I{I|IHh}I~IaJbJcJdJIheJfJgJhJiJjJkJlJJhmJnJoJpJKhqJrJsJtJLhuJvJYPZPUc0P1PwJxJMhyJzJsvtv;lej=l#icofjdo$ieofo-o,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsosps8P9P!P6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b8J9J!J#J$J%J'J(J)J*JZv0v1v2va +Je %b'b(b)b*b+b,b-b,J-Jem(v3k4k5k6k;J=J?J@J[J]J*c^J,P5h6h_J`J{J|J}J~JaKbKcK.P/P:PjjkjljmjnjojdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAK^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjLkLlLmLnL.o+c,cDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sRQoL.bpLqLrL/b(isL:btL;buL=bvLwLxL?byL@bzLALBLCLDLELFL[bGL]bHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9LKo!L#L$L%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcpj)iOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%zHMIMJMKMMoLMMMNMOMPMQMRMNoSMTMUM)A*A+A,Aqj-A.ASQVcVMWMXMgiYMZM0M1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc9Mmc!Mnc#Moc$Mpc%Mji'M(Mki)M*M+M,M-M.M/M:Mli;M=M?M@M[M]M^M_Mmi`M{Mni|M}M~MaNoibNcNpidNeNqifNgNhNiNrijNkNlNmNnNoNsipNqNrNsNtitNuNvNwNuixNyNvizNANwiBNCNxiDNENyiFNGN/A:Ah ;A=Ai HNINCiJNKNDiUwVw$mrj%m*iOoPoQosjRo+i@o,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotpt,Q-Q.Q*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[Nlxmxnxox
69 return True 2b f tjujwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYO0O1O2O3Oqk4Ork5O7O8OQc9O!ORcc d g LjMjOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQp_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPRPSPTPUPNkVPOkWPYPZPUc0P1Pa e 5h6h8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A)A*A+A,Aqj-A.A/A:Ah ;A=Ai
70 return False 2b {Aj k l m n o p q |A}A^kEt9o!o#o$ocBdBeBfBgBhB#ciB`NjBkBlBmBnBoBpBqBrB{N|N}N.i/i:i;i=i?isBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRq'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzCACBCCC%o$c%cpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qZOr DCECs t FCGCu 0iHCv ICw JCx KCy LCMCz NCA OCPCQCRCSCB TCC UCD VCE WCXCYCZC0C1C2CF 3CG 4C5C6C7C8C9C!C#C$C%C'C(C)C*C+C,C-C.C/C:C;Cyn=Czn?C@C[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 @i1i2iWDXDYDZD0D1D2D3D4D5D6D7D8D9D!D#D$D%D'D(D)D*D+D,D-D.D/D:D;D=DBn?D@D[D]D^D_D`DCn{D|D}DDnOc6OPc~DaEbEFgcEGgdEeEfE3 gE4 hE5 iEjE6 kE7 lEmE8 nE9 oE! pE# qE$ rEsEtEJguEvEwExEyEzEAEBEKgCEDELgEEFEGEHEIEJEMgKELENgMENEOEPEOgQEREPgSETEUEVEWEXEQgYEZERg0E1E2E3ESg4E5E6E7ETg8E9EUg!E#EVg$E%E'E(E)E*E+E,EWg-E.EXg/E:EYg;E=E4i|t}tEl[iFl5iEn]iFnGnHn'o.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrr*O+O,OvFwF% ' ( ) * + , - . / : ; = ? @ [ xFyFzFAFBF] CFDFEFFFGFHuIuJuKuc d HF^ _ ` { | } ~ abIFJFTlZu(o)o*o+oNFOFPFQFRFSF'cTF:OUFVFWFXFYFZF0F1F2F;O=O?O{i|i}i~iajbj3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRroGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9G!G#G$G%G,o(c)c/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rQP'Gbb(Gcb)Gdb*Geb6i+Gfb,Ggb-Ghb.Gib/G:Gjb;Gkb=G?G@G[G]Glb^Gmb_Gnb`Gob{G|G}G~GaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyH_nzH`nAHBHCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbcjdj7i8i{H|H}H~HaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI}nAI~nBICIDIEIFIGIaoHIboIIJIScXPTcKILIMIyhNIzhOIPIQILbRIMbSINbTIUIObVIPbWIXIQbYIRbZISb0ITb1IUb2I3I4ICh5I6I7I8I9I!I#I$IDh%I'I(I)I*I+I,I-IEh.I/I:I;I=I?IFh@I[IGh]I^I_I`I{I|IHh}I~IaJbJcJdJIheJfJgJhJiJjJkJlJJhmJnJoJpJKhqJrJsJtJLhuJvJwJxJMhyJzJsvtv;lej=l#icofjdo$ieofo-o,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsosps8P9P!P6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b8J9J!J#J$J%J'J(J)J*JZv0v1v2va +J%b'b(b)b*b+b,b-b,J-Jem(v3k4k5k6k;J=J?J@J[J]J*c^J,P_J`J{J|J}J~JaKbKcK.P/P:PjjkjljmjnjojdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAK^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCosstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsZK0K1K2K3K4K5K6K7K8K9K!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~KaLbLcLdLeLfLgLhLiLjLkLlLmLnL.o+c,cDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sRQoL.bpLqLrL/b(isL:btL;buL=bvLwLxL?byL@bzLALBLCLDLELFL[bGL]bHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL0L1L2L3L4L5L6L7L8L9LKo!L#L$L%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcpj)iOzPzQzRzSzTzUzVzWzXzYzZz0z1z2z3z4z5z6z7z8z9z!z#z$z%zHMIMJMKMMoLMMMNMOMPMQMRMNoSMTMUMSQVcVMWMXMgiYMZM0M1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc9Mmc!Mnc#Moc$Mpc%Mji'M(Mki)M*M+M,M-M.M/M:Mli;M=M?M@M[M]M^M_Mmi`M{Mni|M}M~MaNoibNcNpidNeNqifNgNhNiNrijNkNlNmNnNoNsipNqNrNsNtitNuNvNwNuixNyNvizNANwiBNCNxiDNENyiFNGNHNINCiJNKNDiUwVw$mrj%m*iOoPoQosjRo+i@o,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotpt,Q-Q.Q*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[Nlxmxnxox
71 return _annotation_is_sequence(annotation) or _annotation_is_sequence( 2b t4u4v4w4x4y4z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4=m_Q`Q{Q|Q}Q~QaRbRR4S4=k?kqtrt{Af [o]o.fstttutvtwtxt{x7jytcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRj k l m n o p q peqereseteuevewexeyezeAeuRvRwRxRyRzRsqARBRztAtBt|A}AT4CRDRERFRGRHRIR,z-zCtDtJR@k[kKR]k^kEt]N^N_N9o~AaB!o#o$obBHdIdJdKdLdMdNd/fLR_k`kMRNRORPRQRRRSRTRURVRWRXRYRZR0R1R2R3R4R5R6R7R8R9R!R#R$R%R'R(R)R*R+R,R-R.R/R:R;R=R?R@RcBdBeBfBgBhB[R?mnk@m{k|k}kok8j,i#c-iU4|xV4W49jX4Y4tq]RiB`NOdPdQdRdSdTdUdtjujjBkBZ4lBmBnBoB^RpBqB04142434445464748494!4#4$4%4'4(4)4*4rB+4,4-4.4/4:4;4=4?4@4[4]4^4_4`4{4|4}4~4a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5_R`R{R|R}R~RaSbScSdSeSfSvjzd6cz5A5B5C5D5{N|N}NE5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5gShSiSjSkS:f.iFt/i:ipk;i=i?ilSmSZ5nSoSpSqSrSsSsBtBuBvBwBxByBzBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBtSuSvSwSxSySzSASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%B05152535455565758595!5#5$5%5'5(5)5*5+5,5-5.5/5:5dOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzOAO'B(B)B*B+B,B-B.B/B:B;B=B?B@B[B]B^B_B`B{B|B}B~BaCRSSSTSUSVSWSXSYSZS0S1S2S3S4S5S6S7S8S9S!S#S$S%S'S(S)S*S+S;5=5?5@5[5]5^5_5`5{5|5}5~5a6b6c6d6e6f6g6h6i6j6k6BOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYObCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyC,S-S.S/S:S;S=S?S@S[S]S^S_S`S{S|S}S~SaTbTcTdTeTfTzCACBCCC%ol6m6KtLt(p)pgThTMtNtOtPtQtRtStiTSqTqTtUt$c%cVtWtpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qjTkTlTmTn6o6nToT9q!qZOUyVypTqTr DCECs rTsTt FCGCu tThluTvTilwT0ixTHCv ICw yTzTATBTCTDTETFTGTHTITJTKTLTMTNTOTPTBeQTRTSTTTCeUTVT;f=f?f@fp6[fq6]fr6JCx KCy LCs6snt6u6tnv6unw6x6MCz NCA OCPCQCRCSCB TCC y6^fz6A6B6C6D6E6F6_fG6H6I6`fJ6{fK6|fL6}fUCD VCE WCXCYCZC0C1C2CF 3CG M6vnN6wnO6P6Q6R6S6T6U6xnV6W6~fX6agY6bgZ6061626cg36dg46566676eg86fg96gg!6#6$6%6hg'6(6)6*6ig+6,6jg-6kg.6/6lgmgVdWdngogWTDeXTEeYTFeZTGe0T1T2T3T4CXt5CYt6C7C8C9CZt!C0t#C$C1t%C2t'C3t(C4t)C*C+C,C-C5t.C6t/C:C;Cyn=Czn?C@C4Tjl5Tkl7t8t*p+p9t,ppgqg!t#tAd6TBd[CH ]C^CI _C`C{CJ |C}C~CK aDbDL cDdDeDM fDgDN hDiDjDkDlDO mDP nDoDpDqDQ rDsDR tDuDvDwDxDS yDT zDADBDCDDDU EDV FDGDHDIDJDW KDX LDMDNDODPDY QDRDZ SD0 TDUD1 VD2 7T8T#q9T!T#T$t$T$q%T'T(T)T*Tll+Tml,Tnl-Tol.T/T:T;T=Tpl?Tql@T[T]T^T_Trl`Tsl{T|Ttl}T~TaUHebUcUIedUJeeUfUKegUhUiUjUkUlUmUnUoU%tpU%qqU'trU'qsUtUuUvUwULexUMeyUulvl:6;[email protected](t)tXdYdBUCUDUEUFUGU?6@6[6]6^6_6WD*tXD+tYD,tZD-t0D1D2D3D4D.t5D/t6D7D8D9D!D#D:t;t$D=t%D?t'D(D)D*D+D,[email protected][t/D]t:D;D=DBn?D@D[D^t]D_t^D_D`DCn{D|D}DDn0O`t1O{t2O3Oqk4Ork5OtgugOc6OPcvgwgxgygzgAgBgCgDgEg`6{6|6}6HUIUJUKULUMUNU~DskaEtkbEFgcEGgdEeEOUNePUOeQUPeRUSUQeTUReUUSeVUTeWUXUYUZU0U1U2U3U4UUe5UVe6UWe7UXe8U9U!U#U$U%U'UYe(UZe)U0e*U1e+U,U-U.U/U:U;U=U?U2e@U3e[U4e]U5e^U_U`U{U|U}U~UaV~6!ja7#jb7c7d7e7f7g7h7$ji7%jj7'jk7l7m7n7o7(jp7Hgq7r7IgfE3 gE4 hE5 iEjE6 kE7 lEmE8 bVcVnE9 oE! pE# qE$ rEsEuktEJguEvkvEwExEyEzEAEwkBEKgCEDELgEEFEGEHEIExkJEMgKEykLENgMENEdVwleVxlfVylgVhViVzljVAlkVBllVClmVDlnVoVOEzkPEOgQEAkREPgSETEUEVEWEBkXEQgYEZERg0ECk1E2EDk3ESg4EEk5E6E7ETg8EFk9EUg!EGk#EVg$E%E'EHk(E)E*E+EIk,EWg-E.EXg7O/c8OQc9O:c!ORcs7Ijt73iu7v7w7)jx7Jjy7z7/EJk:EYg;E=E^AA7XcB7C7Yc]z^z#O$O_z/p`zRp%O'OWyXy4i|t}tEl[iFl5iEn]iFnGnHn(O~t)O(qYyauZy)qBxCxDxExFxKjGx^i0y1ybuHxcuIxSp2y3yTp?Edu@Eeu[E]Efu^Egu_E`E{E|E}E~EhuaFbFiucFjudFeFfFgFhFiFjFkFlFkumF*qnFoFpFluqF+qrFsFtFuF,qJxKxLxMxNxmuOxPxnuQx-qRxSxpVqV6eZd0dZg0g1g2g3gD7E7'oF74gG75grVGlsVtVHluVIlvVJlwVKlxVLlyV7ezV8e9e6gH77g8gI79gInJ7JnK7KnLnMnL7NnM7OnPnQnN7RnO7Snou.qpu/qqu:q;q=q?qru@qsu[qtu]q^q_q`q{q|q}q~qarbruucrvudrwuerfrgrxuhryuirjrkrlrmrnrorprqrrr1d2d3d4dzuAu*OBu+O,OCu!g#gP75dQ76d7d8dR79dS7!d#d$dDu$g%gMlAV!eBV#eNlCVDVvFwF% ' ( ) * + , - . / : ; = ? EV@ [ xFyFzFAFBF] CFDFEFFFGFTnT7Un%dZcEuFuGuHuIuJuKuU7V7W7X7Y7'g$e%e'eFVc d Z707172737475767778797!7#7$7%7'7(7)7*7+7,7-7.7/7VnGVHVIVJVKVLVMVNV:7;7OlPlLuMuHFg rpsp(gNuOuPuQuRuSu4y*jTuOVPVQVRVSVTVUVVVWVXVYVZV0V1V2V3V4V5V^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e6V7V8V9V!V#Vsr$V%VUuVuWuIFJF=7'V(V)V*V+V,V-V{z|zXuYu.VQlRl/VSlTlZu-O.O/O(oKFLF)o*o+oMF'd(d)d*d+d,d-d)g:VUlVl;V=V?V@V[V]V^V_V`V{V|V}V~VaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzWAWBWCWNFOFPFQFRFSFDWWnKkXnWlXlYlLk+j_i'c`i?75y@7[7,j]7^7trEWTF:O.d/d:d;d=d?d@dLjMjUFVF_7WFXFYFZFFW0F1F`7{7|7}7~7a8b8c8d8e8f8g8h8i8j8k8l8m82Fn8o8p8q8r8s8t8u8v8w8x8y8z8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z80818283848GWHWIWJWKWLWMWNWOWPWQWRWNjCd7c5868788898;O=O?O!8#8$8%8'8(8)8*8+8,8-8.8/8:8;8=8?8@8[8]8^8SWTWUWVWWW*g{i0u|i}iMk~iajbjXWYW_8ZW0W1W2W3W4W3F4F5F6F7F8F9F!F#F$F%F'F(F)F*F+F,F-F.F/F:F;F=F?F5W6W7W8W9W!W#W$W%W'W(W)W*W+W,W-W.W/W:W;W=W?W@W[WTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG`8{8|8}8~8a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9_O`O{O|O}O~OaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPoGpGqGrGsGtGuGvGwGxGyGzGAGBGCGDGEGFGGGHGIGJGKGLG]W^W_W`W{W|W}W~WaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXt9u9v9w9x9y9z9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9sPtPuPvPwPxPyPzPAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPMGNGOGPGQGRGSGTGUGVGWGXGYGZG0G1G2G3G4G5G6G7G8G9GuXvXwXxXyXzXAXBXCXDXEXFXGXHXIXJXKXLXMXNXOXPXQXRX!G#G$G%G,oR9S95u6u:p;pSXTX7u8u9u!u#u$u%uUXSrTr'u(u(c)c)u*u/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rVXWXXXYXT9U9ZX0X9r!rQPrzsz1X2X'Gbb(Gcb3X4X)Gdb*Geb5X6X7X7l8X6i9X+Gfb,Ggb!X#X$X%X'X(X)X*X+X,X-X.X/X:X;X=X?X@X[X]X^X_X@e`X{X[e+g,g-g.gV9/gW9:gX9-Ghb.Gib/GY9Z9=n09?n19@n29[n39:Gjb;Gkb=G?G@G[G]Glb^Gmb49;g5969798999!9#9=g?g$9@g%9'9(9)9[g*9]g_Gnb`Gob{G|G}G~GaHbHcHdH+9]n,9^n-9.9/9:9;9=9?9@9[9^g]9_g^9`g_9`9{9|9}9~9a!{gb!|gc!}gd!~ge!f!g!h!ahi!bhj!chk!l!m!n!o!dhp!ehq!r!fhgh[d]dhhih|X]e}X^e~X_eaYbYcYdYeYeH+ufH,ugHhHiHjHkH-ulH.umH/unH:uoHpHqHrHsHtHuH;uvHwH=uxHyH_nzH`nAHBHfY8lgY9l?u@u=p?p[u@pjhkh]u^uDdhYEdCHpbDHEHFHqbGHHHrbIHJHsbKHLHMHtbNHOHPHubQHRHvbSHTHUHVHWHwbXHxbYHZH0H1H2Hyb3Hzb4H5H6H7H8HAb9HBb!H#H$H%H'HCb(HDb)H*H+H,H-HEb.HFb/H:H;H=H?HGb@H[HHb]HIb^H_HJb`HKbiYjYkYlYmY_unY#roY`upY$rqYrYsY!ltY#luYvY$lwYxYyYzYAY%lBY'lCYDYEYFYGY(lHY)lIYJYKYLY*lMY`eNYOY{ePY|eQYRY}eSY{uTY%rUYVYWYXYYYZY0Y|u1Y'r2Y3Y4Y5Y6Y7Y8Y~e9Yaf!Y+l,ls!t!{nu!cj|ndjlhmh#Y7i$Y8i[p]p}u~u^d_d%Y'Y(Y)Y*Y+Yv!w!x!y!z!A!{Hav|Hbv}Hcv~HdvaIbIcIdIeIevfIfvgIhIiIjIkIgvlIhvmIivnIjvoIpIqIrIsItIuIkvvIlvwImvxInvyIzI}nAI~nBICIovDIpvEIFIGIaoHIboIIJIRPqvSPrvTPUPNkVPOkWPnhohScXPTcphqhrhshthuhvhwhxhB!C!D!E!,Y-Y.Y/Y:Y;Y=YKIPkLIQkMIyhNIzhOIPI?Ybf@Ycf[Ydf]Yef^Yff_Ygf`Yhf{Yif|Y}Y~YaZbZcZdZeZfZjfgZkfhZlfiZmfjZkZlZmZnZoZpZnfqZofrZpfsZqftZuZvZwZxZyZzZAZBZrfCZsfDZtfEZufFZGZHZIZJZKZLZMZF!-jG!.jH!/jI!:jJ!K!L!M!;jN!=jO!?jP!Q!R!@jS!T!U!V!AhW!X!BhQILbRIMbSINbTIUIObVIPbWIXIQbNZOZYIRbZISb0ITb1IUb2I3IRk4ICh5I6I7I8I9I!I#ISk$IDh%I'I(I)I*I+I,ITk-IEh.I/I:I;IPZ-lQZ.lRZSZTZUZVZ/lWZ:lXZYZZZ0Z=IUk?IFh@IVk[IGh]I^I_I`I{IWk|IHh}I~IaJbJcJXkdJIheJYkfJgJhJZkiJjJkJ0klJJhmJnJoJpJKhqJrJsJ1ktJLhuJvJYP;cZPUc0P1PY!0jZ!9i0!1j1!!i2![j3!2j4!5!wJ2kxJMhyJzJ_A6!0c7!8!1cgAhA2P^p3PUpiA_pjAVp4P5Ptzuzsvtv;lej=l#icofjdo$ieofo6Puv7P(rvzwz5x6x7x8x9x3j!xgjxzyz#xvv$xWpzzAzAJwvBJxvCJDJyvEJFJGJHJIJJJKJLJMJzvNJAvOJPJQJRJBvSJTJUJCvVJWJDvXJ)rYJEvZJ*r0J1J2J3J4J5J%x'x(x)x*x+x,xFv-x+r.x/x1Zvf2Zwf`d{d|d}dNhOhPhQhRhSh9!!!-o#!Th$!Uh3Z?l4Z5Z@l6Z[l7Z]l8Z^l9Z_l!Zxf#ZyfVh%!WhXh'!Yh(!go)!hoio*!jo+!ko,!lo-!mo,rGv-rHv.r/r:r;r=rIv?rJv@rKv[r]r^rLv_r`r{r|r}r~rasMvbsNvcsdsesfsgshsisjskslsmsnsospsOvPv~daebeceQvRv8PSv9P!PTvZh0h.!de/!eefege:!he;!iejekeUvVv1h2h`l$Zzf%ZAf{l'Z(Z6J7JVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b)Z#b$b8J9J!J#J$J%J'J(J)J*Jno=!oole2cWvXvYvZv0v1v2v?!@![!]!^!3hBfCfDf*Za _!`!{!|!}!~!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#po+Z,Z-Z.Z/Z:Z;Z=Zs#t#|l}l3v4v+Je ~lamFd5v6v7v8v9v!vBz]j#v?Z@Z[Z]Z^Z_Z`Z{Z|Z}Z~Za0b0c0d0e0f0g0%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfh0i0j0k0l0m0qsn0o0$v%v'v,J-Ju#p0q0r0s0t0u0v0kAlAXpYpw0bmcmx0dmem(v#P$P%P3k.J/J4k5k6k:J=c?c@c[c]c^c_c4hy0fmgmz0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z000102030405060708090!0#0$0%0'0;J=J?J@J[J]J(0^jhjqohmimjmij%iQf*cRf'P)v(P)P'i*P+Prs)0^J,P`c{c|c}c~cadbd5h6h_J`Jv#{J|J}J~J*0aKbKw#x#y#z#A#B#C#D#E#F#G#H#I#J#K#L#M#N#cKO#P#Q#R#S#T#U#V#W#X#Y#Z#0#1#2#3#4#5#6#7#8#9#!###$#%#'#(#)#*#+#,#-#.#/#:#;#=#?#@#[#]#^#_#+0,0-0.0/0:0;0=0?0@0[0]04j-c8c-P`#{#|#}#.P/P:P~#a$b$c$;P=P?P@Pd$e$f$g$h$i$j$k$l$m$n$o$p$^0_0`0{0|07hjj*vkjlj7kmjnjoj}0~0q$a1b1c1d1e1f1dKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzKAKg1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1A1B1C1D1`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYK`P{P|P}P~PaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQuAvAwAxAyAzAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAZK0K1K2K3K4K5K6K7K8K9K!K#K$K%K'K(K)K*K+K,K-K.K/KE1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1011121314151tQuQvQwQxQyQzQAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQSATAUAVAWAXAYAZA0A1A2A3A4A5A6A7A8A9A!A#A$A%A'A(A:K;K=K?K@K[K]K^K_K`K{K|K}K~KaLbLcLdLeLfLgLhLiLjL61718191!1#1$1%1'1(1)1*1+1,1-1.1/1:1;1=1?1@1[1]1kLlLmLnL.or$s$vwww/o:o^1_1Zp0p1p2p3p4p5p`1QsRsxwyw+c,czwAwDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s{1|1}1~1t$u$a2b27s8sRQBwCwc2d2oL.bpLe2f2qLrL/bg2h2i2Qmj2(ik2sL:btL;bl2m2n2o2p2q2r2s2t2u2v2w2x2y2z2A2B2C2D2E2F2G2SfH2I2-h.hv$/hw$x$uL=bvLwLy$z$A$GoB$HoC$D$xL?byL@bzLALBLCLDLELE$:hF$G$H$I$J$K$L$M$N$O$P$Q$;hR$=hFL[bGL]bHLILJLKLLLMLNLOLS$IoT$JoU$V$W$X$Y$Z$0$1$2$?h3$@h4$[h5$6$7$8$9$!$#$$$%$'$]h($)$*$+$,$^h-$.$/$:$;$=$_h?$@$[$`hcdGdJ2TfK2L2UfM2N2O2P2Q2PLDwQLEwRLSLTLULVLWLXLFwYLGwZL0L1L2L3L4L5LHw6L7L8L9LKo!L#L$LR2RmS2Sm6p;o7p=o{hIwT2.c%L^b'L(L)L*L+L_b,L-L.L/L:L`b;L=L?L@L[L{b]L^L_L`L{L|L|b}L~LaMbMcMdM}beMfMgMhMiMjM~bkMlMacmMnMoMpMbcqMrMsMtMuMvMccwMxMyMzMAMBMCMdcDMEMFMecGMfcU2V2W2X2Y2JwZ29s0212223242Tm52Um62728292!2#2$2Vm%2Wm'2(2)2*2+2Xm,2Ym-2.2/2:2;2Vf=2?2@2Wf[2]2^2_2`2{2|2}2~2a3b3Kwc3!sd3e3f3g3h3i3j3Xfk3l3Zm]$^$Lo_$pj|h}hm3)in3?o8pddo3p3q3r3s3t3`${$|$}$~$a%OzLwPzMwQzRzSzTzUzVzWzNwXzOwYzZz0z1z2z3z4zPw5zQw6z7z8z9z!z#z$z%zHMRwIMJMKMMoLMMMNMSwOMPMQMRMNoSMTMUM)ATw*A+A,Aqj-A.A~hSQVcaibicidieifib%c%d%e%u3v3w3x3y3z3A3VM8kWMXMgiYMZM0MB3YfC3D3ZfE3F30fG3H31fI3J3K3L3M3N3O3P3Q3R3S32fT3U33fV3W3X3Y3Z303134f23335f435363738393!3#3$3%36f'3(37f)3*3+3,3-3.3/3:3;3TQgkUQhkVQWQXQYQZQ0Q1Qik2Qjk3Q4Q5Qkk6Q7Q8Qf%hig%h%ii1Mgc2Mhc3Mic4M5Mjc6M7Mkc8Mlc=3?39Mmc!Mnc#Moc$Mpc%Mji'M9k(Mki)M*M+M,M-M!k.M/M#k:Mli;M=M?M@M[M]M^M$k_Mmi`M%k{Mni|M}M@30m[31m]32m^33m_34m`35m{36m|37m}38m~39ma4!mb4#m~M'kaNoibN(kcNpidNeNqifNgNhN)kiNrijNkNlNmNnN*koNsipNqNrNsNtitNuNvN+kwNuixN,kyNvizNANwiBN-kCNxiDN.kENyiFN/kGN/A9c:Ah ;A!c=Ai 9Qzi!Qme#QAi$QneBioei%lkj%5jmkk%l%6jHN:kINCiJNKNDi;k`Am%3cn%4co%5c?Ahq@A9p%Qiq'Q!p[Ajq]A#p(Q)Q'z(zUwVw$mrj%m*iOoPoQosjRo+iWw#s*QXw+Q$s)zYw*z%skqEilq8fmqFinq9foqGipq!fZw0w$pSoqq%prqTo1w'p2wUoLN3wMN4wNNONPN5wQN6wRN7wSN8wTNUNVNWN9wXN!wYN#wZN0N1N$w2N3N%w4N'w5N6N7N(w8N's9N!N#N)w$N(s%N*w'N)s(N)N:x+w;x=x?x@x[x]x,w^x*s_x`x+sc4#fd4$fedfdgdhdidjdHiIiJiKiLiMip%q%@or%Nis%OiPie4'mf4(mg4)m*mh4+mi4,m-mj4.mk4/ml4%fm4'f(fQit%RiSiu%TiVoWov%Xow%YoZo0ox%1oy%2o3o4oz%5oA%6o,s-w-s.w.s/w/s:s;s:w;w=w=s?w?s@w@s[s]s^s[w]w_s`s{s|s}s~s^wat_wbt`wct{wdt|wet}wft~wgthtitjtktltmtntotptkdldmdndodpdaxbxcx,Qdx-Qex.QfxUiViB%qdC%rdsdtdD%udE%vdwdxdgxhxWiXiYi:mn4)fo4*f;mp4q4*N+NqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcr4IcJc,NKc-NLc.N/N:NMc;N=N?NNc@N[N7oF%8oydWcixjxkxlxmxnxoxG%H%I%J%K%Zi+f,f-fs4
72 get_origin(annotation)
73 )
76def value_is_sequence(value: Any) -> bool: 1bcda
77 return isinstance(value, sequence_types) and not isinstance(value, (str, bytes)) 2CtDt9jtjujpxqxrxsxtxuxvxwxxxyxzxAxwjxjyjzjAjBjCjDjEjFjGjHjBxCxDxExFxGxHxIx1%2%XuYu,jLjMjTxUxVxWxXxYxZx0x1x2x3x4xOjPjQjRjSjTjUjVjWjXjYjZj5x6x7x8x9x!x#x$xXpYp'i5h6h`p{p|p}p~paqbqcqdqeqfqgq8h9h!h#h$h%h'h(h)h*h+h,hkqlqmqnqoqpqqqrq
80def _annotation_is_complex(annotation: type[Any] | None) -> bool: 1bcda
81 return ( 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
82 lenient_issubclass(annotation, (BaseModel, Mapping, UploadFile))
83 or _annotation_is_sequence(annotation)
84 or is_dataclass(annotation)
85 )
88def field_annotation_is_complex(annotation: type[Any] | None) -> bool: 1bcda
89 origin = get_origin(annotation) 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
90 if origin is Union or origin is UnionType: 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
91 return any(field_annotation_is_complex(arg) for arg in get_args(annotation)) 2b f j k l m n o p q #c6cpk;i=i?i$c%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 Z 0 1 2 OcPcsktkFgGg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcJkYgXcYc% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g ^ _ ` { | } ~ ab'c7cMk~iajbj(c)cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcPkQkyhzhLbMbNbObPbQbRbSbTbUbRkChSkDhTkEhUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc2kMh0c1cVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e %b'b(b)b*b+b,b-b*c8c7kmjnjoj+c,c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVc8kgigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci :kCiDi;k3c4c5cqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
93 if origin is Annotated: 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
94 return field_annotation_is_complex(get_args(annotation)[0]) 2b XcYcZcc d 0c1c2ca 3c4c5cWc
96 return ( 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
97 _annotation_is_complex(annotation)
98 or _annotation_is_complex(origin)
99 or hasattr(origin, "__pydantic_core_schema__")
100 or hasattr(origin, "__get_pydantic_core_schema__")
101 )
104def field_annotation_is_scalar(annotation: Any) -> bool: 1bcda
105 # handle Ellipsis here to make tuple[int, ...] work nicely
106 return annotation is Ellipsis or not field_annotation_is_complex(annotation) 2b =m=k?kf .fj k l m n o p q peqereseteuevewexeyezeAe@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-iOdPdQdRdSdTdUdvjzd6c:fpk;i=i?i$c%cr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGejlklpgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 llmlnlolplqlrlsltlHeIeJeKeLeMeulvlAn@irgsg1i2iXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc6eZd0dZg0g1g2g3g4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSn1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZc'g$e%e'ec d VnOlPlg (g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?eQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i.d/d:d;d=d?d@dNjCd7c*gMk~iajbj(c)cbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e8l9ljhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb!l#l$l%l'l(l)l*l`e{e|e}e~eaf+l,l{ncj|ndjlhmh7i8i^d_dnhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1cvfwf`d{d|d}dNhOhPhQhRhShThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomo~daebeceZh0hdeeefegeheiejeke1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2c3hBfCfDfa po|l}le Fd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf`c{c|c}c~cadbd4j-c8c7h7kmjnjoj+c,c.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfRmSm{h.c^b_b`b{b|b}b~bacbcccdcecfcTmUmVmWmXmYmVfWfXfZmLopj|h}h)idd~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5c#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6okdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcZi+f,f-f
109def field_annotation_is_scalar_sequence(annotation: type[Any] | None) -> bool: 1bcda
110 origin = get_origin(annotation) 2b 8j,i#c-i!j#j$j%j'j(j/cQc:cRcIj3i)jJjc d +j_i'c`i-j.j/j:j;j=j?j@j;cUc0j9i1j!i[j2ja %iQf*cRfgkhkikjkkk9ch !ci zimeAineBioelk5jmk6j
111 if origin is Union or origin is UnionType: 2b 8j,i#c-i!j#j$j%j'j(j/cQc:cRcIj3i)jJjc d +j_i'c`i-j.j/j:j;j=j?j@j;cUc0j9i1j!i[j2ja %iQf*cRfgkhkikjkkk9ch !ci zimeAineBioelk5jmk6j
112 at_least_one_scalar_sequence = False 2b #c/cQc:cRcc d 'c;cUca *c9ch !ci
113 for arg in get_args(annotation): 2b #c/cQc:cRcc d 'c;cUca *c9ch !ci
114 if field_annotation_is_scalar_sequence(arg): 2b #c/cQc:cRcc d 'c;cUca *c9ch !ci
115 at_least_one_scalar_sequence = True 2b /cQc:cRcc d ;cUca 9ch !ci
116 continue 2b /cQc:cRcc d ;cUca 9ch !ci
117 elif not field_annotation_is_scalar(arg): 2b #c/cQc:cRcc d 'c;cUca *c9ch !ci
118 return False 2#cD~'c*c
119 return at_least_one_scalar_sequence 2b /cQc:cRcc d ;cUca 9ch !ci
120 return field_annotation_is_sequence(annotation) and all( 2b 8j,i#c-i!j#j$j%j'j(j/cQc:cRcIj3i)jJjc d +j_i'c`i-j.j/j:j;j=j?j@j;cUc0j9i1j!i[j2ja %iQf*cRfgkhkikjkkk9ch !ci zimeAineBioelk5jmk6j
121 field_annotation_is_scalar(sub_annotation)
122 for sub_annotation in get_args(annotation)
123 )
126def is_bytes_or_nonable_bytes_annotation(annotation: Any) -> bool: 1bcda
127 if lenient_issubclass(annotation, bytes): 2[o{x7j,z-zCtDt^k9o!o#o$o|x9jtjujpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon~Nky.zly/zmyaOny:zoybOpy;zqy=zry?zsy@ztycOuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpUyVy]z^z#O$O_z`z%O'OWyXy|t}tElFlEnFnGnHn(O)OYyZyBxCxDxExFxGx0y1yHxIx2y3yJxKxLxMxNxOxPxQxRxSx+zL%rp4y*j{z|zXuYuTl(o)o*o+o5y,jLjMjTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n@O+y}z,y~z-y[O.yaA/y]O:ybA;ycA=ydA?yeA@y^O[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQprzszgAhA2P3PiAjA4P5Ptzuzsvtv;l=lcodoeofo6P7Pvzwz5x6x7x8x9x!xxzyz#x$xzzAz%x'x(x)x*x+x,x-x.x/x~lBz]jkAlAXpYpem3k4k5k6k)v'i5h6h`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfk[PCzmADznAEz]PFzoAGz^PHzpAIzqAJzrAKzsALz_PMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmBwCw?A@A%Q'Q[A]A(Q)Q'z(zUwVw$m%mOoPoQoRo*Q+Q)z*zkqlqmqnqoqpqZw0wqqrq1w2w:x;x=x?x@x[x]x^x_x`x
128 return True 2[o,z-zCtDt9jtjujpxqxrxsxtxuxvxwxxxyxzxAxwjxjyjzjAjBjCjDjEjFjGjHj~N.z/zaO:zbO;z=z?z@zcO[z]z^z#O$O_z`z%O'O(O)OBxCxDxExFxGxHxIxJxKxLxMxNxOxPxQxRxSx+z1%rp{z|zXuYu,jLjMjTxUxVxWxXxYxZx0x1x2x3x4xOjPjQjRjSjTjUjVjWjXjYjZj@O}z~z[OaA]ObAcAdAeA^OfAgAhA2P3PiAjA4P5P6P7P5x6x7x8x9x!x#x$x%x'x(x)x*x+x,x-x.x/x~lkAlAXpYp'i5h6h`p{p|p}p~paqbqcqdqeqfqgq8h9h!h#h$h%h'h(h)h*h+h,h[PmAnA]PoA^PpAqArAsA_PtA?A@A%Q'Q[A]A(Q)Q*Q+Qkqlqmqnqoqpqqqrq:x;x=x?x@x[x]x^x_x`x
129 origin = get_origin(annotation) 2[o{x7jCtDt^k9o!o#o$o|x9jtjujpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonkylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpUyVyWyXy|t}tElFlEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3yJxKxLxMxNxOxPxQxRxSx+zL%rp4y*jXuYuTl(o)o*o+o5y,jLjMjTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQprzsztzuzsvtv;l=lcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAz%x'x(x)x*x+x,x-x.x/x~lBz]jXpYpem3k4k5k6k)v'i5h6h`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzDzEzFzGzHzIzJzKzLzMzNz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmBwCw'z(zUwVw$m%mOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2w:x;x=x?x@x[x]x^x_x`x
130 if origin is Union or origin is UnionType: 2[o{x7jCtDt^k9o!o#o$o|x9jtjujpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjyGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonkylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpUyVyWyXy|t}tElFlEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3yJxKxLxMxNxOxPxQxRxSx+zL%rp4y*jXuYuTl(o)o*o+o5y,jLjMjTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*y1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQprzsztzuzsvtv;l=lcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAz%x'x(x)x*x+x,x-x.x/x~lBz]jXpYpem3k4k5k6k)v'i5h6h`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]v^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzDzEzFzGzHzIzJzKzLzMzNz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmBwCw'z(zUwVw$m%mOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2w:x;x=x?x@x[x]x^x_x`x
131 for arg in get_args(annotation): 2^ktjujGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon|t}tElFlEnFnGnHn3%4%2%TlLjMj1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.nsvtv;l=lcodoeofoem5h6h^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkUwVw$m%mOoPoQoRo
132 if lenient_issubclass(arg, bytes): 2^ktjujGt[m~k]mal^mHt_mbl`mIt{mcl|mdl}mel~mflanJtbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon|t}tElFlEnFnGnHn3%2%TlLjMj1uYnZlZn0l0n2u1n1l2n3u3n2l4n3l5n4l6n5l7n4u8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.nsvtv;l=lcodoeofoem5h6h^vrokmsolmto_vuommvo`vwonmxoomyopmzoqmAo{vBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkUwVw$m%mOoPoQoRo
133 return True 2^kGt~kalHtblItcldlelflJtgl|t}tElFl3%E~Tl1uZl0l2u1l3u2l3l4l5l4u6lsvtv;l=lem^vkmlm_vmm`vnmompmqm{vrmUwVw$m%m
134 return False 2[o{x7jCtDt9o!o#o$o|x9jtjujpx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjy[m]m^m_m`m{m|m}m~manbncnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonkylymynyoypyqyrysytyuyvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpUyVyWyXyEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3yJxKxLxMxNxOxPxQxRxSx+zL%rp4y*jXuYu(o)o*o+o5y,jLjMjTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*yYnZn0n1n2n3n4n5n6n7n8n9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y,y-y.y/y:y;y=y?y@y[y]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQprzsztzuzcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAz%x'x(x)x*x+x,x-x.x/x~lBz]jXpYp3k4k5k6k)v'i5h6h`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]vrosotouovowoxoyozoAoBoCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzDzEzFzGzHzIzJzKzLzMzNz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmBwCw'z(zOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2w:x;x=x?x@x[x]x^x_x`x
137def is_uploadfile_or_nonable_uploadfile_annotation(annotation: Any) -> bool: 1bcda
138 if lenient_issubclass(annotation, UploadFile): 2b f ]o.f7jj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYc/pRp4i[i5i]iKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g*j^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1c^pUp_pVpej#ifj$i3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd]j%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5chq9piq!pjq#prj*isj+iEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
139 return True 2]o7j/pRpKj^i5%F~sp*j^pUp_pVp3jgjam]jhq9piq!pjq#pEi8fFi9fGi!f
140 origin = get_origin(annotation) 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYc4i[i5i]iKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1cej#ifj$i3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5crj*isj+iEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
141 if origin is Union or origin is UnionType: 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYc4i[i5i]iKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1cej#ifj$i3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5crj*isj+iEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
142 for arg in get_args(annotation): 2b f j k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc4i[i5i]i% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g ^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cej#ifj$iVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e %b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5crj*isj+iqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
143 if lenient_issubclass(arg, UploadFile): 2b f j k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc4i[i5i]i% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g ^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cej#ifj$iVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e %b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5crj*isj+iqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
144 return True 24i[i5i]iG~H~ej#ifj$irj*isj+i
145 return False 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYcKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1c3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5cEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
148def is_bytes_sequence_annotation(annotation: Any) -> bool: 1bcda
149 origin = get_origin(annotation) 2[o{x7j,z-zCtDt^kEt]N^N_N9o~AaB!o#o$obB|x9jtjuj.i/i:ipx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjy[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonky.zly/zmyny:zoypy;zqy=zry?zsy@ztyuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%BpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qUyVy]z^z_z`zWyXyElFlEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3y?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFJxKxLxMxNxOxPxQxRxSx.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+zL%rp4y*j{z|zXuYuTlZu-O.O/O(oKFLF)o*o+oMF5y,jLjMj{i|i}iTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*yYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y}z,y~z-y.yaA/y:ybA;ycA=ydA?yeA@y[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rrzszgAhAiAjAtzuz;l=lcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAzAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J%x'x(x)x*x+x,x-x.x/x,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lBz]jkAlAXpYpem(v#P$P%P3k.J/J4k5k6k:J)v'i5h6hjjkjlj`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]vrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzmADznAEzFzoAGzHzpAIzqAJzrAKzsALzMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sBwCw?A@A[A]A'z(z$m%mOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2wLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N:x;x=x?x@x[x]x^x_x`x,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
150 if origin is Union or origin is UnionType: 2[o{x7j,z-zCtDt^kEt]N^N_N9o~AaB!o#o$obB|x9jtjuj.i/i:ipx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjy[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonky.zly/zmyny:zoypy;zqy=zry?zsy@ztyuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%BpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qUyVy]z^z_z`zWyXyElFlEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3y?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFJxKxLxMxNxOxPxQxRxSx.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+zL%rp4y*j{z|zXuYuTlZu-O.O/O(oKFLF)o*o+oMF5y,jLjMj{i|i}iTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*yYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y}z,y~z-y.yaA/y:ybA;ycA=ydA?yeA@y[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rrzszgAhAiAjAtzuz;l=lcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAzAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J%x'x(x)x*x+x,x-x.x/x,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lBz]jkAlAXpYpem(v#P$P%P3k.J/J4k5k6k:J)v'i5h6hjjkjlj`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]vrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzmADznAEzFzoAGzHzpAIzqAJzrAKzsALzMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sBwCw?A@A[A]A'z(z$m%mOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2wLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N:x;x=x?x@x[x]x^x_x`x,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
151 at_least_one = False 2[o^kEt9o!o#o$otjuj.i/i:i[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qElFlEnFnGnHn.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+z0%rpTlZu(o)o*o+oLjMj{i|i}iYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8r;l=lcodoeofo,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lem(v3k4k5k6k5h6hjjkjljrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s$m%mOoPoQoRo,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
152 for arg in get_args(annotation): 2[o^kEt9o!o#o$otjuj.i/i:i[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qElFlEnFnGnHn.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+z0%rpTlZu(o)o*o+oLjMj{i|i}iYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8r;l=lcodoeofo,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lem(v3k4k5k6k5h6hjjkjljrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s$m%mOoPoQoRo,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
153 if is_bytes_sequence_annotation(arg): 2[o^kEt9o!o#o$otjuj.i/i:i[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qElFlEnFnGnHn.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+z0%rpTlZu(o)o*o+oLjMj{i|i}iYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8r;l=lcodoeofo,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lem(v3k4k5k6k5h6hjjkjljrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s$m%mOoPoQoRo,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
154 at_least_one = True 2[otjujwjxjyjzjAjBjCjDjEjFjGjHj+z4%rpLjMjOjPjQjRjSjTjUjVjWjXjYjZj~l5h6h8h9h!h#h$h%h'h(h)h*h+h,h
155 continue 2[otjujwjxjyjzjAjBjCjDjEjFjGjHj+z4%rpLjMjOjPjQjRjSjTjUjVjWjXjYjZj~l5h6h8h9h!h#h$h%h'h(h)h*h+h,h
156 return at_least_one 2[o^kEt9o!o#o$otjuj.i/i:i[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjon^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qElFlEnFnGnHn.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+z0%rpTlZu(o)o*o+oLjMj{i|i}iYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.ntpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8r;l=lcodoeofo,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lem(v3k4k5k6k5h6hjjkjljrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfksmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6s$m%mOoPoQoRo,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
157 return field_annotation_is_sequence(annotation) and all( 2[o{x7j,z-zCtDt^kEt]N^N_N9o~AaB!o#o$obB|x9jtjuj.i/i:ipx}xqx~xrxaysxbytxcyuxdyvxeywxfyxxgyyxhyzxiyAxjy[m~k]mal^m_mbl`m{mcl|mdl}mel~mflanbnglcnwjdnxjenyjfnzjgnAjhnBjinCjjnDjknEjlnFjmnGjnnHjonky.zly/zmyny:zoypy;zqy=zry?zsy@ztyuy[zvywyxyyyzyAyByCyDyEyFyGyHyIyJyKyLyMyNyOyPyQyRySyTy^o_o`o{o|o}o~oapbpcpdpepfpgphpipjpkplpmpnpopppqpuqvqwqxqyqzqAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqRqQBRBSBTBUBVBWBXBYBZB0B1B2B3B4B5B6B7B8B9B!B#B$B%BpnUqVqWqXqYqqnZq0q1q2q3q4qrn5q6q7q8qUyVy]z^z_z`zWyXyElFlEnFnGnHnYyZyBxCxDxExFxGx0y1yHxIx2y3y?E@E[E]E^E_E`E{E|E}E~EaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFJxKxLxMxNxOxPxQxRxSx.q/q:q;q=q?q@q[q]q^q_q`q{q|q}q~qarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrHuIuJuKu+zL%1%rp4y*j{z|zXuYuTlZu-O.O/O(oKFLF)o*o+oMF5y,jLjMj{i|i}iTx6yUx7yVx8yWx9yXx!yYx#yZx$y0x%y1x'y2x(y3x)y4x*yYnZlZn0l0n1n1l2n3n2l4n3l5n4l6n5l7n8n6l9nOj!nPj#nQj$nRj%nSj'nTj(nUj)nVj*nWj+nXj,nYj-nZj.n+y}z,y~z-y.yaA/y:ybA;ycA=ydA?yeA@y[yfA]y^y_y`y{y|y}y~yazbzczdzezfzgzhzizjzkzlzmznzozpzqztpupvpwpxpypzpApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpurvrwrxryrzrArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr@F[F]F^F_F`F{F|F}F~FaGbGcGdGeGfGgGhGiGjGkGlGmGnG/nUrVrWrXrYr:nZr0r1r2r3r4r;n5r6r7r8rrzszgAhAiAjAtzuz;l=lcodoeofovzwz5x6x7x8x9x!xxzyz#x$xzzAzAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ0J1J2J3J4J5J%x'x(x)x*x+x,x-x.x/x,r-r.r/r:r;r=r?r@r[r]r^r_r`r{r|r}r~rasbscsdsesfsgshsisjskslsmsnsospsZv0v1v2v~lBz]jkAlAXpYpem(v#P$P%P3k.J/J4k5k6k:J)v'i5h6hjjkjlj`p+v{p,v|p-v}p.v~p/vaq:vbq;vcq=vdq?veq@vfq[vgq]vrokmsolmtouommvowonmxoomyopmzoqmAoBormCo8h_j9h`j!h{j#h|j$h}j%h~j'hak(hbk)hck*hdk+hek,hfkCzmADznAEzFzoAGzHzpAIzqAJzrAKzsALzMztANz|v}v~vawbwcwdwewfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwsmtmumvmwmxmymzmAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmsstsusvswsxsyszsAsBsCsDsEsFsGsHsIsJsKsLsMsNsOsPsBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKDoSsTsUsVsWsEoXsYsZs0s1s2sFo3s4s5s6sBwCw?A@A[A]A'z(z$m%mOoPoQoRo)z*zkqlqmqnqoqpqZw0wqqrq1w2wLNMNNNONPNQNRNSNTNUNVNWNXNYNZN0N1N2N3N4N5N6N7N8N9N!N#N$N%N'N(N)N:x;x=x?x@x[x]x^x_x`x,s-s.s/s:s;s=s?s@s[s]s^s_s`s{s|s}s~satbtctdtetftgthtitjtktltmtntotptlxmxnxox
158 is_bytes_or_nonable_bytes_annotation(sub_annotation)
159 for sub_annotation in get_args(annotation)
160 )
163def is_uploadfile_sequence_annotation(annotation: Any) -> bool: 1bcda
164 origin = get_origin(annotation) 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYcKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1c3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5cEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
165 if origin is Union or origin is UnionType: 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYcKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1c3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5cEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
166 at_least_one = False 2b f ]oj k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g sp^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e am%b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5cqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
167 for arg in get_args(annotation): 2b f ]oj k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g sp^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e am%b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5cqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
168 if is_uploadfile_sequence_annotation(arg): 2b f ]oj k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g sp^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e am%b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5cqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
169 at_least_one = True 2]o5%spam
170 continue 2]o5%spam
171 return at_least_one 2b f ]oj k l m n o p q 6cr 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 OcPc3 4 5 6 7 8 9 ! # $ XcYc% ' ( ) * + , - . / : ; = ? @ [ ] Zcc d g sp^ _ ` { | } ~ ab7cbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbScTcLbMbNbObPbQbRbSbTbUb0c1cVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$b2ca e am%b'b(b)b*b+b,b-b8c.b/b:b;b=b?b@b[b]b^b_b`b{b|b}b~bacbcccdcecfcVcgchcicjckclcmcncocpc3c4c5cqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcWc
172 return field_annotation_is_sequence(annotation) and all( 2b f ]o.fj k l m n o p q peqereseteuevewexeyezeAeHdIdJdKdLdMdNd/fOdPdQdRdSdTdUdvjzd6c:f$c%cr s t u v w BeCe;f=f?f@f[f]fx y z A B C ^f_f`f{f|f}fD E F G ~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGepgqgAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 HeIeJeKeLeMergsgXdYdtgugOcPcvgwgxgygzgAgBgCgDgEgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5eHgIg3 4 5 6 7 8 9 ! # $ XcYcKj^i6eZd0dZg0g1g2g3g4g5g7e8e9e6g7g8g9g1d2d3d4d!g#g5d6d7d8d9d!d#d$d$g%g!e#e% ' ( ) * + , - . / : ; = ? @ [ ] %dZc'g$e%e'ec d g sp(g^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?e'd(d)d*d+d,d-d)g.d/d:d;d=d?d@dNjCd7c*g(c)cbbcbdbebfbgb@e[e+g,g-g.g/g:ghbibjbkblbmb;g=g?g@g[g]gnbob^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_ejhkhDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb`e{e|e}e~eaflhmh^d_dnhohScTcphqhrhshthuhvhwhxhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfufAhBhLbMbNbObPbQbRbSbTbUb0c1c3jgjvfwf`d{d|d}dNhOhPhQhRhShThUhxfyfVhWhXhYh~daebeceZh0hdeeefegeheiejeke1h2hzfAfVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ble2c3hBfCfDfa e amFd%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPf=c?c@c[c]c^c_c4h`c{c|c}c~cadbd4j-c8c7h+c,c.b/b:b;bSf-h.h/h=b?b@b:h;h=h[b]b?h@h[h]h^h_h`hcdGdTfUf{h.c^b_b`b{b|b}b~bacbcccdcecfcVfWfXf|h}hdd~hVcaibicidieifiYfZf0f1f2f3f4f5f6f7fhiiigchcicjckclcmcncocpc3c4c5cEi8fFi9fGi!f#f$fedfdgdhdidjdHiIiJiKiLiMiNiOiPi%f'f(fQiRiSiTikdldmdndodpdUiViqdrdsdtdudvdwdxdWiXiYi)f*fqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNcydWcZi+f,f-f
173 is_uploadfile_or_nonable_uploadfile_annotation(sub_annotation)
174 for sub_annotation in get_args(annotation)
175 )
178def is_pydantic_v1_model_instance(obj: Any) -> bool: 1bcda
179 # TODO: remove this function once the required version of Pydantic fully
180 # removes pydantic.v1
181 try: 2M%N%O%P%pnqnrn^AQ%R%S%T%U%V%/n:n;n_AW%X%Y%Z%DoEoFo`A
182 with warnings.catch_warnings(): 2M%N%O%P%pnqnrn^AQ%R%S%T%U%V%/n:n;n_AW%X%Y%Z%DoEoFo`A
183 warnings.simplefilter("ignore", UserWarning) 2M%N%O%P%pnqnrn^AQ%R%S%T%U%V%/n:n;n_AW%X%Y%Z%DoEoFo`A
184 from pydantic import v1 2M%N%O%P%pnqnrn^AQ%R%S%T%U%V%/n:n;n_AW%X%Y%Z%DoEoFo`A
185 except ImportError: # pragma: no cover
186 return False
187 return isinstance(obj, v1.BaseModel) 2M%N%O%P%pnqnrn^AQ%R%S%T%U%V%/n:n;n_AW%X%Y%Z%DoEoFo`A
190def is_pydantic_v1_model_class(cls: Any) -> bool: 1bcda
191 # TODO: remove this function once the required version of Pydantic fully
192 # removes pydantic.v1
193 try: 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
194 with warnings.catch_warnings(): 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
195 warnings.simplefilter("ignore", UserWarning) 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
196 from pydantic import v1 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
197 except ImportError: # pragma: no cover
198 return False
199 return lenient_issubclass(cls, v1.BaseModel) 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
202def annotation_is_pydantic_v1(annotation: Any) -> bool: 1bcda
203 if is_pydantic_v1_model_class(annotation): 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd/Qvj:Q;Qzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d=QNj?Q@QCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd[Q4j]Q^Q-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
204 return True 2/Qvj:Q;Qzd=QNj?Q@QCd[Q4j]Q^Q-c
205 origin = get_origin(annotation) 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUdzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@dCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
206 if origin is Union or origin is UnionType: 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUdzd6c:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@dCd7c*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd-c8c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
207 for arg in get_args(annotation): 2b f j k l m n o p q #c6c%o$c%cr s t u 0iv w x y z A B C D E F G ynznH I J K L M N O P Q R S T U V W X Y Z 0 1 2 @i1i2iBnCnDnqkrkOcPcFgGg3 4 5 6 7 8 9 ! # $ JgKgLgMgNgOgPgQgRgSgTgUgVgWgXgQcRcYg4i[i5i]i'o% ' ( ) * + , - . / : ; = ? @ [ ] c d g ^ _ ` { | } ~ ab'c7c,o(c)cbbcbdbeb6ifbgbhbibjbkblbmbnbob_n`npbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbcjdj7i8i}n~naoboNkOkScTcyhzhLbMbNbObPbQbRbSbTbUbChDhEhFhGhHhIhJhKhLhUcMhej#ifj$i-oVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ba e %b'b(b)b*b+b,b-b*c8c.o+c,c.b/b(i:b;b=b?b@b[b]bKo^b_b`b{b|b}b~bacbcccdcecfcpj)iMoNoqjVcgigchcicjckclcmcncocpcjikiliminioipiqirisitiuiviwixiyih i CiDirj*isj+i@oqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc
208 if is_pydantic_v1_model_class(arg): 2b f j k l m n o p q #c6c%o$c%cr s t u 0iv w x y z A B C D E F G ynznH I J K L M N O P Q R S T U V W X Y Z 0 1 2 @i1i2iBnCnDnqkrkOcPcFgGg3 4 5 6 7 8 9 ! # $ JgKgLgMgNgOgPgQgRgSgTgUgVgWgXgQcRcYg4i[i5i]i'o% ' ( ) * + , - . / : ; = ? @ [ ] c d g ^ _ ` { | } ~ ab'c7c,o(c)cbbcbdbeb6ifbgbhbibjbkblbmbnbob_n`npbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKbcjdj7i8i}n~naoboNkOkScTcyhzhLbMbNbObPbQbRbSbTbUbChDhEhFhGhHhIhJhKhLhUcMhej#ifj$i-oVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$ba e %b'b(b)b*b+b,b-b*c8c.o+c,c.b/b(i:b;b=b?b@b[b]bKo^b_b`b{b|b}b~bacbcccdcecfcpj)iMoNoqjVcgigchcicjckclcmcncocpcjikiliminioipiqirisitiuiviwixiyih i CiDirj*isj+i@oqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc
209 return True 26c7c8c
210 if field_annotation_is_sequence(annotation): 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUdzd:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@dCd*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd-c7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f
211 for sub_annotation in get_args(annotation): 2b f HdIdJdKdLdMdNdnk{k|k}kok,i-iOdPdQdRdSdTdUdzd(p)p9q!qVdWd*p+p,pAdBd-p.pXdYdqkrkQcRc3iJjKj^iSpTpZd0d1d2d3d4d5d6d7d8d9d!d#d$d%dc d g 'd(d)d*d+d,d-dKkWlXlYlLk_i`i.d/d:d;d=d?d@dCd:p;p9r!r[d]d=p?p@pDdEd[p]p^d_dNkOkUc9i!i2j3jgjWp`d{d|d}d~daebecedeeefegeheiejekelea e =c?c@c[c]c^c_chjhmimjmijQfRf`c{c|c}c~cadbd-c/o:o7s8scd;o=o.c?oddqjh i meneoe5j6jEi8fFi9fGi!fSoToUoedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdyd
212 if annotation_is_pydantic_v1(sub_annotation): 2b f HdIdJdKdLdMdNdnkok,i-iOdPdQdRdSdTdUdzd(p)pVdWd*p+p,pAdBd-p.pXdYdqkrkQcRc3iKj^iSpTpZd0d1d2d3d4d5d6d7d8d9d!d#d$d%dc d g 'd(d)d*d+d,d-dKkLk_i`i.d/d:d;d=d?d@dCd:p;p[d]d=p?p@pDdEd[p]p^d_dNkOkUc9i!i3jgjWp`d{d|d}d~daebecedeeefegeheiejekelea e =c?c@c[c]c^c_chjijQfRf`c{c|c}c~cadbd-c/o:ocd;o=o.c?oddqjh i meneoeEi8fFi9fGi!fSoToUoedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdyd
213 return True 2zdCd-c
214 return False 2b =m=k?kqtrtf .fstttutvtwtxt7jytj k l m n o p q peqereseteuevewexeyezeAesqztAtBt@k[k]kHdIdJdKdLdMdNd/f_k`k?mnk@m{k|k}kok8j,i#c-i9jtqOdPdQdRdSdTdUd:f.iFt/i:ipk;i=i?i%oKtLt(p)pMtNtOtPtQtRtStSqTqTtUt$c%cVtWt9q!qr s t u hlil0iv w BeCe;f=f?f@f[f]fx y sntnunz A B C ^f_f`f{f|f}fD E F G vnwnxn~fagbgcgdgegfggghgigjgkglgmgVdWdngogDeEeFeGeXtYtZt0t1t2t3t4t5t6tynznjlkl7t8t*p+p9t,ppgqg!t#tAdBdH I J K L M N O P Q R S T U V W X Y Z 0 1 2 #q$t$qllmlnlolplqlrlsltlHeIeJeKe%t%q't'[email protected](t)tXdYd*t+t,t-t.t/t:t;t=t?t@t[t]tBn^t_tCnDn`t{tqkrktgugOcPcvgwgxgygzgAgBgCgDgEgsktkFgGgNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e!j#j$j%j'j(jHgIg3 4 5 6 7 8 9 ! # $ ukJgvkwkKgLgxkMgykNgwlxlylzlAlBlClDlzkOgAkPgBkQgRgCkDkSgEkTgFkUgGkVgHkIkWgXg/cQc:cRcIj3i)jJjJkYgXcYc/pRp4i[i5i]i~t(qau)qKj^ibucuSpTpdueufuguhuiujuku*qlu+q,qmunu-q6eZd0dZg0g1g2g3g'o4g5gGlHlIlJlKlLl7e8e9e6g7g8g9gInJnKnLnMnNnOnPnQnRnSnoupuqurusutuuuvuwuxuyu1d2d3d4dzuAuBuCu!g#g5d6d7d8d9d!d#d$dDu$g%gMl!e#eNl% ' ( ) * + , - . / : ; = ? @ [ ] TnUn%dZcEuFuGu'g$e%e'ec d VnOlPlLuMug (gNuOuPuQuRuSu*jTu^ _ ` { | } ~ ab(e)e*e+e,e-e.e/e:e;e=e?esrUuVuWuQlRlSl'd(d)d*d+d,d-d)gUlVlWnKkXnWlXlYlLk+j_i'c`i,jtr.d/d:d;d=d?d@d*g{i0u|i}iMk~iajbj,o5u6u:p;p7u8u9u!u#u$u%uSrTr'u(u(c)c)u*u9r!rbbcbdbeb7l6ifbgb@e[e+g,g-g.g/g:ghbib=n?n@n[njbkblbmb;g=g?g@g[g]gnbob]n^n^g_g`g{g|g}g~gahbhchdhehfhgh[d]dhhih]e^e_e+u,u-u.u/u:u;u=u_n`n8l9l?u@u=p?p[u@pjhkh]u^uDdEdpbqbrbsbtbubvbwbxbybzbAbBbCbDbEbFbGbHbIbJbKb_u#r`u$r!l#l$l%l'l(l)l*l`e{e|e}e{u%r|u'r~eaf+l,l{ncj|ndjlhmh7i8i[p]p}u~u^d_davbvcvdvevfvgvhvivjvkvlvmvnv}n~novpvaoboqvrvNkOknhohScTcphqhrhshthuhvhwhxhPkQkyhzhbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsftfuf-j.j/j:j;[email protected]/l:lUkFhVkGhWkHhXkIhYkZk0kJhKh1kLh;cUc0j9i1j!i[j2j2kMh0c1c^pUp_pVpej#ifj$iuv(r3jgjvvWpwvxvyvzvAvBvCvDv)rEv*rFv+rvfwf`d{d|d}dNhOhPhQhRhSh-oThUh?l@l[l]l^l_lxfyfVhWhXhYhgohoiojokolomoGvHvIvJvKvLvMvNvOvPv~daebeceQvRvSvTvZh0hdeeefegeheiejekeUvVv1h2h`lzfAf{lVbWbXbYbZb0b1b2b3b4b5b6b7b8b9b!b#b$bnooole2cWvXvYv3hBfCfDfa po|l}l3v4ve Fd5v6v7v8v9v!v]j#v%b'b(b)b*b+b,b-bEfFfGfHfIfJfKfLfMfNfOfPfqs$v%v'vbmcmdm=c?c@c[c]c^c_c4hfmgm^jhjqohmimjmij%iQf*cRf'irs`c{c|c}c~cadbd7hjj*vkjlj7kmjnjoj.ovwww/o:oZp0p1p2p3p4p5pQsRsxwyw+c,czwAw7s8s.b/bQm(i:b;bSf-h.h/h=bGoHo?b@b:h;h=h[b]bIoJo?h@h[h]h^h_h`hcdGdTfUfDwEwFwGwHwKoRmSm6p;o7p=o{hIw.c^b_b`b{b|b}b~bacbcccdcecfcJw9sTmUmVmWmXmYmVfWfKw!sXfZmLopj|h}h)i?o8pddLwMwNwOwPwQwRwMoSwNoTwqj~hVcaibicidieifi8kgiYfZf0f1f2f3f4f5f6f7fgkhkikjkkkhiiigchcicjckclcmcncocpcji9kki!k#kli$kmi%kni0m1m2m3m4m5m6m7m8m9m!m#m'koi(kpiqi)kri*ksiti+kui,kviwi-kxi.kyi/k9ch !ci zimeAineBioelk5jmk6j:kCiDi;k3c4c5chq9piq!pjq#prj*isj+iWw#sXw$sYw%sEi8fFi9fGi!f$pSo%pTo'pUo3w4w5w6w7w8w9w!w#w$w%w'w(w's)w(s*w)s+w,w*s+s#f$fedfdgdhdidjdHiIiJiKiLiMi@oNiOiPi'm(m)m*m+m,m-m.m/m%f'f(fQiRiSiTiVoWoXoYoZo0o1o2o3o4o5o6o-w.w/w:w;w=w?w@w[w]w^w_w`w{w|w}w~wkdldmdndodpdaxbxcxdxexfxUiViqdrdsdtdudvdwdxdgxhxWiXiYi:m)f*f;mqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcHcIcJcKcLcMcNc7o8oydWcixjxkxZi+f,f-f