from cs_mcp.db.models.base import Base
from typing import Optional
from cs_mcp.db.sqlalchemy import mc, M
from sqlalchemy import String


class LtcDrgList(Base):
  __tablename__ = "ltcdrglist"  # type: ignore

  ldl_auto: M[Optional[int]] = mc(
      default=None, primary_key=True, autoincrement=True
  )
  ldl_version: M[str] = mc(String(6), default="")
  ldl_ymd: M[str] = mc(String(8))
  ldl_saup: M[str] = mc(String(2))
  ldl_chart: M[str] = mc(String(8))
  ldl_yuhyung: M[str] = mc(String(2))
  ldl_ibymd: M[str] = mc(String(8))
  ldl_startymd: M[str] = mc(String(8))
  ldl_jinchal: M[str] = mc(String(2), default="")
  ldl_index: M[str] = mc(String(1), default="0")
  ldl_change: M[str] = mc(String(1), default="0")
  ldl_beginymd: M[str] = mc(String(8))
  ldl_yoyangkiho: M[Optional[str]] = mc(String(8), default="")
  ldl_suname: M[Optional[str]] = mc(String(50), default="")
  ldl_sex: M[Optional[str]] = mc(String(1), default="")
  ldl_nai: M[Optional[str]] = mc(String(3), default="")
  ldl_jumin: M[Optional[str]] = mc(String(48), default="")
  ldl_byungsil: M[Optional[str]] = mc(String(15), default="")
  ldl_gubun: M[Optional[str]] = mc(String(1), default="")
  ldl_stay: M[Optional[str]] = mc(String(1), default="")
  ldl_career: M[Optional[str]] = mc(String(1), default="")
  ldl_bphigh: M[Optional[int]] = mc(default=0)
  ldl_bplow: M[Optional[int]] = mc(default=0)
  ldl_a10_a: M[Optional[int]] = mc(default=0)
  ldl_a10_b: M[Optional[int]] = mc(default=0)
  ldl_a10_c: M[Optional[int]] = mc(default=0)
  ldl_a10_d: M[Optional[int]] = mc(default=0)
  ldl_a11: M[Optional[int]] = mc(default=1)
  ldl_a12_a: M[Optional[int]] = mc(default=0)
  ldl_a12_b1: M[Optional[int]] = mc(default=0)
  ldl_a12_b2: M[Optional[int]] = mc(default=0)
  ldl_a12_b3: M[Optional[int]] = mc(default=0)
  ldl_a12_b4: M[Optional[int]] = mc(default=0)
  ldl_a12_b5: M[Optional[int]] = mc(default=0)
  ldl_a12_b6: M[Optional[int]] = mc(default=0)
  ldl_a12_b7: M[Optional[int]] = mc(default=0)
  ldl_a12_b8: M[Optional[int]] = mc(default=0)
  ldl_a13: M[Optional[int]] = mc(default=0)
  ldl_a14_a: M[Optional[int]] = mc(default=0)
  ldl_a14_b: M[Optional[int]] = mc(default=0)
  ldl_a14_c: M[Optional[int]] = mc(default=0)
  ldl_a14_d: M[Optional[int]] = mc(default=0)
  ldl_a14_e: M[Optional[int]] = mc(default=0)
  ldl_a14_f: M[Optional[int]] = mc(default=0)
  ldl_a14_g: M[Optional[int]] = mc(default=0)
  ldl_b1: M[Optional[int]] = mc(default=0)
  ldl_b2: M[Optional[str]] = mc(String(1), default="")
  ldl_c1: M[Optional[str]] = mc(String(1), default="")
  ldl_c2: M[Optional[str]] = mc(String(1), default="")
  ldl_c3: M[Optional[str]] = mc(String(1), default="")
  ldl_c4: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_a: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_b: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_c: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_d: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_e: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_f: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_g: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_h: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_i: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_j: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_k: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_l: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_m: M[Optional[str]] = mc(String(1), default="")
  ldl_c5_n: M[Optional[str]] = mc(String(1), default="")
  ldl_c6_a: M[Optional[str]] = mc(String(1), default="")
  ldl_c6_b2: M[Optional[str]] = mc(String(8), default="")
  ldl_c7_a: M[Optional[int]] = mc(default=0)
  ldl_c7_b1: M[Optional[float]] = mc(default=0)
  ldl_c7_b2: M[Optional[str]] = mc(String(8), default="")
  ldl_c7_c: M[Optional[int]] = mc(default=0)
  ldl_c7_d1: M[Optional[int]] = mc(default=0)
  ldl_c7_d2: M[Optional[str]] = mc(String(8), default="")
  ldl_d1: M[Optional[int]] = mc(default=0)
  ldl_d2: M[Optional[int]] = mc(default=0)
  ldl_d3: M[Optional[int]] = mc(default=0)
  ldl_d4: M[Optional[int]] = mc(default=0)
  ldl_d5: M[Optional[int]] = mc(default=0)
  ldl_d6: M[Optional[int]] = mc(default=0)
  ldl_d7: M[Optional[int]] = mc(default=0)
  ldl_d8: M[Optional[int]] = mc(default=0)
  ldl_d9: M[Optional[int]] = mc(default=0)
  ldl_d10: M[Optional[int]] = mc(default=0)
  ldl_d11: M[Optional[int]] = mc(default=0)
  ldl_d12_a: M[Optional[int]] = mc(default=0)
  ldl_d12_b: M[Optional[int]] = mc(default=0)
  ldl_d12_c: M[Optional[int]] = mc(default=0)
  ldl_e1: M[Optional[int]] = mc(default=0)
  ldl_e2: M[Optional[int]] = mc(default=0)
  ldl_e3_a: M[Optional[int]] = mc(default=0)
  ldl_e3_b: M[Optional[int]] = mc(default=0)
  ldl_e3_c: M[Optional[int]] = mc(default=0)
  ldl_e3_d: M[Optional[int]] = mc(default=0)
  ldl_e3_e: M[Optional[int]] = mc(default=0)
  ldl_e3_f: M[Optional[int]] = mc(default=0)
  ldl_e3_g: M[Optional[int]] = mc(default=0)
  ldl_e3_g1: M[Optional[str]] = mc(String(8), default="")
  ldl_e3_g1_1: M[str] = mc(String(8))
  ldl_e3_g1_2: M[str] = mc(String(8))
  ldl_e3_g2_1: M[str] = mc(String(8))
  ldl_e3_g2_2: M[str] = mc(String(8))
  ldl_e3_g3_1: M[str] = mc(String(8))
  ldl_e3_g3_2: M[str] = mc(String(8))
  ldl_e3_g4_1: M[str] = mc(String(8))
  ldl_e3_g4_2: M[str] = mc(String(8))
  ldl_e3_g5_1: M[str] = mc(String(8))
  ldl_e3_g5_2: M[str] = mc(String(8))
  ldl_e3_g6_1: M[str] = mc(String(8))
  ldl_e3_g6_2: M[str] = mc(String(8))
  ldl_e3_g7_1: M[str] = mc(String(8))
  ldl_e3_g7_2: M[str] = mc(String(8))
  ldl_e3_g8_1: M[str] = mc(String(8))
  ldl_e3_g8_2: M[str] = mc(String(8))
  ldl_e3_g9_1: M[str] = mc(String(8))
  ldl_e3_g9_2: M[str] = mc(String(8))
  ldl_e3_g10_1: M[str] = mc(String(8))
  ldl_e3_g10_2: M[str] = mc(String(8))
  ldl_f1_a1_a: M[Optional[str]] = mc(String(1), default="")
  ldl_f1_a2_a: M[Optional[str]] = mc(String(1), default="")
  ldl_f1_a2_b2: M[Optional[str]] = mc(String(8), default="")
  ldl_f1_b: M[Optional[int]] = mc(default=0)
  ldl_f1_c: M[Optional[int]] = mc(default=0)
  ldl_f1_d: M[Optional[int]] = mc(default=0)
  ldl_f1_e: M[Optional[int]] = mc(default=0)
  ldl_f1_f: M[Optional[int]] = mc(default=0)
  ldl_f1_g: M[Optional[int]] = mc(default=0)
  ldl_f1_h: M[Optional[int]] = mc(default=0)
  ldl_f1_i: M[Optional[int]] = mc(default=0)
  ldl_f1_j: M[Optional[int]] = mc(default=0)
  ldl_f1_k: M[Optional[int]] = mc(default=0)
  ldl_f1_l: M[Optional[int]] = mc(default=0)
  ldl_f1_m: M[Optional[int]] = mc(default=0)
  ldl_f1_n: M[Optional[int]] = mc(default=0)
  ldl_f1_o: M[Optional[int]] = mc(default=0)
  ldl_f1_p: M[Optional[int]] = mc(default=0)
  ldl_f1_q: M[Optional[int]] = mc(default=0)
  ldl_f1_r: M[Optional[int]] = mc(default=0)
  ldl_f1_s: M[Optional[int]] = mc(default=0)
  ldl_f1_t: M[Optional[int]] = mc(default=0)
  ldl_f1_u: M[Optional[int]] = mc(default=0)
  ldl_f1_v: M[Optional[int]] = mc(default=0)
  ldl_f1_w: M[Optional[int]] = mc(default=0)
  ldl_f1_x: M[Optional[int]] = mc(default=0)
  ldl_f1_y: M[Optional[int]] = mc(default=0)
  ldl_f1_z: M[Optional[int]] = mc(default=0)
  ldl_f1_aa: M[Optional[int]] = mc(default=0)
  ldl_f1_ab: M[Optional[int]] = mc(default=0)
  ldl_f2_a: M[Optional[int]] = mc(default=0)
  ldl_f2_b: M[Optional[int]] = mc(default=0)
  ldl_f2_c: M[Optional[int]] = mc(default=0)
  ldl_f2_d: M[Optional[int]] = mc(default=0)
  ldl_f2_e: M[Optional[int]] = mc(default=0)
  ldl_f2_f: M[Optional[int]] = mc(default=0)
  ldl_f2_g: M[Optional[int]] = mc(default=0)
  ldl_f2_h: M[Optional[int]] = mc(default=0)
  ldl_g1_a: M[Optional[int]] = mc(default=0)
  ldl_g1_a1: M[Optional[float]] = mc(default=0)
  ldl_g1_a2: M[Optional[int]] = mc(default=0)
  ldl_g1_a3: M[int] = mc()
  ldl_g1_b: M[Optional[int]] = mc(default=0)
  ldl_g1_c: M[Optional[int]] = mc(default=0)
  ldl_g1_d: M[Optional[int]] = mc(default=0)
  ldl_g1_e: M[Optional[int]] = mc(default=0)
  ldl_g1_f: M[Optional[int]] = mc(default=0)
  ldl_g1_g: M[Optional[int]] = mc(default=0)
  ldl_g2_a: M[Optional[int]] = mc(default=0)
  ldl_g2_b: M[Optional[int]] = mc(default=0)
  ldl_g2_b1: M[Optional[int]] = mc(default=0)
  ldl_g2_b2: M[Optional[int]] = mc(default=0)
  ldl_g2_b3: M[Optional[int]] = mc(default=0)
  ldl_g2_c: M[Optional[int]] = mc(default=0)
  ldl_g2_c1: M[int] = mc()
  ldl_g2_c2: M[int] = mc()
  ldl_g3_a: M[Optional[int]] = mc(default=0)
  ldl_g3_b: M[Optional[int]] = mc(default=0)
  ldl_g4: M[Optional[int]] = mc(default=0)
  ldl_h1: M[Optional[int]] = mc(default=0)
  ldl_h21_a: M[Optional[int]] = mc(default=0)
  ldl_h21_b1: M[Optional[float]] = mc(default=0)
  ldl_h21_b2: M[Optional[str]] = mc(String(8), default="")
  ldl_h22: M[Optional[int]] = mc(default=0)
  ldl_h23_a: M[Optional[int]] = mc(default=0)
  ldl_h23_b1: M[Optional[float]] = mc(default=0)
  ldl_h23_b2: M[Optional[str]] = mc(String(8), default="")
  ldl_h3_a: M[Optional[int]] = mc(default=0)
  ldl_h3_b: M[Optional[int]] = mc(default=0)
  ldl_h3_b1: M[int] = mc()
  ldl_h3_b2: M[int] = mc()
  ldl_h4_a: M[Optional[str]] = mc(String(1), default="")
  ldl_h4_b: M[Optional[str]] = mc(String(1), default="")
  ldl_i1_a1: M[Optional[int]] = mc(default=0)
  ldl_i1_a2: M[Optional[int]] = mc(default=0)
  ldl_i1_a3: M[Optional[int]] = mc(default=0)
  ldl_i1_a4: M[Optional[int]] = mc(default=0)
  ldl_i1_b1: M[Optional[int]] = mc(default=0)
  ldl_i1_b2: M[Optional[int]] = mc(default=0)
  ldl_i1_b3: M[Optional[int]] = mc(default=0)
  ldl_i1_b4: M[Optional[int]] = mc(default=0)
  ldl_i2_a: M[Optional[int]] = mc(default=0)
  ldl_i2_b: M[Optional[str]] = mc(String(8), default="")
  ldl_i3: M[Optional[int]] = mc(default=0)
  ldl_i4_a: M[Optional[int]] = mc(default=0)
  ldl_i4_b: M[Optional[int]] = mc(default=0)
  ldl_i4_b1: M[Optional[int]] = mc(default=0)
  ldl_i4_b2: M[Optional[int]] = mc(default=0)
  ldl_i4_c: M[Optional[int]] = mc(default=0)
  ldl_i4_d: M[Optional[int]] = mc(default=0)
  ldl_i4_e: M[Optional[int]] = mc(default=0)
  ldl_i5_a: M[Optional[int]] = mc(default=0)
  ldl_i5_b: M[Optional[int]] = mc(default=0)
  ldl_i5_c: M[Optional[int]] = mc(default=0)
  ldl_i5_d: M[Optional[int]] = mc(default=0)
  ldl_i5_d1: M[Optional[int]] = mc(default=0)
  ldl_i5_d2: M[Optional[int]] = mc(default=0)
  ldl_i5_e: M[Optional[int]] = mc(default=0)
  ldl_i5_e1: M[Optional[int]] = mc(default=0)
  ldl_i5_e2: M[Optional[int]] = mc(default=0)
  ldl_i5_f: M[Optional[int]] = mc(default=0)
  ldl_i5_g: M[Optional[int]] = mc(default=0)
  ldl_i5_h: M[int] = mc()
  ldl_j1: M[Optional[int]] = mc(default=0)
  ldl_j2: M[Optional[int]] = mc(default=0)
  ldl_j3: M[Optional[int]] = mc(default=0)
  ldl_j4: M[Optional[int]] = mc(default=0)
  ldl_k1_a: M[Optional[int]] = mc(default=0)
  ldl_k1_a1: M[int] = mc()
  ldl_k1_b: M[Optional[int]] = mc(default=0)
  ldl_k1_c: M[Optional[int]] = mc(default=0)
  ldl_k1_d: M[Optional[int]] = mc(default=0)
  ldl_k1_e: M[Optional[int]] = mc(default=0)
  ldl_k1_e1: M[Optional[float]] = mc(default=0)
  ldl_k1_e2: M[Optional[int]] = mc(default=0)
  ldl_k1_f: M[Optional[int]] = mc(default=0)
  ldl_k1_g: M[Optional[int]] = mc(default=0)
  ldl_k1_h: M[Optional[int]] = mc(default=0)
  ldl_k1_i: M[Optional[int]] = mc(default=0)
  ldl_k1_i1: M[int] = mc()
  ldl_k1_i2: M[int] = mc()
  ldl_k1_j: M[Optional[int]] = mc(default=0)
  ldl_k1_j1: M[Optional[int]] = mc(default=0)
  ldl_k1_j2: M[Optional[int]] = mc(default=0)
  ldl_k1_k: M[Optional[int]] = mc(default=0)
  ldl_k1_l: M[Optional[int]] = mc(default=0)
  ldl_k2: M[Optional[int]] = mc(default=0)
  ldl_adl: M[Optional[int]] = mc(default=0)
  ldl_doctor: M[Optional[int]] = mc(default=0)
  ldl_doctorname: M[Optional[str]] = mc(String(50), default="")
  ldl_tester: M[Optional[str]] = mc(String(20), default="")
  ldl_username: M[Optional[str]] = mc(String(20), default="")
  ldl_insertdate: M[Optional[str]] = mc(String(20), default="")
  ldl_updateuser: M[Optional[str]] = mc(String(20), default="")
  ldl_updatedate: M[Optional[str]] = mc(String(20), default="")
  ldl_docdate: M[Optional[str]] = mc(String(20), default="")
  ldl_nurdate: M[Optional[str]] = mc(String(20), default="")
  ldl_etc1: M[Optional[str]] = mc(String(255), default="")
  ldl_etc2: M[Optional[str]] = mc(String(255), default="")
  ldl_etc3: M[Optional[str]] = mc(String(255), default="")
  ldl_etc4: M[Optional[str]] = mc(String(255), default="")
  ldl_etc5: M[Optional[str]] = mc(String(255), default="")
  ldl_etc6: M[Optional[str]] = mc(String(255), default="")
  ldl_etc7: M[Optional[str]] = mc(String(255), default="")
  ldl_etc8: M[Optional[str]] = mc(default=None)
  ldl_etc9: M[Optional[str]] = mc(String(255), default="")
  ldl_etc10: M[Optional[str]] = mc(String(255), default="")
  ldl_dc: M[str] = mc(String(1), default="0")
  ldl_dcdate: M[Optional[str]] = mc(String(20), default="")
  ldl_dcuser: M[Optional[str]] = mc(String(20), default="")
  ldl_docuser: M[Optional[str]] = mc(String(20), default="")
  ldl_nuruser: M[Optional[str]] = mc(String(20), default="")
  ldl_insign: M[Optional[bytes]] = mc(default=None)
  ldl_upsign: M[Optional[bytes]] = mc(default=None)
  ldl_dcsign: M[Optional[bytes]] = mc(default=None)
  ldl_docsign: M[Optional[bytes]] = mc(default=None)
  ldl_nursign: M[Optional[bytes]] = mc(default=None)
  ldl_incert: M[Optional[str]] = mc(default=None)
  ldl_upcert: M[Optional[str]] = mc(default=None)
  ldl_dccert: M[Optional[str]] = mc(default=None)
  ldl_doccert: M[Optional[str]] = mc(default=None)
  ldl_nurcert: M[Optional[str]] = mc(default=None)
  ldl_etc11: M[Optional[str]] = mc(String(255), default="")
  ldl_etc12: M[Optional[str]] = mc(String(255), default="")
  ldl_etc13: M[Optional[str]] = mc(String(255), default="")
  ldl_etc14: M[Optional[str]] = mc(String(255), default="")
  ldl_etc15: M[Optional[str]] = mc(String(255), default="")
  ldl_enctype: M[Optional[str]] = mc(String(1), default="Y")
  ldl_linetext: M[Optional[str]] = mc(default=None)
  ldl_etc16: M[Optional[str]] = mc(String(255), default="")
  ldl_etc17: M[Optional[str]] = mc(String(255), default="")
  ldl_etc18: M[Optional[str]] = mc(String(255), default="")
  ldl_etc19: M[Optional[str]] = mc(String(255), default="")
  ldl_etc20: M[Optional[str]] = mc(String(255), default="")
