@simplysm/orm-common 13.0.68 → 13.0.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/README.md +54 -1447
  2. package/dist/create-db-context.d.ts +10 -10
  3. package/dist/create-db-context.js +9 -9
  4. package/dist/create-db-context.js.map +1 -1
  5. package/dist/ddl/column-ddl.d.ts +4 -4
  6. package/dist/ddl/initialize.d.ts +17 -17
  7. package/dist/ddl/initialize.js +2 -2
  8. package/dist/ddl/initialize.js.map +1 -1
  9. package/dist/ddl/relation-ddl.d.ts +6 -6
  10. package/dist/ddl/schema-ddl.d.ts +4 -4
  11. package/dist/ddl/table-ddl.d.ts +24 -24
  12. package/dist/ddl/table-ddl.js +4 -4
  13. package/dist/ddl/table-ddl.js.map +1 -1
  14. package/dist/errors/db-transaction-error.d.ts +15 -15
  15. package/dist/errors/db-transaction-error.d.ts.map +1 -1
  16. package/dist/exec/executable.d.ts +23 -23
  17. package/dist/exec/executable.js +3 -3
  18. package/dist/exec/executable.js.map +1 -1
  19. package/dist/exec/queryable.d.ts +160 -160
  20. package/dist/exec/queryable.js +119 -119
  21. package/dist/exec/queryable.js.map +1 -1
  22. package/dist/exec/search-parser.d.ts +37 -37
  23. package/dist/exec/search-parser.d.ts.map +1 -1
  24. package/dist/expr/expr-unit.d.ts +4 -4
  25. package/dist/expr/expr.d.ts +257 -257
  26. package/dist/expr/expr.js +265 -265
  27. package/dist/expr/expr.js.map +1 -1
  28. package/dist/query-builder/base/expr-renderer-base.d.ts +9 -9
  29. package/dist/query-builder/base/expr-renderer-base.js +2 -2
  30. package/dist/query-builder/base/expr-renderer-base.js.map +1 -1
  31. package/dist/query-builder/base/query-builder-base.d.ts +26 -26
  32. package/dist/query-builder/base/query-builder-base.d.ts.map +1 -1
  33. package/dist/query-builder/base/query-builder-base.js +22 -22
  34. package/dist/query-builder/base/query-builder-base.js.map +1 -1
  35. package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +4 -4
  36. package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
  37. package/dist/query-builder/mssql/mssql-expr-renderer.js +18 -18
  38. package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -1
  39. package/dist/query-builder/mssql/mssql-query-builder.d.ts +2 -2
  40. package/dist/query-builder/mssql/mssql-query-builder.d.ts.map +1 -1
  41. package/dist/query-builder/mssql/mssql-query-builder.js +11 -11
  42. package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -1
  43. package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +4 -4
  44. package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
  45. package/dist/query-builder/mysql/mysql-expr-renderer.js +17 -17
  46. package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -1
  47. package/dist/query-builder/mysql/mysql-query-builder.d.ts +8 -8
  48. package/dist/query-builder/mysql/mysql-query-builder.d.ts.map +1 -1
  49. package/dist/query-builder/mysql/mysql-query-builder.js +5 -5
  50. package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -1
  51. package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +4 -4
  52. package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
  53. package/dist/query-builder/postgresql/postgresql-expr-renderer.js +17 -17
  54. package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -1
  55. package/dist/query-builder/postgresql/postgresql-query-builder.d.ts +5 -5
  56. package/dist/query-builder/postgresql/postgresql-query-builder.d.ts.map +1 -1
  57. package/dist/query-builder/postgresql/postgresql-query-builder.js +8 -8
  58. package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -1
  59. package/dist/query-builder/query-builder.d.ts +1 -1
  60. package/dist/schema/factory/column-builder.d.ts +79 -79
  61. package/dist/schema/factory/column-builder.js +42 -42
  62. package/dist/schema/factory/index-builder.d.ts +39 -39
  63. package/dist/schema/factory/index-builder.js +26 -26
  64. package/dist/schema/factory/relation-builder.d.ts +99 -99
  65. package/dist/schema/factory/relation-builder.d.ts.map +1 -1
  66. package/dist/schema/factory/relation-builder.js +38 -38
  67. package/dist/schema/procedure-builder.d.ts +49 -49
  68. package/dist/schema/procedure-builder.d.ts.map +1 -1
  69. package/dist/schema/procedure-builder.js +33 -33
  70. package/dist/schema/table-builder.d.ts +59 -59
  71. package/dist/schema/table-builder.d.ts.map +1 -1
  72. package/dist/schema/table-builder.js +43 -43
  73. package/dist/schema/view-builder.d.ts +49 -49
  74. package/dist/schema/view-builder.d.ts.map +1 -1
  75. package/dist/schema/view-builder.js +32 -32
  76. package/dist/types/column.d.ts +22 -22
  77. package/dist/types/column.js +1 -1
  78. package/dist/types/column.js.map +1 -1
  79. package/dist/types/db.d.ts +40 -40
  80. package/dist/types/expr.d.ts +59 -59
  81. package/dist/types/expr.d.ts.map +1 -1
  82. package/dist/types/query-def.d.ts +44 -44
  83. package/dist/types/query-def.d.ts.map +1 -1
  84. package/dist/utils/result-parser.d.ts +11 -11
  85. package/dist/utils/result-parser.js +3 -3
  86. package/dist/utils/result-parser.js.map +1 -1
  87. package/package.json +5 -5
  88. package/src/create-db-context.ts +20 -20
  89. package/src/ddl/column-ddl.ts +4 -4
  90. package/src/ddl/initialize.ts +259 -259
  91. package/src/ddl/relation-ddl.ts +89 -89
  92. package/src/ddl/schema-ddl.ts +4 -4
  93. package/src/ddl/table-ddl.ts +189 -189
  94. package/src/errors/db-transaction-error.ts +13 -13
  95. package/src/exec/executable.ts +25 -25
  96. package/src/exec/queryable.ts +2033 -2033
  97. package/src/exec/search-parser.ts +57 -57
  98. package/src/expr/expr-unit.ts +4 -4
  99. package/src/expr/expr.ts +2140 -2140
  100. package/src/query-builder/base/expr-renderer-base.ts +237 -237
  101. package/src/query-builder/base/query-builder-base.ts +213 -213
  102. package/src/query-builder/mssql/mssql-expr-renderer.ts +607 -607
  103. package/src/query-builder/mssql/mssql-query-builder.ts +650 -650
  104. package/src/query-builder/mysql/mysql-expr-renderer.ts +613 -613
  105. package/src/query-builder/mysql/mysql-query-builder.ts +759 -759
  106. package/src/query-builder/postgresql/postgresql-expr-renderer.ts +611 -611
  107. package/src/query-builder/postgresql/postgresql-query-builder.ts +686 -686
  108. package/src/query-builder/query-builder.ts +19 -19
  109. package/src/schema/factory/column-builder.ts +423 -423
  110. package/src/schema/factory/index-builder.ts +164 -164
  111. package/src/schema/factory/relation-builder.ts +453 -453
  112. package/src/schema/procedure-builder.ts +232 -232
  113. package/src/schema/table-builder.ts +319 -319
  114. package/src/schema/view-builder.ts +221 -221
  115. package/src/types/column.ts +188 -188
  116. package/src/types/db.ts +208 -208
  117. package/src/types/expr.ts +697 -697
  118. package/src/types/query-def.ts +513 -513
  119. package/src/utils/result-parser.ts +458 -458
  120. package/tests/db-context/create-db-context.spec.ts +224 -0
  121. package/tests/db-context/define-db-context.spec.ts +68 -0
  122. package/tests/ddl/basic.expected.ts +341 -0
  123. package/tests/ddl/basic.spec.ts +714 -0
  124. package/tests/ddl/column-builder.expected.ts +310 -0
  125. package/tests/ddl/column-builder.spec.ts +637 -0
  126. package/tests/ddl/index-builder.expected.ts +38 -0
  127. package/tests/ddl/index-builder.spec.ts +202 -0
  128. package/tests/ddl/procedure-builder.expected.ts +52 -0
  129. package/tests/ddl/procedure-builder.spec.ts +234 -0
  130. package/tests/ddl/relation-builder.expected.ts +36 -0
  131. package/tests/ddl/relation-builder.spec.ts +372 -0
  132. package/tests/ddl/table-builder.expected.ts +113 -0
  133. package/tests/ddl/table-builder.spec.ts +433 -0
  134. package/tests/ddl/view-builder.expected.ts +38 -0
  135. package/tests/ddl/view-builder.spec.ts +176 -0
  136. package/tests/dml/delete.expected.ts +96 -0
  137. package/tests/dml/delete.spec.ts +160 -0
  138. package/tests/dml/insert.expected.ts +192 -0
  139. package/tests/dml/insert.spec.ts +288 -0
  140. package/tests/dml/update.expected.ts +176 -0
  141. package/tests/dml/update.spec.ts +318 -0
  142. package/tests/dml/upsert.expected.ts +215 -0
  143. package/tests/dml/upsert.spec.ts +242 -0
  144. package/tests/errors/queryable-errors.spec.ts +177 -0
  145. package/tests/escape.spec.ts +100 -0
  146. package/tests/examples/pivot.expected.ts +211 -0
  147. package/tests/examples/pivot.spec.ts +533 -0
  148. package/tests/examples/sampling.expected.ts +69 -0
  149. package/tests/examples/sampling.spec.ts +104 -0
  150. package/tests/examples/unpivot.expected.ts +120 -0
  151. package/tests/examples/unpivot.spec.ts +226 -0
  152. package/tests/exec/search-parser.spec.ts +283 -0
  153. package/tests/executable/basic.expected.ts +18 -0
  154. package/tests/executable/basic.spec.ts +54 -0
  155. package/tests/expr/comparison.expected.ts +282 -0
  156. package/tests/expr/comparison.spec.ts +400 -0
  157. package/tests/expr/conditional.expected.ts +134 -0
  158. package/tests/expr/conditional.spec.ts +276 -0
  159. package/tests/expr/date.expected.ts +332 -0
  160. package/tests/expr/date.spec.ts +526 -0
  161. package/tests/expr/math.expected.ts +62 -0
  162. package/tests/expr/math.spec.ts +106 -0
  163. package/tests/expr/string.expected.ts +218 -0
  164. package/tests/expr/string.spec.ts +356 -0
  165. package/tests/expr/utility.expected.ts +147 -0
  166. package/tests/expr/utility.spec.ts +182 -0
  167. package/tests/select/basic.expected.ts +322 -0
  168. package/tests/select/basic.spec.ts +502 -0
  169. package/tests/select/filter.expected.ts +357 -0
  170. package/tests/select/filter.spec.ts +1068 -0
  171. package/tests/select/group.expected.ts +169 -0
  172. package/tests/select/group.spec.ts +244 -0
  173. package/tests/select/join.expected.ts +582 -0
  174. package/tests/select/join.spec.ts +805 -0
  175. package/tests/select/order.expected.ts +150 -0
  176. package/tests/select/order.spec.ts +189 -0
  177. package/tests/select/recursive-cte.expected.ts +244 -0
  178. package/tests/select/recursive-cte.spec.ts +514 -0
  179. package/tests/select/result-meta.spec.ts +270 -0
  180. package/tests/select/subquery.expected.ts +363 -0
  181. package/tests/select/subquery.spec.ts +537 -0
  182. package/tests/select/view.expected.ts +155 -0
  183. package/tests/select/view.spec.ts +235 -0
  184. package/tests/select/window.expected.ts +345 -0
  185. package/tests/select/window.spec.ts +618 -0
  186. package/tests/setup/MockExecutor.ts +18 -0
  187. package/tests/setup/TestDbContext.ts +59 -0
  188. package/tests/setup/models/Company.ts +13 -0
  189. package/tests/setup/models/Employee.ts +10 -0
  190. package/tests/setup/models/MonthlySales.ts +11 -0
  191. package/tests/setup/models/Post.ts +16 -0
  192. package/tests/setup/models/Sales.ts +10 -0
  193. package/tests/setup/models/User.ts +19 -0
  194. package/tests/setup/procedure/GetAllUsers.ts +9 -0
  195. package/tests/setup/procedure/GetUserById.ts +12 -0
  196. package/tests/setup/test-utils.ts +72 -0
  197. package/tests/setup/views/ActiveUsers.ts +8 -0
  198. package/tests/setup/views/UserSummary.ts +11 -0
  199. package/tests/types/nullable-queryable-record.spec.ts +145 -0
  200. package/tests/utils/result-parser-perf.spec.ts +210 -0
  201. package/tests/utils/result-parser.spec.ts +701 -0
  202. package/docs/expressions.md +0 -172
  203. package/docs/queries.md +0 -444
  204. package/docs/schema.md +0 -245
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/expr/expr.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,29 +1,29 @@
1
1
  import type { Expr, WhereExpr, ExprColumn, ExprValue, ExprRaw, ExprEq, ExprGt, ExprLt, ExprGte, ExprLte, ExprBetween, ExprIsNull, ExprLike, ExprRegexp, ExprIn, ExprInQuery, ExprExists, ExprNot, ExprAnd, ExprOr, ExprConcat, ExprLeft, ExprRight, ExprTrim, ExprPadStart, ExprReplace, ExprUpper, ExprLower, ExprLength, ExprByteLength, ExprSubstring, ExprIndexOf, ExprAbs, ExprRound, ExprCeil, ExprFloor, ExprYear, ExprMonth, ExprDay, ExprHour, ExprMinute, ExprSecond, ExprIsoWeek, ExprIsoWeekStartDate, ExprIsoYearMonth, ExprDateDiff, ExprDateAdd, ExprFormatDate, ExprIfNull, ExprNullIf, ExprIs, ExprSwitch, ExprIf, ExprCount, ExprSum, ExprAvg, ExprMax, ExprMin, ExprGreatest, ExprLeast, ExprRowNum, ExprRandom, ExprCast, ExprWindow, ExprSubquery } from "../../types/expr";
2
2
  import type { SelectQueryDef } from "../../types/query-def";
3
3
  /**
4
- * Expr → SQL 렌더링 추상 기본 클래스
4
+ * Expr → SQL Render 추상 Basic class
5
5
  *
6
- * Base 원칙:
7
- * - 100% 모든 dialect가 동일한 로직만 구현 (dispatch)
8
- * - 조금이라도 다르면 전부 abstract
9
- * - 메서드명은 expr.type과 동일 (동적 dispatch 가능)
6
+ * Base principles:
7
+ * - Implement only 100% identical logic across all dialects (dispatch)
8
+ * - If different at all, make it abstract
9
+ * - Method명은 expr.type과 동일 (동적 dispatch 가능)
10
10
  */
11
11
  export declare abstract class ExprRendererBase {
12
12
  protected buildSelect: (def: SelectQueryDef) => string;
13
13
  constructor(buildSelect: (def: SelectQueryDef) => string);
14
14
  /**
15
- * 식별자 감싸기 (테이블명, 컬럼명 등)
15
+ * 식별자 감싸기 (table명, column명 등)
16
16
  * MySQL: `name`, MSSQL: [name], PostgreSQL: "name"
17
17
  */
18
18
  abstract wrap(name: string): string;
19
19
  /**
20
- * SQL 문자열 리터럴용 이스케이프
21
- * 동적 SQL이나 시스템 쿼리에서 문자열 값으로 사용될 때 호출
20
+ * SQL 문자열 리터럴용 escape
21
+ * 동적 SQL이나 System query에서 문자열 값으로 사용될 때 호출
22
22
  * 예: WHERE schema_name = 'escaped_value'
23
23
  */
24
24
  abstract escapeString(value: string): string;
25
25
  /**
26
- * 이스케이프 (타입에 따라 적절한 SQL 리터럴로 변환)
26
+ * value escape (타입에 따라 적절한 SQL 리터럴로 Transform)
27
27
  */
28
28
  abstract escapeValue(value: unknown): string;
29
29
  render(expr: Expr | WhereExpr): string;
@@ -3,11 +3,11 @@ class ExprRendererBase {
3
3
  this.buildSelect = buildSelect;
4
4
  }
5
5
  //#endregion
6
- //#region ========== Dispatch (100% 동일) ==========
6
+ //#region ========== Dispatch (100% identical) ==========
7
7
  render(expr) {
8
8
  const method = this[expr.type];
9
9
  if (typeof method !== "function") {
10
- throw new Error(`\uC54C \uC218 \uC5C6\uB294 Expr \uD0C0\uC785: ${expr.type}`);
10
+ throw new Error(`Unknown Expr type: ${expr.type}`);
11
11
  }
12
12
  return method.call(this, expr);
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/query-builder/base/expr-renderer-base.ts"],
4
- "mappings": "AA6EO,MAAe,iBAAiB;AAAA,EACrC,YAAsB,aAA8C;AAA9C;AAAA,EAA+C;AAAA;AAAA;AAAA,EA0BrE,OAAO,MAAgC;AACrC,UAAM,SAAS,KAAK,KAAK,IAAkB;AAC3C,QAAI,OAAO,WAAW,YAAY;AAChC,YAAM,IAAI,MAAM,iDAAmB,KAAK,IAAI,EAAE;AAAA,IAChD;AACA,WAAQ,OAA2C,KAAK,MAAM,IAAI;AAAA,EACpE;AAAA,EAEA,YAAY,OAA4B;AACtC,QAAI,MAAM,WAAW,EAAG,QAAO;AAC/B,WAAO,MAAM,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,OAAO;AAAA,EACtD;AAAA;AAyHF;",
4
+ "mappings": "AA6EO,MAAe,iBAAiB;AAAA,EACrC,YAAsB,aAA8C;AAA9C;AAAA,EAA+C;AAAA;AAAA;AAAA,EA0BrE,OAAO,MAAgC;AACrC,UAAM,SAAS,KAAK,KAAK,IAAkB;AAC3C,QAAI,OAAO,WAAW,YAAY;AAChC,YAAM,IAAI,MAAM,sBAAsB,KAAK,IAAI,EAAE;AAAA,IACnD;AACA,WAAQ,OAA2C,KAAK,MAAM,IAAI;AAAA,EACpE;AAAA,EAEA,YAAY,OAA4B;AACtC,QAAI,MAAM,WAAW,EAAG,QAAO;AAC/B,WAAO,MAAM,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,OAAO;AAAA,EACtD;AAAA;AAyHF;",
5
5
  "names": []
6
6
  }
@@ -3,51 +3,51 @@ import type { Expr, WhereExpr } from "../../types/expr";
3
3
  import type { QueryBuildResult } from "../../types/db";
4
4
  import type { ExprRendererBase } from "./expr-renderer-base";
5
5
  /**
6
- * QueryDef → SQL 렌더링 추상 기본 클래스
6
+ * QueryDef → SQL render abstract base class
7
7
  *
8
- * Base 원칙:
9
- * - 100% 모든 dialect가 동일한 로직만 구현 (dispatch)
10
- * - 조금이라도 다르면 전부 abstract
11
- * - 메서드명은 def.type 동일 (동적 dispatch 가능)
8
+ * Base principles:
9
+ * - Implement only 100% identical logic across all dialects (dispatch)
10
+ * - If different at all, make it abstract
11
+ * - Method name identical to def.type (enables dynamic dispatch)
12
12
  */
13
13
  export declare abstract class QueryBuilderBase {
14
14
  protected abstract expr: ExprRendererBase;
15
15
  build(def: QueryDef): QueryBuildResult;
16
- /** SQL QueryBuildResult 래핑하는 헬퍼 */
16
+ /** Helper to wrap SQL in QueryBuildResult */
17
17
  protected result(sql: string, resultSetIndex?: number): QueryBuildResult;
18
- /** 테이블명 렌더링 (dialect별로 다르므로 abstract) */
18
+ /** Table name render (different per dialect, so abstract) */
19
19
  protected abstract tableName(obj: QueryDefObjectName): string;
20
- /** WHERE 렌더링 */
20
+ /** WHERE clause render */
21
21
  protected renderWhere(wheres: WhereExpr[] | undefined): string;
22
- /** ORDER BY 렌더링 */
22
+ /** ORDER BY clause render */
23
23
  protected renderOrderBy(orderBy: [Expr, ("ASC" | "DESC")?][] | undefined): string;
24
- /** GROUP BY 렌더링 */
24
+ /** GROUP BY clause render */
25
25
  protected renderGroupBy(groupBy: Expr[] | undefined): string;
26
- /** HAVING 렌더링 */
26
+ /** HAVING clause render */
27
27
  protected renderHaving(having: WhereExpr[] | undefined): string;
28
- /** JOIN 렌더링 */
28
+ /** JOIN clause render */
29
29
  protected renderJoins(joins: SelectQueryDefJoin[] | undefined): string;
30
- /** 단일 JOIN 렌더링 (dialect별로 다르므로 abstract) */
30
+ /** Single JOIN render (different per dialect, so abstract) */
31
31
  protected abstract renderJoin(join: SelectQueryDefJoin): string;
32
32
  /**
33
- * JOIN LATERAL/CROSS APPLY가 필요한지 감지
33
+ * Detect if JOIN needs LATERAL/CROSS APPLY
34
34
  *
35
- * 기본 JOIN 속성(type, from, as, where, isSingle) 있으면 일반 JOIN으로 처리.
36
- * 속성이 있으면 서브쿼리가 필요하므로 LATERAL JOIN 사용:
35
+ * If JOIN has only basic properties (type, from, as, where, isSingle), treat as normal JOIN.
36
+ * Otherwise, subquery is needed, so use LATERAL JOIN:
37
37
  *
38
- * - select: 컬럼 가공/집계가 필요 (일반 JOIN 테이블 전체를 참조)
39
- * - joins: 중첩 JOIN 서브쿼리 내부에서 처리
40
- * - orderBy, top, limit: 정렬/제한을 서브쿼리 내부에서 적용
41
- * - groupBy, having: 집계를 서브쿼리 내부에서 수행
42
- * - distinct: 중복 제거를 서브쿼리 내부에서 적용
43
- * - from (배열): UNION ALL 패턴
38
+ * - select: column transformation/aggregation needed (normal JOIN references entire table)
39
+ * - joins: nested JOIN handled inside subquery
40
+ * - orderBy, top, limit: sorting/limit applied inside subquery
41
+ * - groupBy, having: aggregation performed inside subquery
42
+ * - distinct: deduplication applied inside subquery
43
+ * - from (array): UNION ALL pattern
44
44
  *
45
- * 주의: select joins 중첩 join 자동 생성되므로 basicJoinProps에 포함하지 않음.
46
- * 사용자가 직접 .select() 호출하지 않아도 내부 .joinSingle() 호출로 인해
47
- * select/joins 추가될 있으며, 이 경우에도 서브쿼리가 필요함.
45
+ * Note: select and joins are auto-generated during nested joins, so not in basicJoinProps.
46
+ * Even if user doesn't call .select() directly, internal .joinSingle() may add
47
+ * select/joins, which also requires subquery.
48
48
  */
49
49
  protected needsLateral(join: SelectQueryDefJoin): boolean;
50
- /** FROM 소스 렌더링 */
50
+ /** FROM clause source render */
51
51
  protected renderFrom(from: SelectQueryDef["from"]): string;
52
52
  protected abstract select(def: SelectQueryDef): QueryBuildResult;
53
53
  protected abstract insert(def: InsertQueryDef): QueryBuildResult;
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder-base.d.ts","sourceRoot":"","sources":["..\\..\\..\\src\\query-builder\\base\\query-builder-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-builder-base.d.ts","sourceRoot":"","sources":["..\\..\\..\\src\\query-builder\\base\\query-builder-base.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,22 @@
1
1
  class QueryBuilderBase {
2
- //#region ========== Dispatch (100% 동일) ==========
2
+ //#region ========== Dispatch (100% identical) ==========
3
3
  build(def) {
4
4
  const method = this[def.type];
5
5
  if (typeof method !== "function") {
6
- throw new Error(`\uC54C \uC218 \uC5C6\uB294 QueryDef \uD0C0\uC785: ${def.type}`);
6
+ throw new Error(`Unknown QueryDef type: ${def.type}`);
7
7
  }
8
8
  return method.call(this, def);
9
9
  }
10
- /** SQL QueryBuildResult 래핑하는 헬퍼 */
10
+ /** Helper to wrap SQL in QueryBuildResult */
11
11
  result(sql, resultSetIndex) {
12
12
  return resultSetIndex != null ? { sql, resultSetIndex } : { sql };
13
13
  }
14
- /** WHERE 렌더링 */
14
+ /** WHERE clause render */
15
15
  renderWhere(wheres) {
16
16
  if (wheres == null || wheres.length === 0) return "";
17
17
  return ` WHERE ${this.expr.renderWhere(wheres)}`;
18
18
  }
19
- /** ORDER BY 렌더링 */
19
+ /** ORDER BY clause render */
20
20
  renderOrderBy(orderBy) {
21
21
  if (orderBy == null || orderBy.length === 0) return "";
22
22
  const parts = orderBy.map(
@@ -24,37 +24,37 @@ class QueryBuilderBase {
24
24
  );
25
25
  return ` ORDER BY ${parts.join(", ")}`;
26
26
  }
27
- /** GROUP BY 렌더링 */
27
+ /** GROUP BY clause render */
28
28
  renderGroupBy(groupBy) {
29
29
  if (groupBy == null || groupBy.length === 0) return "";
30
30
  return ` GROUP BY ${groupBy.map((g) => this.expr.render(g)).join(", ")}`;
31
31
  }
32
- /** HAVING 렌더링 */
32
+ /** HAVING clause render */
33
33
  renderHaving(having) {
34
34
  if (having == null || having.length === 0) return "";
35
35
  return ` HAVING ${this.expr.renderWhere(having)}`;
36
36
  }
37
- /** JOIN 렌더링 */
37
+ /** JOIN clause render */
38
38
  renderJoins(joins) {
39
39
  if (joins == null || joins.length === 0) return "";
40
40
  return joins.map((j) => this.renderJoin(j)).join("");
41
41
  }
42
42
  /**
43
- * JOIN LATERAL/CROSS APPLY가 필요한지 감지
43
+ * Detect if JOIN needs LATERAL/CROSS APPLY
44
44
  *
45
- * 기본 JOIN 속성(type, from, as, where, isSingle) 있으면 일반 JOIN으로 처리.
46
- * 속성이 있으면 서브쿼리가 필요하므로 LATERAL JOIN 사용:
45
+ * If JOIN has only basic properties (type, from, as, where, isSingle), treat as normal JOIN.
46
+ * Otherwise, subquery is needed, so use LATERAL JOIN:
47
47
  *
48
- * - select: 컬럼 가공/집계가 필요 (일반 JOIN 테이블 전체를 참조)
49
- * - joins: 중첩 JOIN 서브쿼리 내부에서 처리
50
- * - orderBy, top, limit: 정렬/제한을 서브쿼리 내부에서 적용
51
- * - groupBy, having: 집계를 서브쿼리 내부에서 수행
52
- * - distinct: 중복 제거를 서브쿼리 내부에서 적용
53
- * - from (배열): UNION ALL 패턴
48
+ * - select: column transformation/aggregation needed (normal JOIN references entire table)
49
+ * - joins: nested JOIN handled inside subquery
50
+ * - orderBy, top, limit: sorting/limit applied inside subquery
51
+ * - groupBy, having: aggregation performed inside subquery
52
+ * - distinct: deduplication applied inside subquery
53
+ * - from (array): UNION ALL pattern
54
54
  *
55
- * 주의: select joins 중첩 join 자동 생성되므로 basicJoinProps에 포함하지 않음.
56
- * 사용자가 직접 .select() 호출하지 않아도 내부 .joinSingle() 호출로 인해
57
- * select/joins 추가될 있으며, 이 경우에도 서브쿼리가 필요함.
55
+ * Note: select and joins are auto-generated during nested joins, so not in basicJoinProps.
56
+ * Even if user doesn't call .select() directly, internal .joinSingle() may add
57
+ * select/joins, which also requires subquery.
58
58
  */
59
59
  needsLateral(join) {
60
60
  if (Array.isArray(join.from)) {
@@ -63,10 +63,10 @@ class QueryBuilderBase {
63
63
  const basicJoinProps = ["type", "from", "as", "where", "isSingle"];
64
64
  return Object.keys(join).some((key) => !basicJoinProps.includes(key));
65
65
  }
66
- /** FROM 소스 렌더링 */
66
+ /** FROM clause source render */
67
67
  renderFrom(from) {
68
68
  if (from == null) {
69
- throw new Error("FROM\uC774 \uD544\uC694\uD569\uB2C8\uB2E4.");
69
+ throw new Error("FROM clause is required.");
70
70
  }
71
71
  if (typeof from === "string") {
72
72
  return this.expr.wrap(from);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/query-builder/base/query-builder-base.ts"],
4
- "mappings": "AA8CO,MAAe,iBAAiB;AAAA;AAAA,EAKrC,MAAM,KAAiC;AACrC,UAAM,SAAS,KAAK,IAAI,IAAkB;AAC1C,QAAI,OAAO,WAAW,YAAY;AAChC,YAAM,IAAI,MAAM,qDAAuB,IAAI,IAAI,EAAE;AAAA,IACnD;AACA,WAAQ,OAA6C,KAAK,MAAM,GAAG;AAAA,EACrE;AAAA;AAAA,EAGU,OAAO,KAAa,gBAA2C;AACvE,WAAO,kBAAkB,OAAO,EAAE,KAAK,eAAe,IAAI,EAAE,IAAI;AAAA,EAClE;AAAA;AAAA,EAUU,YAAY,QAAyC;AAC7D,QAAI,UAAU,QAAQ,OAAO,WAAW,EAAG,QAAO;AAClD,WAAO,UAAU,KAAK,KAAK,YAAY,MAAM,CAAC;AAAA,EAChD;AAAA;AAAA,EAGU,cAAc,SAA0D;AAChF,QAAI,WAAW,QAAQ,QAAQ,WAAW,EAAG,QAAO;AACpD,UAAM,QAAQ,QAAQ;AAAA,MACpB,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,GAAG,OAAO,OAAO,IAAI,GAAG,KAAK,EAAE;AAAA,IACrE;AACA,WAAO,aAAa,MAAM,KAAK,IAAI,CAAC;AAAA,EACtC;AAAA;AAAA,EAGU,cAAc,SAAqC;AAC3D,QAAI,WAAW,QAAQ,QAAQ,WAAW,EAAG,QAAO;AACpD,WAAO,aAAa,QAAQ,IAAI,CAAC,MAAM,KAAK,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,EACxE;AAAA;AAAA,EAGU,aAAa,QAAyC;AAC9D,QAAI,UAAU,QAAQ,OAAO,WAAW,EAAG,QAAO;AAClD,WAAO,WAAW,KAAK,KAAK,YAAY,MAAM,CAAC;AAAA,EACjD;AAAA;AAAA,EAGU,YAAY,OAAiD;AACrE,QAAI,SAAS,QAAQ,MAAM,WAAW,EAAG,QAAO;AAChD,WAAO,MAAM,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE;AAAA,EACrD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBU,aAAa,MAAmC;AAExD,QAAI,MAAM,QAAQ,KAAK,IAAI,GAAG;AAC5B,aAAO;AAAA,IACT;AAGA,UAAM,iBAAiB,CAAC,QAAQ,QAAQ,MAAM,SAAS,UAAU;AACjE,WAAO,OAAO,KAAK,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,eAAe,SAAS,GAAG,CAAC;AAAA,EACtE;AAAA;AAAA,EAGU,WAAW,MAAsC;AACzD,QAAI,QAAQ,MAAM;AAChB,YAAM,IAAI,MAAM,4CAAc;AAAA,IAChC;AACA,QAAI,OAAO,SAAS,UAAU;AAC5B,aAAO,KAAK,KAAK,KAAK,IAAI;AAAA,IAC5B;AACA,QAAI,UAAU,MAAM;AAClB,aAAO,IAAI,KAAK,OAAO,IAAI,EAAE,GAAG;AAAA,IAClC;AACA,QAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,aAAO,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,aAAa,CAAC;AAAA,IACpE;AACA,WAAO,KAAK,UAAU,IAAI;AAAA,EAC5B;AAAA;AA8DF;",
4
+ "mappings": "AA8CO,MAAe,iBAAiB;AAAA;AAAA,EAKrC,MAAM,KAAiC;AACrC,UAAM,SAAS,KAAK,IAAI,IAAkB;AAC1C,QAAI,OAAO,WAAW,YAAY;AAChC,YAAM,IAAI,MAAM,0BAA0B,IAAI,IAAI,EAAE;AAAA,IACtD;AACA,WAAQ,OAA6C,KAAK,MAAM,GAAG;AAAA,EACrE;AAAA;AAAA,EAGU,OAAO,KAAa,gBAA2C;AACvE,WAAO,kBAAkB,OAAO,EAAE,KAAK,eAAe,IAAI,EAAE,IAAI;AAAA,EAClE;AAAA;AAAA,EAUU,YAAY,QAAyC;AAC7D,QAAI,UAAU,QAAQ,OAAO,WAAW,EAAG,QAAO;AAClD,WAAO,UAAU,KAAK,KAAK,YAAY,MAAM,CAAC;AAAA,EAChD;AAAA;AAAA,EAGU,cAAc,SAA0D;AAChF,QAAI,WAAW,QAAQ,QAAQ,WAAW,EAAG,QAAO;AACpD,UAAM,QAAQ,QAAQ;AAAA,MACpB,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,GAAG,OAAO,OAAO,IAAI,GAAG,KAAK,EAAE;AAAA,IACrE;AACA,WAAO,aAAa,MAAM,KAAK,IAAI,CAAC;AAAA,EACtC;AAAA;AAAA,EAGU,cAAc,SAAqC;AAC3D,QAAI,WAAW,QAAQ,QAAQ,WAAW,EAAG,QAAO;AACpD,WAAO,aAAa,QAAQ,IAAI,CAAC,MAAM,KAAK,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,EACxE;AAAA;AAAA,EAGU,aAAa,QAAyC;AAC9D,QAAI,UAAU,QAAQ,OAAO,WAAW,EAAG,QAAO;AAClD,WAAO,WAAW,KAAK,KAAK,YAAY,MAAM,CAAC;AAAA,EACjD;AAAA;AAAA,EAGU,YAAY,OAAiD;AACrE,QAAI,SAAS,QAAQ,MAAM,WAAW,EAAG,QAAO;AAChD,WAAO,MAAM,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE;AAAA,EACrD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBU,aAAa,MAAmC;AAExD,QAAI,MAAM,QAAQ,KAAK,IAAI,GAAG;AAC5B,aAAO;AAAA,IACT;AAGA,UAAM,iBAAiB,CAAC,QAAQ,QAAQ,MAAM,SAAS,UAAU;AACjE,WAAO,OAAO,KAAK,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,eAAe,SAAS,GAAG,CAAC;AAAA,EACtE;AAAA;AAAA,EAGU,WAAW,MAAsC;AACzD,QAAI,QAAQ,MAAM;AAChB,YAAM,IAAI,MAAM,0BAA0B;AAAA,IAC5C;AACA,QAAI,OAAO,SAAS,UAAU;AAC5B,aAAO,KAAK,KAAK,KAAK,IAAI;AAAA,IAC5B;AACA,QAAI,UAAU,MAAM;AAClB,aAAO,IAAI,KAAK,OAAO,IAAI,EAAE,GAAG;AAAA,IAClC;AACA,QAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,aAAO,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,aAAa,CAAC;AAAA,IACpE;AACA,WAAO,KAAK,UAAU,IAAI;AAAA,EAC5B;AAAA;AA8DF;",
5
5
  "names": []
6
6
  }
@@ -2,16 +2,16 @@ import type { ExprColumn, ExprValue, ExprRaw, ExprEq, ExprGt, ExprLt, ExprGte, E
2
2
  import type { DataType } from "../../types/column";
3
3
  import { ExprRendererBase } from "../base/expr-renderer-base";
4
4
  /**
5
- * MSSQL Expr 렌더러
5
+ * MSSQL expression renderer
6
6
  */
7
7
  export declare class MssqlExprRenderer extends ExprRendererBase {
8
8
  /** 식별자 감싸기 */
9
9
  wrap(name: string): string;
10
- /** SQL 문자열 리터럴용 이스케이프 (따옴표 없이 반환) */
10
+ /** SQL 문자열 리터럴용 escape (따옴표 없이 return) */
11
11
  escapeString(value: string): string;
12
- /** 이스케이프 */
12
+ /** value escape */
13
13
  escapeValue(value: unknown): string;
14
- /** DataType → SQL 타입 */
14
+ /** DataType → SQL type */
15
15
  renderDataType(dataType: DataType): string;
16
16
  protected column(expr: ExprColumn): string;
17
17
  protected value(expr: ExprValue): string;
@@ -1 +1 @@
1
- {"version":3,"file":"mssql-expr-renderer.d.ts","sourceRoot":"","sources":["..\\..\\..\\src\\query-builder\\mssql\\mssql-expr-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mssql-expr-renderer.d.ts","sourceRoot":"","sources":["..\\..\\..\\src\\query-builder\\mssql\\mssql-expr-renderer.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,11 @@ class MssqlExprRenderer extends ExprRendererBase {
6
6
  wrap(name) {
7
7
  return `[${name.replace(/]/g, "]]")}]`;
8
8
  }
9
- /** SQL 문자열 리터럴용 이스케이프 (따옴표 없이 반환) */
9
+ /** SQL 문자열 리터럴용 escape (따옴표 없이 return) */
10
10
  escapeString(value) {
11
11
  return value.replace(/'/g, "''");
12
12
  }
13
- /** 이스케이프 */
13
+ /** value escape */
14
14
  escapeValue(value) {
15
15
  if (value == null) {
16
16
  return "NULL";
@@ -39,9 +39,9 @@ class MssqlExprRenderer extends ExprRendererBase {
39
39
  if (value instanceof Uint8Array) {
40
40
  return `0x${bytesToHex(value)}`;
41
41
  }
42
- throw new Error(`\uC54C \uC218 \uC5C6\uB294 \uAC12 \uD0C0\uC785: ${typeof value}`);
42
+ throw new Error(`Unknown value type: ${typeof value}`);
43
43
  }
44
- /** DataType → SQL 타입 */
44
+ /** DataType → SQL type */
45
45
  renderDataType(dataType) {
46
46
  switch (dataType.type) {
47
47
  case "int":
@@ -75,7 +75,7 @@ class MssqlExprRenderer extends ExprRendererBase {
75
75
  }
76
76
  }
77
77
  //#endregion
78
- //#region ========== ==========
78
+ //#region ========== value ==========
79
79
  column(expr) {
80
80
  return expr.path.map((p) => this.wrap(p)).join(".");
81
81
  }
@@ -89,7 +89,7 @@ class MssqlExprRenderer extends ExprRendererBase {
89
89
  });
90
90
  }
91
91
  //#endregion
92
- //#region ========== 비교 (null-safe) ==========
92
+ //#region ========== comparison (null-safe) ==========
93
93
  eq(expr) {
94
94
  const left = this.render(expr.source);
95
95
  const right = this.render(expr.target);
@@ -127,7 +127,7 @@ class MssqlExprRenderer extends ExprRendererBase {
127
127
  return `${this.render(expr.source)} LIKE ${this.render(expr.pattern)} ESCAPE '\\'`;
128
128
  }
129
129
  regexp(_expr) {
130
- throw new Error("MSSQL\uC740 REGEXP\uB97C \uB124\uC774\uD2F0\uBE0C\uB85C \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.");
130
+ throw new Error("MSSQL does not natively support REGEXP.");
131
131
  }
132
132
  in(expr) {
133
133
  if (expr.values.length === 0) {
@@ -147,7 +147,7 @@ class MssqlExprRenderer extends ExprRendererBase {
147
147
  return `EXISTS (${subquery})`;
148
148
  }
149
149
  //#endregion
150
- //#region ========== 논리 ==========
150
+ //#region ========== logic ==========
151
151
  not(expr) {
152
152
  return `NOT (${this.render(expr.arg)})`;
153
153
  }
@@ -160,7 +160,7 @@ class MssqlExprRenderer extends ExprRendererBase {
160
160
  return `(${expr.conditions.map((c) => this.render(c)).join(" OR ")})`;
161
161
  }
162
162
  //#endregion
163
- //#region ========== 문자열 (null 처리) ==========
163
+ //#region ========== 문자열 (null Process) ==========
164
164
  concat(expr) {
165
165
  const args = expr.args.map((a) => this.render(a)).join(", ");
166
166
  return `CONCAT(${args})`;
@@ -205,7 +205,7 @@ class MssqlExprRenderer extends ExprRendererBase {
205
205
  return `CHARINDEX(${this.render(expr.search)}, ${this.render(expr.source)})`;
206
206
  }
207
207
  //#endregion
208
- //#region ========== 숫자 ==========
208
+ //#region ========== Number ==========
209
209
  abs(expr) {
210
210
  return `ABS(${this.render(expr.arg)})`;
211
211
  }
@@ -219,7 +219,7 @@ class MssqlExprRenderer extends ExprRendererBase {
219
219
  return `FLOOR(${this.render(expr.arg)})`;
220
220
  }
221
221
  //#endregion
222
- //#region ========== 날짜 ==========
222
+ //#region ========== Date ==========
223
223
  year(expr) {
224
224
  return `YEAR(${this.render(expr.arg)})`;
225
225
  }
@@ -287,7 +287,7 @@ class MssqlExprRenderer extends ExprRendererBase {
287
287
  return format;
288
288
  }
289
289
  //#endregion
290
- //#region ========== 조건 ==========
290
+ //#region ========== condition ==========
291
291
  ifNull(expr) {
292
292
  if (expr.args.length === 0) return "NULL";
293
293
  if (expr.args.length === 1) return this.render(expr.args[0]);
@@ -308,7 +308,7 @@ class MssqlExprRenderer extends ExprRendererBase {
308
308
  return `CASE WHEN ${this.render(expr.condition)} THEN ${this.render(expr.then)} ELSE ${elseVal} END`;
309
309
  }
310
310
  //#endregion
311
- //#region ========== 집계 ==========
311
+ //#region ========== aggregation ==========
312
312
  count(expr) {
313
313
  if (expr.arg != null) {
314
314
  const distinct = expr.distinct ? "DISTINCT " : "";
@@ -329,15 +329,15 @@ class MssqlExprRenderer extends ExprRendererBase {
329
329
  return `MIN(${this.render(expr.arg)})`;
330
330
  }
331
331
  //#endregion
332
- //#region ========== 기타 ==========
332
+ //#region ========== Other ==========
333
333
  greatest(expr) {
334
- if (expr.args.length === 0) throw new Error("greatest\uB294 \uCD5C\uC18C \uD558\uB098\uC758 \uC778\uC790\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.");
334
+ if (expr.args.length === 0) throw new Error("greatest requires at least one argument.");
335
335
  if (expr.args.length === 1) return this.render(expr.args[0]);
336
336
  const values = expr.args.map((a) => `(${this.render(a)})`).join(", ");
337
337
  return `(SELECT MAX(v) FROM (VALUES ${values}) AS t(v))`;
338
338
  }
339
339
  least(expr) {
340
- if (expr.args.length === 0) throw new Error("least\uB294 \uCD5C\uC18C \uD558\uB098\uC758 \uC778\uC790\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.");
340
+ if (expr.args.length === 0) throw new Error("least requires at least one argument.");
341
341
  if (expr.args.length === 1) return this.render(expr.args[0]);
342
342
  const values = expr.args.map((a) => `(${this.render(a)})`).join(", ");
343
343
  return `(SELECT MIN(v) FROM (VALUES ${values}) AS t(v))`;
@@ -352,7 +352,7 @@ class MssqlExprRenderer extends ExprRendererBase {
352
352
  return `CAST(${this.render(expr.source)} AS ${this.renderDataType(expr.targetType)})`;
353
353
  }
354
354
  //#endregion
355
- //#region ========== 윈도우 ==========
355
+ //#region ========== Window ==========
356
356
  window(expr) {
357
357
  const fn = this.renderWindowFn(expr.fn);
358
358
  let over = this.renderWindowSpec(expr.spec);
@@ -411,7 +411,7 @@ class MssqlExprRenderer extends ExprRendererBase {
411
411
  return parts.join(" ");
412
412
  }
413
413
  //#endregion
414
- //#region ========== 시스템 ==========
414
+ //#region ========== System ==========
415
415
  subquery(expr) {
416
416
  return `(${this.buildSelect(expr.queryDef)})`;
417
417
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/query-builder/mssql/mssql-expr-renderer.ts"],
4
- "mappings": "AAAA,SAAS,UAAU,UAAU,MAAM,MAAM,kBAAkB;AAmE3D,SAAS,wBAAwB;AAK1B,MAAM,0BAA0B,iBAAiB;AAAA;AAAA;AAAA,EAItD,KAAK,MAAsB;AACzB,WAAO,IAAI,KAAK,QAAQ,MAAM,IAAI,CAAC;AAAA,EACrC;AAAA;AAAA,EAGA,aAAa,OAAuB;AAClC,WAAO,MAAM,QAAQ,MAAM,IAAI;AAAA,EACjC;AAAA;AAAA,EAGA,YAAY,OAAwB;AAClC,QAAI,SAAS,MAAM;AACjB,aAAO;AAAA,IACT;AACA,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,KAAK,MAAM,QAAQ,MAAM,IAAI,CAAC;AAAA,IACvC;AACA,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,OAAO,KAAK;AAAA,IACrB;AACA,QAAI,OAAO,UAAU,WAAW;AAC9B,aAAO,QAAQ,MAAM;AAAA,IACvB;AACA,QAAI,iBAAiB,UAAU;AAC7B,aAAO,IAAI,MAAM,eAAe,qBAAqB,CAAC;AAAA,IACxD;AACA,QAAI,iBAAiB,UAAU;AAC7B,aAAO,IAAI,MAAM,eAAe,YAAY,CAAC;AAAA,IAC/C;AACA,QAAI,iBAAiB,MAAM;AACzB,aAAO,IAAI,MAAM,eAAe,UAAU,CAAC;AAAA,IAC7C;AACA,QAAI,iBAAiB,MAAM;AACzB,aAAO,IAAI,MAAM,SAAS,CAAC;AAAA,IAC7B;AACA,QAAI,iBAAiB,YAAY;AAC/B,aAAO,KAAK,WAAW,KAAK,CAAC;AAAA,IAC/B;AACA,UAAM,IAAI,MAAM,mDAAgB,OAAO,KAAK,EAAE;AAAA,EAChD;AAAA;AAAA,EAGA,eAAe,UAA4B;AACzC,YAAQ,SAAS,MAAM;AAAA,MACrB,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO,SAAS,SAAS,OACrB,WAAW,SAAS,SAAS,KAAK,SAAS,KAAK,MAChD,WAAW,SAAS,SAAS;AAAA,MACnC,KAAK;AACH,eAAO,YAAY,SAAS,MAAM;AAAA,MACpC,KAAK;AACH,eAAO,SAAS,SAAS,MAAM;AAAA,MACjC,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,IACX;AAAA,EACF;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,WAAO,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG;AAAA,EACpD;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,KAAK,YAAY,KAAK,KAAK;AAAA,EACpC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,KAAK,IAAI,QAAQ,YAAY,CAAC,GAAG,QAAQ;AAC9C,YAAM,MAAM,SAAS,GAAG,IAAI;AAC5B,aAAO,MAAM,KAAK,OAAO,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG;AAAA,IAC3E,CAAC;AAAA,EACH;AAAA;AAAA;AAAA,EAMU,GAAG,MAAsB;AAEjC,UAAM,OAAO,KAAK,OAAO,KAAK,MAAM;AACpC,UAAM,QAAQ,KAAK,OAAO,KAAK,MAAM;AACrC,WAAO,KAAK,IAAI,gBAAgB,KAAK,gBAAgB,IAAI,MAAM,KAAK;AAAA,EACtE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAClE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAClE;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACnE;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACnE;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,QAAI,KAAK,QAAQ,QAAQ,KAAK,MAAM,MAAM;AACxC,aAAO,GAAG,MAAM,YAAY,KAAK,OAAO,KAAK,IAAI,CAAC,QAAQ,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,IAChF;AACA,QAAI,KAAK,QAAQ,MAAM;AACrB,aAAO,GAAG,MAAM,OAAO,KAAK,OAAO,KAAK,IAAI,CAAC;AAAA,IAC/C;AACA,QAAI,KAAK,MAAM,MAAM;AACnB,aAAO,GAAG,MAAM,OAAO,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,IAC7C;AACA,WAAO;AAAA,EACT;AAAA,EAEU,KAAK,MAA0B;AACvC,WAAO,GAAG,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACjC;AAAA,EAEU,KAAK,MAAwB;AAErC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,SAAS,KAAK,OAAO,KAAK,OAAO,CAAC;AAAA,EACtE;AAAA,EAEU,OAAO,OAA2B;AAE1C,UAAM,IAAI,MAAM,4GAAiC;AAAA,EACnD;AAAA,EAEU,GAAG,MAAsB;AACjC,QAAI,KAAK,OAAO,WAAW,GAAG;AAC5B,aAAO;AAAA,IACT;AACA,UAAM,SAAS,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI;AAC/D,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,QAAQ,MAAM;AAAA,EAClD;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,QAAQ,KAAK,YAAY,KAAK,KAAK,CAAC;AAAA,EACxE;AAAA,EAEU,OAAO,MAA0B;AAEzC,UAAM,WAAW,KAAK,YAAY;AAAA,MAChC,GAAG,KAAK;AAAA,MACR,QAAQ,EAAE,GAAG,EAAE,MAAM,SAAS,OAAO,EAAE,EAAE;AAAA,IAC3C,CAAC;AACD,WAAO,WAAW,QAAQ;AAAA,EAC5B;AAAA;AAAA;AAAA,EAMU,IAAI,MAAuB;AACnC,WAAO,QAAQ,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACtC;AAAA,EAEU,IAAI,MAAuB;AACnC,QAAI,KAAK,WAAW,WAAW,EAAG,QAAO;AACzC,WAAO,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC;AAAA,EACrE;AAAA,EAEU,GAAG,MAAsB;AACjC,QAAI,KAAK,WAAW,WAAW,EAAG,QAAO;AACzC,WAAO,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC;AAAA,EACpE;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AAEzC,UAAM,OAAO,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI;AAC3D,WAAO,UAAU,IAAI;AAAA,EACvB;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACtE;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACvE;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,eAAe,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAC7C;AAAA,EAEU,SAAS,MAA4B;AAE7C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,UAAM,MAAM,KAAK,OAAO,KAAK,MAAM;AACnC,UAAM,OAAO,KAAK,OAAO,KAAK,UAAU;AACxC,WAAO,mBAAmB,IAAI,KAAK,GAAG,OAAO,MAAM,KAAK,GAAG;AAAA,EAC7D;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,WAAW,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,IAAI,CAAC,KAAK,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,EAChG;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,OAAO,MAA0B;AAEzC,WAAO,cAAc,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAC5C;AAAA,EAEU,WAAW,MAA8B;AAEjD,WAAO,qBAAqB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACnD;AAAA,EAEU,UAAU,MAA6B;AAC/C,QAAI,KAAK,UAAU,MAAM;AACvB,aAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,IACvG;AAEA,WAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC,SAAS,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAC3G;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAC3E;AAAA;AAAA;AAAA,EAMU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC,KAAK,KAAK,MAAM;AAAA,EACvD;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,WAAW,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACzC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA;AAAA;AAAA,EAMU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACtC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,kBAAkB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAChD;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,oBAAoB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAClD;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,oBAAoB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAClD;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAChC,WAAO,sBAAsB,GAAG;AAAA,EAClC;AAAA,EAEU,iBAAiB,MAAoC;AAC7D,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAIhC,UAAM,UAAU,sBAAsB,GAAG;AACzC,WAAO,oBAAoB,OAAO,UAAU,GAAG;AAAA,EACjD;AAAA,EAEU,aAAa,MAAgC;AACrD,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAChC,WAAO,UAAU,GAAG;AAAA,EACtB;AAAA,EAEU,SAAS,MAA4B;AAC7C,UAAM,OAAO,KAAK,OAAO,KAAK,IAAI;AAClC,UAAM,KAAK,KAAK,OAAO,KAAK,EAAE;AAC9B,UAAM,OAAO,KAAK,oBAAoB,KAAK,SAAS;AACpD,WAAO,YAAY,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,EACzC;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,UAAM,QAAQ,KAAK,OAAO,KAAK,KAAK;AACpC,UAAM,OAAO,KAAK,oBAAoB,KAAK,SAAS;AACpD,WAAO,WAAW,IAAI,KAAK,KAAK,KAAK,MAAM;AAAA,EAC7C;AAAA,EAEU,WAAW,MAA8B;AAEjD,UAAM,cAAc,KAAK,kBAAkB,KAAK,MAAM;AACtD,WAAO,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,WAAW;AAAA,EAC5D;AAAA,EAEQ,oBAAoB,KAA4B;AACtD,YAAQ,KAAK;AAAA,MACX,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,IACX;AAAA,EACF;AAAA,EAEQ,kBAAkB,QAAwB;AAEhD,WAAO;AAAA,EACT;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO;AACnC,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,WAAO,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,EACpE;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC;AAAA,EACvE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,aAAa,KAAK,OAAO,KAAK,SAAS,CAAC;AAAA,EACjD;AAAA,EAEU,OAAO,MAA0B;AACzC,UAAM,QAAQ,KAAK,MAChB,IAAI,CAAC,MAAM,QAAQ,KAAK,OAAO,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,IAAI,CAAC,EAAE,EACpE,KAAK,GAAG;AACX,WAAO,QAAQ,KAAK,SAAS,KAAK,OAAO,KAAK,IAAI,CAAC;AAAA,EACrD;AAAA,EAEU,GAAG,MAAsB;AACjC,UAAM,UAAU,KAAK,QAAQ,OAAO,KAAK,OAAO,KAAK,IAAI,IAAI;AAC7D,WAAO,aAAa,KAAK,OAAO,KAAK,SAAS,CAAC,SAAS,KAAK,OAAO,KAAK,IAAI,CAAC,SAAS,OAAO;AAAA,EAChG;AAAA;AAAA;AAAA,EAMU,MAAM,MAAyB;AACvC,QAAI,KAAK,OAAO,MAAM;AACpB,YAAM,WAAW,KAAK,WAAW,cAAc;AAC/C,aAAO,SAAS,QAAQ,GAAG,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,IAClD;AACA,WAAO;AAAA,EACT;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA;AAAA;AAAA,EAMU,SAAS,MAA4B;AAC7C,QAAI,KAAK,KAAK,WAAW,EAAG,OAAM,IAAI,MAAM,mGAA6B;AACzE,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,UAAM,SAAS,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,IAAI;AACpE,WAAO,+BAA+B,MAAM;AAAA,EAC9C;AAAA,EAEU,MAAM,MAAyB;AACvC,QAAI,KAAK,KAAK,WAAW,EAAG,OAAM,IAAI,MAAM,gGAA0B;AACtE,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,UAAM,SAAS,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,IAAI;AACpE,WAAO,+BAA+B,MAAM;AAAA,EAC9C;AAAA,EAEU,OAAO,OAA2B;AAC1C,WAAO;AAAA,EACT;AAAA,EAEU,SAAiB;AACzB,WAAO;AAAA,EACT;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,eAAe,KAAK,UAAU,CAAC;AAAA,EACpF;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,UAAM,KAAK,KAAK,eAAe,KAAK,EAAE;AACtC,QAAI,OAAO,KAAK,iBAAiB,KAAK,IAAI;AAG1C,QAAI,KAAK,GAAG,SAAS,eAAe,KAAK,SAAS,GAAG;AACnD,cAAQ;AAAA,IACV;AAEA,WAAO,GAAG,EAAE,UAAU,IAAI;AAAA,EAC5B;AAAA,EAEQ,eAAe,IAA8B;AACnD,YAAQ,GAAG,MAAM;AAAA,MACf,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO,SAAS,GAAG,CAAC;AAAA,MACtB,KAAK,OAAO;AACV,cAAM,SAAS,GAAG,UAAU;AAC5B,cAAM,MAAM,GAAG,WAAW,OAAO,KAAK,KAAK,OAAO,GAAG,OAAO,CAAC,KAAK;AAClE,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC,KAAK,MAAM,GAAG,GAAG;AAAA,MACvD;AAAA,MACA,KAAK,QAAQ;AACX,cAAM,SAAS,GAAG,UAAU;AAC5B,cAAM,MAAM,GAAG,WAAW,OAAO,KAAK,KAAK,OAAO,GAAG,OAAO,CAAC,KAAK;AAClE,eAAO,QAAQ,KAAK,OAAO,GAAG,MAAM,CAAC,KAAK,MAAM,GAAG,GAAG;AAAA,MACxD;AAAA,MACA,KAAK;AACH,eAAO,eAAe,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MAC9C,KAAK;AACH,eAAO,cAAc,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MAC7C,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,GAAG,UAAU,OAAO,SAAS,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM;AAAA,MAClE,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,IACxC;AAAA,EACF;AAAA,EAEQ,iBAAiB,MAAkC;AACzD,UAAM,QAAkB,CAAC;AACzB,QAAI,KAAK,eAAe,QAAQ,KAAK,YAAY,SAAS,GAAG;AAC3D,YAAM,KAAK,gBAAgB,KAAK,YAAY,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;AAAA,IACrF;AACA,QAAI,KAAK,WAAW,QAAQ,KAAK,QAAQ,SAAS,GAAG;AACnD,YAAM,aAAa,KAAK,QAAQ;AAAA,QAC9B,CAAC,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,OAAO,IAAI,CAAC,GAAG,OAAO,OAAO,IAAI,GAAG,KAAK,EAAE;AAAA,MACtE;AACA,YAAM,KAAK,YAAY,WAAW,KAAK,IAAI,CAAC,EAAE;AAAA,IAChD;AACA,WAAO,MAAM,KAAK,GAAG;AAAA,EACvB;AAAA;AAAA;AAAA,EAMU,SAAS,MAA4B;AAC7C,WAAO,IAAI,KAAK,YAAY,KAAK,QAAQ,CAAC;AAAA,EAC5C;AAAA;AAGF;",
4
+ "mappings": "AAAA,SAAS,UAAU,UAAU,MAAM,MAAM,kBAAkB;AAmE3D,SAAS,wBAAwB;AAK1B,MAAM,0BAA0B,iBAAiB;AAAA;AAAA;AAAA,EAItD,KAAK,MAAsB;AACzB,WAAO,IAAI,KAAK,QAAQ,MAAM,IAAI,CAAC;AAAA,EACrC;AAAA;AAAA,EAGA,aAAa,OAAuB;AAClC,WAAO,MAAM,QAAQ,MAAM,IAAI;AAAA,EACjC;AAAA;AAAA,EAGA,YAAY,OAAwB;AAClC,QAAI,SAAS,MAAM;AACjB,aAAO;AAAA,IACT;AACA,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,KAAK,MAAM,QAAQ,MAAM,IAAI,CAAC;AAAA,IACvC;AACA,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,OAAO,KAAK;AAAA,IACrB;AACA,QAAI,OAAO,UAAU,WAAW;AAC9B,aAAO,QAAQ,MAAM;AAAA,IACvB;AACA,QAAI,iBAAiB,UAAU;AAC7B,aAAO,IAAI,MAAM,eAAe,qBAAqB,CAAC;AAAA,IACxD;AACA,QAAI,iBAAiB,UAAU;AAC7B,aAAO,IAAI,MAAM,eAAe,YAAY,CAAC;AAAA,IAC/C;AACA,QAAI,iBAAiB,MAAM;AACzB,aAAO,IAAI,MAAM,eAAe,UAAU,CAAC;AAAA,IAC7C;AACA,QAAI,iBAAiB,MAAM;AACzB,aAAO,IAAI,MAAM,SAAS,CAAC;AAAA,IAC7B;AACA,QAAI,iBAAiB,YAAY;AAC/B,aAAO,KAAK,WAAW,KAAK,CAAC;AAAA,IAC/B;AACA,UAAM,IAAI,MAAM,uBAAuB,OAAO,KAAK,EAAE;AAAA,EACvD;AAAA;AAAA,EAGA,eAAe,UAA4B;AACzC,YAAQ,SAAS,MAAM;AAAA,MACrB,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO,SAAS,SAAS,OACrB,WAAW,SAAS,SAAS,KAAK,SAAS,KAAK,MAChD,WAAW,SAAS,SAAS;AAAA,MACnC,KAAK;AACH,eAAO,YAAY,SAAS,MAAM;AAAA,MACpC,KAAK;AACH,eAAO,SAAS,SAAS,MAAM;AAAA,MACjC,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,IACX;AAAA,EACF;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,WAAO,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG;AAAA,EACpD;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,KAAK,YAAY,KAAK,KAAK;AAAA,EACpC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,KAAK,IAAI,QAAQ,YAAY,CAAC,GAAG,QAAQ;AAC9C,YAAM,MAAM,SAAS,GAAG,IAAI;AAC5B,aAAO,MAAM,KAAK,OAAO,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG;AAAA,IAC3E,CAAC;AAAA,EACH;AAAA;AAAA;AAAA,EAMU,GAAG,MAAsB;AAEjC,UAAM,OAAO,KAAK,OAAO,KAAK,MAAM;AACpC,UAAM,QAAQ,KAAK,OAAO,KAAK,MAAM;AACrC,WAAO,KAAK,IAAI,gBAAgB,KAAK,gBAAgB,IAAI,MAAM,KAAK;AAAA,EACtE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAClE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAClE;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACnE;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACnE;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,QAAI,KAAK,QAAQ,QAAQ,KAAK,MAAM,MAAM;AACxC,aAAO,GAAG,MAAM,YAAY,KAAK,OAAO,KAAK,IAAI,CAAC,QAAQ,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,IAChF;AACA,QAAI,KAAK,QAAQ,MAAM;AACrB,aAAO,GAAG,MAAM,OAAO,KAAK,OAAO,KAAK,IAAI,CAAC;AAAA,IAC/C;AACA,QAAI,KAAK,MAAM,MAAM;AACnB,aAAO,GAAG,MAAM,OAAO,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,IAC7C;AACA,WAAO;AAAA,EACT;AAAA,EAEU,KAAK,MAA0B;AACvC,WAAO,GAAG,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACjC;AAAA,EAEU,KAAK,MAAwB;AAErC,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,SAAS,KAAK,OAAO,KAAK,OAAO,CAAC;AAAA,EACtE;AAAA,EAEU,OAAO,OAA2B;AAE1C,UAAM,IAAI,MAAM,yCAAyC;AAAA,EAC3D;AAAA,EAEU,GAAG,MAAsB;AACjC,QAAI,KAAK,OAAO,WAAW,GAAG;AAC5B,aAAO;AAAA,IACT;AACA,UAAM,SAAS,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI;AAC/D,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,QAAQ,MAAM;AAAA,EAClD;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,GAAG,KAAK,OAAO,KAAK,MAAM,CAAC,QAAQ,KAAK,YAAY,KAAK,KAAK,CAAC;AAAA,EACxE;AAAA,EAEU,OAAO,MAA0B;AAEzC,UAAM,WAAW,KAAK,YAAY;AAAA,MAChC,GAAG,KAAK;AAAA,MACR,QAAQ,EAAE,GAAG,EAAE,MAAM,SAAS,OAAO,EAAE,EAAE;AAAA,IAC3C,CAAC;AACD,WAAO,WAAW,QAAQ;AAAA,EAC5B;AAAA;AAAA;AAAA,EAMU,IAAI,MAAuB;AACnC,WAAO,QAAQ,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACtC;AAAA,EAEU,IAAI,MAAuB;AACnC,QAAI,KAAK,WAAW,WAAW,EAAG,QAAO;AACzC,WAAO,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC;AAAA,EACrE;AAAA,EAEU,GAAG,MAAsB;AACjC,QAAI,KAAK,WAAW,WAAW,EAAG,QAAO;AACzC,WAAO,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC;AAAA,EACpE;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AAEzC,UAAM,OAAO,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI;AAC3D,WAAO,UAAU,IAAI;AAAA,EACvB;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACtE;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EACvE;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,eAAe,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAC7C;AAAA,EAEU,SAAS,MAA4B;AAE7C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,UAAM,MAAM,KAAK,OAAO,KAAK,MAAM;AACnC,UAAM,OAAO,KAAK,OAAO,KAAK,UAAU;AACxC,WAAO,mBAAmB,IAAI,KAAK,GAAG,OAAO,MAAM,KAAK,GAAG;AAAA,EAC7D;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,WAAW,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,IAAI,CAAC,KAAK,KAAK,OAAO,KAAK,EAAE,CAAC;AAAA,EAChG;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,OAAO,MAA0B;AAEzC,WAAO,cAAc,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAC5C;AAAA,EAEU,WAAW,MAA8B;AAEjD,WAAO,qBAAqB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACnD;AAAA,EAEU,UAAU,MAA6B;AAC/C,QAAI,KAAK,UAAU,MAAM;AACvB,aAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,IACvG;AAEA,WAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC,SAAS,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAC3G;AAAA,EAEU,QAAQ,MAA2B;AAC3C,WAAO,aAAa,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,MAAM,CAAC;AAAA,EAC3E;AAAA;AAAA;AAAA,EAMU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC,KAAK,KAAK,MAAM;AAAA,EACvD;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,WAAW,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACzC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA;AAAA;AAAA,EAMU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACtC;AAAA,EAEU,MAAM,MAAyB;AACvC,WAAO,SAAS,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACvC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,kBAAkB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAChD;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,oBAAoB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAClD;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,oBAAoB,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EAClD;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAChC,WAAO,sBAAsB,GAAG;AAAA,EAClC;AAAA,EAEU,iBAAiB,MAAoC;AAC7D,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAIhC,UAAM,UAAU,sBAAsB,GAAG;AACzC,WAAO,oBAAoB,OAAO,UAAU,GAAG;AAAA,EACjD;AAAA,EAEU,aAAa,MAAgC;AACrD,UAAM,MAAM,KAAK,OAAO,KAAK,GAAG;AAChC,WAAO,UAAU,GAAG;AAAA,EACtB;AAAA,EAEU,SAAS,MAA4B;AAC7C,UAAM,OAAO,KAAK,OAAO,KAAK,IAAI;AAClC,UAAM,KAAK,KAAK,OAAO,KAAK,EAAE;AAC9B,UAAM,OAAO,KAAK,oBAAoB,KAAK,SAAS;AACpD,WAAO,YAAY,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,EACzC;AAAA,EAEU,QAAQ,MAA2B;AAC3C,UAAM,SAAS,KAAK,OAAO,KAAK,MAAM;AACtC,UAAM,QAAQ,KAAK,OAAO,KAAK,KAAK;AACpC,UAAM,OAAO,KAAK,oBAAoB,KAAK,SAAS;AACpD,WAAO,WAAW,IAAI,KAAK,KAAK,KAAK,MAAM;AAAA,EAC7C;AAAA,EAEU,WAAW,MAA8B;AAEjD,UAAM,cAAc,KAAK,kBAAkB,KAAK,MAAM;AACtD,WAAO,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC,MAAM,WAAW;AAAA,EAC5D;AAAA,EAEQ,oBAAoB,KAA4B;AACtD,YAAQ,KAAK;AAAA,MACX,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,IACX;AAAA,EACF;AAAA,EAEQ,kBAAkB,QAAwB;AAEhD,WAAO;AAAA,EACT;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO;AACnC,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,WAAO,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,EACpE;AAAA,EAEU,OAAO,MAA0B;AACzC,WAAO,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC;AAAA,EACvE;AAAA,EAEU,GAAG,MAAsB;AACjC,WAAO,aAAa,KAAK,OAAO,KAAK,SAAS,CAAC;AAAA,EACjD;AAAA,EAEU,OAAO,MAA0B;AACzC,UAAM,QAAQ,KAAK,MAChB,IAAI,CAAC,MAAM,QAAQ,KAAK,OAAO,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,IAAI,CAAC,EAAE,EACpE,KAAK,GAAG;AACX,WAAO,QAAQ,KAAK,SAAS,KAAK,OAAO,KAAK,IAAI,CAAC;AAAA,EACrD;AAAA,EAEU,GAAG,MAAsB;AACjC,UAAM,UAAU,KAAK,QAAQ,OAAO,KAAK,OAAO,KAAK,IAAI,IAAI;AAC7D,WAAO,aAAa,KAAK,OAAO,KAAK,SAAS,CAAC,SAAS,KAAK,OAAO,KAAK,IAAI,CAAC,SAAS,OAAO;AAAA,EAChG;AAAA;AAAA;AAAA,EAMU,MAAM,MAAyB;AACvC,QAAI,KAAK,OAAO,MAAM;AACpB,YAAM,WAAW,KAAK,WAAW,cAAc;AAC/C,aAAO,SAAS,QAAQ,GAAG,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,IAClD;AACA,WAAO;AAAA,EACT;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA,EAEU,IAAI,MAAuB;AACnC,WAAO,OAAO,KAAK,OAAO,KAAK,GAAG,CAAC;AAAA,EACrC;AAAA;AAAA;AAAA,EAMU,SAAS,MAA4B;AAC7C,QAAI,KAAK,KAAK,WAAW,EAAG,OAAM,IAAI,MAAM,0CAA0C;AACtF,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,UAAM,SAAS,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,IAAI;AACpE,WAAO,+BAA+B,MAAM;AAAA,EAC9C;AAAA,EAEU,MAAM,MAAyB;AACvC,QAAI,KAAK,KAAK,WAAW,EAAG,OAAM,IAAI,MAAM,uCAAuC;AACnF,QAAI,KAAK,KAAK,WAAW,EAAG,QAAO,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;AAE3D,UAAM,SAAS,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,IAAI;AACpE,WAAO,+BAA+B,MAAM;AAAA,EAC9C;AAAA,EAEU,OAAO,OAA2B;AAC1C,WAAO;AAAA,EACT;AAAA,EAEU,SAAiB;AACzB,WAAO;AAAA,EACT;AAAA,EAEU,KAAK,MAAwB;AACrC,WAAO,QAAQ,KAAK,OAAO,KAAK,MAAM,CAAC,OAAO,KAAK,eAAe,KAAK,UAAU,CAAC;AAAA,EACpF;AAAA;AAAA;AAAA,EAMU,OAAO,MAA0B;AACzC,UAAM,KAAK,KAAK,eAAe,KAAK,EAAE;AACtC,QAAI,OAAO,KAAK,iBAAiB,KAAK,IAAI;AAG1C,QAAI,KAAK,GAAG,SAAS,eAAe,KAAK,SAAS,GAAG;AACnD,cAAQ;AAAA,IACV;AAEA,WAAO,GAAG,EAAE,UAAU,IAAI;AAAA,EAC5B;AAAA,EAEQ,eAAe,IAA8B;AACnD,YAAQ,GAAG,MAAM;AAAA,MACf,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO,SAAS,GAAG,CAAC;AAAA,MACtB,KAAK,OAAO;AACV,cAAM,SAAS,GAAG,UAAU;AAC5B,cAAM,MAAM,GAAG,WAAW,OAAO,KAAK,KAAK,OAAO,GAAG,OAAO,CAAC,KAAK;AAClE,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC,KAAK,MAAM,GAAG,GAAG;AAAA,MACvD;AAAA,MACA,KAAK,QAAQ;AACX,cAAM,SAAS,GAAG,UAAU;AAC5B,cAAM,MAAM,GAAG,WAAW,OAAO,KAAK,KAAK,OAAO,GAAG,OAAO,CAAC,KAAK;AAClE,eAAO,QAAQ,KAAK,OAAO,GAAG,MAAM,CAAC,KAAK,MAAM,GAAG,GAAG;AAAA,MACxD;AAAA,MACA,KAAK;AACH,eAAO,eAAe,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MAC9C,KAAK;AACH,eAAO,cAAc,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MAC7C,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,GAAG,UAAU,OAAO,SAAS,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM;AAAA,MAClE,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,MACtC,KAAK;AACH,eAAO,OAAO,KAAK,OAAO,GAAG,MAAM,CAAC;AAAA,IACxC;AAAA,EACF;AAAA,EAEQ,iBAAiB,MAAkC;AACzD,UAAM,QAAkB,CAAC;AACzB,QAAI,KAAK,eAAe,QAAQ,KAAK,YAAY,SAAS,GAAG;AAC3D,YAAM,KAAK,gBAAgB,KAAK,YAAY,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;AAAA,IACrF;AACA,QAAI,KAAK,WAAW,QAAQ,KAAK,QAAQ,SAAS,GAAG;AACnD,YAAM,aAAa,KAAK,QAAQ;AAAA,QAC9B,CAAC,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,OAAO,IAAI,CAAC,GAAG,OAAO,OAAO,IAAI,GAAG,KAAK,EAAE;AAAA,MACtE;AACA,YAAM,KAAK,YAAY,WAAW,KAAK,IAAI,CAAC,EAAE;AAAA,IAChD;AACA,WAAO,MAAM,KAAK,GAAG;AAAA,EACvB;AAAA;AAAA;AAAA,EAMU,SAAS,MAA4B;AAC7C,WAAO,IAAI,KAAK,YAAY,KAAK,QAAQ,CAAC;AAAA,EAC5C;AAAA;AAGF;",
5
5
  "names": []
6
6
  }