kenikool-ui 1.0.0

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 (196) hide show
  1. package/README.md +144 -0
  2. package/dist/cdn-auto-register.js +188 -0
  3. package/dist/tsconfig.build.tsbuildinfo +1 -0
  4. package/dist/types/components/advanced/datepicker.d.ts +86 -0
  5. package/dist/types/components/advanced/datepicker.d.ts.map +1 -0
  6. package/dist/types/components/advanced/datepicker.stories.d.ts +48 -0
  7. package/dist/types/components/advanced/datepicker.stories.d.ts.map +1 -0
  8. package/dist/types/components/advanced/fileupload.d.ts +75 -0
  9. package/dist/types/components/advanced/fileupload.d.ts.map +1 -0
  10. package/dist/types/components/advanced/fileupload.stories.d.ts +46 -0
  11. package/dist/types/components/advanced/fileupload.stories.d.ts.map +1 -0
  12. package/dist/types/components/advanced/index.d.ts +4 -0
  13. package/dist/types/components/advanced/index.d.ts.map +1 -0
  14. package/dist/types/components/data/avatar.d.ts +94 -0
  15. package/dist/types/components/data/avatar.d.ts.map +1 -0
  16. package/dist/types/components/data/avatar.stories.d.ts +51 -0
  17. package/dist/types/components/data/avatar.stories.d.ts.map +1 -0
  18. package/dist/types/components/data/badge.d.ts +69 -0
  19. package/dist/types/components/data/badge.d.ts.map +1 -0
  20. package/dist/types/components/data/badge.stories.d.ts +48 -0
  21. package/dist/types/components/data/badge.stories.d.ts.map +1 -0
  22. package/dist/types/components/data/index.d.ts +5 -0
  23. package/dist/types/components/data/index.d.ts.map +1 -0
  24. package/dist/types/components/data/list.d.ts +66 -0
  25. package/dist/types/components/data/list.d.ts.map +1 -0
  26. package/dist/types/components/data/list.stories.d.ts +38 -0
  27. package/dist/types/components/data/list.stories.d.ts.map +1 -0
  28. package/dist/types/components/data/table.d.ts +70 -0
  29. package/dist/types/components/data/table.d.ts.map +1 -0
  30. package/dist/types/components/data/table.stories.d.ts +42 -0
  31. package/dist/types/components/data/table.stories.d.ts.map +1 -0
  32. package/dist/types/components/feedback/alert.d.ts +78 -0
  33. package/dist/types/components/feedback/alert.d.ts.map +1 -0
  34. package/dist/types/components/feedback/alert.stories.d.ts +35 -0
  35. package/dist/types/components/feedback/alert.stories.d.ts.map +1 -0
  36. package/dist/types/components/feedback/index.d.ts +5 -0
  37. package/dist/types/components/feedback/index.d.ts.map +1 -0
  38. package/dist/types/components/feedback/loading.d.ts +87 -0
  39. package/dist/types/components/feedback/loading.d.ts.map +1 -0
  40. package/dist/types/components/feedback/loading.stories.d.ts +48 -0
  41. package/dist/types/components/feedback/loading.stories.d.ts.map +1 -0
  42. package/dist/types/components/feedback/modal.d.ts +93 -0
  43. package/dist/types/components/feedback/modal.d.ts.map +1 -0
  44. package/dist/types/components/feedback/modal.stories.d.ts +37 -0
  45. package/dist/types/components/feedback/modal.stories.d.ts.map +1 -0
  46. package/dist/types/components/feedback/toast.d.ts +102 -0
  47. package/dist/types/components/feedback/toast.d.ts.map +1 -0
  48. package/dist/types/components/feedback/toast.stories.d.ts +51 -0
  49. package/dist/types/components/feedback/toast.stories.d.ts.map +1 -0
  50. package/dist/types/components/forms/button.d.ts +64 -0
  51. package/dist/types/components/forms/button.d.ts.map +1 -0
  52. package/dist/types/components/forms/button.stories.d.ts +52 -0
  53. package/dist/types/components/forms/button.stories.d.ts.map +1 -0
  54. package/dist/types/components/forms/checkbox.d.ts +51 -0
  55. package/dist/types/components/forms/checkbox.d.ts.map +1 -0
  56. package/dist/types/components/forms/checkbox.stories.d.ts +31 -0
  57. package/dist/types/components/forms/checkbox.stories.d.ts.map +1 -0
  58. package/dist/types/components/forms/index.d.ts +6 -0
  59. package/dist/types/components/forms/index.d.ts.map +1 -0
  60. package/dist/types/components/forms/input.d.ts +66 -0
  61. package/dist/types/components/forms/input.d.ts.map +1 -0
  62. package/dist/types/components/forms/input.stories.d.ts +49 -0
  63. package/dist/types/components/forms/input.stories.d.ts.map +1 -0
  64. package/dist/types/components/forms/radio.d.ts +51 -0
  65. package/dist/types/components/forms/radio.d.ts.map +1 -0
  66. package/dist/types/components/forms/radio.stories.d.ts +41 -0
  67. package/dist/types/components/forms/radio.stories.d.ts.map +1 -0
  68. package/dist/types/components/forms/select.d.ts +67 -0
  69. package/dist/types/components/forms/select.d.ts.map +1 -0
  70. package/dist/types/components/forms/select.stories.d.ts +42 -0
  71. package/dist/types/components/forms/select.stories.d.ts.map +1 -0
  72. package/dist/types/components/layout/card.d.ts +66 -0
  73. package/dist/types/components/layout/card.d.ts.map +1 -0
  74. package/dist/types/components/layout/card.example.d.ts +5 -0
  75. package/dist/types/components/layout/card.example.d.ts.map +1 -0
  76. package/dist/types/components/layout/card.stories.d.ts +40 -0
  77. package/dist/types/components/layout/card.stories.d.ts.map +1 -0
  78. package/dist/types/components/layout/container.d.ts +84 -0
  79. package/dist/types/components/layout/container.d.ts.map +1 -0
  80. package/dist/types/components/layout/container.stories.d.ts +40 -0
  81. package/dist/types/components/layout/container.stories.d.ts.map +1 -0
  82. package/dist/types/components/layout/grid.d.ts +76 -0
  83. package/dist/types/components/layout/grid.d.ts.map +1 -0
  84. package/dist/types/components/layout/grid.example.d.ts +11 -0
  85. package/dist/types/components/layout/grid.example.d.ts.map +1 -0
  86. package/dist/types/components/layout/grid.stories.d.ts +38 -0
  87. package/dist/types/components/layout/grid.stories.d.ts.map +1 -0
  88. package/dist/types/components/layout/index.d.ts +5 -0
  89. package/dist/types/components/layout/index.d.ts.map +1 -0
  90. package/dist/types/components/layout/stack.d.ts +82 -0
  91. package/dist/types/components/layout/stack.d.ts.map +1 -0
  92. package/dist/types/components/layout/stack.stories.d.ts +44 -0
  93. package/dist/types/components/layout/stack.stories.d.ts.map +1 -0
  94. package/dist/types/components/navigation/breadcrumbs.d.ts +62 -0
  95. package/dist/types/components/navigation/breadcrumbs.d.ts.map +1 -0
  96. package/dist/types/components/navigation/breadcrumbs.stories.d.ts +32 -0
  97. package/dist/types/components/navigation/breadcrumbs.stories.d.ts.map +1 -0
  98. package/dist/types/components/navigation/index.d.ts +4 -0
  99. package/dist/types/components/navigation/index.d.ts.map +1 -0
  100. package/dist/types/components/navigation/navbar.d.ts +66 -0
  101. package/dist/types/components/navigation/navbar.d.ts.map +1 -0
  102. package/dist/types/components/navigation/navbar.stories.d.ts +37 -0
  103. package/dist/types/components/navigation/navbar.stories.d.ts.map +1 -0
  104. package/dist/types/components/navigation/sidebar.d.ts +72 -0
  105. package/dist/types/components/navigation/sidebar.d.ts.map +1 -0
  106. package/dist/types/components/navigation/sidebar.stories.d.ts +43 -0
  107. package/dist/types/components/navigation/sidebar.stories.d.ts.map +1 -0
  108. package/dist/types/components/typography/index.d.ts +3 -0
  109. package/dist/types/components/typography/index.d.ts.map +1 -0
  110. package/dist/types/components/typography/text.d.ts +111 -0
  111. package/dist/types/components/typography/text.d.ts.map +1 -0
  112. package/dist/types/components/typography/text.stories.d.ts +48 -0
  113. package/dist/types/components/typography/text.stories.d.ts.map +1 -0
  114. package/dist/types/core/base-component.d.ts +178 -0
  115. package/dist/types/core/base-component.d.ts.map +1 -0
  116. package/dist/types/core/base-component.example.d.ts +24 -0
  117. package/dist/types/core/base-component.example.d.ts.map +1 -0
  118. package/dist/types/core/registry.d.ts +88 -0
  119. package/dist/types/core/registry.d.ts.map +1 -0
  120. package/dist/types/core/registry.example.d.ts +42 -0
  121. package/dist/types/core/registry.example.d.ts.map +1 -0
  122. package/dist/types/core/smart-defaults.d.ts +45 -0
  123. package/dist/types/core/smart-defaults.d.ts.map +1 -0
  124. package/dist/types/core/smart-defaults.example.d.ts +20 -0
  125. package/dist/types/core/smart-defaults.example.d.ts.map +1 -0
  126. package/dist/types/core/styles-parser.d.ts +107 -0
  127. package/dist/types/core/styles-parser.d.ts.map +1 -0
  128. package/dist/types/core/styles-parser.example.d.ts +10 -0
  129. package/dist/types/core/styles-parser.example.d.ts.map +1 -0
  130. package/dist/types/core/theme-system.d.ts +91 -0
  131. package/dist/types/core/theme-system.d.ts.map +1 -0
  132. package/dist/types/index.d.ts +24 -0
  133. package/dist/types/index.d.ts.map +1 -0
  134. package/dist/types/themes/built-in-themes.d.ts +32 -0
  135. package/dist/types/themes/built-in-themes.d.ts.map +1 -0
  136. package/dist/types/themes/index.d.ts +5 -0
  137. package/dist/types/themes/index.d.ts.map +1 -0
  138. package/dist/types/types/components.d.ts +549 -0
  139. package/dist/types/types/components.d.ts.map +1 -0
  140. package/dist/types/types/index.d.ts +379 -0
  141. package/dist/types/types/index.d.ts.map +1 -0
  142. package/dist/types/types/theme-config.d.ts +674 -0
  143. package/dist/types/types/theme-config.d.ts.map +1 -0
  144. package/dist/types/types/themes.d.ts +325 -0
  145. package/dist/types/types/themes.d.ts.map +1 -0
  146. package/dist/types/types/utils.d.ts +293 -0
  147. package/dist/types/types/utils.d.ts.map +1 -0
  148. package/dist/types/types/wrappers.d.ts +335 -0
  149. package/dist/types/types/wrappers.d.ts.map +1 -0
  150. package/dist/types/utils/accessibility.d.ts +345 -0
  151. package/dist/types/utils/accessibility.d.ts.map +1 -0
  152. package/dist/types/utils/accessibility.example.d.ts +50 -0
  153. package/dist/types/utils/accessibility.example.d.ts.map +1 -0
  154. package/dist/types/utils/css-variables.d.ts +278 -0
  155. package/dist/types/utils/css-variables.d.ts.map +1 -0
  156. package/dist/types/utils/icon-system.d.ts +79 -0
  157. package/dist/types/utils/icon-system.d.ts.map +1 -0
  158. package/dist/types/utils/index.d.ts +9 -0
  159. package/dist/types/utils/index.d.ts.map +1 -0
  160. package/dist/types/utils/performance.d.ts +141 -0
  161. package/dist/types/utils/performance.d.ts.map +1 -0
  162. package/dist/types/utils/security.d.ts +109 -0
  163. package/dist/types/utils/security.d.ts.map +1 -0
  164. package/dist/types/utils/validation.d.ts +84 -0
  165. package/dist/types/utils/validation.d.ts.map +1 -0
  166. package/dist/types/wrappers/angular/components.d.ts +2 -0
  167. package/dist/types/wrappers/angular/components.d.ts.map +1 -0
  168. package/dist/types/wrappers/angular/index.d.ts +6 -0
  169. package/dist/types/wrappers/angular/index.d.ts.map +1 -0
  170. package/dist/types/wrappers/angular/module.d.ts +2 -0
  171. package/dist/types/wrappers/angular/module.d.ts.map +1 -0
  172. package/dist/types/wrappers/angular/services.d.ts +2 -0
  173. package/dist/types/wrappers/angular/services.d.ts.map +1 -0
  174. package/dist/types/wrappers/angular/types.d.ts +44 -0
  175. package/dist/types/wrappers/angular/types.d.ts.map +1 -0
  176. package/dist/types/wrappers/react/components.d.ts +2 -0
  177. package/dist/types/wrappers/react/components.d.ts.map +1 -0
  178. package/dist/types/wrappers/react/hooks.d.ts +2 -0
  179. package/dist/types/wrappers/react/hooks.d.ts.map +1 -0
  180. package/dist/types/wrappers/react/index.d.ts +6 -0
  181. package/dist/types/wrappers/react/index.d.ts.map +1 -0
  182. package/dist/types/wrappers/react/provider.d.ts +2 -0
  183. package/dist/types/wrappers/react/provider.d.ts.map +1 -0
  184. package/dist/types/wrappers/react/types.d.ts +31 -0
  185. package/dist/types/wrappers/react/types.d.ts.map +1 -0
  186. package/dist/types/wrappers/vue/components.d.ts +2 -0
  187. package/dist/types/wrappers/vue/components.d.ts.map +1 -0
  188. package/dist/types/wrappers/vue/composables.d.ts +2 -0
  189. package/dist/types/wrappers/vue/composables.d.ts.map +1 -0
  190. package/dist/types/wrappers/vue/index.d.ts +6 -0
  191. package/dist/types/wrappers/vue/index.d.ts.map +1 -0
  192. package/dist/types/wrappers/vue/plugin.d.ts +2 -0
  193. package/dist/types/wrappers/vue/plugin.d.ts.map +1 -0
  194. package/dist/types/wrappers/vue/types.d.ts +38 -0
  195. package/dist/types/wrappers/vue/types.d.ts.map +1 -0
  196. package/package.json +138 -0
@@ -0,0 +1,325 @@
1
+ export interface ThemeDefinition {
2
+ meta: ThemeMeta;
3
+ colors: ThemeColors;
4
+ typography: ThemeTypography;
5
+ spacing: ThemeSpacing;
6
+ borderRadius: ThemeBorderRadius;
7
+ shadows: ThemeShadows;
8
+ transitions: ThemeTransitions;
9
+ breakpoints: ThemeBreakpoints;
10
+ }
11
+ export interface ThemeMeta {
12
+ name: string;
13
+ displayName: string;
14
+ version: string;
15
+ description: string;
16
+ author: string;
17
+ tags: string[];
18
+ preview?: string;
19
+ }
20
+ export interface ThemeColors {
21
+ primary: ColorPalette;
22
+ secondary: ColorPalette;
23
+ success: ColorPalette;
24
+ warning: ColorPalette;
25
+ error: ColorPalette;
26
+ info: ColorPalette;
27
+ neutral: ColorPalette;
28
+ background: string;
29
+ surface: string;
30
+ surfaceVariant: string;
31
+ surfaceHover: string;
32
+ surfaceActive: string;
33
+ text: string;
34
+ textMuted: string;
35
+ textInverse: string;
36
+ onPrimary: string;
37
+ onSecondary: string;
38
+ onSurface: string;
39
+ onBackground: string;
40
+ border: string;
41
+ borderVariant: string;
42
+ borderHover: string;
43
+ borderFocus: string;
44
+ hover: string;
45
+ focus: string;
46
+ active: string;
47
+ disabled: string;
48
+ overlay: string;
49
+ backdrop: string;
50
+ }
51
+ export interface ColorPalette {
52
+ 50: string;
53
+ 100: string;
54
+ 200: string;
55
+ 300: string;
56
+ 400: string;
57
+ 500: string;
58
+ 600: string;
59
+ 700: string;
60
+ 800: string;
61
+ 900: string;
62
+ 950?: string;
63
+ }
64
+ export interface ThemeTypography {
65
+ fontFamily: FontFamilyScale;
66
+ fontSize: FontSizeScale;
67
+ fontWeight: FontWeightScale;
68
+ lineHeight: LineHeightScale;
69
+ letterSpacing: LetterSpacingScale;
70
+ }
71
+ export interface FontFamilyScale {
72
+ sans: string[];
73
+ serif: string[];
74
+ mono: string[];
75
+ display?: string[];
76
+ }
77
+ export interface FontSizeScale {
78
+ xs: string;
79
+ sm: string;
80
+ base: string;
81
+ lg: string;
82
+ xl: string;
83
+ '2xl': string;
84
+ '3xl': string;
85
+ '4xl': string;
86
+ '5xl': string;
87
+ '6xl': string;
88
+ '7xl': string;
89
+ '8xl': string;
90
+ '9xl': string;
91
+ }
92
+ export interface FontWeightScale {
93
+ thin: number;
94
+ extralight: number;
95
+ light: number;
96
+ normal: number;
97
+ medium: number;
98
+ semibold: number;
99
+ bold: number;
100
+ extrabold: number;
101
+ black: number;
102
+ }
103
+ export interface LineHeightScale {
104
+ none: number;
105
+ tight: number;
106
+ snug: number;
107
+ normal: number;
108
+ relaxed: number;
109
+ loose: number;
110
+ }
111
+ export interface LetterSpacingScale {
112
+ tighter: string;
113
+ tight: string;
114
+ normal: string;
115
+ wide: string;
116
+ wider: string;
117
+ widest: string;
118
+ }
119
+ export interface ThemeSpacing {
120
+ 0: string;
121
+ px: string;
122
+ 0.5: string;
123
+ 1: string;
124
+ 1.5: string;
125
+ 2: string;
126
+ 2.5: string;
127
+ 3: string;
128
+ 3.5: string;
129
+ 4: string;
130
+ 5: string;
131
+ 6: string;
132
+ 7: string;
133
+ 8: string;
134
+ 9: string;
135
+ 10: string;
136
+ 11: string;
137
+ 12: string;
138
+ 14: string;
139
+ 16: string;
140
+ 20: string;
141
+ 24: string;
142
+ 28: string;
143
+ 32: string;
144
+ 36: string;
145
+ 40: string;
146
+ 44: string;
147
+ 48: string;
148
+ 52: string;
149
+ 56: string;
150
+ 60: string;
151
+ 64: string;
152
+ 72: string;
153
+ 80: string;
154
+ 96: string;
155
+ }
156
+ export interface ThemeBorderRadius {
157
+ none: string;
158
+ sm: string;
159
+ base: string;
160
+ md: string;
161
+ lg: string;
162
+ xl: string;
163
+ '2xl': string;
164
+ '3xl': string;
165
+ full: string;
166
+ }
167
+ export interface ThemeShadows {
168
+ none: string;
169
+ sm: string;
170
+ base: string;
171
+ md: string;
172
+ lg: string;
173
+ xl: string;
174
+ '2xl': string;
175
+ inner: string;
176
+ }
177
+ export interface ThemeTransitions {
178
+ none: string;
179
+ all: string;
180
+ fast: string;
181
+ normal: string;
182
+ slow: string;
183
+ colors: string;
184
+ opacity: string;
185
+ shadow: string;
186
+ transform: string;
187
+ }
188
+ export interface ThemeBreakpoints {
189
+ xs: string;
190
+ sm: string;
191
+ md: string;
192
+ lg: string;
193
+ xl: string;
194
+ '2xl': string;
195
+ }
196
+ export interface ComponentThemeOverrides {
197
+ [componentName: string]: ComponentThemeConfig;
198
+ }
199
+ export interface ComponentThemeConfig {
200
+ base?: CSSProperties;
201
+ variants?: {
202
+ [variantName: string]: CSSProperties;
203
+ };
204
+ sizes?: {
205
+ [sizeName: string]: CSSProperties;
206
+ };
207
+ states?: {
208
+ [stateName: string]: CSSProperties;
209
+ };
210
+ }
211
+ export interface ThemeSystem {
212
+ registerTheme(theme: ThemeDefinition): void;
213
+ unregisterTheme(name: string): void;
214
+ setTheme(name: string, container?: Element): void;
215
+ getTheme(name?: string): ThemeDefinition | undefined;
216
+ getCurrentTheme(): string;
217
+ getAvailableThemes(): string[];
218
+ generateCSSVariables(theme: ThemeDefinition): Record<string, string>;
219
+ applyThemeToElement(element: Element, themeName: string): void;
220
+ removeThemeFromElement(element: Element): void;
221
+ getColorValue(colorPath: string, theme?: string): string;
222
+ generateColorPalette(baseColor: string): ColorPalette;
223
+ getContrastColor(backgroundColor: string): string;
224
+ onThemeChange(callback: (oldTheme: string, newTheme: string) => void): void;
225
+ offThemeChange(callback: (oldTheme: string, newTheme: string) => void): void;
226
+ }
227
+ export type BuiltInTheme = 'modern' | 'classic' | 'bold' | 'soft' | 'dark';
228
+ export interface BuiltInThemes {
229
+ modern: ThemeDefinition;
230
+ classic: ThemeDefinition;
231
+ bold: ThemeDefinition;
232
+ soft: ThemeDefinition;
233
+ dark: ThemeDefinition;
234
+ }
235
+ export interface ThemeBuilder {
236
+ setMeta(meta: Partial<ThemeMeta>): ThemeBuilder;
237
+ setPrimaryColor(color: string): ThemeBuilder;
238
+ setSecondaryColor(color: string): ThemeBuilder;
239
+ setSemanticColors(colors: Partial<Pick<ThemeColors, 'success' | 'warning' | 'error' | 'info'>>): ThemeBuilder;
240
+ setNeutralPalette(palette: ColorPalette): ThemeBuilder;
241
+ setSurfaceColors(colors: Partial<Pick<ThemeColors, 'background' | 'surface' | 'surfaceVariant'>>): ThemeBuilder;
242
+ setFontFamily(family: Partial<FontFamilyScale>): ThemeBuilder;
243
+ setFontSizes(sizes: Partial<FontSizeScale>): ThemeBuilder;
244
+ setFontWeights(weights: Partial<FontWeightScale>): ThemeBuilder;
245
+ setSpacing(spacing: Partial<ThemeSpacing>): ThemeBuilder;
246
+ setBorderRadius(radius: Partial<ThemeBorderRadius>): ThemeBuilder;
247
+ setShadows(shadows: Partial<ThemeShadows>): ThemeBuilder;
248
+ setComponentTheme(component: string, config: ComponentThemeConfig): ThemeBuilder;
249
+ build(): ThemeDefinition;
250
+ }
251
+ export interface ThemeValidationResult {
252
+ valid: boolean;
253
+ errors: ThemeValidationError[];
254
+ warnings: ThemeValidationWarning[];
255
+ }
256
+ export interface ThemeValidationError {
257
+ path: string;
258
+ message: string;
259
+ code: string;
260
+ }
261
+ export interface ThemeValidationWarning {
262
+ path: string;
263
+ message: string;
264
+ code: string;
265
+ }
266
+ export interface ThemeValidator {
267
+ validate(theme: ThemeDefinition): ThemeValidationResult;
268
+ validateColors(colors: ThemeColors): ThemeValidationError[];
269
+ validateTypography(typography: ThemeTypography): ThemeValidationError[];
270
+ validateAccessibility(theme: ThemeDefinition): ThemeValidationWarning[];
271
+ }
272
+ export interface CSSProperties extends Partial<CSSStyleDeclaration> {
273
+ [key: `--${string}`]: string | number;
274
+ }
275
+ export interface ThemeContext {
276
+ theme: ThemeDefinition;
277
+ themeName: string;
278
+ setTheme: (name: string) => void;
279
+ toggleTheme: () => void;
280
+ isDark: boolean;
281
+ isLight: boolean;
282
+ }
283
+ export interface ThemeProviderProps {
284
+ theme?: string;
285
+ themes?: Record<string, ThemeDefinition>;
286
+ defaultTheme?: string;
287
+ storageKey?: string;
288
+ children?: HTMLElement[];
289
+ }
290
+ export interface ThemeProvider {
291
+ provide(props: ThemeProviderProps): void;
292
+ getContext(): ThemeContext;
293
+ updateTheme(name: string): void;
294
+ addTheme(name: string, theme: ThemeDefinition): void;
295
+ removeTheme(name: string): void;
296
+ }
297
+ export interface ThemeUtils {
298
+ hexToRgb(hex: string): {
299
+ r: number;
300
+ g: number;
301
+ b: number;
302
+ };
303
+ rgbToHex(r: number, g: number, b: number): string;
304
+ hslToRgb(h: number, s: number, l: number): {
305
+ r: number;
306
+ g: number;
307
+ b: number;
308
+ };
309
+ rgbToHsl(r: number, g: number, b: number): {
310
+ h: number;
311
+ s: number;
312
+ l: number;
313
+ };
314
+ getContrastRatio(color1: string, color2: string): number;
315
+ isAccessible(foreground: string, background: string, level?: 'AA' | 'AAA'): boolean;
316
+ generateShades(baseColor: string, steps?: number): string[];
317
+ generateTints(baseColor: string, steps?: number): string[];
318
+ generateAnalogous(baseColor: string, count?: number): string[];
319
+ generateComplementary(baseColor: string): string;
320
+ generateTriadic(baseColor: string): [string, string];
321
+ mergeThemes(base: ThemeDefinition, override: Partial<ThemeDefinition>): ThemeDefinition;
322
+ extractCSSVariables(theme: ThemeDefinition): Record<string, string>;
323
+ generateThemeCSS(theme: ThemeDefinition): string;
324
+ }
325
+ //# sourceMappingURL=themes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../../src/types/themes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,293 @@
1
+ export interface PerformanceManager {
2
+ scheduleUpdate(component: HTMLElement): void;
3
+ flushUpdates(): void;
4
+ debounce<T extends (...args: any[]) => void>(func: T, wait: number): (...args: Parameters<T>) => void;
5
+ throttle<T extends (...args: any[]) => void>(func: T, wait: number): (...args: Parameters<T>) => void;
6
+ observeElement(element: HTMLElement, callback: (entry: IntersectionObserverEntry) => void): void;
7
+ unobserveElement(element: HTMLElement): void;
8
+ cleanup(component: HTMLElement): void;
9
+ getMemoryUsage(): PerformanceMetrics;
10
+ }
11
+ export interface PerformanceMetrics {
12
+ renderTime: number;
13
+ updateTime: number;
14
+ memoryUsage: number;
15
+ domNodes: number;
16
+ eventListeners: number;
17
+ }
18
+ export interface AccessibilityManager {
19
+ setAriaAttributes(element: HTMLElement, attributes: AriaAttributes): void;
20
+ getAriaAttributes(element: HTMLElement): AriaAttributes;
21
+ trapFocus(container: HTMLElement): FocusTrap;
22
+ restoreFocus(element?: HTMLElement): void;
23
+ getFocusableElements(container: HTMLElement): HTMLElement[];
24
+ addKeyboardHandler(element: HTMLElement, config: KeyboardConfig): void;
25
+ removeKeyboardHandler(element: HTMLElement): void;
26
+ announce(message: string, priority?: 'polite' | 'assertive'): void;
27
+ setLiveRegion(element: HTMLElement, type: 'polite' | 'assertive' | 'off'): void;
28
+ checkContrast(foreground: string, background: string): ContrastResult;
29
+ getAccessibleColor(color: string, background: string, level?: 'AA' | 'AAA'): string;
30
+ }
31
+ export interface AriaAttributes {
32
+ role?: string;
33
+ label?: string;
34
+ labelledby?: string;
35
+ describedby?: string;
36
+ expanded?: boolean;
37
+ selected?: boolean;
38
+ checked?: boolean;
39
+ disabled?: boolean;
40
+ hidden?: boolean;
41
+ modal?: boolean;
42
+ live?: 'polite' | 'assertive' | 'off';
43
+ atomic?: boolean;
44
+ relevant?: string;
45
+ busy?: boolean;
46
+ controls?: string;
47
+ owns?: string;
48
+ flowto?: string;
49
+ activedescendant?: string;
50
+ autocomplete?: string;
51
+ haspopup?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
52
+ invalid?: boolean | 'grammar' | 'spelling';
53
+ multiline?: boolean;
54
+ multiselectable?: boolean;
55
+ orientation?: 'horizontal' | 'vertical';
56
+ readonly?: boolean;
57
+ required?: boolean;
58
+ sort?: 'ascending' | 'descending' | 'none' | 'other';
59
+ valuemax?: number;
60
+ valuemin?: number;
61
+ valuenow?: number;
62
+ valuetext?: string;
63
+ level?: number;
64
+ posinset?: number;
65
+ setsize?: number;
66
+ rowcount?: number;
67
+ rowindex?: number;
68
+ rowspan?: number;
69
+ colcount?: number;
70
+ colindex?: number;
71
+ colspan?: number;
72
+ }
73
+ export interface FocusTrap {
74
+ activate(): void;
75
+ deactivate(): void;
76
+ pause(): void;
77
+ unpause(): void;
78
+ }
79
+ export interface KeyboardConfig {
80
+ keys: string[];
81
+ handler: (event: KeyboardEvent, element: HTMLElement) => void;
82
+ preventDefault?: boolean;
83
+ stopPropagation?: boolean;
84
+ capture?: boolean;
85
+ }
86
+ export interface ContrastResult {
87
+ ratio: number;
88
+ level: 'AAA' | 'AA' | 'A' | 'FAIL';
89
+ accessible: boolean;
90
+ }
91
+ export interface ValidationManager {
92
+ addRule(name: string, rule: ValidationRule): void;
93
+ removeRule(name: string): void;
94
+ validate(value: any, rules: string[] | ValidationRule[]): ValidationResult;
95
+ required(value: any): boolean;
96
+ minLength(value: string, min: number): boolean;
97
+ maxLength(value: string, max: number): boolean;
98
+ pattern(value: string, pattern: RegExp): boolean;
99
+ email(value: string): boolean;
100
+ url(value: string): boolean;
101
+ number(value: any): boolean;
102
+ integer(value: any): boolean;
103
+ min(value: number, min: number): boolean;
104
+ max(value: number, max: number): boolean;
105
+ custom(value: any, validator: (value: any) => boolean | string): boolean | string;
106
+ }
107
+ export interface ValidationRule {
108
+ type: 'required' | 'minLength' | 'maxLength' | 'pattern' | 'email' | 'url' | 'number' | 'integer' | 'min' | 'max' | 'custom';
109
+ value?: any;
110
+ message: string;
111
+ validator?: (value: any) => boolean | string;
112
+ }
113
+ export interface ValidationResult {
114
+ valid: boolean;
115
+ errors: ValidationError[];
116
+ }
117
+ export interface ValidationError {
118
+ field?: string;
119
+ rule: string;
120
+ message: string;
121
+ value?: any;
122
+ }
123
+ export interface EventManager {
124
+ delegate(container: HTMLElement, selector: string, event: string, handler: EventListener): void;
125
+ undelegate(container: HTMLElement, selector: string, event: string, handler: EventListener): void;
126
+ emit(element: HTMLElement, eventName: string, detail?: any): boolean;
127
+ on(element: HTMLElement, eventName: string, handler: EventListener): void;
128
+ off(element: HTMLElement, eventName: string, handler: EventListener): void;
129
+ once(element: HTMLElement, eventName: string, handler: EventListener): void;
130
+ preventDefault(event: Event): void;
131
+ stopPropagation(event: Event): void;
132
+ stopImmediatePropagation(event: Event): void;
133
+ addTouchSupport(element: HTMLElement, config: TouchConfig): void;
134
+ removeTouchSupport(element: HTMLElement): void;
135
+ }
136
+ export interface TouchConfig {
137
+ swipe?: {
138
+ threshold?: number;
139
+ onSwipeLeft?: (event: TouchEvent) => void;
140
+ onSwipeRight?: (event: TouchEvent) => void;
141
+ onSwipeUp?: (event: TouchEvent) => void;
142
+ onSwipeDown?: (event: TouchEvent) => void;
143
+ };
144
+ tap?: {
145
+ threshold?: number;
146
+ onTap?: (event: TouchEvent) => void;
147
+ onDoubleTap?: (event: TouchEvent) => void;
148
+ onLongPress?: (event: TouchEvent) => void;
149
+ };
150
+ pinch?: {
151
+ onPinchStart?: (event: TouchEvent) => void;
152
+ onPinchMove?: (event: TouchEvent, scale: number) => void;
153
+ onPinchEnd?: (event: TouchEvent) => void;
154
+ };
155
+ }
156
+ export interface DOMManager {
157
+ createElement<K extends keyof HTMLElementTagNameMap>(tagName: K, attributes?: Record<string, string>, children?: (HTMLElement | string)[]): HTMLElementTagNameMap[K];
158
+ query(selector: string, context?: HTMLElement): HTMLElement | null;
159
+ queryAll(selector: string, context?: HTMLElement): HTMLElement[];
160
+ closest(element: HTMLElement, selector: string): HTMLElement | null;
161
+ matches(element: HTMLElement, selector: string): boolean;
162
+ addClass(element: HTMLElement, className: string): void;
163
+ removeClass(element: HTMLElement, className: string): void;
164
+ toggleClass(element: HTMLElement, className: string, force?: boolean): void;
165
+ hasClass(element: HTMLElement, className: string): boolean;
166
+ setAttribute(element: HTMLElement, name: string, value: string): void;
167
+ getAttribute(element: HTMLElement, name: string): string | null;
168
+ removeAttribute(element: HTMLElement, name: string): void;
169
+ hasAttribute(element: HTMLElement, name: string): boolean;
170
+ setStyle(element: HTMLElement, property: string, value: string): void;
171
+ getStyle(element: HTMLElement, property: string): string;
172
+ setStyles(element: HTMLElement, styles: Record<string, string>): void;
173
+ getOffset(element: HTMLElement): {
174
+ top: number;
175
+ left: number;
176
+ };
177
+ getPosition(element: HTMLElement): {
178
+ top: number;
179
+ left: number;
180
+ };
181
+ getDimensions(element: HTMLElement): {
182
+ width: number;
183
+ height: number;
184
+ };
185
+ getBoundingRect(element: HTMLElement): DOMRect;
186
+ isVisible(element: HTMLElement): boolean;
187
+ isInViewport(element: HTMLElement): boolean;
188
+ scrollIntoView(element: HTMLElement, options?: ScrollIntoViewOptions): void;
189
+ }
190
+ export interface StorageManager {
191
+ setLocal(key: string, value: any): void;
192
+ getLocal<T = any>(key: string, defaultValue?: T): T;
193
+ removeLocal(key: string): void;
194
+ clearLocal(): void;
195
+ setSession(key: string, value: any): void;
196
+ getSession<T = any>(key: string, defaultValue?: T): T;
197
+ removeSession(key: string): void;
198
+ clearSession(): void;
199
+ setMemory(key: string, value: any): void;
200
+ getMemory<T = any>(key: string, defaultValue?: T): T;
201
+ removeMemory(key: string): void;
202
+ clearMemory(): void;
203
+ onStorageChange(callback: (event: StorageEvent) => void): void;
204
+ offStorageChange(callback: (event: StorageEvent) => void): void;
205
+ }
206
+ export interface AnimationManager {
207
+ animate(element: HTMLElement, keyframes: Keyframe[], options?: KeyframeAnimationOptions): Animation;
208
+ fadeIn(element: HTMLElement, duration?: number): Animation;
209
+ fadeOut(element: HTMLElement, duration?: number): Animation;
210
+ slideIn(element: HTMLElement, direction?: 'up' | 'down' | 'left' | 'right', duration?: number): Animation;
211
+ slideOut(element: HTMLElement, direction?: 'up' | 'down' | 'left' | 'right', duration?: number): Animation;
212
+ transition(element: HTMLElement, properties: Record<string, string>, duration?: number): Promise<void>;
213
+ pauseAnimation(animation: Animation): void;
214
+ resumeAnimation(animation: Animation): void;
215
+ cancelAnimation(animation: Animation): void;
216
+ easeInOut(t: number): number;
217
+ easeIn(t: number): number;
218
+ easeOut(t: number): number;
219
+ linear(t: number): number;
220
+ bounce(t: number): number;
221
+ }
222
+ export interface HTTPManager {
223
+ get<T = any>(url: string, options?: RequestOptions): Promise<T>;
224
+ post<T = any>(url: string, data?: any, options?: RequestOptions): Promise<T>;
225
+ put<T = any>(url: string, data?: any, options?: RequestOptions): Promise<T>;
226
+ patch<T = any>(url: string, data?: any, options?: RequestOptions): Promise<T>;
227
+ delete<T = any>(url: string, options?: RequestOptions): Promise<T>;
228
+ setBaseURL(url: string): void;
229
+ setDefaultHeaders(headers: Record<string, string>): void;
230
+ addInterceptor(interceptor: RequestInterceptor): void;
231
+ removeInterceptor(interceptor: RequestInterceptor): void;
232
+ uploadFile(url: string, file: File, options?: UploadOptions): Promise<any>;
233
+ uploadFiles(url: string, files: File[], options?: UploadOptions): Promise<any>;
234
+ }
235
+ export interface RequestOptions {
236
+ headers?: Record<string, string>;
237
+ timeout?: number;
238
+ credentials?: RequestCredentials;
239
+ cache?: RequestCache;
240
+ redirect?: RequestRedirect;
241
+ referrer?: string;
242
+ referrerPolicy?: ReferrerPolicy;
243
+ integrity?: string;
244
+ keepalive?: boolean;
245
+ signal?: AbortSignal;
246
+ }
247
+ export interface RequestInterceptor {
248
+ request?: (config: RequestOptions) => RequestOptions | Promise<RequestOptions>;
249
+ response?: (response: Response) => Response | Promise<Response>;
250
+ error?: (error: Error) => Error | Promise<Error>;
251
+ }
252
+ export interface UploadOptions extends RequestOptions {
253
+ onProgress?: (progress: UploadProgress) => void;
254
+ fieldName?: string;
255
+ additionalData?: Record<string, any>;
256
+ }
257
+ export interface UploadProgress {
258
+ loaded: number;
259
+ total: number;
260
+ percentage: number;
261
+ }
262
+ export interface UtilityFunctions {
263
+ isString(value: any): value is string;
264
+ isNumber(value: any): value is number;
265
+ isBoolean(value: any): value is boolean;
266
+ isObject(value: any): value is object;
267
+ isArray(value: any): value is any[];
268
+ isFunction(value: any): value is Function;
269
+ isNull(value: any): value is null;
270
+ isUndefined(value: any): value is undefined;
271
+ isEmpty(value: any): boolean;
272
+ clone<T>(obj: T): T;
273
+ merge<T, U>(target: T, source: U): T & U;
274
+ pick<T, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
275
+ omit<T, K extends keyof T>(obj: T, keys: K[]): Omit<T, K>;
276
+ unique<T>(array: T[]): T[];
277
+ flatten<T>(array: (T | T[])[]): T[];
278
+ chunk<T>(array: T[], size: number): T[][];
279
+ shuffle<T>(array: T[]): T[];
280
+ capitalize(str: string): string;
281
+ camelCase(str: string): string;
282
+ kebabCase(str: string): string;
283
+ snakeCase(str: string): string;
284
+ truncate(str: string, length: number, suffix?: string): string;
285
+ clamp(value: number, min: number, max: number): number;
286
+ random(min: number, max: number): number;
287
+ round(value: number, precision?: number): number;
288
+ formatDate(date: Date, format: string): string;
289
+ parseDate(dateString: string, format?: string): Date;
290
+ addDays(date: Date, days: number): Date;
291
+ diffDays(date1: Date, date2: Date): number;
292
+ }
293
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/types/utils.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IAEjC,cAAc,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7C,YAAY,IAAI,IAAI,CAAC;IAGrB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACtG,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAGtG,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,GAAG,IAAI,CAAC;IACjG,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAG7C,OAAO,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;IACtC,cAAc,IAAI,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAMD,MAAM,WAAW,oBAAoB;IAEnC,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1E,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAAC;IAGxD,SAAS,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC;IAC7C,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1C,oBAAoB,CAAC,SAAS,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;IAG5D,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IACvE,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAGlD,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAC;IACnE,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,GAAG,IAAI,CAAC;IAGhF,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,cAAc,CAAC;IACtE,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;CACrF;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;IACrE,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,IAAI,IAAI,CAAC;IACjB,UAAU,IAAI,IAAI,CAAC;IACnB,KAAK,IAAI,IAAI,CAAC;IACd,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;CACrB;AAMD,MAAM,WAAW,iBAAiB;IAEhC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IAClD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,GAAG,gBAAgB,CAAC;IAG3E,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/C,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACjD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC;IAC5B,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC;IAC7B,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACzC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAGzC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACnF;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC7H,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,GAAG,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAMD,MAAM,WAAW,YAAY;IAE3B,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAChG,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAGlG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC;IACrE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC1E,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAG5E,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACnC,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAG7C,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IACjE,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;CAChD;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QAC1C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QAC3C,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QACxC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KAC3C,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QACpC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QAC1C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KAC3C,CAAC;IACF,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QAC3C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QACzD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KAC1C,CAAC;CACH;AAMD,MAAM,WAAW,UAAU;IAEzB,aAAa,CAAC,CAAC,SAAS,MAAM,qBAAqB,EACjD,OAAO,EAAE,CAAC,EACV,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,QAAQ,CAAC,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,EAAE,GAClC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAG5B,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI,CAAC;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;IACjE,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IACpE,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAGzD,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3D,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5E,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAG3D,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtE,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChE,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1D,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAG1D,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtE,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IACzD,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAGtE,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IAG/C,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IACzC,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5C,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CAC7E;AAMD,MAAM,WAAW,cAAc;IAE7B,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACpD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,IAAI,IAAI,CAAC;IAGnB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IAC1C,UAAU,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACtD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,YAAY,IAAI,IAAI,CAAC;IAGrB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IACzC,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACrD,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,IAAI,IAAI,CAAC;IAGpB,eAAe,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI,CAAC;IAC/D,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI,CAAC;CACjE;AAMD,MAAM,WAAW,gBAAgB;IAE/B,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAC;IACpG,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3D,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5D,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1G,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAG3G,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvG,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3C,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5C,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAG5C,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B;AAMD,MAAM,WAAW,WAAW;IAE1B,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7E,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5E,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAGnE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACzD,cAAc,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACtD,iBAAiB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAGzD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3E,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAChF;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/E,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,gBAAgB;IAE/B,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC;IACtC,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC;IACtC,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC;IACpC,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,QAAQ,CAAC;IAC1C,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,IAAI,CAAC;IAClC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAAC;IAC5C,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC;IAG7B,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAG1D,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC3B,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACpC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC;IAC1C,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAG5B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAG/D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACvD,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACzC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAGjD,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/C,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrD,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;CAC5C"}