Coverage for sqlmodel/main.py: 94%
357 statements
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-15 09:31 +0000
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-15 09:31 +0000
1import ipaddress 1abcdef
2import uuid 1abcdef
3import weakref 1abcdef
4from datetime import date, datetime, time, timedelta 1abcdef
5from decimal import Decimal 1abcdef
6from enum import Enum 1abcdef
7from pathlib import Path 1abcdef
8from typing import ( 1abcdef
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 1abcdef
29from pydantic.fields import FieldInfo as PydanticFieldInfo 1abcdef
30from sqlalchemy import ( 1abcdef
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 1abcdef
43from sqlalchemy.orm import ( 1abcdef
44 Mapped,
45 RelationshipProperty,
46 declared_attr,
47 registry,
48 relationship,
49)
50from sqlalchemy.orm.attributes import set_attribute 1abcdef
51from sqlalchemy.orm.decl_api import DeclarativeMeta 1abcdef
52from sqlalchemy.orm.instrumentation import is_instrumented 1abcdef
53from sqlalchemy.sql.schema import MetaData 1abcdef
54from sqlalchemy.sql.sqltypes import LargeBinary, Time, Uuid 1abcdef
55from typing_extensions import Literal, TypeAlias, deprecated, get_origin 1abcdef
57from ._compat import ( # type: ignore[attr-defined] 1abcdef
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 1abcdef
85if TYPE_CHECKING: 1abcdef
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") 1abcdef
92NoArgAnyCallable = Callable[[], Any] 1abcdef
93IncEx: TypeAlias = Union[ 1abcdef
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"] 1abcdef
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 1abcdef
112class FieldInfo(PydanticFieldInfo): 1abcdef
113 def __init__(self, default: Any = Undefined, **kwargs: Any) -> None: 1abcdef
114 primary_key = kwargs.pop("primary_key", False) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
115 nullable = kwargs.pop("nullable", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
116 foreign_key = kwargs.pop("foreign_key", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
117 ondelete = kwargs.pop("ondelete", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
118 unique = kwargs.pop("unique", False) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
119 index = kwargs.pop("index", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
120 sa_type = kwargs.pop("sa_type", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
121 sa_column = kwargs.pop("sa_column", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
122 sa_column_args = kwargs.pop("sa_column_args", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
123 sa_column_kwargs = kwargs.pop("sa_column_kwargs", Undefined) 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
124 if sa_column is not Undefined: 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
125 if sa_column_args is not Undefined: 2glnpHpBpNp5pYpenvpmmhlopIpCpOp6pZpfnwpnmilppJpDpPp7p0pgnxpomjlqpKpEpQp8p1phnyppmklrpLpFpRp9p2pinzpqmllspMpGpSp!p3pjnAprm
126 raise RuntimeError( 25p6p7p8p9p!p
127 "Passing sa_column_args is not supported when "
128 "also passing a sa_column"
129 )
130 if sa_column_kwargs is not Undefined: 2glnpHpBpNpYpenvpmmhlopIpCpOpZpfnwpnmilppJpDpPp0pgnxpomjlqpKpEpQp1phnyppmklrpLpFpRp2pinzpqmllspMpGpSp3pjnAprm
131 raise RuntimeError( 2YpZp0p1p2p3p
132 "Passing sa_column_kwargs is not supported when "
133 "also passing a sa_column"
134 )
135 if primary_key is not Undefined: 2glnpHpBpNpenvpmmhlopIpCpOpfnwpnmilppJpDpPpgnxpomjlqpKpEpQphnyppmklrpLpFpRpinzpqmllspMpGpSpjnAprm
136 raise RuntimeError( 2NpOpPpQpRpSp
137 "Passing primary_key is not supported when also passing a sa_column"
138 )
139 if nullable is not Undefined: 2glnpHpBpenvpmmhlopIpCpfnwpnmilppJpDpgnxpomjlqpKpEphnyppmklrpLpFpinzpqmllspMpGpjnAprm
140 raise RuntimeError( 2HpIpJpKpLpMp
141 "Passing nullable is not supported when also passing a sa_column"
142 )
143 if foreign_key is not Undefined: 2glnpBpenvpmmhlopCpfnwpnmilppDpgnxpomjlqpEphnyppmklrpFpinzpqmllspGpjnAprm
144 raise RuntimeError( 2glhliljlklll
145 "Passing foreign_key is not supported when also passing a sa_column"
146 )
147 if ondelete is not Undefined: 2npBpenvpmmopCpfnwpnmppDpgnxpomqpEphnyppmrpFpinzpqmspGpjnAprm
148 raise RuntimeError( 2BpCpDpEpFpGp
149 "Passing ondelete is not supported when also passing a sa_column"
150 )
151 if unique is not Undefined: 2npenvpmmopfnwpnmppgnxpomqphnyppmrpinzpqmspjnAprm
152 raise RuntimeError( 2vpwpxpypzpAp
153 "Passing unique is not supported when also passing a sa_column"
154 )
155 if index is not Undefined: 2npenmmopfnnmppgnomqphnpmrpinqmspjnrm
156 raise RuntimeError( 2npopppqprpsp
157 "Passing index is not supported when also passing a sa_column"
158 )
159 if sa_type is not Undefined: 2enmmfnnmgnomhnpminqmjnrm
160 raise RuntimeError( 2enfngnhninjn
161 "Passing sa_type is not supported when also passing a sa_column"
162 )
163 if ondelete is not Undefined: 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
164 if foreign_key is Undefined: 2}mpd$b%c%b[ 'b~mqd{ | .b/b} ~ ' ( abbbanrdibjbkb~bacbclbmbnb) * + obpbqbbnsdxbybzbrcsctcAbBbCb, - . DbEbFbcntdMbNbObJcKcLcPbQbRb/ : ; SbTbUbdnud1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b
165 raise RuntimeError("ondelete can only be used with foreign_key") 2}m~manbncndn
166 super().__init__(default=default, **kwargs) 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
167 self.primary_key = primary_key 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
168 self.nullable = nullable 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
169 self.foreign_key = foreign_key 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
170 self.ondelete = ondelete 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
171 self.unique = unique 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
172 self.index = index 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
173 self.sa_type = sa_type 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
174 self.sa_column = sa_column 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
175 self.sa_column_args = sa_column_args 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
176 self.sa_column_kwargs = sa_column_kwargs 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
179class RelationshipInfo(Representation): 1abcdef
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: 2a [m8mjdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb ]m9mkdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ^m!mldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd _m#mmdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce `m$mndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf {m%modudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
192 if sa_relationship_args is not None: 2[m8mjd]m9mkd^m!mld_m#mmd`m$mnd{m%mod
193 raise RuntimeError( 2[m]m^m_m`m{m
194 "Passing sa_relationship_args is not supported when "
195 "also passing a sa_relationship"
196 )
197 if sa_relationship_kwargs is not None: 28mjd9mkd!mld#mmd$mnd%mod
198 raise RuntimeError( 28m9m!m#m$m%m
199 "Passing sa_relationship_kwargs is not supported when "
200 "also passing a sa_relationship"
201 )
202 self.back_populates = back_populates 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
203 self.cascade_delete = cascade_delete 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
204 self.passive_deletes = passive_deletes 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
205 self.link_model = link_model 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
206 self.sa_relationship = sa_relationship 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
207 self.sa_relationship_args = sa_relationship_args 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
208 self.sa_relationship_kwargs = sa_relationship_kwargs 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
211# include sa_type, sa_column_args, sa_column_kwargs
212@overload 1abcdef
213def Field( 1abcdef
214 default: Any = Undefined, 1abcdef
215 *,
216 default_factory: Optional[NoArgAnyCallable] = None, 1abcdef
217 alias: Optional[str] = None, 1abcdef
218 title: Optional[str] = None, 1abcdef
219 description: Optional[str] = None, 1abcdef
220 exclude: Union[ 1abcdef
221 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
222 ] = None, 1abcdef
223 include: Union[ 1abcdef
224 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
225 ] = None, 1abcdef
226 const: Optional[bool] = None, 1abcdef
227 gt: Optional[float] = None, 1abcdef
228 ge: Optional[float] = None, 1abcdef
229 lt: Optional[float] = None, 1abcdef
230 le: Optional[float] = None, 1abcdef
231 multiple_of: Optional[float] = None, 1abcdef
232 max_digits: Optional[int] = None, 1abcdef
233 decimal_places: Optional[int] = None, 1abcdef
234 min_items: Optional[int] = None, 1abcdef
235 max_items: Optional[int] = None, 1abcdef
236 unique_items: Optional[bool] = None, 1abcdef
237 min_length: Optional[int] = None, 1abcdef
238 max_length: Optional[int] = None, 1abcdef
239 allow_mutation: bool = True, 1abcdef
240 regex: Optional[str] = None, 1abcdef
241 discriminator: Optional[str] = None, 1abcdef
242 repr: bool = True, 1abcdef
243 primary_key: Union[bool, UndefinedType] = Undefined, 1abcdef
244 foreign_key: Any = Undefined, 1abcdef
245 unique: Union[bool, UndefinedType] = Undefined, 1abcdef
246 nullable: Union[bool, UndefinedType] = Undefined, 1abcdef
247 index: Union[bool, UndefinedType] = Undefined, 1abcdef
248 sa_type: Union[Type[Any], UndefinedType] = Undefined, 1abcdef
249 sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined, 1abcdef
250 sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined, 1abcdef
251 schema_extra: Optional[Dict[str, Any]] = None, 1abcdef
252) -> Any: ... 1abcdef
255# When foreign_key is str, include ondelete
256# include sa_type, sa_column_args, sa_column_kwargs
257@overload 1abcdef
258def Field( 1abcdef
259 default: Any = Undefined, 1abcdef
260 *,
261 default_factory: Optional[NoArgAnyCallable] = None, 1abcdef
262 alias: Optional[str] = None, 1abcdef
263 title: Optional[str] = None, 1abcdef
264 description: Optional[str] = None, 1abcdef
265 exclude: Union[ 1abcdef
266 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
267 ] = None, 1abcdef
268 include: Union[ 1abcdef
269 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
270 ] = None, 1abcdef
271 const: Optional[bool] = None, 1abcdef
272 gt: Optional[float] = None, 1abcdef
273 ge: Optional[float] = None, 1abcdef
274 lt: Optional[float] = None, 1abcdef
275 le: Optional[float] = None, 1abcdef
276 multiple_of: Optional[float] = None, 1abcdef
277 max_digits: Optional[int] = None, 1abcdef
278 decimal_places: Optional[int] = None, 1abcdef
279 min_items: Optional[int] = None, 1abcdef
280 max_items: Optional[int] = None, 1abcdef
281 unique_items: Optional[bool] = None, 1abcdef
282 min_length: Optional[int] = None, 1abcdef
283 max_length: Optional[int] = None, 1abcdef
284 allow_mutation: bool = True, 1abcdef
285 regex: Optional[str] = None, 1abcdef
286 discriminator: Optional[str] = None, 1abcdef
287 repr: bool = True, 1abcdef
288 primary_key: Union[bool, UndefinedType] = Undefined, 1abcdef
289 foreign_key: str, 1abcdef
290 ondelete: Union[OnDeleteType, UndefinedType] = Undefined, 1abcdef
291 unique: Union[bool, UndefinedType] = Undefined, 1abcdef
292 nullable: Union[bool, UndefinedType] = Undefined, 1abcdef
293 index: Union[bool, UndefinedType] = Undefined, 1abcdef
294 sa_type: Union[Type[Any], UndefinedType] = Undefined, 1abcdef
295 sa_column_args: Union[Sequence[Any], UndefinedType] = Undefined, 1abcdef
296 sa_column_kwargs: Union[Mapping[str, Any], UndefinedType] = Undefined, 1abcdef
297 schema_extra: Optional[Dict[str, Any]] = None, 1abcdef
298) -> Any: ... 1abcdef
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 1abcdef
312def Field( 1abcdef
313 default: Any = Undefined, 1abcdef
314 *,
315 default_factory: Optional[NoArgAnyCallable] = None, 1abcdef
316 alias: Optional[str] = None, 1abcdef
317 title: Optional[str] = None, 1abcdef
318 description: Optional[str] = None, 1abcdef
319 exclude: Union[ 1abcdef
320 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
321 ] = None, 1abcdef
322 include: Union[ 1abcdef
323 AbstractSet[Union[int, str]], Mapping[Union[int, str], Any], Any 1abcdef
324 ] = None, 1abcdef
325 const: Optional[bool] = None, 1abcdef
326 gt: Optional[float] = None, 1abcdef
327 ge: Optional[float] = None, 1abcdef
328 lt: Optional[float] = None, 1abcdef
329 le: Optional[float] = None, 1abcdef
330 multiple_of: Optional[float] = None, 1abcdef
331 max_digits: Optional[int] = None, 1abcdef
332 decimal_places: Optional[int] = None, 1abcdef
333 min_items: Optional[int] = None, 1abcdef
334 max_items: Optional[int] = None, 1abcdef
335 unique_items: Optional[bool] = None, 1abcdef
336 min_length: Optional[int] = None, 1abcdef
337 max_length: Optional[int] = None, 1abcdef
338 allow_mutation: bool = True, 1abcdef
339 regex: Optional[str] = None, 1abcdef
340 discriminator: Optional[str] = None, 1abcdef
341 repr: bool = True, 1abcdef
342 sa_column: Union[Column[Any], UndefinedType] = Undefined, 1abcdef
343 schema_extra: Optional[Dict[str, Any]] = None, 1abcdef
344) -> Any: ... 1abcdef
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 {} 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
390 field_info = FieldInfo( 2a efkele~jmlnlEl%lglnpHpBpNp5pYpenvpmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlopIpCpOp6pZpfnwpnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilppJpDpPp7p0pgnxpom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlqpKpEpQp8p1phnyppm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklrpLpFpRp9p2pinzpqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllspMpGpSp!p3pjnAprm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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) 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
428 return field_info 2a efkele~jmlnlEl%lglmm[m8mymakzmjdbkckdk=l^jyl'l}mpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnm]m9mCmlkDmkdmknkok[l_jzl)l~mqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilom^m!mGmwkHmldxkykzk_l`jAl+lanrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpm_m#mKmMkLmmdNkOkPk|l{jBl-lbnsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm`m$mOm2kPmnd3k4k5kam|jCl/lcntdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm{m%mSm+kTmod,k-k.kdm}jDl;ldnudUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
431@overload 1abcdef
432def Relationship( 1abcdef
433 *,
434 back_populates: Optional[str] = None, 1abcdef
435 cascade_delete: Optional[bool] = False, 1abcdef
436 passive_deletes: Optional[Union[bool, Literal["all"]]] = False, 1abcdef
437 link_model: Optional[Any] = None, 1abcdef
438 sa_relationship_args: Optional[Sequence[Any]] = None, 1abcdef
439 sa_relationship_kwargs: Optional[Mapping[str, Any]] = None, 1abcdef
440) -> Any: ... 1abcdef
443@overload 1abcdef
444def Relationship( 1abcdef
445 *,
446 back_populates: Optional[str] = None, 1abcdef
447 cascade_delete: Optional[bool] = False, 1abcdef
448 passive_deletes: Optional[Union[bool, Literal["all"]]] = False, 1abcdef
449 link_model: Optional[Any] = None, 1abcdef
450 sa_relationship: Optional[RelationshipProperty[Any]] = None, 1abcdef
451) -> Any: ... 1abcdef
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( 2a [m8mjdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb ]m9mkdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ^m!mldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd _m#mmdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce `m$mndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf {m%modudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
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 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
476@__dataclass_transform__(kw_only_default=True, field_descriptors=(Field, FieldInfo)) 1abcdef
477class SQLModelMetaclass(ModelMetaclass, DeclarativeMeta): 1abcdef
478 __sqlmodel_relationships__: Dict[str, RelationshipInfo] 1abcdef
479 model_config: SQLModelConfig 1abcdef
480 model_fields: ClassVar[Dict[str, FieldInfo]] 1abcdef
481 __config__: Type[SQLModelConfig] 1abcdef
482 __fields__: Dict[str, ModelField] # type: ignore[assignment] 1abcdef
484 # Replicate SQLAlchemy
485 def __setattr__(cls, name: str, value: Any) -> None: 1abcdef
486 if is_table_model_class(cls): 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
487 DeclarativeMeta.__setattr__(cls, name, value) 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
488 else:
489 super().__setattr__(name, value) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
491 def __delattr__(cls, name: str) -> None: 1abcdef
492 if is_table_model_class(cls): 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
493 DeclarativeMeta.__delattr__(cls, name) 1abcdef
494 else:
495 super().__delattr__(name) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
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] = {} 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
506 dict_for_pydantic = {} 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
507 original_annotations = get_annotations(class_dict) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
508 pydantic_annotations = {} 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
509 relationship_annotations = {} 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
510 for k, v in class_dict.items(): 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
511 if isinstance(v, RelationshipInfo): 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
512 relationships[k] = v 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
513 else:
514 dict_for_pydantic[k] = v 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
515 for k, v in original_annotations.items(): 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
516 if k in relationships: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
517 relationship_annotations[k] = v 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
518 else:
519 pydantic_annotations[k] = v 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
520 dict_used = { 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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] = { 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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 = { 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
540 new_cls.__annotations__ = { 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
541 **relationship_annotations,
542 **pydantic_annotations,
543 **new_cls.__annotations__,
544 }
546 def get_config(name: str) -> Any: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
547 config_class_value = get_config_value( 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
548 model=new_cls, parameter=name, default=Undefined
549 )
550 if config_class_value is not Undefined: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
551 return config_class_value 2nfofpfqfrfsftfufvfwfxfyfzfAfBf
552 kwarg_value = kwargs.get(name, Undefined) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
553 if kwarg_value is not Undefined: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
554 return kwarg_value 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
555 return Undefined 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
557 config_table = get_config("table") 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
558 if config_table is True: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk=l^jyl'lpdAmBmsmek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok[l_jzl)lqdEmFmtmpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk_l`jAl+lrdImJmumAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk|l{jBl-lsdMmNmvmQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5kam|jCl/ltdQmRmwm6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.kdm}jDl;ludUmVmxm/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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) 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
561 for k, v in get_model_fields(new_cls).items(): 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
562 col = get_column_from_field(v) 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
563 setattr(new_cls, k, col) 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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( 2a efkele~jmlnlEl%lglmmakjdbkckdk^jyl'lpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok_jzl)lqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk`jAl+lrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk{jBl-lsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5k|jCl/ltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.k}jDl;lud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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) 2a efkele~jmlnlEl%lglmmakjdbkckdk^jyl'lpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok_jzl)lqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk`jAl+lrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk{jBl-lsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5k|jCl/ltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.k}jDl;lud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
576 config_registry = get_config("registry") 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
577 if config_registry is not Undefined: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
578 config_registry = cast(registry, config_registry) 1abcdef
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) 1abcdef
581 setattr(new_cls, "_sa_registry", config_registry) # noqa: B010 1abcdef
582 setattr(new_cls, "metadata", config_registry.metadata) # noqa: B010 1abcdef
583 setattr(new_cls, "__abstract__", True) # noqa: B010 1abcdef
584 return new_cls 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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) 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
595 if is_table_model_class(cls) and not base_is_table: 2a efkele~jmlnlEl%lglmmymakzmjdbkckdk^jyl'lpdAmBmsmek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmb me]d^dkkolplFl(lhlnmCmlkDmkdmknkok_jzl)lqdEmFmtmpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmc vewe_d`d{d|dvkqlrlHl*lilomGmwkHmldxkykzk`jAl+lrdImJmumAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmd NeOe}d~daebeLksltlKl,ljlpmKmMkLmmdNkOkPk{jBl-lsdMmNmvmQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZme 5e6ecedeeefe1kulvlNl.lklqmOm2kPmnd3k4k5k|jCl/ltdQmRmwm6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mf :e;egeheieje*kwlxlQl:lllrmSm+kTmod,k-k.k}jDl;ludUmVmxm/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
596 for rel_name, rel_info in cls.__sqlmodel_relationships__.items(): 2a efkele~jmlnlEl%lglmmakjdbkckdk^jyl'lpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok_jzl)lqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk`jAl+lrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk{jBl-lsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5k|jCl/ltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.k}jDl;lud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
597 if rel_info.sa_relationship: 2a jdpd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
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 2jdkdldmdndod
601 continue 2jdkdldmdndod
602 raw_ann = cls.__annotations__[rel_name] 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
603 origin = get_origin(raw_ann) 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
604 if origin is Mapped: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
605 ann = raw_ann.__args__[0]
606 else:
607 ann = raw_ann 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
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] 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
612 relationship_to = get_relationship_to( 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
613 name=rel_name, rel_info=rel_info, annotation=ann
614 )
615 rel_kwargs: Dict[str, Any] = {} 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
616 if rel_info.back_populates: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
617 rel_kwargs["back_populates"] = rel_info.back_populates 2a pd!cI J % Y !b#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ _ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbebfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtbubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIbJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXbYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
618 if rel_info.cascade_delete: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
619 rel_kwargs["cascade"] = "all, delete-orphan" 2$b{ | ibjbkbxbybzbMbNbOb1b2b3b
620 if rel_info.passive_deletes: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
621 rel_kwargs["passive_deletes"] = rel_info.passive_deletes 2pd%b[ 'bqd} ~ ' ( abbbrdlbmbnb) * + obpbqbsdAbBbCb, - . DbEbFbtdPbQbRb/ : ; SbTbUbud4b5b6b= ? @ 7b8b9b
622 if rel_info.link_model: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
623 ins = inspect(rel_info.link_model) 1%YZ0KL123MNO456PQR789STU!#$VWX
624 local_table = getattr(ins, "local_table") # noqa: B009 1%YZ0KL123MNO456PQR789STU!#$VWX
625 if local_table is None: 1%YZ0KL123MNO456PQR789STU!#$VWX
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 1%YZ0KL123MNO456PQR789STU!#$VWX
631 rel_args: List[Any] = [] 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
632 if rel_info.sa_relationship_args: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
633 rel_args.extend(rel_info.sa_relationship_args)
634 if rel_info.sa_relationship_kwargs: 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
635 rel_kwargs.update(rel_info.sa_relationship_kwargs)
636 rel_value = relationship(relationship_to, *rel_args, **rel_kwargs) 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
637 setattr(cls, rel_name, rel_value) # Fix #315 2a pd!cI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb qd(b)bg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc rd@b[b]bk l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd sdicjckcq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce tdAcBcCcw x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf udScTcUcC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
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) 2a efkele~jmlnlEl%lglmmakjdbkckdk^jyl'lpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok_jzl)lqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk`jAl+lrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk{jBl-lsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5k|jCl/ltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.k}jDl;lud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
642 else:
643 ModelMetaclass.__init__(cls, classname, bases, dict_, **kw) 2a mlnlymzmAmBmsm=dCfDfEfFfI nf?dJ @d[d2mWmb olplCmDmEmFmtmGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydi j zdAdBdCd3mXmc qlrlGmHmImJmumIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdIdn o p JdKdLdMdNdOd4mYmd sltlKmLmMmNmvmLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUdt u v VdWdXdYdZd0d5mZme ulvlOmPmQmRmwmOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6dz A B 7d8d9d!d#d$d6m0mf wlxlSmTmUmVmxmRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dF G H ,d-d.d/d:d;d7m1m
646def get_sqlalchemy_type(field: Any) -> Any: 1abcdef
647 if IS_PYDANTIC_V2: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
648 field_info = field 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
649 else:
650 field_info = field.field_info 2a efkelemlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebesltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejewlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
651 sa_type = getattr(field_info, "sa_type", Undefined) # noqa: B009 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
652 if sa_type is not Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
653 return sa_type
655 type_ = get_sa_type_from_field(field) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
656 metadata = get_field_metadata(field) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
658 # Check enums first as an enum can also be a str, needed by Pydantic/FastAPI
659 if issubclass(type_, Enum): 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
660 return sa_Enum(type_) 2a mlnlb olplc qlrld sltle ulvlf wlxl
661 if issubclass( 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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) 2a efkeleElglakjdbkckdk^jylpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dFlhllkkdmknkok_jzlqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dHlilwkldxkykzk`jAlrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeKljlMkmdNkOkPk{jBlsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeNlkl2knd3k4k5k|jCltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejeQlll+kod,k-k.k}jDlud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
674 if max_length: 2a efkeleElglakjdbkckdk^jylpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dFlhllkkdmknkok_jzlqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dHlilwkldxkykzk`jAlrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeKljlMkmdNkOkPk{jBlsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeNlkl2knd3k4k5k|jCltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejeQlll+kod,k-k.k}jDlud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
675 return AutoString(length=max_length)
676 return AutoString 2a efkeleElglakjdbkckdk^jylpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dFlhllkkdmknkok_jzlqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dHlilwkldxkykzk`jAlrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeKljlMkmdNkOkPk{jBlsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeNlkl2knd3k4k5k|jCltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejeQlll+kod,k-k.k}jDlud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
677 if issubclass(type_, float): 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
678 return Float
679 if issubclass(type_, bool): 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
680 return Boolean 2!b] ^ cbdbebrbsbtbGbHbIbVbWbXb
681 if issubclass(type_, int): 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
682 return Integer 2a efkeleEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejeQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
683 if issubclass(type_, datetime): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
684 return DateTime
685 if issubclass(type_, date): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
686 return Date
687 if issubclass(type_, timedelta): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
688 return Interval
689 if issubclass(type_, time): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
690 return Time
691 if issubclass(type_, bytes): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
692 return LargeBinary
693 if issubclass(type_, Decimal): 2a efkele~jmlnl=l?l@lb me]d^dkkolpl[l]l^lc vewe_d`d{d|dvkqlrl_l`l{ld NeOe}d~daebeLksltl|l}l~le 5e6ecedeeefe1kulvlambmcmf :e;egeheieje*kwlxldmemfm
694 return Numeric( 2efmeveweNeOe5e6e:e;e
695 precision=getattr(metadata, "max_digits", None),
696 scale=getattr(metadata, "decimal_places", None),
697 )
698 if issubclass(type_, uuid.UUID): 2a kele~jmlnl=l?l@lb ]d^dkkolpl[l]l^lc _d`d{d|dvkqlrl_l`l{ld }d~daebeLksltl|l}l~le cedeeefe1kulvlambmcmf geheieje*kwlxldmemfm
699 return Uuid 2a kele~jmlnlb ]d^dkkolplc _d`d{d|dvkqlrld }d~daebeLksltle cedeeefe1kulvlf geheieje*kwlxl
700 raise ValueError(f"{type_} has no matching SQLAlchemy type") 2=l?l@l[l]l^l_l`l{l|l}l~lambmcmdmemfm
703def get_column_from_field(field: Any) -> Column: # type: ignore 1abcdef
704 if IS_PYDANTIC_V2: 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
705 field_info = field 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
706 else:
707 field_info = field.field_info 2a efkelemlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebesltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejewlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
708 sa_column = getattr(field_info, "sa_column", Undefined) 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
709 if isinstance(sa_column, Column): 2a efkele~jmlnlEl%lglmmakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhlnmlkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lllrm+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
710 return sa_column 2mmnmompmqmrm
711 sa_type = get_sqlalchemy_type(field) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
712 primary_key = getattr(field_info, "primary_key", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
713 if primary_key is Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
714 primary_key = False 2a efkelemlnlEl%lglakjdbkckdk^jylpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dolplFl(lhllkkdmknkok_jzlqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dqlrlHl*lilwkldxkykzk`jAlrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebesltlKl,ljlMkmdNkOkPk{jBlsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeulvlNl.lkl2knd3k4k5k|jCltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejewlxlQl:lll+kod,k-k.k}jDlud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
715 index = getattr(field_info, "index", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
716 if index is Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
717 index = False 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
718 nullable = not primary_key and is_field_noneable(field) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
722 if field_nullable is not Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
723 assert not isinstance(field_nullable, UndefinedType) 2^jyl'l_jzl)l`jAl+l{jBl-l|jCl/l}jDl;l
724 nullable = field_nullable 2^jyl'l_jzl)l`jAl+l{jBl-l|jCl/l}jDl;l
725 args = [] 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
726 foreign_key = getattr(field_info, "foreign_key", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
727 if foreign_key is Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
728 foreign_key = None 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
729 unique = getattr(field_info, "unique", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
730 if unique is Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
731 unique = False 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
732 if foreign_key: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
733 if field_info.ondelete == "SET NULL" and not nullable: 2a jdpd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kdqd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ldrd@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdsdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndtdAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odudScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
734 raise RuntimeError('ondelete="SET NULL" requires nullable=True') 2pdqdrdsdtdud
735 assert isinstance(foreign_key, str) 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
736 ondelete = getattr(field_info, "ondelete", Undefined) 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
737 if ondelete is Undefined: 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
738 ondelete = None 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c4c5c6c7c8c9c
739 assert isinstance(ondelete, (str, type(None))) # for typing 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
740 args.append(ForeignKey(foreign_key, ondelete=ondelete)) 2a jd!c{kffgfhfifjfkflfmfI J % Y !b^c#b_c#c$c$b%c%b[ 'b'c(cb kd(b)b|kneoepeqereseteueg h i j Z 0 K L ] ^ )c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bc ld@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMek l m n o p 1 2 3 M N O cbdbeb+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchcd mdicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4eq r s t u v 4 5 6 P Q R rbsbtb.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczce ndAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ew x y z A B 7 8 9 S T U GbHbIb;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcf odScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdfC D E F G H ! # $ V W X VbWbXb@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9c
741 kwargs = { 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
742 "primary_key": primary_key,
743 "nullable": nullable,
744 "index": index,
745 "unique": unique,
746 }
747 sa_default = Undefined 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
748 if field_info.default_factory: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
749 sa_default = field_info.default_factory 2kele~j]d^dkk_d`d{d|dvk}d~daebeLkcedeeefe1kgeheieje*k
750 elif field_info.default is not Undefined: 2a efkelemlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebesltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejewlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
751 sa_default = field_info.default 2a efkeleEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefeNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheiejeQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
752 if sa_default is not Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
753 kwargs["default"] = sa_default 2a efkele~jEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLkKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
754 sa_column_args = getattr(field_info, "sa_column_args", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
755 if sa_column_args is not Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
756 args.extend(list(cast(Sequence[Any], sa_column_args))) 2ElFlHlKlNlQl
757 sa_column_kwargs = getattr(field_info, "sa_column_kwargs", Undefined) 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
758 if sa_column_kwargs is not Undefined: 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
759 kwargs.update(cast(Dict[Any, Any], sa_column_kwargs)) 2%l(l*l,l.l:l
760 return Column(sa_type, *args, **kwargs) # type: ignore 2a efkele~jmlnlEl%lglakjdbkckdk=l^jyl'lpdek?l@lgm!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb me]d^dkkolplFl(lhllkkdmknkok[l_jzl)lqdpk]l^lhm(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc vewe_d`d{d|dvkqlrlHl*lilwkldxkykzk_l`jAl+lrdAk`l{lim@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd NeOe}d~daebeLksltlKl,ljlMkmdNkOkPk|l{jBl-lsdQk}l~ljmicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 5e6ecedeeefe1kulvlNl.lkl2knd3k4k5kam|jCl/ltd6kbmcmkmAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if :e;egeheieje*kwlxlQl:lll+kod,k-k.kdm}jDl;lud/kemfmlmScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
763class_registry = weakref.WeakValueDictionary() # type: ignore 1abcdef
765default_registry = registry() 1abcdef
767_TSQLModel = TypeVar("_TSQLModel", bound="SQLModel") 1abcdef
770class SQLModel(BaseModel, metaclass=SQLModelMetaclass, registry=default_registry): 1abcdef
771 # SQLAlchemy needs to set weakref(s), Pydantic will set the other slots values
772 __slots__ = ("__weakref__",) 1abcdef
773 __tablename__: ClassVar[Union[str, Callable[..., str]]] 1abcdef
774 __sqlmodel_relationships__: ClassVar[Dict[str, RelationshipProperty[Any]]] 1abcdef
775 __name__: ClassVar[str] 1abcdef
776 metadata: ClassVar[MetaData] 1abcdef
777 __allow_unmapped__ = True # https://docs.sqlalchemy.org/en/20/changelog/migration_20.html#migration-20-step-six 1abcdef
779 if IS_PYDANTIC_V2: 1abcdef
780 model_config = SQLModelConfig(from_attributes=True) 1abcdef
781 else:
783 class Config: 1abcdef
784 orm_mode = True 1abcdef
786 def __new__(cls, *args: Any, **kwargs: Any) -> Any: 1abcdef
787 new_object = super().__new__(cls) 2bqkncqdq#plnmn|mnnonpnqnrnsnefkele~j4p?p@pymakzmjdbkckdk^jAmBmsmektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmeqznfqgq$pAnBn'mCnDnEnFnGnHnhqIniqjq%pJnKn(mLnMnNnOnPnQnme]d^dkkTp[p]pCmlkDmkdmknkok_jEmFmtmpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmkqZnlqmq'p0n1n)m2n3n4n5n6n7nnq8noqpq(p9n!n*m#n$n%n'n(n)nqq*nrqsq)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkUp^p_pGmwkHmldxkykzk`jImJmumAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmtq|nuqvq*p}n~n,maobocodoeofowqgoxqyq+phoio-mjokolomonooozqpoAqBq,pqoro.msotouovowoxoNeOe}d~daebeLkVp`p{pKmMkLmmdNkOkPk{jMmNmvmQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZmCqGoDqEq-pHoIo/mJoKoLoMoNoOoFqPoGqHq.pQoRo:mSoToUoVoWoXoIqYoJqKq/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1kWp|p}pOm2kPmnd3k4k5k|jQmRmwm6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mLq(oMqNq:p)o*o=m+o,o-o.o/o:oOq;oPqQq;p=o?o?m@o[o]o^o_o`oRq{oSqTq=p|o}o@m~oapbpcpdpep:e;egeheieje*kXp~paqSm+kTmod,k-k.k}jUmVmxm/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
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) 2bqkncqdq#plnmn|mnnonpnqnrnsnefkele~j4p?p@pymakzmjdbkckdk^jAmBmsmektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmeqznfqgq$pAnBn'mCnDnEnFnGnHnhqIniqjq%pJnKn(mLnMnNnOnPnQnme]d^dkkTp[p]pCmlkDmkdmknkok_jEmFmtmpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmkqZnlqmq'p0n1n)m2n3n4n5n6n7nnq8noqpq(p9n!n*m#n$n%n'n(n)nqq*nrqsq)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkUp^p_pGmwkHmldxkykzk`jImJmumAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmtq|nuqvq*p}n~n,maobocodoeofowqgoxqyq+phoio-mjokolomonooozqpoAqBq,pqoro.msotouovowoxoNeOe}d~daebeLkVp`p{pKmMkLmmdNkOkPk{jMmNmvmQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZmCqGoDqEq-pHoIo/mJoKoLoMoNoOoFqPoGqHq.pQoRo:mSoToUoVoWoXoIqYoJqKq/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1kWp|p}pOm2kPmnd3k4k5k|jQmRmwm6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mLq(oMqNq:p)o*o=m+o,o-o.o/o:oOq;oPqQq;p=o?o?m@o[o]o^o_o`oRq{oSqTq=p|o}o@m~oapbpcpdpep:e;egeheieje*kXp~paqSm+kTmod,k-k.k}jUmVmxm/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
794 return new_object 2bqkncqdq#plnmn|mnnonpnqnrnsnefkele~j4p?p@pymakzmjdbkckdk^jAmBmsmektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2mWmeqznfqgq$pAnBn'mCnDnEnFnGnHnhqIniqjq%pJnKn(mLnMnNnOnPnQnme]d^dkkTp[p]pCmlkDmkdmknkok_jEmFmtmpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mXmkqZnlqmq'p0n1n)m2n3n4n5n6n7nnq8noqpq(p9n!n*m#n$n%n'n(n)nqq*nrqsq)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkUp^p_pGmwkHmldxkykzk`jImJmumAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mYmtq|nuqvq*p}n~n,maobocodoeofowqgoxqyq+phoio-mjokolomonooozqpoAqBq,pqoro.msotouovowoxoNeOe}d~daebeLkVp`p{pKmMkLmmdNkOkPk{jMmNmvmQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mZmCqGoDqEq-pHoIo/mJoKoLoMoNoOoFqPoGqHq.pQoRo:mSoToUoVoWoXoIqYoJqKq/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1kWp|p}pOm2kPmnd3k4k5k|jQmRmwm6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6m0mLq(oMqNq:p)o*o=m+o,o-o.o/o:oOq;oPqQq;p=o?o?m@o[o]o^o_o`oRq{oSqTq=p|o}o@m~oapbpcpdpep:e;egeheieje*kXp~paqSm+kTmod,k-k.k}jUmVmxm/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m1m
796 def __init__(__pydantic_self__, **data: Any) -> None: 1abcdef
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(): 2bqkncqdq#plnmn|mnnonpnqnrnsnefkele~j4p?pymakzmjdbkckdk^jAmBmsmektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2meqznfqgq$pAnBn'mCnDnEnFnGnHnhqIniqjq%pJnKn(mLnMnNnOnPnQnme]d^dkkTp[pCmlkDmkdmknkok_jEmFmtmpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mkqZnlqmq'p0n1n)m2n3n4n5n6n7nnq8noqpq(p9n!n*m#n$n%n'n(n)nqq*nrqsq)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkUp^pGmwkHmldxkykzk`jImJmumAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mtq|nuqvq*p}n~n,maobocodoeofowqgoxqyq+phoio-mjokolomonooozqpoAqBq,pqoro.msotouovowoxoNeOe}d~daebeLkVp`pKmMkLmmdNkOkPk{jMmNmvmQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mCqGoDqEq-pHoIo/mJoKoLoMoNoOoFqPoGqHq.pQoRo:mSoToUoVoWoXoIqYoJqKq/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1kWp|pOm2kPmnd3k4k5k|jQmRmwm6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6mLq(oMqNq:p)o*o=m+o,o-o.o/o:oOq;oPqQq;p=o?o?m@o[o]o^o_o`oRq{oSqTq=p|o}o@m~oapbpcpdpep:e;egeheieje*kXp~pSm+kTmod,k-k.k}jUmVmxm/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m
814 sqlmodel_init(self=__pydantic_self__, data=data) 2bqkncqdq#plnmn|mnnonpnqnrnsnefkele~j4p?pymakzmjdbkckdk^jAmBmsmektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j2meqznfqgq$pAnBn'mCnDnEnFnGnHnhqIniqjq%pJnKn(mLnMnNnOnPnQnme]d^dkkTp[pCmlkDmkdmknkok_jEmFmtmpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg3mkqZnlqmq'p0n1n)m2n3n4n5n6n7nnq8noqpq(p9n!n*m#n$n%n'n(n)nqq*nrqsq)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkUp^pGmwkHmldxkykzk`jImJmumAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh4mtq|nuqvq*p}n~n,maobocodoeofowqgoxqyq+phoio-mjokolomonooozqpoAqBq,pqoro.msotouovowoxoNeOe}d~daebeLkVp`pKmMkLmmdNkOkPk{jMmNmvmQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai5mCqGoDqEq-pHoIo/mJoKoLoMoNoOoFqPoGqHq.pQoRo:mSoToUoVoWoXoIqYoJqKq/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1kWp|pOm2kPmnd3k4k5k|jQmRmwm6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i6mLq(oMqNq:p)o*o=m+o,o-o.o/o:oOq;oPqQq;p=o?o?m@o[o]o^o_o`oRq{oSqTq=p|o}o@m~oapbpcpdpep:e;egeheieje*kXp~pSm+kTmod,k-k.k}jUmVmxm/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj7m
816 def __setattr__(self, name: str, value: Any) -> None: 1abcdef
817 if name in {"_sa_instance_state"}: 2kn#plnmn|mnnonpnqnrnsnefkele~j?p@pakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkk[p]plkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvk^p_pwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYm|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLk`p{pMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZmGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k|p}p2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0m(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k~paq+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
818 self.__dict__[name] = value 2kn#plnmn|mnnonpnqnrnsnefkele~jakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkklkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLkMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
819 return 2kn#plnmn|mnnonpnqnrnsnefkele~jakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkklkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLkMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
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] 2kn#plnmn|mnnonpnqnrnsnefkele~j?p@pakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkk[p]plkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvk^p_pwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYm|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLk`p{pMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZmGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k|p}p2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0m(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k~paq+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
823 set_attribute(self, name, value) 2kn#plnmn|mnnonpnqnrnsnefkele~jakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkklkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvkwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLkMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
824 # Set in Pydantic model to trigger possible validation changes, only for
825 # non relationship values
826 if name not in self.__sqlmodel_relationships__: 2kn#plnmn|mnnonpnqnrnsnefkele~j?p@pakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkk[p]plkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvk^p_pwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYm|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLk`p{pMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZmGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k|p}p2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0m(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k~paq+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
827 super().__setattr__(name, value) 2kn#plnmn|mnnonpnqnrnsnefkele~j?p@pakjdbkckdk^jektpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jWmzn$pAnBn'mCnDnEnFnGnHnIn%pJnKn(mLnMnNnOnPnQnme]d^dkk[p]plkkdmknkok_jpkRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgXmZn'p0n1n)m2n3n4n5n6n7n8n(p9n!n*m#n$n%n'n(n)n*n)p+n,n+m-n.n/n:n;n=nvewe_d`d{d|dvk^p_pwkldxkykzk`jAk?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhYm|n*p}n~n,maobocodoeofogo+phoio-mjokolomonooopo,pqoro.msotouovowoxoNeOe}d~daebeLk`p{pMkmdNkOkPk{jQkyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiZmGo-pHoIo/mJoKoLoMoNoOoPo.pQoRo:mSoToUoVoWoXoYo/pZo0o;m1o2o3o4o5o6o5e6ecedeeefe1k|p}p2knd3k4k5k|j6k7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i0m(o:p)o*o=m+o,o-o.o/o:o;o;p=o?o?m@o[o]o^o_o`o{o=p|o}o@m~oapbpcpdpep:e;egeheieje*k~paq+kod,k-k.k}j/kfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj1m
829 def __repr_args__(self) -> Sequence[Tuple[Optional[str], Any]]: 1abcdef
830 # Don't show SQLAlchemy private attributes
831 return [ 2sm[ tm' ( um) * + vm, - . wm/ : ; xm= ? @
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 1abcdef
838 def __tablename__(cls) -> str: 1abcdef
839 return cls.__name__.lower() 2a Uqefkele~jmlnlEl%lglmmakjdbkckdk^jyl'lpdek!c{kffgfhfifjfkflfmfTlUlWjXj=dCfDfEfFfI nf?digJ @d[dYjZjfkgkhk0j1j2j3j% Y !b4jik5j6j7j8j9j!jjk^c#b_c#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jb VqWqme]d^dkkolplFl(lhlnmlkkdmknkok_jzl)lqdpk(b)b|kneoepeqereseteueVlWljgkgGlvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgqkrkskngogpgqgZ 0 K L ] ^ rgtksgtgugvgwgxguk)c*c_ ` `c{c*b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgc XqYqZqvewe_d`d{d|dvkqlrlHl*lilomwkldxkykzk`jAl+lrdAk@b[b]b}k~kxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeXlYlZl0lRgSgTgUgIlJlDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgBkCkDkEkFkGkZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8gHkIk9g!g#g$g%g'g(g)g*g+g,g-gJkKk+c,c-cfbgbhb|c}c~c^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhd 0q1q2qNeOe}d~daebeLksltlKl,ljlpmMkmdNkOkPk{jBl-lsdQkicjckcalblPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e1l2l3l4lwhxhyhzhLlMlPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhRkSkTkUkVkWkEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhXkYkOhPhQhRhShThUhVhWhXhYhZhZk0k.c/c:cubvbwbadbdcdlcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haie 3q4q5q5e6ecedeeefe1kulvlNl.lklqm2knd3k4k5k|jCl/ltd6kAcBcCccldl7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e5l6l7l8lbicidieiOlPl1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiii7k8k9k!k#k$kjikiliminioipiqi7 8 9 S T U GbHbIbrisi%k'ktiuiviwixiyiziAiBiCiDiEi(k)k;c=c?cJbKbLbddedfdDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)if 6q7q8q:e;egeheieje*kwlxlQl:lllrm+kod,k-k.k}jDl;lud/kScTcUcelfl=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf9l!l#l$l*i+i,i-iRlSl%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i:k;k=k?k@k[k=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i]k^k}i~iajbjcjdjejfjgjhjijjj_k`k@c[c]cYbZb0bgdhdidVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
841 @classmethod 1abcdef
842 def model_validate( # type: ignore[override] 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( 2knlnmn|mnnonpnqnrnsn?p@ptnunvnwnxnyn=dCfDfEfFfI nf?dJ @d[dWmznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQn[p]pTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydi j zdAdBdCdXmZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=n^p_p[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdIdn o p JdKdLdMdNdOdYm|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxo`p{pAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUdt u v VdWdXdYdZd0dZmGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o|p}p9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6dz A B 7d8d9d!d#d$d0m(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep~paqhpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dF G H ,d-d.d/d:d;d1m
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[Any, None] = None,
867 by_alias: Union[bool, None] = None,
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 fallback: Union[Callable[[Any], Any], None] = None,
874 serialize_as_any: bool = False,
875 ) -> Dict[str, Any]:
876 if PYDANTIC_MINOR_VERSION < (2, 11): 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
877 by_alias = by_alias or False 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
878 if PYDANTIC_MINOR_VERSION >= (2, 7): 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
879 extra_kwargs: Dict[str, Any] = { 2|mefkele4ptpup!cffgfhfifjfkflfmfWjXj=dI ?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j'm(mme]d^dTpRnSn(b)bneoepeqereseteuejgkgvdwdg h xdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg)m*m+mvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUgDdEdFdk l m GdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh,m-m.mNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhPdQdRdq r s SdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai/m:m;m5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei1d2d3dw x y 4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i=m?m@m:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-i%d'd(dC D E )d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
880 "context": context,
881 "serialize_as_any": serialize_as_any,
882 }
883 if PYDANTIC_MINOR_VERSION >= (2, 11): 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
884 extra_kwargs["fallback"] = fallback 2'm(mme]d^dTpRnSn(b)bneoepeqereseteuejgkgvdwdg h xdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg)m*m+mvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUgDdEdFdk l m GdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh,m-m.mNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhPdQdRdq r s SdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai/m:m;m5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei1d2d3dw x y 4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i=m?m@m:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-i%d'd(dC D E )d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
885 else:
886 extra_kwargs = {} 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
887 if IS_PYDANTIC_V2: 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
888 return super().model_dump( 2|mefkele4ptpup!cffgfhfifjfkflfmfWjXj=dI ?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]j'm(mme]d^dTpRnSn(b)bneoepeqereseteuejgkgvdwdg h xdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQg)m*m+mvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUgDdEdFdk l m GdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh,m-m.mNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhPdQdRdq r s SdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~hai/m:m;m5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei1d2d3dw x y 4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i=m?m@m:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-i%d'd(dC D E )d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
889 mode=mode,
890 include=include,
891 exclude=exclude,
892 by_alias=by_alias,
893 exclude_unset=exclude_unset,
894 exclude_defaults=exclude_defaults,
895 exclude_none=exclude_none,
896 round_trip=round_trip,
897 warnings=warnings,
898 **extra_kwargs,
899 )
900 else:
901 return super().dict( 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
902 include=include,
903 exclude=exclude,
904 by_alias=by_alias or False,
905 exclude_unset=exclude_unset,
906 exclude_defaults=exclude_defaults,
907 exclude_none=exclude_none,
908 )
910 @deprecated( 1abcdef
911 """
912 🚨 `obj.dict()` was deprecated in SQLModel 0.0.14, you should
913 instead use `obj.model_dump()`.
914 """
915 )
916 def dict( 1abcdef
917 self,
918 *,
919 include: Union[IncEx, None] = None,
920 exclude: Union[IncEx, None] = None,
921 by_alias: bool = False,
922 exclude_unset: bool = False,
923 exclude_defaults: bool = False,
924 exclude_none: bool = False,
925 ) -> Dict[str, Any]:
926 return self.model_dump( 2knlnmn|mnnonpnqnrnsn4ptnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dY #bznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnTpTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdK L _ ` Zn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nUp[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdM N O fbgbhb|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoVpAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dP Q R ubvbwbGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6oWp9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dS T U JbKbLb(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpepXphpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;dV W X YbZb0b
927 include=include,
928 exclude=exclude,
929 by_alias=by_alias,
930 exclude_unset=exclude_unset,
931 exclude_defaults=exclude_defaults,
932 exclude_none=exclude_none,
933 )
935 @classmethod 1abcdef
936 @deprecated( 1abcdef
937 """
938 🚨 `obj.from_orm(data)` was deprecated in SQLModel 0.0.14, you should
939 instead use `obj.model_validate(data)`.
940 """
941 )
942 def from_orm( 1abcdef
943 cls: Type[_TSQLModel], obj: Any, update: Optional[Dict[str, Any]] = None
944 ) -> _TSQLModel:
945 return cls.model_validate(obj, update=update) 2knlnmn|mnnonpnqnrnsn?ptnunvnwnxnyn=dCfDfEfFfI nf?dJ @d[dznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQn[pTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydi j zdAdBdCdZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=n^p[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdIdn o p JdKdLdMdNdOd|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxo`pAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUdt u v VdWdXdYdZd0dGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o|p9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6dz A B 7d8d9d!d#d$d(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep~phpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dF G H ,d-d.d/d:d;d
947 @classmethod 1abcdef
948 @deprecated( 1abcdef
949 """
950 🚨 `obj.parse_obj(data)` was deprecated in SQLModel 0.0.14, you should
951 instead use `obj.model_validate(data)`.
952 """
953 )
954 def parse_obj( 1abcdef
955 cls: Type[_TSQLModel], obj: Any, update: Optional[Dict[str, Any]] = None
956 ) -> _TSQLModel:
957 if not IS_PYDANTIC_V2: 2@p]p_p{p}paq
958 obj = cls._enforce_dict_if_root(obj) # type: ignore[attr-defined] # noqa 2@p]p_p{p}paq
959 return cls.model_validate(obj, update=update) 2@p]p_p{p}paq
961 # From Pydantic, override to only show keys from fields, omit SQLAlchemy attributes
962 @deprecated( 1abcdef
963 """
964 🚨 You should not access `obj._calculate_keys()` directly.
966 It is only useful for Pydantic v1.X, you should probably upgrade to
967 Pydantic v2.X.
968 """,
969 category=None,
970 )
971 def _calculate_keys( 1abcdef
972 self,
973 include: Optional[Mapping[Union[int, str], Any]],
974 exclude: Optional[Mapping[Union[int, str], Any]],
975 exclude_unset: bool,
976 update: Optional[Dict[str, Any]] = None,
977 ) -> Optional[AbstractSet[str]]:
978 return _calculate_keys( 2knlnmn|mnnonpnqnrnsnefkele4ptpup!cffgfhfifjfkflfmfWjXjtnunvnwnxnyn=dCfDfEfFfI nf?digJ @d[dYjZj0j1j2j3j% Y !b4j5j6j7j8j9j!j^c#b#c$c$b%c%b[ 'b'c(c#j$j%j'j(j)j*j+j,j-j.j/j:j;j=j?j@j[j]jznAnBn'mCnDnEnFnGnHnInJnKn(mLnMnNnOnPnQnme]d^dTpRnSn(b)bneoepeqereseteuejgkgTnUnVnWnXnYnvdwdGfHfIfJfKfLfMfNfg h ofpfxdydOfi j zdAdBdCdlgmgngogpgqgZ 0 K L ] ^ rgsgtgugvgwgxg)c*c_ ` *b+b,b-b{ | .b/b} ~ ' ( abbb:b;b=b?bygzgAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgZn0n1n)m2n3n4n5n6n7n8n9n!n*m#n$n%n'n(n)n*n+n,n+m-n.n/n:n;n=nvewe_d`d{d|dUp?n@n@b[b]bxeyezeAeBeCeDeEeFeGeHeIeJeKeLeMeRgSgTgUg[n]n^n_n`n{nDdEdFdPfQfRfSfTfUfVfWfXfYfZf0fk l m qfrfsfGdHdId1f2fn o p JdKdLdMdNdOdVgWgXgYgZg0g1g2g3g4g5g6g1 2 3 M N O cbdbeb7g8g9g!g#g$g%g'g(g)g*g+g,g-g+c,c-cfbgbhb^b_b`b{b|b}bibjbkb~bacbclbmbnb) * + obpbqbccdcecfcgchc.g/g:g;g=g?g@g[g]g^g_g`g{g|g}g~gahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvh|n}n~n,maobocodoeofogohoio-mjokolomonooopoqoro.msotouovowoxoNeOe}d~daebeVpyozoicjckcPeQeReSeTeUeVeWeXeYeZe0e1e2e3e4ewhxhyhzhAoBoCoDoEoFoPdQdRd3f4f5f6f7f8f9f!f#f$f%f'fq r s tfufvfSdTdUd(f)ft u v VdWdXdYdZd0dAhBhChDhEhFhGhHhIhJhKhLh4 5 6 P Q R rbsbtbMhNhOhPhQhRhShThUhVhWhXhYhZh.c/c:cubvbwblcmcncocpcqcxbybzbrcsctcAbBbCb, - . DbEbFbucvcwcxcyczc0h1h2h3h4h5h6h7h8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h_h`h{h|h}h~haiGoHoIo/mJoKoLoMoNoOoPoQoRo:mSoToUoVoWoXoYoZo0o;m1o2o3o4o5o6o5e6ecedeeefeWp7o8oAcBcCc7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/ebicidiei9o!o#o$o%o'o1d2d3d*f+f,f-f.f/f:f;f=f?f@f[fw x y wfxfyf4d5d6d]f^fz A B 7d8d9d!d#d$dfigihiiijikiliminioipiqi7 8 9 S T U GbHbIbrisitiuiviwixiyiziAiBiCiDiEi;c=c?cJbKbLbDcEcFcGcHcIcMbNbObJcKcLcPbQbRb/ : ; SbTbUbMcNcOcPcQcRcFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi0i1i2i3i4i5i6i7i8i9i!i#i$i%i'i(i)i(o)o*o=m+o,o-o.o/o:o;o=o?o?m@o[o]o^o_o`o{o|o}o@m~oapbpcpdpep:e;egeheiejeXpfpgpScTcUc=e?e@e[e]e^e_e`e{e|e}e~eafbfcfdf*i+i,i-ihpipjpkplpmp%d'd(d_f`f{f|f}f~fagbgcgdgegfgC D E zfAfBf)d*d+dgghgF G H ,d-d.d/d:d;d.i/i:i;i=i?i@i[i]i^i_i`i! # $ V W X VbWbXb{i|i}i~iajbjcjdjejfjgjhjijjj@c[c]cYbZb0bVcWcXcYcZc0c1b2b3b1c2c3c4b5b6b= ? @ 7b8b9b4c5c6c7c8c9ckjljmjnjojpjqjrjsjtjujvjwjxjyjzjAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVj
979 self,
980 include=include,
981 exclude=exclude,
982 exclude_unset=exclude_unset,
983 update=update,
984 )
986 def sqlmodel_update( 1abcdef
987 self: _TSQLModel,
988 obj: Union[Dict[str, Any], BaseModel],
989 *,
990 update: Union[Dict[str, Any], None] = None,
991 ) -> _TSQLModel:
992 use_update = (update or {}).copy() 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d
993 if isinstance(obj, dict): 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d
994 for key, value in {**obj, **use_update}.items(): 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d
995 if key in get_model_fields(self): 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d
996 setattr(self, key, value) 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d
997 elif isinstance(obj, BaseModel):
998 for key in get_model_fields(obj):
999 if key in use_update:
1000 value = use_update.pop(key)
1001 else:
1002 value = getattr(obj, key)
1003 setattr(self, key, value)
1004 for remaining_key in use_update:
1005 if remaining_key in get_model_fields(self):
1006 value = use_update.pop(remaining_key)
1007 setattr(self, remaining_key, value)
1008 else:
1009 raise ValueError(
1010 "Can't use sqlmodel_update() with something that "
1011 f"is not a dict or SQLModel or Pydantic model: {obj}"
1012 )
1013 return self 2|m=dI ?dJ @d[d'm(mvdwdg h xdydi j zdAdBdCd)m*m+mDdEdFdk l m GdHdIdn o p JdKdLdMdNdOd,m-m.mPdQdRdq r s SdTdUdt u v VdWdXdYdZd0d/m:m;m1d2d3dw x y 4d5d6dz A B 7d8d9d!d#d$d=m?m@m%d'd(dC D E )d*d+dF G H ,d-d.d/d:d;d