Coverage for sqlmodel/main.py: 93%
353 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-07 05:42 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-07 05:42 +0000
1import ipaddress 1gabcdef
2import uuid 1gabcdef
3import weakref 1gabcdef
4from datetime import date, datetime, time, timedelta 1gabcdef
5from decimal import Decimal 1gabcdef
6from enum import Enum 1gabcdef
7from pathlib import Path 1gabcdef
8from typing import ( 1gabcdef
9 TYPE_CHECKING,
10 AbstractSet,
11 Any,
12 Callable,
13 ClassVar,
14 Dict,
15 List,
16 Mapping,
17 Optional,
18 Sequence,
19 Set,
20 Tuple,
21 Type,
22 TypeVar,
23 Union,
24 cast,
25 overload,
26)
28from pydantic import BaseModel, EmailStr 1gabcdef
29from pydantic.fields import FieldInfo as PydanticFieldInfo 1gabcdef
30from sqlalchemy import ( 1gabcdef
31 Boolean,
32 Column,
33 Date,
34 DateTime,
35 Float,
36 ForeignKey,
37 Integer,
38 Interval,
39 Numeric,
40 inspect,
41)
42from sqlalchemy import Enum as sa_Enum 1gabcdef
43from sqlalchemy.orm import ( 1gabcdef
44 Mapped,
45 RelationshipProperty,
46 declared_attr,
47 registry,
48 relationship,
49)
50from sqlalchemy.orm.attributes import set_attribute 1gabcdef
51from sqlalchemy.orm.decl_api import DeclarativeMeta 1gabcdef
52from sqlalchemy.orm.instrumentation import is_instrumented 1gabcdef
53from sqlalchemy.sql.schema import MetaData 1gabcdef
54from sqlalchemy.sql.sqltypes import LargeBinary, Time, Uuid 1gabcdef
55from typing_extensions import Literal, TypeAlias, deprecated, get_origin 1gabcdef
57from ._compat import ( # type: ignore[attr-defined] 1gabcdef
58 IS_PYDANTIC_V2,
59 PYDANTIC_MINOR_VERSION,
60 BaseConfig,
61 ModelField,
62 ModelMetaclass,
63 Representation,
64 SQLModelConfig,
65 Undefined,
66 UndefinedType,
67 _calculate_keys,
68 finish_init,
69 get_annotations,
70 get_config_value,
71 get_field_metadata,
72 get_model_fields,
73 get_relationship_to,
74 get_sa_type_from_field,
75 init_pydantic_private_attrs,
76 is_field_noneable,
77 is_table_model_class,
78 post_init_field_info,
79 set_config_value,
80 sqlmodel_init,
81 sqlmodel_validate,
82)
83from .sql.sqltypes import AutoString 1gabcdef
85if TYPE_CHECKING: 1gabcdef
86 from pydantic._internal._model_construction import ModelMetaclass as ModelMetaclass
87 from pydantic._internal._repr import Representation as Representation
88 from pydantic_core import PydanticUndefined as Undefined
89 from pydantic_core import PydanticUndefinedType as UndefinedType
91_T = TypeVar("_T") 1gabcdef
92NoArgAnyCallable = Callable[[], Any] 1gabcdef
93IncEx: TypeAlias = Union[ 1gabcdef
94 Set[int],
95 Set[str],
96 Mapping[int, Union["IncEx", bool]],
97 Mapping[str, Union["IncEx", bool]],
98]
99OnDeleteType = Literal["CASCADE", "SET NULL", "RESTRICT"] 1gabcdef
102def __dataclass_transform__( 1abcdef
103 *,
104 eq_default: bool = True,
105 order_default: bool = False,
106 kw_only_default: bool = False,
107 field_descriptors: Tuple[Union[type, Callable[..., Any]], ...] = (()),
108) -> Callable[[_T], _T]:
109 return lambda a: a 1gabcdef
112class FieldInfo(PydanticFieldInfo): 1gabcdef
113 def __init__(self, default: Any = Undefined, **kwargs: Any) -> None: 1gabcdef
114 primary_key = kwargs.pop("primary_key", False) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
115 nullable = kwargs.pop("nullable", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
116 foreign_key = kwargs.pop("foreign_key", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
117 ondelete = kwargs.pop("ondelete", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
118 unique = kwargs.pop("unique", False) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
119 index = kwargs.pop("index", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
120 sa_type = kwargs.pop("sa_type", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
121 sa_column = kwargs.pop("sa_column", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
122 sa_column_args = kwargs.pop("sa_column_args", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
123 sa_column_kwargs = kwargs.pop("sa_column_kwargs", Undefined) 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
124 if sa_column is not Undefined: 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
125 if sa_column_args is not Undefined: 2!m6oor~ovrJrCrZo[o*nRm7oprapwrKrDr0o]o#nSm8oqrbpxrLrEr1o^o$nTm9orrcpyrMrFr2o_o%nUm!osrdpzrNrGr3o`o'nVm#otrepArOrHr4o{o(nWm$ourfpBrPrIr5o|o)n
126 raise RuntimeError( 2JrKrLrMrNrOrPr
127 "Passing sa_column_args is not supported when "
128 "also passing a sa_column"
129 )
130 if sa_column_kwargs is not Undefined: 2!m6oor~ovrCrZo[o*nRm7oprapwrDr0o]o#nSm8oqrbpxrEr1o^o$nTm9orrcpyrFr2o_o%nUm!osrdpzrGr3o`o'nVm#otrepArHr4o{o(nWm$ourfpBrIr5o|o)n
131 raise RuntimeError( 2CrDrErFrGrHrIr
132 "Passing sa_column_kwargs is not supported when "
133 "also passing a sa_column"
134 )
135 if primary_key is not Undefined: 2!m6oor~ovrZo[o*nRm7oprapwr0o]o#nSm8oqrbpxr1o^o$nTm9orrcpyr2o_o%nUm!osrdpzr3o`o'nVm#otrepAr4o{o(nWm$ourfpBr5o|o)n
136 raise RuntimeError( 2vrwrxryrzrArBr
137 "Passing primary_key is not supported when also passing a sa_column"
138 )
139 if nullable is not Undefined: 2!m6oor~oZo[o*nRm7oprap0o]o#nSm8oqrbp1o^o$nTm9orrcp2o_o%nUm!osrdp3o`o'nVm#otrep4o{o(nWm$ourfp5o|o)n
140 raise RuntimeError( 2orprqrrrsrtrur
141 "Passing nullable is not supported when also passing a sa_column"
142 )
143 if foreign_key is not Undefined: 2!m6o~oZo[o*nRm7oap0o]o#nSm8obp1o^o$nTm9ocp2o_o%nUm!odp3o`o'nVm#oep4o{o(nWm$ofp5o|o)n
144 raise RuntimeError( 2!mRmSmTmUmVmWm
145 "Passing foreign_key is not supported when also passing a sa_column"
146 )
147 if ondelete is not Undefined: 26o~oZo[o*n7oap0o]o#n8obp1o^o$n9ocp2o_o%n!odp3o`o'n#oep4o{o(n$ofp5o|o)n
148 raise RuntimeError( 2~oapbpcpdpepfp
149 "Passing ondelete is not supported when also passing a sa_column"
150 )
151 if unique is not Undefined: 26oZo[o*n7o0o]o#n8o1o^o$n9o2o_o%n!o3o`o'n#o4o{o(n$o5o|o)n
152 raise RuntimeError( 2[o]o^o_o`o{o|o
153 "Passing unique is not supported when also passing a sa_column"
154 )
155 if index is not Undefined: 26oZo*n7o0o#n8o1o$n9o2o%n!o3o'n#o4o(n$o5o)n
156 raise RuntimeError( 26o7o8o9o!o#o$o
157 "Passing index is not supported when also passing a sa_column"
158 )
159 if sa_type is not Undefined: 2Zo*n0o#n1o$n2o%n3o'n4o(n5o)n
160 raise RuntimeError( 2Zo0o1o2o3o4o5o
161 "Passing sa_type is not supported when also passing a sa_column"
162 )
163 if ondelete is not Undefined: 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
164 if foreign_key is Undefined: 2So5dqdydrdsdtdToYd{ ;b| ( } UoZddbeb}b~bfbgb) * hbibVo0dpbqbrbqcrcscsbtbub+ , - vbwbxbWo1dEbFbGbLcMcNcHbIbJb. / : KbLbMbXo2dTbUbVb6c7c8cWbXbYb; = ? Zb0b1bYo3d8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b
165 raise RuntimeError("ondelete can only be used with foreign_key") 2SoToUoVoWoXoYo
166 super().__init__(default=default, **kwargs) 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
167 self.primary_key = primary_key 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
168 self.nullable = nullable 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
169 self.foreign_key = foreign_key 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
170 self.ondelete = ondelete 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
171 self.unique = unique 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
172 self.index = index 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
173 self.sa_type = sa_type 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
174 self.sa_column = sa_column 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
175 self.sa_column_args = sa_column_args 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
176 self.sa_column_kwargs = sa_column_kwargs 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
179class RelationshipInfo(Representation): 1gabcdef
180 def __init__( 1abcdef
181 self,
182 *,
183 back_populates: Optional[str] = None,
184 cascade_delete: Optional[bool] = False,
185 passive_deletes: Optional[Union[bool, Literal["all"]]] = False,
186 link_model: Optional[Any] = None,
187 sa_relationship: Optional[RelationshipProperty] = None, # type: ignore
188 sa_relationship_args: Optional[Sequence[Any]] = None,
189 sa_relationship_kwargs: Optional[Mapping[str, Any]] = None,
190 ) -> None:
191 if sa_relationship is not None: 2LoEo4d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdMoFoRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bNoGoSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcOoHoTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycPoIoUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcQoJoVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cRoKoWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
192 if sa_relationship_args is not None: 2LoEo4dMoFoRdNoGoSdOoHoTdPoIoUdQoJoVdRoKoWd
193 raise RuntimeError( 2LoMoNoOoPoQoRo
194 "Passing sa_relationship_args is not supported when "
195 "also passing a sa_relationship"
196 )
197 if sa_relationship_kwargs is not None: 2Eo4dFoRdGoSdHoTdIoUdJoVdKoWd
198 raise RuntimeError( 2EoFoGoHoIoJoKo
199 "Passing sa_relationship_kwargs is not supported when "
200 "also passing a sa_relationship"
201 )
202 self.back_populates = back_populates 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
203 self.cascade_delete = cascade_delete 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
204 self.passive_deletes = passive_deletes 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
205 self.link_model = link_model 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
206 self.sa_relationship = sa_relationship 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
207 self.sa_relationship_args = sa_relationship_args 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
208 self.sa_relationship_kwargs = sa_relationship_kwargs 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
211# include sa_type, sa_column_args, sa_column_kwargs
212@overload 1gabcdef
213def Field( 1abcdef
214 default: Any = Undefined, 1gabcdef
215 *,
216 default_factory: Optional[NoArgAnyCallable] = None, 1gabcdef
217 alias: Optional[str] = None, 1gabcdef
218 title: Optional[str] = None, 1gabcdef
219 description: Optional[str] = None, 1gabcdef
220 exclude: Union[ 1abcdef
221 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
222 ] = None, 1gabcdef
223 include: Union[ 1abcdef
224 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
225 ] = None, 1gabcdef
226 const: Optional[bool] = None, 1gabcdef
227 gt: Optional[float] = None, 1gabcdef
228 ge: Optional[float] = None, 1gabcdef
229 lt: Optional[float] = None, 1gabcdef
230 le: Optional[float] = None, 1gabcdef
231 multiple_of: Optional[float] = None, 1gabcdef
232 max_digits: Optional[int] = None, 1gabcdef
233 decimal_places: Optional[int] = None, 1gabcdef
234 min_items: Optional[int] = None, 1gabcdef
235 max_items: Optional[int] = None, 1gabcdef
236 unique_items: Optional[bool] = None, 1gabcdef
237 min_length: Optional[int] = None, 1gabcdef
238 max_length: Optional[int] = None, 1gabcdef
239 allow_mutation: bool = True, 1gabcdef
240 regex: Optional[str] = None, 1gabcdef
241 discriminator: Optional[str] = None, 1gabcdef
242 repr: bool = True, 1gabcdef
243 primary_key: Union[bool, UndefinedType] = Undefined, 1gabcdef
244 foreign_key: Any = Undefined, 1gabcdef
245 unique: Union[bool, UndefinedType] = Undefined, 1gabcdef
246 nullable: Union[bool, UndefinedType] = Undefined, 1gabcdef
247 index: Union[bool, UndefinedType] = Undefined, 1gabcdef
248 sa_type: Union[Type[Any], UndefinedType] = Undefined, 1gabcdef
249 sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined, 1gabcdef
250 sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined, 1gabcdef
251 schema_extra: Optional[Dict[str, Any]] = None, 1gabcdef
252) -> Any: ... 1gabcdef
255# When foreign_key is str, include ondelete
256# include sa_type, sa_column_args, sa_column_kwargs
257@overload 1gabcdef
258def Field( 1abcdef
259 default: Any = Undefined, 1gabcdef
260 *,
261 default_factory: Optional[NoArgAnyCallable] = None, 1gabcdef
262 alias: Optional[str] = None, 1gabcdef
263 title: Optional[str] = None, 1gabcdef
264 description: Optional[str] = None, 1gabcdef
265 exclude: Union[ 1abcdef
266 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
267 ] = None, 1gabcdef
268 include: Union[ 1abcdef
269 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
270 ] = None, 1gabcdef
271 const: Optional[bool] = None, 1gabcdef
272 gt: Optional[float] = None, 1gabcdef
273 ge: Optional[float] = None, 1gabcdef
274 lt: Optional[float] = None, 1gabcdef
275 le: Optional[float] = None, 1gabcdef
276 multiple_of: Optional[float] = None, 1gabcdef
277 max_digits: Optional[int] = None, 1gabcdef
278 decimal_places: Optional[int] = None, 1gabcdef
279 min_items: Optional[int] = None, 1gabcdef
280 max_items: Optional[int] = None, 1gabcdef
281 unique_items: Optional[bool] = None, 1gabcdef
282 min_length: Optional[int] = None, 1gabcdef
283 max_length: Optional[int] = None, 1gabcdef
284 allow_mutation: bool = True, 1gabcdef
285 regex: Optional[str] = None, 1gabcdef
286 discriminator: Optional[str] = None, 1gabcdef
287 repr: bool = True, 1gabcdef
288 primary_key: Union[bool, UndefinedType] = Undefined, 1gabcdef
289 foreign_key: str, 1abcdef
290 ondelete: Union[OnDeleteType, UndefinedType] = Undefined, 1gabcdef
291 unique: Union[bool, UndefinedType] = Undefined, 1gabcdef
292 nullable: Union[bool, UndefinedType] = Undefined, 1gabcdef
293 index: Union[bool, UndefinedType] = Undefined, 1gabcdef
294 sa_type: Union[Type[Any], UndefinedType] = Undefined, 1gabcdef
295 sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined, 1gabcdef
296 sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined, 1gabcdef
297 schema_extra: Optional[Dict[str, Any]] = None, 1gabcdef
298) -> Any: ... 1gabcdef
301# Include sa_column, don't include
302# primary_key
303# foreign_key
304# ondelete
305# unique
306# nullable
307# index
308# sa_type
309# sa_column_args
310# sa_column_kwargs
311@overload 1gabcdef
312def Field( 1abcdef
313 default: Any = Undefined, 1gabcdef
314 *,
315 default_factory: Optional[NoArgAnyCallable] = None, 1gabcdef
316 alias: Optional[str] = None, 1gabcdef
317 title: Optional[str] = None, 1gabcdef
318 description: Optional[str] = None, 1gabcdef
319 exclude: Union[ 1abcdef
320 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
321 ] = None, 1gabcdef
322 include: Union[ 1abcdef
323 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
324 ] = None, 1gabcdef
325 const: Optional[bool] = None, 1gabcdef
326 gt: Optional[float] = None, 1gabcdef
327 ge: Optional[float] = None, 1gabcdef
328 lt: Optional[float] = None, 1gabcdef
329 le: Optional[float] = None, 1gabcdef
330 multiple_of: Optional[float] = None, 1gabcdef
331 max_digits: Optional[int] = None, 1gabcdef
332 decimal_places: Optional[int] = None, 1gabcdef
333 min_items: Optional[int] = None, 1gabcdef
334 max_items: Optional[int] = None, 1gabcdef
335 unique_items: Optional[bool] = None, 1gabcdef
336 min_length: Optional[int] = None, 1gabcdef
337 max_length: Optional[int] = None, 1gabcdef
338 allow_mutation: bool = True, 1gabcdef
339 regex: Optional[str] = None, 1gabcdef
340 discriminator: Optional[str] = None, 1gabcdef
341 repr: bool = True, 1gabcdef
342 sa_column: Union[Column[Any], UndefinedType] = Undefined, 1gabcdef
343 schema_extra: Optional[Dict[str, Any]] = None, 1gabcdef
344) -> Any: ... 1gabcdef
347def Field( 1abcdef
348 default: Any = Undefined,
349 *,
350 default_factory: Optional[NoArgAnyCallable] = None,
351 alias: Optional[str] = None,
352 title: Optional[str] = None,
353 description: Optional[str] = None,
354 exclude: Union[
355 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any
356 ] = None,
357 include: Union[
358 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any
359 ] = None,
360 const: Optional[bool] = None,
361 gt: Optional[float] = None,
362 ge: Optional[float] = None,
363 lt: Optional[float] = None,
364 le: Optional[float] = None,
365 multiple_of: Optional[float] = None,
366 max_digits: Optional[int] = None,
367 decimal_places: Optional[int] = None,
368 min_items: Optional[int] = None,
369 max_items: Optional[int] = None,
370 unique_items: Optional[bool] = None,
371 min_length: Optional[int] = None,
372 max_length: Optional[int] = None,
373 allow_mutation: bool = True,
374 regex: Optional[str] = None,
375 discriminator: Optional[str] = None,
376 repr: bool = True,
377 primary_key: Union[bool, UndefinedType] = Undefined,
378 foreign_key: Any = Undefined,
379 ondelete: Union[OnDeleteType, UndefinedType] = Undefined,
380 unique: Union[bool, UndefinedType] = Undefined,
381 nullable: Union[bool, UndefinedType] = Undefined,
382 index: Union[bool, UndefinedType] = Undefined,
383 sa_type: Union[Type[Any], UndefinedType] = Undefined,
384 sa_column: Union[Column, UndefinedType] = Undefined, # type: ignore
385 sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined,
386 sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined,
387 schema_extra: Optional[Dict[str, Any]] = None,
388) -> Any:
389 current_schema_extra = schema_extra or {} 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
390 field_info = FieldInfo( 2g 2fwfxfwm*m+msnHn!m6oor~ovrJrCrZo[o*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm7oprapwrKrDr0o]o#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm8oqrbpxrLrEr1o^o$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm9orrcpyrMrFr2o_o%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm!osrdpzrNrGr3o`o'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm#otrepArOrHr4o{o(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm$ourfpBrPrIr5o|o)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
391 default,
392 default_factory=default_factory,
393 alias=alias,
394 title=title,
395 description=description,
396 exclude=exclude,
397 include=include,
398 const=const,
399 gt=gt,
400 ge=ge,
401 lt=lt,
402 le=le,
403 multiple_of=multiple_of,
404 max_digits=max_digits,
405 decimal_places=decimal_places,
406 min_items=min_items,
407 max_items=max_items,
408 unique_items=unique_items,
409 min_length=min_length,
410 max_length=max_length,
411 allow_mutation=allow_mutation,
412 regex=regex,
413 discriminator=discriminator,
414 repr=repr,
415 primary_key=primary_key,
416 foreign_key=foreign_key,
417 ondelete=ondelete,
418 unique=unique,
419 nullable=nullable,
420 index=index,
421 sa_type=sa_type,
422 sa_column=sa_column,
423 sa_column_args=sa_column_args,
424 sa_column_kwargs=sa_column_kwargs,
425 **current_schema_extra,
426 )
427 post_init_field_info(field_info) 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
428 return field_info 2g 2fwfxfwm*m+msnHn!m*nLoEoloxmmo4dymzmAm1nvmrnInSo5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nMoFo;nzl=nRdAlBlClJnsl#munToYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nNoGo[nKl]nSdLlMlNlMntl$mwnUoZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nOoHo`nVl{nTdWlXlYlPnul%mynVo0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'nPoIo~n#laoUd$l%l'lSnvl'mAnWo1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(nQoJodo@leoVd[l]l^lVnwl(mCnXo2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)nRoKohogmioWdhmimjmYnxl)mEnYo3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
431@overload 1gabcdef
432def Relationship( 1abcdef
433 *,
434 back_populates: Optional[str] = None, 1gabcdef
435 cascade_delete: Optional[bool] = False, 1gabcdef
436 passive_deletes: Optional[Union[bool, Literal["all"]]] = False, 1gabcdef
437 link_model: Optional[Any] = None, 1gabcdef
438 sa_relationship_args: Optional[Sequence[Any]] = None, 1gabcdef
439 sa_relationship_kwargs: Optional[Mapping[str, Any]] = None, 1gabcdef
440) -> Any: ... 1gabcdef
443@overload 1gabcdef
444def Relationship( 1abcdef
445 *,
446 back_populates: Optional[str] = None, 1gabcdef
447 cascade_delete: Optional[bool] = False, 1gabcdef
448 passive_deletes: Optional[Union[bool, Literal["all"]]] = False, 1gabcdef
449 link_model: Optional[Any] = None, 1gabcdef
450 sa_relationship: Optional[RelationshipProperty[Any]] = None, 1gabcdef
451) -> Any: ... 1gabcdef
454def Relationship( 1abcdef
455 *,
456 back_populates: Optional[str] = None,
457 cascade_delete: Optional[bool] = False,
458 passive_deletes: Optional[Union[bool, Literal["all"]]] = False,
459 link_model: Optional[Any] = None,
460 sa_relationship: Optional[RelationshipProperty[Any]] = None,
461 sa_relationship_args: Optional[Sequence[Any]] = None,
462 sa_relationship_kwargs: Optional[Mapping[str, Any]] = None,
463) -> Any:
464 relationship_info = RelationshipInfo( 2LoEo4d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdMoFoRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bNoGoSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcOoHoTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycPoIoUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcQoJoVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cRoKoWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
465 back_populates=back_populates,
466 cascade_delete=cascade_delete,
467 passive_deletes=passive_deletes,
468 link_model=link_model,
469 sa_relationship=sa_relationship,
470 sa_relationship_args=sa_relationship_args,
471 sa_relationship_kwargs=sa_relationship_kwargs,
472 )
473 return relationship_info 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
476@__dataclass_transform__(kw_only_default=True, field_descriptors=(Field, FieldInfo)) 1gabcdef
477class SQLModelMetaclass(ModelMetaclass, DeclarativeMeta): 1gabcdef
478 __sqlmodel_relationships__: Dict[str, RelationshipInfo] 1gabcdef
479 model_config: SQLModelConfig 1gabcdef
480 model_fields: Dict[str, FieldInfo] # type: ignore[assignment] 1gabcdef
481 __config__: Type[SQLModelConfig] 1gabcdef
482 __fields__: Dict[str, ModelField] # type: ignore[assignment] 1gabcdef
484 # Replicate SQLAlchemy
485 def __setattr__(cls, name: str, value: Any) -> None: 1gabcdef
486 if is_table_model_class(cls): 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
487 DeclarativeMeta.__setattr__(cls, name, value) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
488 else:
489 super().__setattr__(name, value) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
491 def __delattr__(cls, name: str) -> None: 1gabcdef
492 if is_table_model_class(cls): 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
493 DeclarativeMeta.__delattr__(cls, name) 1gabcdef
494 else:
495 super().__delattr__(name) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
497 # From Pydantic
498 def __new__( 1abcdef
499 cls,
500 name: str,
501 bases: Tuple[Type[Any], ...],
502 class_dict: Dict[str, Any],
503 **kwargs: Any,
504 ) -> Any:
505 relationships: Dict[str, RelationshipInfo] = {} 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
506 dict_for_pydantic = {} 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
507 original_annotations = get_annotations(class_dict) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
508 pydantic_annotations = {} 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
509 relationship_annotations = {} 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
510 for k, v in class_dict.items(): 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
511 if isinstance(v, RelationshipInfo): 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
512 relationships[k] = v 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
513 else:
514 dict_for_pydantic[k] = v 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
515 for k, v in original_annotations.items(): 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
516 if k in relationships: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
517 relationship_annotations[k] = v 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
518 else:
519 pydantic_annotations[k] = v 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
520 dict_used = { 2a te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
521 **dict_for_pydantic,
522 "__weakref__": None,
523 "__sqlmodel_relationships__": relationships,
524 "__annotations__": pydantic_annotations,
525 }
526 # Duplicate logic from Pydantic to filter config kwargs because if they are
527 # passed directly including the registry Pydantic will pass them over to the
528 # superclass causing an error
529 allowed_config_kwargs: Set[str] = { 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
530 key
531 for key in dir(BaseConfig)
532 if not (
533 key.startswith("__") and key.endswith("__")
534 ) # skip dunder methods and attributes
535 }
536 config_kwargs = { 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
537 key: kwargs[key] for key in kwargs.keys() & allowed_config_kwargs
538 }
539 new_cls = super().__new__(cls, name, bases, dict_used, **config_kwargs) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
540 new_cls.__annotations__ = { 2a te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
541 **relationship_annotations,
542 **pydantic_annotations,
543 **new_cls.__annotations__,
544 }
546 def get_config(name: str) -> Any: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
547 config_class_value = get_config_value( 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
548 model=new_cls, parameter=name, default=Undefined
549 )
550 if config_class_value is not Undefined: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
551 return config_class_value 28g#f$f%f'f(f)f*f+f,f-f.f/f:f;f=f
552 kwarg_value = kwargs.get(name, Undefined) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
553 if kwarg_value is not Undefined: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
554 return kwarg_value 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
555 return Undefined 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
557 config_table = get_config("table") 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
558 if config_table is True: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAm1nvmrnIn5dnooopoBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClJnsl#munYd?n@n+nDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNlMntl$mwnZd^n_n,nOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlPnul%myn0d|n}n-nZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lSnvl'mAn1dboco.n(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lVnwl(mCn2dfogo/n_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmYnxl)mEn3djoko:nkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
559 # If it was passed by kwargs, ensure it's also set in config
560 set_config_value(model=new_cls, parameter="table", value=config_table) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
561 for k, v in get_model_fields(new_cls).items(): 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
562 col = get_column_from_field(v) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
563 setattr(new_cls, k, col) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
564 # Set a config flag to tell FastAPI that this should be read with a field
565 # in orm_mode instead of preemptively converting it to a dict.
566 # This could be done by reading new_cls.model_config['table'] in FastAPI, but
567 # that's very specific about SQLModel, so let's have another config that
568 # other future tools based on Pydantic can use.
569 set_config_value( 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAmvmrnIn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClsl#munYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNltl$mwnZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlul%myn0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lvl'mAn1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lwl(mCn2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmxl)mEn3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
570 model=new_cls, parameter="read_from_attributes", value=True
571 )
572 # For compatibility with older versions
573 # TODO: remove this in the future
574 set_config_value(model=new_cls, parameter="read_with_orm_mode", value=True) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAmvmrnIn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClsl#munYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNltl$mwnZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlul%myn0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lvl'mAn1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lwl(mCn2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmxl)mEn3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
576 config_registry = get_config("registry") 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
577 if config_registry is not Undefined: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
578 config_registry = cast(registry, config_registry) 1gabcdef
579 # If it was passed by kwargs, ensure it's also set in config
580 set_config_value(model=new_cls, parameter="registry", value=config_table) 1gabcdef
581 setattr(new_cls, "_sa_registry", config_registry) # noqa: B010 1gabcdef
582 setattr(new_cls, "metadata", config_registry.metadata) # noqa: B010 1gabcdef
583 setattr(new_cls, "__abstract__", True) # noqa: B010 1gabcdef
584 return new_cls 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
586 # Override SQLAlchemy, allow both SQLAlchemy and plain Pydantic models
587 def __init__( 1abcdef
588 cls, classname: str, bases: Tuple[type, ...], dict_: Dict[str, Any], **kw: Any
589 ) -> None:
590 # Only one of the base classes (or the current one) should be a table model
591 # this allows FastAPI cloning a SQLModel for the response_model without
592 # trying to create a new SQLAlchemy, for a new table, with the same name, that
593 # triggers an error
594 base_is_table = any(is_table_model_class(base) for base in bases) 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
595 if is_table_model_class(cls) and not base_is_table: 2g 2fwfxfwm*m+msnHn!m*nloxmmo4dymzmAmvmrnIn5dnooopoBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowoa te~daeylYmZm,mtnRm#n;nzl=nRdAlBlClsl#munYd?n@n+nDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqob CebeceJl0m1m-mvnSm$n[nKl]nSdLlMlNltl$mwnZd^n_n,nOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyoroc LeMedeeefegeUl2m3m/mxnTm%n`nVl{nTdWlXlYlul%myn0d|n}n-nZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosod 3e4eheiejeke!l4m5m=mznUm'n~n#laoUd$l%l'lvl'mAn1dboco.n(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotoe .e/elemeneoe?l6m7m[mBnVm(ndo@leoVd[l]l^lwl(mCn2dfogo/n_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouof cfdfpeqeresefm8m9m_mDnWm)nhogmioWdhmimjmxl)mEn3djoko:nkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
596 for rel_name, rel_info in cls.__sqlmodel_relationships__.items(): 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAmvmrnIn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClsl#munYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNltl$mwnZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlul%myn0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lvl'mAn1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lwl(mCn2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmxl)mEn3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
597 if rel_info.sa_relationship: 24d5dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
598 # There's a SQLAlchemy relationship declared, that takes precedence
599 # over anything else, use that and continue with the next attribute
600 setattr(cls, rel_name, rel_info.sa_relationship) # Fix #315 24dRdSdTdUdVdWd
601 continue 24dRdSdTdUdVdWd
602 raw_ann = cls.__annotations__[rel_name] 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
603 origin = get_origin(raw_ann) 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
604 if origin is Mapped: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
605 ann = raw_ann.__args__[0]
606 else:
607 ann = raw_ann 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
608 # Plain forward references, for models not yet defined, are not
609 # handled well by SQLAlchemy without Mapped, so, wrap the
610 # annotations in Mapped here
611 cls.__annotations__[rel_name] = Mapped[ann] # type: ignore[valid-type] 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
612 relationship_to = get_relationship_to( 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
613 name=rel_name, rel_info=rel_info, annotation=ann
614 )
615 rel_kwargs: Dict[str, Any] = {} 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
616 if rel_info.back_populates: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
617 rel_kwargs["back_populates"] = rel_info.back_populates 25dudvd*b+b,b^ odpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4b5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
618 if rel_info.cascade_delete: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
619 rel_kwargs["cascade"] = "all, delete-orphan" 2qd{ dbebpbqbrbEbFbGbTbUbVb8b9b!b
620 if rel_info.passive_deletes: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
621 rel_kwargs["passive_deletes"] = rel_info.passive_deletes 25drdsdtdYd| ( } Zdfbgb) * hbib0dsbtbub+ , - vbwbxb1dHbIbJb. / : KbLbMb2dWbXbYb; = ? Zb0b1b3d#b$b%b@ [ ] 'b(b)b
622 if rel_info.link_model: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
623 ins = inspect(rel_info.link_model) 2,b^ y h D E i j L M N k l m U V W n o p 3 4 5 q r s $ % ' t u v
624 local_table = getattr(ins, "local_table") # noqa: B009 2,b^ y h D E i j L M N k l m U V W n o p 3 4 5 q r s $ % ' t u v
625 if local_table is None: 2,b^ y h D E i j L M N k l m U V W n o p 3 4 5 q r s $ % ' t u v
626 raise RuntimeError(
627 "Couldn't find the secondary table for "
628 f"model {rel_info.link_model}"
629 )
630 rel_kwargs["secondary"] = local_table 2,b^ y h D E i j L M N k l m U V W n o p 3 4 5 q r s $ % ' t u v
631 rel_args: List[Any] = [] 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
632 if rel_info.sa_relationship_args: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
633 rel_args.extend(rel_info.sa_relationship_args)
634 if rel_info.sa_relationship_kwargs: 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
635 rel_kwargs.update(rel_info.sa_relationship_kwargs)
636 rel_value = relationship(relationship_to, *rel_args, **rel_kwargs) 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
637 setattr(cls, rel_name, rel_value) # Fix #315 25dudvd*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdYd-b.bw x y h _ ~c` Cd/b:b{ ;b| ( } =b?bZd@b[b]b^bz A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdc0decfcgchcicjcF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc1dzcAcBcCcDcEcO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc2dUcVcWcXcYcZcX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'c3d(c)c*c+c,c-c6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
638 # SQLAlchemy no longer uses dict_
639 # Ref: https://github.com/sqlalchemy/sqlalchemy/commit/428ea01f00a9cc7f85e435018565eb6da7af1b77
640 # Tag: 1.4.36
641 DeclarativeMeta.__init__(cls, classname, bases, dict_, **kw) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAmvmrnIn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClsl#munYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNltl$mwnZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlul%myn0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lvl'mAn1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lwl(mCn2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmxl)mEn3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
642 else:
643 ModelMetaclass.__init__(cls, classname, bases, dict_, **kw) 2g *m+mlomonooopo7g'k(k)k*k*b8g9g+bufvfDowoa YmZm;n=n?n@n+nyf?f@f[f]fw #fzfx 6d7dxoqob 0m1m[n]n^n_n,n.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfB C 8d9d!d#dyoroc 2m3m`n{n|n}n-n:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfI J K $d%d'd(d)d*dzosod 4m5m~naoboco.n?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPfR S T +d,d-d.d/d:dAotoe 6m7mdoeofogo/n]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf0 1 2 ;d=d?d@d[d]dBouof 8m9mhoiojoko:n`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f9 ! # ^d_d`d{d|d}dCovo
646def get_sqlalchemy_type(field: Any) -> Any: 1gabcdef
647 if IS_PYDANTIC_V2: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
648 field_info = field 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
649 else:
650 field_info = field.field_info 2g 2fwfxf*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
651 sa_type = getattr(field_info, "sa_type", Undefined) # noqa: B009 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
652 if sa_type is not Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
653 return sa_type
655 type_ = get_sa_type_from_field(field) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
656 metadata = get_field_metadata(field) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
658 # Check enums first as an enum can also be a str, needed by Pydantic/FastAPI
659 if issubclass(type_, Enum): 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
660 return sa_Enum(type_) 2g *m+ma YmZmb 0m1mc 2m3md 4m5me 6m7mf 8m9m
661 if issubclass( 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
662 type_,
663 (
664 str,
665 ipaddress.IPv4Address,
666 ipaddress.IPv4Network,
667 ipaddress.IPv6Address,
668 ipaddress.IPv6Network,
669 Path,
670 EmailStr,
671 ),
672 ):
673 max_length = getattr(metadata, "max_length", None) 2g 2fwfxfsn!mxm4dymzmAmvmrn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~dae,mRmzlRdAlBlClsl#mYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece-mSmKlSdLlMlNltl$mZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege/mTmVlTdWlXlYlul%m0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke=mUm#lUd$l%l'lvl'm1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe[mVm@lVd[l]l^lwl(m2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese_mWmgmWdhmimjmxl)m3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
674 if max_length: 2g 2fwfxfsn!mxm4dymzmAmvmrn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~dae,mRmzlRdAlBlClsl#mYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece-mSmKlSdLlMlNltl$mZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege/mTmVlTdWlXlYlul%m0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke=mUm#lUd$l%l'lvl'm1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe[mVm@lVd[l]l^lwl(m2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese_mWmgmWdhmimjmxl)m3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
675 return AutoString(length=max_length)
676 return AutoString 2g 2fwfxfsn!mxm4dymzmAmvmrn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~dae,mRmzlRdAlBlClsl#mYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece-mSmKlSdLlMlNltl$mZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege/mTmVlTdWlXlYlul%m0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke=mUm#lUd$l%l'lvl'm1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe[mVm@lVd[l]l^lwl(m2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese_mWmgmWdhmimjmxl)m3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
677 if issubclass(type_, float): 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
678 return Float
679 if issubclass(type_, bool): 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
680 return Boolean 2od_ ~ abjbkblbybzbAbNbObPb2b3b4b
681 if issubclass(type_, int): 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
682 return Integer 2g 2fwfxfsnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~dae,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
683 if issubclass(type_, datetime): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
684 return DateTime
685 if issubclass(type_, date): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
686 return Date
687 if issubclass(type_, timedelta): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
688 return Interval
689 if issubclass(type_, time): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
690 return Time
691 if issubclass(type_, bytes): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
692 return LargeBinary
693 if issubclass(type_, Decimal): 2g 2fwfxfwm*m+m1n2n3na te~daeylYmZmJnKnLnb CebeceJl0m1mMnNnOnc LeMedeeefegeUl2m3mPnQnRnd 3e4eheiejeke!l4m5mSnTnUne .e/elemeneoe?l6m7mVnWnXnf cfdfpeqeresefm8m9mYnZn0n
694 return Numeric( 22fteCeLeMe3e4e.e/ecfdf
695 precision=getattr(metadata, "max_digits", None),
696 scale=getattr(metadata, "decimal_places", None),
697 )
698 if issubclass(type_, uuid.UUID): 2g wfxfwm*m+m1n2n3na ~daeylYmZmJnKnLnb beceJl0m1mMnNnOnc deeefegeUl2m3mPnQnRnd heiejeke!l4m5mSnTnUne lemeneoe?l6m7mVnWnXnf peqeresefm8m9mYnZn0n
699 return Uuid 2g wfxfwm*m+ma ~daeylYmZmb beceJl0m1mc deeefegeUl2m3md heiejeke!l4m5me lemeneoe?l6m7mf peqeresefm8m9m
700 raise ValueError(f"{type_} has no matching SQLAlchemy type") 21n2n3nJnKnLnMnNnOnPnQnRnSnTnUnVnWnXnYnZn0n
703def get_column_from_field(field: Any) -> Column: # type: ignore 1gabcdef
704 if IS_PYDANTIC_V2: 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
705 field_info = field 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
706 else:
707 field_info = field.field_info 2g 2fwfxf*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
708 sa_column = getattr(field_info, "sa_column", Undefined) 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
709 if isinstance(sa_column, Column): 2g 2fwfxfwm*m+msnHn!m*nxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRm#nzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSm$nKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
710 return sa_column 2*n#n$n%n'n(n)n
711 sa_type = get_sqlalchemy_type(field) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
712 primary_key = getattr(field_info, "primary_key", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
713 if primary_key is Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
714 primary_key = False 2g 2fwfxf*m+msnHn!mxm4dymzmAmvmrn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeYmZm,mtnRmzlRdAlBlClsl#mYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece0m1m-mvnSmKlSdLlMlNltl$mZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege2m3m/mxnTmVlTdWlXlYlul%m0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke4m5m=mznUm#lUd$l%l'lvl'm1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe6m7m[mBnVm@lVd[l]l^lwl(m2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese8m9m_mDnWmgmWdhmimjmxl)m3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
715 index = getattr(field_info, "index", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
716 if index is Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
717 index = False 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
718 nullable = not primary_key and is_field_noneable(field) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
719 # Override derived nullability if the nullable property is set explicitly
720 # on the field
721 field_nullable = getattr(field_info, "nullable", Undefined) # noqa: B009 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
722 if field_nullable is not Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
723 assert not isinstance(field_nullable, UndefinedType) 2vmrnInsl#muntl$mwnul%mynvl'mAnwl(mCnxl)mEn
724 nullable = field_nullable 2vmrnInsl#muntl$mwnul%mynvl'mAnwl(mCnxl)mEn
725 args = [] 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
726 foreign_key = getattr(field_info, "foreign_key", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
727 if foreign_key is Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
728 foreign_key = None 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
729 unique = getattr(field_info, "unique", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
730 if unique is Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
731 unique = False 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
732 if foreign_key: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
733 if field_info.ondelete == "SET NULL" and not nullable: 24d5dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRdYd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSdZd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTd0decfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUd1dzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVd2dUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd3d(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
734 raise RuntimeError('ondelete="SET NULL" requires nullable=True') 25dYdZd0d1d2d3d
735 assert isinstance(foreign_key, str) 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
736 ondelete = getattr(field_info, "ondelete", Undefined) 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
737 if ondelete is Undefined: 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
738 ondelete = None 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b=b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpctcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5c9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c^c_c`c{c|c}c
739 assert isinstance(ondelete, (str, type(None))) # for typing 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
740 args.append(ForeignKey(foreign_key, ondelete=ondelete)) 24dudvdXm3f4f5f6f7f8f9f!f*b+b,b^ odBdpdXdwdxdqdydrdsdtdzdAdRd-b.bHmuevewexeyezeAeBew x y h _ ~c` Cd/b:b{ ;b| ( } =b?bSd@b[b]b^bImDeEeFeGeHeIeJeKez A B C D E i j ~ abadbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcTdecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eF G H I J K L M N k l m jbkblbcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcycUdzcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eO P Q R S T U V W n o p ybzbAbfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTcVdUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfX Y Z 0 1 2 3 4 5 q r s NbObPbidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cWd(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftf6 7 8 9 ! # $ % ' t u v 2b3b4bldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}c
741 kwargs = { 2a te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
742 "primary_key": primary_key,
743 "nullable": nullable,
744 "index": index,
745 "unique": unique,
746 }
747 sa_default = Undefined 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
748 if field_info.default_factory: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
749 sa_default = field_info.default_factory 2wfxfwm~daeylbeceJldeeefegeUlheiejeke!llemeneoe?lpeqeresefm
750 elif field_info.default is not Undefined: 2g 2fwfxf*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
751 sa_default = field_info.default 2g 2fwfxfsnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~dae,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb Cebece-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefege/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqerese_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
752 if sa_default is not Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
753 kwargs["default"] = sa_default 2g 2fwfxfwmsnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeyl,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
754 sa_column_args = getattr(field_info, "sa_column_args", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
755 if sa_column_args is not Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
756 args.extend(list(cast(Sequence[Any], sa_column_args))) 2sn,m-m/m=m[m_m
757 sa_column_kwargs = getattr(field_info, "sa_column_kwargs", Undefined) 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
758 if sa_column_kwargs is not Undefined: 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
759 kwargs.update(cast(Dict[Any, Any], sa_column_kwargs)) 2HntnvnxnznBnDn
760 return Column(sa_type, *args, **kwargs) # type: ignore 2g 2fwfxfwm*m+msnHn!mxm4dymzmAm1nvmrnIn5dBm2n3n!n,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla te~daeylYmZm,mtnRmzlRdAlBlClJnsl#munYdDlKnLn4n!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb CebeceJl0m1m-mvnSmKlSdLlMlNlMntl$mwnZdOlNnOn5njhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc LeMedeeefegeUl2m3m/mxnTmVlTdWlXlYlPnul%myn0dZlQnRn6nThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid 3e4eheiejeke!l4m5m=mznUm#lUd$l%l'lSnvl'mAn1d(lTnUn7nCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje .e/elemeneoe?l6m7m[mBnVm@lVd[l]l^lVnwl(mCn2d_lWnXn8nljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf cfdfpeqeresefm8m9m_mDnWmgmWdhmimjmYnxl)mEn3dkmZn0n9n_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
763class_registry = weakref.WeakValueDictionary() # type: ignore 1gabcdef
765default_registry = registry() 1gabcdef
767_TSQLModel = TypeVar("_TSQLModel", bound="SQLModel") 1gabcdef
770class SQLModel(BaseModel, metaclass=SQLModelMetaclass, registry=default_registry): 1gabcdef
771 # SQLAlchemy needs to set weakref(s), Pydantic will set the other slots values
772 __slots__ = ("__weakref__",) 1gabcdef
773 __tablename__: ClassVar[Union[str, Callable[..., str]]] 1gabcdef
774 __sqlmodel_relationships__: ClassVar[Dict[str, RelationshipProperty[Any]]] 1gabcdef
775 __name__: ClassVar[str] 1gabcdef
776 metadata: ClassVar[MetaData] 1gabcdef
777 __allow_unmapped__ = True # https://docs.sqlalchemy.org/en/20/changelog/migration_20.html#migration-20-step-six 1gabcdef
779 if IS_PYDANTIC_V2: 1gabcdef
780 model_config = SQLModelConfig(from_attributes=True) 1gabcdef
781 else:
783 class Config: 1gabcdef
784 orm_mode = True 1gabcdef
786 def __new__(cls, *args: Any, **kwargs: Any) -> Any: 1gabcdef
787 new_object = super().__new__(cls) 2@rgp[r]rWrhpip}ojpkplpmpnpop2fwfxfwmXr%r'rloxmmo4dymzmAmvmnooopoBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowo^rvp_r`rYrwpxp%oypzpApBpCpDpte~daeylQr(r)r;nzl=nRdAlBlClsl?n@n+nDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqo{rKp|r}rZrLpMp'oNpOpPpQpRpSp~rTpasbs0rUpVp(oWpXpYpZp0p1pCebeceJlRr*r+r[nKl]nSdLlMlNltl^n_n,nOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyorocs8pdses1r9p!p)o#p$p%p'p(p)pfs*pgshs2r+p,p*o-p.p/p:p;p=pis?pjsks3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlSr,r-r`nVl{nTdWlXlYlul|n}n-nZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosolseqmsns4rfqgq,ohqiqjqkqlqmqosnqpsqs5roqpq-oqqrqsqtquqvqrswqssts6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!lTr.r/r~n#laoUd$l%l'lvlboco.n(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotousLqvsws7rMqNq/oOqPqQqRqSqTqxsUqyszs8rVqWq:oXqYqZq0q1q2qAs3qBsCs9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?lUr:r;rdo@leoVd[l]l^lwlfogo/n_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouoDs+qEsFs!r,q-q=o.q/q:q;q=q?qGs@qHsIs#r[q]q?o^q_q`q{q|q}qJs~qKsLs$rarbr@ocrdrerfrgrhrcfdfpeqeresefmVr=r?rhogmioWdhmimjmxljoko:nkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
788 # SQLAlchemy doesn't call __init__ on the base class when querying from DB
789 # Ref: https://docs.sqlalchemy.org/en/14/orm/constructors.html
790 # Set __fields_set__ here, that would have been set when calling __init__
791 # in the Pydantic model so that when SQLAlchemy sets attributes that are
792 # added (e.g. when querying from DB) to the __fields_set__, this already exists
793 init_pydantic_private_attrs(new_object) 2@rgp[r]rWrhpip}ojpkplpmpnpop2fwfxfwmXr%r'rloxmmo4dymzmAmvmnooopoBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowo^rvp_r`rYrwpxp%oypzpApBpCpDpte~daeylQr(r)r;nzl=nRdAlBlClsl?n@n+nDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqo{rKp|r}rZrLpMp'oNpOpPpQpRpSp~rTpasbs0rUpVp(oWpXpYpZp0p1pCebeceJlRr*r+r[nKl]nSdLlMlNltl^n_n,nOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyorocs8pdses1r9p!p)o#p$p%p'p(p)pfs*pgshs2r+p,p*o-p.p/p:p;p=pis?pjsks3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlSr,r-r`nVl{nTdWlXlYlul|n}n-nZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosolseqmsns4rfqgq,ohqiqjqkqlqmqosnqpsqs5roqpq-oqqrqsqtquqvqrswqssts6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!lTr.r/r~n#laoUd$l%l'lvlboco.n(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotousLqvsws7rMqNq/oOqPqQqRqSqTqxsUqyszs8rVqWq:oXqYqZq0q1q2qAs3qBsCs9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?lUr:r;rdo@leoVd[l]l^lwlfogo/n_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouoDs+qEsFs!r,q-q=o.q/q:q;q=q?qGs@qHsIs#r[q]q?o^q_q`q{q|q}qJs~qKsLs$rarbr@ocrdrerfrgrhrcfdfpeqeresefmVr=r?rhogmioWdhmimjmxljoko:nkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
794 return new_object 2@rgp[r]rWrhpip}ojpkplpmpnpop2fwfxfwmXr%r'rloxmmo4dymzmAmvmnooopoBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDowo^rvp_r`rYrwpxp%oypzpApBpCpDpte~daeylQr(r)r;nzl=nRdAlBlClsl?n@n+nDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxoqo{rKp|r}rZrLpMp'oNpOpPpQpRpSp~rTpasbs0rUpVp(oWpXpYpZp0p1pCebeceJlRr*r+r[nKl]nSdLlMlNltl^n_n,nOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyorocs8pdses1r9p!p)o#p$p%p'p(p)pfs*pgshs2r+p,p*o-p.p/p:p;p=pis?pjsks3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlSr,r-r`nVl{nTdWlXlYlul|n}n-nZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizosolseqmsns4rfqgq,ohqiqjqkqlqmqosnqpsqs5roqpq-oqqrqsqtquqvqrswqssts6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!lTr.r/r~n#laoUd$l%l'lvlboco.n(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAotousLqvsws7rMqNq/oOqPqQqRqSqTqxsUqyszs8rVqWq:oXqYqZq0q1q2qAs3qBsCs9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?lUr:r;rdo@leoVd[l]l^lwlfogo/n_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBouoDs+qEsFs!r,q-q=o.q/q:q;q=q?qGs@qHsIs#r[q]q?o^q_q`q{q|q}qJs~qKsLs$rarbr@ocrdrerfrgrhrcfdfpeqeresefmVr=r?rhogmioWdhmimjmxljoko:nkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCovo
796 def __init__(__pydantic_self__, **data: Any) -> None: 1gabcdef
797 # Uses something other than `self` the first arg to allow "self" as a
798 # settable attribute
800 # SQLAlchemy does very dark black magic and modifies the __init__ method in
801 # sqlalchemy.orm.instrumentation._generate_init()
802 # so, to make SQLAlchemy work, it's needed to explicitly call __init__ to
803 # trigger all the SQLAlchemy logic, it doesn't work using cls.__new__, setting
804 # attributes obj.__dict__, etc. The __init__ method has to be called. But
805 # there are cases where calling all the default logic is not ideal, e.g.
806 # when calling Model.model_validate(), as the validation is done outside
807 # of instance creation.
808 # At the same time, __init__ is what users would normally call, by creating
809 # a new instance, which should have validation and all the default logic.
810 # So, to be able to set up the internal SQLAlchemy logic alone without
811 # executing the rest, and support things like Model.model_validate(), we
812 # use a contextvar to know if we should execute everything.
813 if finish_init.get(): 2@rgp[r]rWrhpip}ojpkplpmpnpop2fwfxfwmXr%rloxmmo4dymzmAmvmnooopoBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDo^rvp_r`rYrwpxp%oypzpApBpCpDpte~daeylQr(r;nzl=nRdAlBlClsl?n@n+nDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxo{rKp|r}rZrLpMp'oNpOpPpQpRpSp~rTpasbs0rUpVp(oWpXpYpZp0p1pCebeceJlRr*r[nKl]nSdLlMlNltl^n_n,nOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyocs8pdses1r9p!p)o#p$p%p'p(p)pfs*pgshs2r+p,p*o-p.p/p:p;p=pis?pjsks3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlSr,r`nVl{nTdWlXlYlul|n}n-nZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizolseqmsns4rfqgq,ohqiqjqkqlqmqosnqpsqs5roqpq-oqqrqsqtquqvqrswqssts6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!lTr.r~n#laoUd$l%l'lvlboco.n(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAousLqvsws7rMqNq/oOqPqQqRqSqTqxsUqyszs8rVqWq:oXqYqZq0q1q2qAs3qBsCs9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?lUr:rdo@leoVd[l]l^lwlfogo/n_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBoDs+qEsFs!r,q-q=o.q/q:q;q=q?qGs@qHsIs#r[q]q?o^q_q`q{q|q}qJs~qKsLs$rarbr@ocrdrerfrgrhrcfdfpeqeresefmVr=rhogmioWdhmimjmxljoko:nkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCo
814 sqlmodel_init(self=__pydantic_self__, data=data) 2@rgp[r]rWrhpip}ojpkplpmpnpop2fwfxfwmXr%rloxmmo4dymzmAmvmnooopoBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlDo^rvp_r`rYrwpxp%oypzpApBpCpDpte~daeylQr(r;nzl=nRdAlBlClsl?n@n+nDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihxo{rKp|r}rZrLpMp'oNpOpPpQpRpSp~rTpasbs0rUpVp(oWpXpYpZp0p1pCebeceJlRr*r[nKl]nSdLlMlNltl^n_n,nOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShyocs8pdses1r9p!p)o#p$p%p'p(p)pfs*pgshs2r+p,p*o-p.p/p:p;p=pis?pjsks3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlSr,r`nVl{nTdWlXlYlul|n}n-nZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBizolseqmsns4rfqgq,ohqiqjqkqlqmqosnqpsqs5roqpq-oqqrqsqtquqvqrswqssts6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!lTr.r~n#laoUd$l%l'lvlboco.n(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjAousLqvsws7rMqNq/oOqPqQqRqSqTqxsUqyszs8rVqWq:oXqYqZq0q1q2qAs3qBsCs9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?lUr:rdo@leoVd[l]l^lwlfogo/n_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jBoDs+qEsFs!r,q-q=o.q/q:q;q=q?qGs@qHsIs#r[q]q?o^q_q`q{q|q}qJs~qKsLs$rarbr@ocrdrerfrgrhrcfdfpeqeresefmVr=rhogmioWdhmimjmxljoko:nkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kCo
816 def __setattr__(self, name: str, value: Any) -> None: 1gabcdef
817 if name in {"_sa_instance_state"}: 2gpWrhpip}ojpkplpmpnpop2fwfxfwm%r'rxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwovpYrwpxp%oypzpApBpCpDpte~daeyl(r)rzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqoKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJl*r+rKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShro8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUl,r-rVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisoeq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l.r/r#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l:r;r@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juo+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefm=r?rgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
818 self.__dict__[name] = value 2gpWrhpip}ojpkplpmpnpop2fwfxfwmxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpYrwpxp%oypzpApBpCpDpte~daeylzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJlKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefmgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
819 return 2gpWrhpip}ojpkplpmpnpop2fwfxfwmxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpYrwpxp%oypzpApBpCpDpte~daeylzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJlKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefmgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
820 else:
821 # Set in SQLAlchemy, before Pydantic to trigger events and updates
822 if is_table_model_class(self.__class__) and is_instrumented(self, name): # type: ignore[no-untyped-call] 2gpWrhpip}ojpkplpmpnpop2fwfxfwm%r'rxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwovpYrwpxp%oypzpApBpCpDpte~daeyl(r)rzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqoKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJl*r+rKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShro8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUl,r-rVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisoeq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l.r/r#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l:r;r@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juo+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefm=r?rgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
823 set_attribute(self, name, value) 2gpWrhpip}ojpkplpmpnpop2fwfxfwmxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpYrwpxp%oypzpApBpCpDpte~daeylzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJlKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUlVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefmgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
824 # Set in Pydantic model to trigger possible validation changes, only for
825 # non relationship values
826 if name not in self.__sqlmodel_relationships__: 2gpWrhpip}ojpkplpmpnpop2fwfxfwm%r'rxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwovpYrwpxp%oypzpApBpCpDpte~daeyl(r)rzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqoKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJl*r+rKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShro8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUl,r-rVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisoeq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l.r/r#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l:r;r@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juo+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefm=r?rgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
827 super().__setattr__(name, value) 2gpWrhpip}ojpkplpmpnpop2fwfxfwm%r'rxm4dymzmAmvmBm,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlwovpYrwpxp%oypzpApBpCpDpte~daeyl(r)rzlRdAlBlClslDl!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihqoKpZrLpMp'oNpOpPpQpRpSpTp0rUpVp(oWpXpYpZp0p1pCebeceJl*r+rKlSdLlMlNltlOljhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShro8p1r9p!p)o#p$p%p'p(p)p*p2r+p,p*o-p.p/p:p;p=p?p3r@p[p+o]p^p_p`p{p|pLeMedeeefegeUl,r-rVlTdWlXlYlulZlThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBisoeq4rfqgq,ohqiqjqkqlqmqnq5roqpq-oqqrqsqtquqvqwq6rxqyq.ozqAqBqCqDqEq3e4eheiejeke!l.r/r#lUd$l%l'lvl(lCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjtoLq7rMqNq/oOqPqQqRqSqTqUq8rVqWq:oXqYqZq0q1q2q3q9r4q5q;o6q7q8q9q!q#q.e/elemeneoe?l:r;r@lVd[l]l^lwl_lljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^juo+q!r,q-q=o.q/q:q;q=q?q@q#r[q]q?o^q_q`q{q|q}q~q$rarbr@ocrdrerfrgrhrcfdfpeqeresefm=r?rgmWdhmimjmxlkm_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%kvo
829 def __repr_args__(self) -> Sequence[Tuple[Optional[str], Any]]: 1gabcdef
830 # Don't show SQLAlchemy private attributes
831 return [ 2+n( ,n) * -n+ , - .n. / : /n; = ? :n@ [ ]
832 (k, v)
833 for k, v in super().__repr_args__()
834 if not (isinstance(k, str) and k.startswith("_sa_"))
835 ]
837 @declared_attr # type: ignore 1gabcdef
838 def __tablename__(cls) -> str: 1gabcdef
839 return cls.__name__.lower() 2g Ms2fwfxfwm*m+msnHn!m*nxm4dymzmAmvmrnIn5dBm,k-kudvdXm3f4f5f6f7f8f9f!fFnGn.k/k7g'k(k)k*k*b8g9g+k+bufvf:k;kCmDmEm=k?k@k[k,b^ od]kFm^k_k`k{k|k}kGmBdpdXdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrla Nste~daeylYmZm,mtnRm#nzlRdAlBlClsl#munYdDl!g#g-b.bHmuevewexeyezeAeBe|m}m$g%gyf?f@f[f]fw #fzfXgx 6d7d'g(gElFlGl)g*g+g,gy h _ -gHl.g/g:g;g=g?gIl~c` Cd/b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihb OsPsCebeceJl0m1m-mvnSm$nKlSdLlMlNltl$mwnZdOljhkh@b[b]b^bImDeEeFeGeHeIeJeKe~manlhmh.mAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohPlQlRlphqhrhshD E i j ~ abthSluhvhwhxhyhzhTladbdbbcbDdEd_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShc QsRsSsLeMedeeefegeUl2m3m/mxnTm%nVlTdWlXlYlul%myn0dZlThUhVhWhecfcgchcicjcJmKmNeOePeQeReSeTeUeVeWeXeYeZe0e1e2ebncndnenXhYhZh0h:m;mEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h0l1l2l3l4l5l5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h6l7l(h)h*h+h,h-h.h/h:h;h=h?h8l9lcdddedmbnbobFdGdHdkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBid TsUsVs3e4eheiejeke!l4m5m=mznUm'n#lUd$l%l'lvl'mAn1d(lCiDiEiFizcAcBcCcDcEcLmMm5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-efngnhninGiHiIiJi?m@mKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNi)l*l+l,l-l.lOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXi/l:lYiZi0i1i2i3i4i5i6i7i8i9i;l=lfdgdhdBbCbDbIdJdKdFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkje WsXsYs.e/elemeneoe?l6m7m[mBnVm(n@lVd[l]l^lwl(mCn2d_lljmjnjojUcVcWcXcYcZcNmOm:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfjnknlnmnpjqjrjsj]m^mQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwj`l{l|l}l~lamxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjbmcmHjIjJjKjLjMjNjOjPjQjRjSjdmemidjdkdQbRbSbLdMdNd0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^jf Zs0s1scfdfpeqeresefm8m9m_mDnWm)ngmWdhmimjmxl)mEn3dkm_j`j{j|j(c)c*c+c,c-cPmQmefffgfhfifjfkflfmfnfofpfqfrfsftfnnonpnqn}j~jakbk`m{mWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfklmmmnmompmqmgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkrmsmqkrksktkukvkwkxkykzkAkBktmumldmdnd5b6b7bOdPdQd.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
841 @classmethod 1gabcdef
842 def model_validate( 1abcdef
843 cls: Type[_TSQLModel],
844 obj: Any,
845 *,
846 strict: Union[bool, None] = None,
847 from_attributes: Union[bool, None] = None,
848 context: Union[Dict[str, Any], None] = None,
849 update: Union[Dict[str, Any], None] = None,
850 ) -> _TSQLModel:
851 return sqlmodel_validate( 2gphpip}ojpkplpmpnpop%r'rppqprpsptpup7g'k(k)k*k*b8g9g+bufvfwovpwpxp%oypzpApBpCpDp(r)rEpFpGpHpIpJpyf?f@f[f]fw #fzfx 6d7dqoKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1p*r+r2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfB C 8d9d!d#dro8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|p,r-r}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfI J K $d%d'd(d)d*dsoeqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq.r/rFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPfR S T +d,d-d.d/d:dtoLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q:r;r$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf0 1 2 ;d=d?d@d[d]duo+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhr=r?rirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f9 ! # ^d_d`d{d|d}dvo
852 cls=cls,
853 obj=obj,
854 strict=strict,
855 from_attributes=from_attributes,
856 context=context,
857 update=update,
858 )
860 def model_dump( 1abcdef
861 self,
862 *,
863 mode: Union[Literal["json", "python"], str] = "python",
864 include: Union[IncEx, None] = None,
865 exclude: Union[IncEx, None] = None,
866 context: Union[Dict[str, Any], None] = None,
867 by_alias: bool = False,
868 exclude_unset: bool = False,
869 exclude_defaults: bool = False,
870 exclude_none: bool = False,
871 round_trip: bool = False,
872 warnings: Union[bool, Literal["none", "warn", "error"]] = True,
873 serialize_as_any: bool = False,
874 ) -> Dict[str, Any]:
875 if PYDANTIC_MINOR_VERSION >= (2, 7): 2gphpip}ojpkplpmpnpop2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpwpxp%oypzpApBpCpDpte~daeQr!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrcfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
876 extra_kwargs: Dict[str, Any] = { 2%ote~daeQr!g#g-b.buevewexeyezeAeBe$g%gyfw zfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhih'o(oCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmhAfBfz A CfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh)o*o+oLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0hEfFfGfF G H HfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBi,o-o.o3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiKfLfMfO P Q NfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkj/o:o;o.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsjQfRfSfX Y Z TfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j=o?o@ocfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkWfXfYf6 7 8 Zf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
877 "context": context,
878 "serialize_as_any": serialize_as_any,
879 }
880 else:
881 extra_kwargs = {} 2gphpip}ojpkplpmpnpop2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpwpxp%oypzpApBpCpDpte~daeQr!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrcfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
882 if IS_PYDANTIC_V2: 2gphpip}ojpkplpmpnpop2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpwpxp%oypzpApBpCpDpte~daeQr!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrcfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
883 return super().model_dump( 2}o2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/k7g*b9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrl%ote~daeQr!g#g-b.buevewexeyezeAeBe$g%gyfw zfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhih'o(oCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmhAfBfz A CfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh)o*o+oLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0hEfFfGfF G H HfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBi,o-o.o3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiKfLfMfO P Q NfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkj/o:o;o.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsjQfRfSfX Y Z TfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j=o?o@ocfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkWfXfYf6 7 8 Zf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
884 mode=mode,
885 include=include,
886 exclude=exclude,
887 by_alias=by_alias,
888 exclude_unset=exclude_unset,
889 exclude_defaults=exclude_defaults,
890 exclude_none=exclude_none,
891 round_trip=round_trip,
892 warnings=warnings,
893 **extra_kwargs,
894 )
895 else:
896 return super().dict( 2gphpip}ojpkplpmpnpop2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpwpxp%oypzpApBpCpDpte~daeQr!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrcfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
897 include=include,
898 exclude=exclude,
899 by_alias=by_alias,
900 exclude_unset=exclude_unset,
901 exclude_defaults=exclude_defaults,
902 exclude_none=exclude_none,
903 )
905 @deprecated( 1gabcdef
906 """
907 🚨 `obj.dict()` was deprecated in SQLModel 0.0.14, you should
908 instead use `obj.model_dump()`.
909 """
910 )
911 def dict( 1abcdef
912 self,
913 *,
914 include: Union[IncEx, None] = None,
915 exclude: Union[IncEx, None] = None,
916 by_alias: bool = False,
917 exclude_unset: bool = False,
918 exclude_defaults: bool = False,
919 exclude_none: bool = False,
920 ) -> Dict[str, Any]:
921 return self.model_dump( 2gphpip}ojpkplpmpnpopXrppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf^ pdvpwpxp%oypzpApBpCpDpQrEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7dh ` KpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pRr2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#di j bbcb8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pSr}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*dk l m mbnbobeqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEqTrFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dn o p BbCbDbLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#qUr$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dq r s QbRbSb+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrVrirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dt u v 5b6b7b
922 include=include,
923 exclude=exclude,
924 by_alias=by_alias,
925 exclude_unset=exclude_unset,
926 exclude_defaults=exclude_defaults,
927 exclude_none=exclude_none,
928 )
930 @classmethod 1gabcdef
931 @deprecated( 1gabcdef
932 """
933 🚨 `obj.from_orm(data)` was deprecated in SQLModel 0.0.14, you should
934 instead use `obj.model_validate(data)`.
935 """
936 )
937 def from_orm( 1abcdef
938 cls: Type[_TSQLModel], obj: Any, update: Optional[Dict[str, Any]] = None
939 ) -> _TSQLModel:
940 return cls.model_validate(obj, update=update) 2gphpip}ojpkplpmpnpop%rppqprpsptpup7g'k(k)k*k*b8g9g+bufvfvpwpxp%oypzpApBpCpDp(rEpFpGpHpIpJpyf?f@f[f]fw #fzfx 6d7dKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1p*r2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfB C 8d9d!d#d8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|p,r}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfI J K $d%d'd(d)d*deqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq.rFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPfR S T +d,d-d.d/d:dLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q:r$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf0 1 2 ;d=d?d@d[d]d+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhr=rirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f9 ! # ^d_d`d{d|d}d
942 @classmethod 1gabcdef
943 @deprecated( 1gabcdef
944 """
945 🚨 `obj.parse_obj(data)` was deprecated in SQLModel 0.0.14, you should
946 instead use `obj.model_validate(data)`.
947 """
948 )
949 def parse_obj( 1abcdef
950 cls: Type[_TSQLModel], obj: Any, update: Optional[Dict[str, Any]] = None
951 ) -> _TSQLModel:
952 if not IS_PYDANTIC_V2: 2'r)r+r-r/r;r?r
953 obj = cls._enforce_dict_if_root(obj) # type: ignore[attr-defined] # noqa 2'r)r+r-r/r;r?r
954 return cls.model_validate(obj, update=update) 2'r)r+r-r/r;r?r
956 # From Pydantic, override to only show keys from fields, omit SQLAlchemy attributes
957 @deprecated( 1gabcdef
958 """
959 🚨 You should not access `obj._calculate_keys()` directly.
961 It is only useful for Pydantic v1.X, you should probably upgrade to
962 Pydantic v2.X.
963 """,
964 category=None,
965 )
966 def _calculate_keys( 1abcdef
967 self,
968 include: Optional[Mapping[Union[int, str], Any]],
969 exclude: Optional[Mapping[Union[int, str], Any]],
970 exclude_unset: bool,
971 update: Optional[Dict[str, Any]] = None,
972 ) -> Optional[AbstractSet[str]]:
973 return _calculate_keys( 2gphpip}ojpkplpmpnpop2fwfxfXr,k-kudvd3f4f5f6f7f8f9f!f.k/kppqprpsptpup7g'k(k)k*k*b8g9g+k+bufvf:k;k=k?k@k[k,b^ od]k^k_k`k{k|k}kBdpdwdxdqdydrdsdtdzdAd~kalblcldlelflglhliljlklllmlnlolplqlrlvpwpxp%oypzpApBpCpDpte~daeQr!g#g-b.buevewexeyezeAeBe$g%gEpFpGpHpIpJpyf?f@f[f]fw #fzfXgx 6d7d'g(g)g*g+g,gy h _ -g.g/g:g;g=g?g~c` /b:b{ ;b| ( } =b?b@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihKpLpMp'oNpOpPpQpRpSpTpUpVp(oWpXpYpZp0p1pCebeceRrjhkh@b[b]b^bDeEeFeGeHeIeJeKelhmh2p3p4p5p6p7pAfBf^f_f`f{f|f}f~fagz A $f%fCfDfYgB C 8d9d!d#dnhohphqhrhshD E i j ~ abthuhvhwhxhyhzhadbdbbcb_b`b{b|bdbeb}b~bfbgb) * hbibacbcccdcAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh8p9p!p)o#p$p%p'p(p)p*p+p,p*o-p.p/p:p;p=p?p@p[p+o]p^p_p`p{p|pLeMedeeefegeSrThUhVhWhecfcgchcicjcNeOePeQeReSeTeUeVeWeXeYeZe0e1e2eXhYhZh0h}p~paqbqcqdqEfFfGfbgcgdgegfggghgigjgkglgmgF G H 'f(f)fHfIfJfZg0gI J K $d%d'd(d)d*d1h2h3h4h5h6h7h8h9h!h#h$hL M N k l m jbkblb%h'h(h)h*h+h,h-h.h/h:h;h=h?hcdddedmbnbobkclcmcncocpcpbqbrbqcrcscsbtbub+ , - vbwbxbtcucvcwcxcyc@h[h]h^h_h`h{h|h}h~haibicidieifigihiiijikiliminioipiqirisitiuiviwixiyiziAiBieqfqgq,ohqiqjqkqlqmqnqoqpq-oqqrqsqtquqvqwqxqyq.ozqAqBqCqDqEq3e4eheiejekeTrCiDiEiFizcAcBcCcDcEc5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-eGiHiIiJiFqGqHqIqJqKqKfLfMfngogpgqgrgsgtgugvgwgxgygO P Q *f+f,fNfOfPf1g2gR S T +d,d-d.d/d:dKiLiMiNiOiPiQiRiSiTiUiViU V W n o p ybzbAbWiXiYiZi0i1i2i3i4i5i6i7i8i9ifdgdhdBbCbDbFcGcHcIcJcKcEbFbGbLcMcNcHbIbJb. / : KbLbMbOcPcQcRcScTc!i#i$i%i'i(i)i*i+i,i-i.i/i:i;i=i?i@i[i]i^i_i`i{i|i}i~iajbjcjdjejfjgjhjijjjkjLqMqNq/oOqPqQqRqSqTqUqVqWq:oXqYqZq0q1q2q3q4q5q;o6q7q8q9q!q#q.e/elemeneoeUrljmjnjojUcVcWcXcYcZc:e;e=e?e@e[e]e^e_e`e{e|e}e~eafbfpjqjrjsj$q%q'q(q)q*qQfRfSfzgAgBgCgDgEgFgGgHgIgJgKgX Y Z -f.f/fTfUfVf3g4g0 1 2 ;d=d?d@d[d]dtjujvjwjxjyjzjAjBjCjDjEj3 4 5 q r s NbObPbFjGjHjIjJjKjLjMjNjOjPjQjRjSjidjdkdQbRbSb0c1c2c3c4c5cTbUbVb6c7c8cWbXbYb; = ? Zb0b1b9c!c#c$c%c'cTjUjVjWjXjYjZj0j1j2j3j4j5j6j7j8j9j!j#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j^j+q,q-q=o.q/q:q;q=q?q@q[q]q?o^q_q`q{q|q}q~qarbr@ocrdrerfrgrhrcfdfpeqereseVr_j`j{j|j(c)c*c+c,c-cefffgfhfifjfkflfmfnfofpfqfrfsftf}j~jakbkirjrkrlrmrnrWfXfYfLgMgNgOgPgQgRgSgTgUgVgWg6 7 8 :f;f=fZf0f1f5g6g9 ! # ^d_d`d{d|d}dckdkekfkgkhkikjkkklkmknk$ % ' t u v 2b3b4bokpkqkrksktkukvkwkxkykzkAkBkldmdnd5b6b7b.c/c:c;c=c?c8b9b!b@c[c]c#b$b%b@ [ ] 'b(b)b^c_c`c{c|c}cCkDkEkFkGkHkIkJkKkLkMkNkOkPkQkRkSkTkUkVkWkXkYkZk0k1k2k3k4k5k6k7k8k9k!k#k$k%k
974 self,
975 include=include,
976 exclude=exclude,
977 exclude_unset=exclude_unset,
978 update=update,
979 )
981 def sqlmodel_update( 1abcdef
982 self: _TSQLModel,
983 obj: Union[Dict[str, Any], BaseModel],
984 *,
985 update: Union[Dict[str, Any], None] = None,
986 ) -> _TSQLModel:
987 use_update = (update or {}).copy() 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d
988 if isinstance(obj, dict): 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d
989 for key, value in {**obj, **use_update}.items(): 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d
990 if key in get_model_fields(self): 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d
991 setattr(self, key, value) 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d
992 elif isinstance(obj, BaseModel):
993 for key in get_model_fields(obj):
994 if key in use_update:
995 value = use_update.pop(key)
996 else:
997 value = getattr(obj, key)
998 setattr(self, key, value)
999 for remaining_key in use_update:
1000 if remaining_key in get_model_fields(self):
1001 value = use_update.pop(remaining_key)
1002 setattr(self, remaining_key, value)
1003 else:
1004 raise ValueError(
1005 "Can't use sqlmodel_update() with something that "
1006 f"is not a dict or SQLModel or Pydantic model: {obj}"
1007 )
1008 return self 2ufvf6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d