@lcap/nasl 3.3.2-beta.2 → 3.3.2-beta.4

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 (51) hide show
  1. package/out/bak/translator.js +31 -8
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/common/BaseNode.js +2 -1
  4. package/out/common/BaseNode.js.map +1 -1
  5. package/out/concepts/CallFunction__.js +1 -1
  6. package/out/concepts/CallFunction__.js.map +1 -1
  7. package/out/concepts/CallLogic__.js +2 -46
  8. package/out/concepts/CallLogic__.js.map +1 -1
  9. package/out/concepts/MemberExpression__.js +2 -2
  10. package/out/concepts/MemberExpression__.js.map +1 -1
  11. package/out/concepts/TypeAnnotation__.js +21 -21
  12. package/out/concepts/TypeAnnotation__.js.map +1 -1
  13. package/out/concepts/ViewElement__.js +9 -5
  14. package/out/concepts/ViewElement__.js.map +1 -1
  15. package/out/concepts/View__.d.ts +1 -0
  16. package/out/concepts/View__.js +15 -0
  17. package/out/concepts/View__.js.map +1 -1
  18. package/out/index.d.ts +1 -1
  19. package/out/index.js +5 -1
  20. package/out/index.js.map +1 -1
  21. package/out/natural/transformTSCode.js +27 -5
  22. package/out/natural/transformTSCode.js.map +1 -1
  23. package/out/server/createUiTs.js +1 -1
  24. package/out/server/createUiTs.js.map +1 -1
  25. package/out/service/creator/add.configs.js +3 -0
  26. package/out/service/creator/add.configs.js.map +1 -1
  27. package/out/service/storage/init.d.ts +20 -0
  28. package/out/service/storage/init.js +284 -9
  29. package/out/service/storage/init.js.map +1 -1
  30. package/out/utils/index.d.ts +1 -0
  31. package/out/utils/index.js +14 -1
  32. package/out/utils/index.js.map +1 -1
  33. package/package.json +7 -7
  34. package/sandbox-natural/stdlib/nasl.util.ts +1 -0
  35. package/src/bak/translator.js +42 -21
  36. package/src/common/BaseNode.ts +2 -1
  37. package/src/concepts/CallFunction__.ts +1 -1
  38. package/src/concepts/CallLogic__.ts +3 -48
  39. package/src/concepts/MemberExpression__.ts +2 -2
  40. package/src/concepts/TypeAnnotation__.ts +21 -21
  41. package/src/concepts/ViewElement__.ts +9 -6
  42. package/src/concepts/View__.ts +16 -0
  43. package/src/index.ts +1 -1
  44. package/src/natural/transformTSCode.ts +26 -6
  45. package/src/server/createUiTs.ts +1 -1
  46. package/src/service/creator/add.configs.js +6 -0
  47. package/src/service/storage/init.ts +292 -10
  48. package/src/utils/index.ts +13 -0
  49. package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +1 -1
  50. package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +1 -1
  51. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +1 -22
@@ -22,6 +22,9 @@ function httpCode(response, params, requestInfo) {
22
22
  window.location.href = '/login';
23
23
  }
24
24
  }
25
+ if (data) {
26
+ data.request = response?.request;
27
+ }
25
28
  return Promise.reject(data);
26
29
  }
27
30
  function shortResponse(response, params, requestInfo) {
@@ -1 +1 @@
1
- {"version":3,"file":"add.configs.js","sourceRoot":"","sources":["../../../src/service/creator/add.configs.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.configs.js","sourceRoot":"","sources":["../../../src/service/creator/add.configs.js"],"names":[],"mappings":"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"}
@@ -20,6 +20,10 @@ export declare const breakpoint: ({ body }: {
20
20
  export declare const databaseTypes: ({ query }: {
21
21
  query: any;
22
22
  }) => any;
23
+ export declare const operationRecordInfoMap: Map<string, any>;
24
+ export declare function doOperationRecord(operation: Operation): void;
25
+ export declare function operationRecordQuery(app: any): Promise<unknown>;
26
+ export declare function operationRecordPlayback(app: any, action: 'undo' | 'redo'): Promise<any>;
23
27
  declare type Instruct = {
24
28
  uuid: string;
25
29
  actions: any[];
@@ -29,6 +33,7 @@ declare type TaskOption = {
29
33
  hasFrontEnd: boolean;
30
34
  hasBackEnd: boolean;
31
35
  instructList: Instruct[];
36
+ operationList: Operation[];
32
37
  };
33
38
  declare enum TaskQueueStatus {
34
39
  ExceedMaxTaskCount = 0,
@@ -54,6 +59,21 @@ declare class TaskQueue {
54
59
  recover(app: App): void;
55
60
  }
56
61
  export declare const taskQueue: TaskQueue;
62
+ declare class Operation {
63
+ appId?: string;
64
+ branchId?: string;
65
+ accountId?: string;
66
+ userId?: string;
67
+ phone?: string;
68
+ actionItem: any;
69
+ res?: any;
70
+ err?: any;
71
+ parentKey?: string;
72
+ timestamp?: any;
73
+ type?: string;
74
+ uuid?: string;
75
+ action?: string;
76
+ }
57
77
  export interface ProxyApp extends App {
58
78
  _isCollectingCount: number;
59
79
  _collectingList: number[];
@@ -26,7 +26,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.loadAppSync = exports.mountDatabaseTypes = exports.loadApp = exports.handleApp = exports.taskQueue = exports.databaseTypes = exports.breakpoint = exports.batchInstruct = exports.batchAction = exports.batchQuery = void 0;
29
+ exports.loadAppSync = exports.mountDatabaseTypes = exports.loadApp = exports.handleApp = exports.taskQueue = exports.operationRecordPlayback = exports.operationRecordQuery = exports.doOperationRecord = exports.operationRecordInfoMap = exports.databaseTypes = exports.breakpoint = exports.batchInstruct = exports.batchAction = exports.batchQuery = void 0;
30
+ const lodash_1 = require("lodash");
30
31
  const concepts_1 = require("../../concepts");
31
32
  const breakpoint_1 = require("../../breakpoint");
32
33
  const decorators_1 = require("../../decorators");
@@ -34,9 +35,9 @@ const config_1 = require("../../config");
34
35
  const service_1 = __importDefault(require("./service"));
35
36
  const uuid_1 = require("uuid");
36
37
  const stepRecorder_1 = __importDefault(require("../../manager/stepRecorder"));
38
+ const jsoner = __importStar(require("./jsoner"));
37
39
  /// #if !process.env.NODE_ENV || process.env.BUILD_TARGET === 'node'
38
40
  const fs = __importStar(require("fs-extra"));
39
- const jsoner = __importStar(require("./jsoner"));
40
41
  /// #endif
41
42
  exports.batchQuery = service_1.default.batchQuery;
42
43
  exports.batchAction = service_1.default.batchAction;
@@ -44,6 +45,223 @@ exports.batchInstruct = service_1.default.batchInstruct;
44
45
  exports.breakpoint = service_1.default.breakpoint;
45
46
  let tabTimestamp;
46
47
  exports.databaseTypes = service_1.default.databaseTypes;
48
+ exports.operationRecordInfoMap = new Map();
49
+ // 操作栈记录
50
+ function doOperationRecord(operation) {
51
+ const request = indexedDB.open('naslData', 1);
52
+ request.onupgradeneeded = (event) => {
53
+ const db = event.target.result;
54
+ const objectStore = db.createObjectStore('operationRecord', { autoIncrement: true });
55
+ objectStore.createIndex('appId', 'appId');
56
+ objectStore.createIndex('timestamp', 'timestamp');
57
+ };
58
+ request.onsuccess = (event) => {
59
+ const db = event.target.result;
60
+ const transaction = db.transaction('operationRecord', 'readwrite');
61
+ const objectStore = transaction.objectStore('operationRecord');
62
+ operation.appId = exports.operationRecordInfoMap.get('appId');
63
+ operation.branchId = exports.operationRecordInfoMap.get('branchId');
64
+ operation.accountId = exports.operationRecordInfoMap.get('accountId');
65
+ operation.userId = exports.operationRecordInfoMap.get('userId');
66
+ operation.phone = exports.operationRecordInfoMap.get('phone');
67
+ // 将时间戳添加到记录中
68
+ operation.timestamp = Date.now();
69
+ // 这份数据不存在向上的引用,因此用cloneDeep没有关系
70
+ objectStore.put((0, lodash_1.cloneDeep)(operation));
71
+ transaction.oncomplete = () => {
72
+ db.close();
73
+ };
74
+ };
75
+ request.onerror = function (event) {
76
+ console.log('Failed to open database');
77
+ };
78
+ }
79
+ exports.doOperationRecord = doOperationRecord;
80
+ // 删除失效数据
81
+ async function deleteExpiredRecords() {
82
+ return new Promise((resolve, reject) => {
83
+ const request = indexedDB.open('naslData', 1);
84
+ request.onupgradeneeded = (event) => {
85
+ const db = event.target.result;
86
+ const objectStore = db.createObjectStore('operationRecord', { autoIncrement: true });
87
+ objectStore.createIndex('appId', 'appId');
88
+ objectStore.createIndex('timestamp', 'timestamp');
89
+ };
90
+ request.onsuccess = (event) => {
91
+ const db = event.target.result;
92
+ const transaction = db.transaction('operationRecord', 'readwrite');
93
+ const objectStore = transaction.objectStore('operationRecord');
94
+ const index = objectStore.index('timestamp');
95
+ // 设置有效期,默认7天
96
+ const localStorageExpiresAt = window.localStorage.getItem('expiresAt');
97
+ const expiresAt = Date.now() - (localStorageExpiresAt ? +localStorageExpiresAt : 7 * 24 * 60 * 60 * 1000);
98
+ const range = IDBKeyRange.upperBound(expiresAt);
99
+ const expiredRecordsRequest = index.openCursor(range);
100
+ expiredRecordsRequest.onsuccess = (event) => {
101
+ const cursor = event.target.result;
102
+ if (cursor) {
103
+ console.log(cursor);
104
+ objectStore.delete(cursor.primaryKey);
105
+ cursor.continue();
106
+ }
107
+ else {
108
+ resolve(void 0);
109
+ }
110
+ };
111
+ transaction.oncomplete = () => {
112
+ db.close();
113
+ };
114
+ };
115
+ request.onerror = (event) => {
116
+ reject('Failed to open database');
117
+ };
118
+ });
119
+ }
120
+ // 操作栈查询
121
+ function operationRecordQuery(app) {
122
+ return new Promise((resolve, reject) => {
123
+ const appId = app?.id;
124
+ const request = indexedDB.open('naslData', 1);
125
+ request.onsuccess = (event) => {
126
+ const db = event.target.result;
127
+ const transaction = db.transaction('operationRecord', 'readonly');
128
+ const objectStore = transaction.objectStore('operationRecord');
129
+ const index = objectStore.index('appId'); // 查询 'appId' 索引
130
+ const range = IDBKeyRange.only(appId);
131
+ const request = index.openCursor(range);
132
+ const result = [];
133
+ request.onsuccess = (event) => {
134
+ const cursor = event.target.result;
135
+ if (cursor) {
136
+ const record = cursor.value;
137
+ const branchId = exports.operationRecordInfoMap.get('branchId');
138
+ if (record.branchId === branchId) {
139
+ result.push(record);
140
+ }
141
+ cursor.continue();
142
+ }
143
+ else {
144
+ console.log('操作记录栈:', result);
145
+ resolve(result);
146
+ }
147
+ };
148
+ transaction.oncomplete = () => {
149
+ db.close();
150
+ };
151
+ };
152
+ request.onerror = (event) => {
153
+ reject('Failed to open database');
154
+ };
155
+ });
156
+ }
157
+ exports.operationRecordQuery = operationRecordQuery;
158
+ // 获取父对象
159
+ function getParentInfo(appJson, path) {
160
+ const pathArr = [];
161
+ (path?.split('.') || []).forEach((pathItem) => {
162
+ const arrayPropertyKey = pathItem.split('[')[0];
163
+ const matchArr = pathItem.match(/\[(.+?)\]/);
164
+ if (matchArr) {
165
+ pathArr.push(arrayPropertyKey, matchArr[0]);
166
+ }
167
+ else {
168
+ pathArr.push(pathItem);
169
+ }
170
+ });
171
+ pathArr.pop();
172
+ let parentPath = '';
173
+ pathArr.forEach((pathItem, index) => {
174
+ const matchArr = pathItem.match(/\[(.+?)\]/);
175
+ if (matchArr || index === 0) {
176
+ parentPath += pathItem;
177
+ }
178
+ else {
179
+ parentPath += `.${pathItem}`;
180
+ }
181
+ });
182
+ const parentNode = jsoner.queryNodeByPath(appJson, parentPath);
183
+ return {
184
+ parentPath,
185
+ parentNode,
186
+ };
187
+ }
188
+ // 操作记录回放
189
+ async function operationRecordPlayback(app, action) {
190
+ const operationRecord = await operationRecordQuery(app);
191
+ let operationRecordIndex = exports.operationRecordInfoMap.get('operationRecordIndex');
192
+ if ([null, undefined].includes(operationRecordIndex)) {
193
+ operationRecordIndex = operationRecord?.length;
194
+ }
195
+ const appJson = app.toJSON();
196
+ if (action === 'undo') {
197
+ if (operationRecordIndex > 0) {
198
+ const currentRecordItem = operationRecord?.[operationRecordIndex];
199
+ const { type, action: recordItemAction } = currentRecordItem || {};
200
+ // 多人协作
201
+ if (type === 'cooperation' && recordItemAction === 'confirmPull') {
202
+ console.log(`当前所处栈位置:${operationRecordIndex},已经进行了多人协作“合并”操作,无法继续对操作栈进行回放!`);
203
+ return;
204
+ }
205
+ operationRecordIndex--;
206
+ }
207
+ else {
208
+ console.log(`当前所处栈位置:${operationRecordIndex},无法继续回放`);
209
+ console.log('当前appJSON:', appJson);
210
+ return;
211
+ }
212
+ }
213
+ else {
214
+ if (operationRecordIndex < operationRecord?.length) {
215
+ operationRecordIndex++;
216
+ }
217
+ else {
218
+ console.log(`当前所处栈位置:${operationRecordIndex},无法继续前进`);
219
+ console.log('当前appJSON:', appJson);
220
+ return;
221
+ }
222
+ }
223
+ exports.operationRecordInfoMap.set('operationRecordIndex', operationRecordIndex);
224
+ const currentIndex = operationRecordIndex;
225
+ ([...operationRecord].splice(currentIndex, operationRecord?.length) || []).reverse()?.forEach((recordItem) => {
226
+ const { actionItem } = recordItem || {};
227
+ const { list } = actionItem || {};
228
+ [...(list || [])].reverse().forEach((actionItem) => {
229
+ const { path, action, oldObject, parentKey, index: oldIndex } = actionItem || {};
230
+ const { parentNode } = getParentInfo(appJson, path);
231
+ const node = jsoner.queryNodeByPath(appJson, path);
232
+ switch (action) {
233
+ case 'create':
234
+ if (Array.isArray(parentNode)) {
235
+ const index = parentNode.indexOf(node);
236
+ if (index !== -1) {
237
+ parentNode.splice(index, 1);
238
+ }
239
+ }
240
+ else {
241
+ parentNode[parentKey] = null;
242
+ }
243
+ break;
244
+ case 'delete':
245
+ if (Array.isArray(parentNode) && oldIndex !== -1) {
246
+ parentNode.splice(oldIndex, 0, oldObject);
247
+ }
248
+ else {
249
+ parentNode[parentKey] = oldObject;
250
+ }
251
+ break;
252
+ case 'update':
253
+ for (const key in oldObject) {
254
+ node[key] = oldObject[key] ?? null;
255
+ }
256
+ break;
257
+ }
258
+ });
259
+ });
260
+ console.log('当前所处栈位置:', currentIndex);
261
+ console.log('当前appJSON:', appJson);
262
+ return appJson;
263
+ }
264
+ exports.operationRecordPlayback = operationRecordPlayback;
47
265
  function getLogic(key, app, diffLogicList) {
48
266
  if (!diffLogicList.includes(key)) {
49
267
  diffLogicList.push(key);
@@ -170,6 +388,11 @@ const handleAIPoint = (app, actionItem) => {
170
388
  * 执行更新
171
389
  */
172
390
  async function doAction(app, actionItem) {
391
+ const isOperationRecord = exports.operationRecordInfoMap.get('isOperationRecord');
392
+ if (isOperationRecord) {
393
+ console.log('正在进行操作栈回放操作,如需行任何Nasl操作请刷新页面');
394
+ return;
395
+ }
173
396
  let hasFrontEnd = false;
174
397
  let hasBackEnd = false;
175
398
  const actionList = [];
@@ -388,18 +611,39 @@ async function doAction(app, actionItem) {
388
611
  });
389
612
  return;
390
613
  }
614
+ const uuid = (0, uuid_1.v4)().replace(/-/g, '');
391
615
  const instructList = [{
392
- uuid: (0, uuid_1.v4)().replace(/-/g, ''),
616
+ uuid,
393
617
  actions: actionList,
394
618
  }];
395
- saveNasl({ app, hasFrontEnd, hasBackEnd, instructList });
619
+ const operation = {
620
+ type: 'doAction',
621
+ uuid,
622
+ actionItem: {
623
+ actionMsg,
624
+ list: list.map((item) => {
625
+ const { path, action, object, oldObject, parentKey, index } = item?.originEvent || {};
626
+ return {
627
+ path,
628
+ action,
629
+ parentKey,
630
+ index,
631
+ object: object?.toJSON?.() || object,
632
+ oldObject: oldObject?.toJSON?.() || oldObject,
633
+ };
634
+ }),
635
+ },
636
+ };
637
+ saveNasl({ app, hasFrontEnd, hasBackEnd, instructList, operationList: [operation] });
638
+ // 进行nasl操作后需要将Index重置
639
+ exports.operationRecordInfoMap.set('operationRecordIndex', null);
396
640
  if (!app._historying) {
397
641
  if (app._historyIndex !== app._historyList.length) {
398
642
  app._historyList = app._historyList.splice(0, app._historyIndex);
399
643
  }
400
644
  app._historyList.push({
401
645
  actionMsg,
402
- list: list.map((item) => item.originEvent),
646
+ list: list.map((item) => item?.originEvent),
403
647
  });
404
648
  app._historyIndex = app._historyList.length;
405
649
  }
@@ -451,12 +695,14 @@ class TaskQueue {
451
695
  let hasFrontEnd = false;
452
696
  let hasBackEnd = false;
453
697
  let instructList = [];
698
+ let operationList = [];
454
699
  for (const task of queue) {
455
700
  if (task.hasFrontEnd)
456
701
  hasFrontEnd = true;
457
702
  if (task.hasBackEnd)
458
703
  hasBackEnd = true;
459
704
  instructList = instructList.concat(task.instructList);
705
+ operationList = operationList.concat(task.operationList);
460
706
  }
461
707
  if (queue === this.queue) {
462
708
  this.lastQueue = [...queue];
@@ -464,10 +710,10 @@ class TaskQueue {
464
710
  }
465
711
  this.running = true;
466
712
  const error = await _saveNasl({
467
- app, hasFrontEnd, hasBackEnd, instructList,
713
+ app, hasFrontEnd, hasBackEnd, instructList, operationList
468
714
  });
469
715
  // code: 401650, 检测到当前应用拉取操作已被强制结束, 用户确认后再刷新
470
- // code: 500502 msg: "该应用已在新tab 页打开,请刷新!" 不重试或刷新
716
+ // code: 500502 msg: '该应用已在新tab 页打开,请刷新!' 不重试或刷新
471
717
  if (!error)
472
718
  this.recover(app);
473
719
  else if (![401650, 500502].includes(error.code)) {
@@ -529,8 +775,23 @@ exports.taskQueue = new TaskQueue();
529
775
  async function saveNasl(options) {
530
776
  exports.taskQueue.addTask(options);
531
777
  }
778
+ class Operation {
779
+ appId;
780
+ branchId;
781
+ accountId;
782
+ userId;
783
+ phone;
784
+ actionItem;
785
+ res;
786
+ err;
787
+ parentKey;
788
+ timestamp;
789
+ type;
790
+ uuid;
791
+ action;
792
+ }
532
793
  async function _saveNasl(options) {
533
- const { app, hasFrontEnd, hasBackEnd, instructList } = options;
794
+ const { app, hasFrontEnd, hasBackEnd, instructList, operationList } = options;
534
795
  app.emit('saving');
535
796
  let ChangedNASLType = '';
536
797
  if (hasFrontEnd && hasBackEnd) {
@@ -542,10 +803,12 @@ async function _saveNasl(options) {
542
803
  else if (hasBackEnd) {
543
804
  ChangedNASLType = 'backend';
544
805
  }
806
+ let res;
545
807
  let err;
546
808
  if (config_1.config.storage.protocol === 'http') {
547
809
  try {
548
- await service_1.default.batchInstruct({
810
+ // 接口请求
811
+ res = await service_1.default.batchInstruct({
549
812
  body: instructList,
550
813
  headers: {
551
814
  appId: app.id,
@@ -558,6 +821,13 @@ async function _saveNasl(options) {
558
821
  catch (error) {
559
822
  err = error;
560
823
  }
824
+ operationList.forEach((operation) => {
825
+ doOperationRecord({
826
+ ...operation,
827
+ res,
828
+ err,
829
+ });
830
+ });
561
831
  }
562
832
  else if (config_1.config.storage.protocol === 'mock') {
563
833
  // Do nothing
@@ -698,6 +968,11 @@ exports.handleApp = handleApp;
698
968
  * @returns app 对象
699
969
  */
700
970
  async function loadApp(appId) {
971
+ try {
972
+ // 删除失效数据
973
+ deleteExpiredRecords();
974
+ }
975
+ catch (err) { }
701
976
  let app;
702
977
  if (config_1.config.storage.protocol === 'http') {
703
978
  console.time('batchQuery');
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/service/storage/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/service/storage/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAmC;AACnC,6CAAiJ;AACjJ,iDAA6D;AAC7D,iDAAyD;AACzD,yCAAsC;AACtC,wDAAuC;AACvC,+BAAoC;AACpC,8EAAsD;AACtD,iDAAmC;AACnC,oEAAoE;AACpE,6CAA+B;AAE/B,UAAU;AAIG,QAAA,UAAU,GAAG,iBAAc,CAAC,UAAU,CAAC;AACvC,QAAA,WAAW,GAAG,iBAAc,CAAC,WAAW,CAAC;AACzC,QAAA,aAAa,GAAG,iBAAc,CAAC,aAAa,CAAC;AAC7C,QAAA,UAAU,GAAG,iBAAc,CAAC,UAAU,CAAC;AAEpD,IAAI,YAAoB,CAAC;AACZ,QAAA,aAAa,GAAG,iBAAc,CAAC,aAAa,CAAC;AAE7C,QAAA,sBAAsB,GAAqB,IAAI,GAAG,EAAE,CAAC;AAElE,QAAQ;AACR,SAAgB,iBAAiB,CAAC,SAAoB;IACpD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAE9C,OAAO,CAAC,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE;QACvC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,WAAW,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,CAAC,CAAC;IAEF,OAAO,CAAC,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;QACjC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;QACnE,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAC/D,SAAS,CAAC,KAAK,GAAG,8BAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,SAAS,CAAC,QAAQ,GAAG,8BAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5D,SAAS,CAAC,SAAS,GAAG,8BAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9D,SAAS,CAAC,MAAM,GAAG,8BAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxD,SAAS,CAAC,KAAK,GAAG,8BAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,aAAa;QACb,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,gCAAgC;QAChC,WAAW,CAAC,GAAG,CAAC,IAAA,kBAAS,EAAC,SAAS,CAAC,CAAC,CAAC;QACtC,WAAW,CAAC,UAAU,GAAG,GAAG,EAAE;YAC5B,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CAAC,OAAO,GAAG,UAAS,KAAK;QAC9B,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AA/BD,8CA+BC;AAED,SAAS;AACT,KAAK,UAAU,oBAAoB;IACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAE9C,OAAO,CAAC,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE;YACvC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1C,WAAW,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,OAAO,CAAC,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;YACjC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;YACnE,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;YAC/D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC7C,aAAa;YACb,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC1G,MAAM,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAChD,MAAM,qBAAqB,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAEtD,qBAAqB,CAAC,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;gBAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;gBACnC,IAAI,MAAM,EAAE;oBACV,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACpB,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACtC,MAAM,CAAC,QAAQ,EAAE,CAAC;iBACnB;qBAAM;oBACL,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjB;YACH,CAAC,CAAC;YAEF,WAAW,CAAC,UAAU,GAAG,GAAG,EAAE;gBAC5B,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC1B,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,QAAQ;AACR,SAAgB,oBAAoB,CAAC,GAAQ;IAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,GAAG,EAAE,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;YACjC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;YAC/D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB;YAC1D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,MAAM,GAAU,EAAE,CAAC;YAEzB,OAAO,CAAC,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;gBACjC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;gBACnC,IAAI,MAAM,EAAE;oBACV,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC5B,MAAM,QAAQ,GAAG,8BAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACxD,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;wBAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBACrB;oBACD,MAAM,CAAC,QAAQ,EAAE,CAAC;iBACnB;qBAAM;oBACL,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAC9B,OAAO,CAAC,MAAM,CAAC,CAAC;iBACjB;YACH,CAAC,CAAC;YAEF,WAAW,CAAC,UAAU,GAAG,GAAG,EAAE;gBAC5B,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC1B,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AArCD,oDAqCC;AAED,QAAQ;AACR,SAAS,aAAa,CAAC,OAAY,EAAE,IAAY;IAC/C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAgB,EAAE,EAAE;QACpD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7C;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACxB;IACH,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,OAAO,CAAC,OAAO,CAAC,CAAC,QAAgB,EAAE,KAAa,EAAE,EAAE;QAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,QAAQ,IAAI,KAAK,KAAK,CAAC,EAAE;YAC3B,UAAU,IAAI,QAAQ,CAAC;SACxB;aAAM;YACL,UAAU,IAAI,IAAI,QAAQ,EAAE,CAAA;SAC7B;IACH,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC/D,OAAO;QACL,UAAU;QACV,UAAU;KACX,CAAC;AACJ,CAAC;AAED,SAAS;AACF,KAAK,UAAU,uBAAuB,CAAC,GAAQ,EAAE,MAAuB;IAC7E,MAAM,eAAe,GAAQ,MAAM,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC7D,IAAI,oBAAoB,GAAG,8BAAsB,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC9E,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;QACpD,oBAAoB,GAAG,eAAe,EAAE,MAAM,CAAC;KAChD;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;IAC7B,IAAI,MAAM,KAAK,MAAM,EAAE;QACrB,IAAI,oBAAoB,GAAG,CAAC,EAAE;YAC5B,MAAM,iBAAiB,GAAG,eAAe,EAAE,CAAC,oBAAoB,CAAC,CAAC;YAClE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,IAAI,EAAE,CAAC;YACnE,OAAO;YACP,IAAI,IAAI,KAAK,aAAa,IAAI,gBAAgB,KAAK,aAAa,EAAE;gBAChE,OAAO,CAAC,GAAG,CAAC,WAAW,oBAAoB,gCAAgC,CAAC,CAAC;gBAC7E,OAAO;aACR;YACD,oBAAoB,EAAE,CAAC;SACxB;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,WAAW,oBAAoB,SAAS,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO;SACR;KACF;SAAM;QACL,IAAI,oBAAoB,GAAG,eAAe,EAAE,MAAM,EAAE;YAClD,oBAAoB,EAAE,CAAC;SACxB;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,WAAW,oBAAoB,SAAS,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO;SACR;KACF;IACD,8BAAsB,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,oBAAoB,CAAC;IAC1C,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC,UAAe,EAAE,EAAE;QAChH,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;QACxC,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;QAClC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,UAAe,EAAE,EAAE;YACtD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;YACjF,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACnD,QAAQ,MAAM,EAAE;gBACd,KAAK,QAAQ;oBACX,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;wBAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACvC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;4BAChB,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;yBAC7B;qBACF;yBAAM;wBACL,UAAU,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;qBAC9B;oBACD,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;wBAChD,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;qBAC3C;yBAAM;wBACL,UAAU,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;qBACnC;oBACD,MAAM;gBACR,KAAK,QAAQ;oBACX,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;wBAC1B,IAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;qBAC7C;oBACD,MAAM;aACT;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC;AArED,0DAqEC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAQ,EAAE,aAAuB;IAC9D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAChC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACjE,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBAChD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;aACvE;SACF;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACvC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;YAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC1C,OAAO,IAAI,KAAK,KAAK,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,IAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YAC1E,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBAChD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;aACvE;SACF;KACF;AACH,CAAC;AAED,iBAAiB;AACjB,SAAS,YAAY,CAAC,KAAU,EAAE,GAAQ,EAAE,aAAuB;IACjE,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,QAAQ,KAAK,CAAC,OAAO,EAAE;QACrB,KAAK,YAAY;YACf,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,aAAa;YAChB,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;YACvD,MAAM;QACR,KAAK,kBAAkB;YACrB,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM;QACR,KAAK,OAAO;YACV,UAAU,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1E,MAAM;QACR,KAAK,WAAW;YACd,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM;QACR,KAAK,iBAAiB;YACpB,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM;QACR,KAAK,YAAY;YACf,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;YAC/C,MAAM;QACR,KAAK,gBAAgB;YACnB,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM;QACR,KAAK,WAAW;YACd,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvE,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;YACnD,MAAM;QACR,KAAK,cAAc;YACjB,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvE,MAAM;QACR,KAAK,eAAe;YAClB,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvE,MAAM;QACR,KAAK,qBAAqB;YACxB,UAAU,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM;QACR,KAAK,iBAAiB;YACpB,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAmB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1J,MAAM;QACR,KAAK,kBAAkB;YACrB,UAAU,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5C,MAAM;QACR,KAAK,qBAAqB;YACxB,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;YACpC,MAAM;QACR,KAAK,cAAc;YACjB,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7E,MAAM;QACR,KAAK,SAAS;YACZ,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9B,MAAM;QACR;YACE,MAAM;KACT;IAED,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,IAAe,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,iBAAiB;AACjB,SAAS,gBAAgB,CAAC,MAAW,EAAE,GAAQ,EAAE,MAAc;IAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IACD,aAAa;IACb,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,GAAG,GAAG,CAAC,EAAE;QACX,OAAO,KAAK,CAAC;KACd;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,IAAI,MAAM,IAAI,GAAG,IAAI,OAAO,IAAI,GAAG,EAAE;YACnC,OAAO,IAAI,CAAC;SACb;KACF;AACH,CAAC;AAED,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,IAAI,WAAW,GAAG,EAAE,CAAC;AACrB,eAAe;AACf,MAAM,aAAa,GAAG,CAAC,GAAQ,EAAE,UAAe,EAAE,EAAE;IAClD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;IAC/C,IAAI,UAAU,GAAG,CAAC,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,GAAG,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;QAC3D,UAAU,IAAI,CAAC,CAAC;KACjB;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE;QAC7C,UAAU,IAAI,CAAC,CAAC;QAChB,gDAAgD;QAChD,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C;AACH,CAAC,CAAA;AAED;;GAEG;AACH,KAAK,UAAU,QAAQ,CAAC,GAAQ,EAAE,UAAe;IAC/C,MAAM,iBAAiB,GAAG,8BAAsB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC1E,IAAI,iBAAiB,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO;KACR;IACD,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,MAAM,UAAU,GAAU,EAAE,CAAC;IAC7B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;IACrD,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,CAAC,EAAa,EAAE,GAAQ,EAAE,OAAiB,EAAE,EAAE;QAC9D,MAAM,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,EAAE,CAAC,MAAM,EAAE;YACb,EAAE,CAAC,GAAG,CAAC,CAAC,GAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;SACzD;IACH,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,IAAwB,EAAE,SAAkB,EAAE,EAAE;QAC/D,IAAI,IAAI,YAAY,eAAI,EAAE;YACxB,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;SAC7D;QACD,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5D,IAAI,IAAI,YAAY,sBAAW,EAAE;YAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;gBAC1B,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;oBACpC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBACjC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;oBACvE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;gBACjG,IAAI,MAAM,CAAC,MAAM,EAAE;oBACjB,UAAU,GAAG,IAAI,CAAC;iBACnB;aACF;YACD,IAAI,IAAI,CAAC,GAAG,KAAK,YAAY,IAAI,IAAI,CAAC,GAAG,KAAK,cAAc,EAAE;gBAC5D,MAAM,IAAI,GAAG,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;gBACjE,MAAM,iBAAiB,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAChG,IAAI,SAAS,EAAE;oBACb,IAAI,iBAAiB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;wBAC9C,UAAU,GAAG,IAAI,CAAC;qBACnB;iBACF;qBAAM;oBACL,IAAI,iBAAiB,EAAE;wBACrB,UAAU,GAAG,IAAI,CAAC;qBACnB;iBACF;aACF;SACF;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,WAAwB,EAAE,EAAE;QAC/C,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;YACnD,MAAM,aAAa,GAAG,IAAI,EAAE,cAAc,EAAE,IAAI,CAC9C,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAC9C,CAAA;YACD,IAAI,aAAa,EAAE;gBACjB,UAAU,GAAG,IAAI,CAAA;aAClB;YACD,WAAW,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,IAAI;QACF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACrB,MAAM,UAAU,GAAG,KAAK,EAAE,WAAW,EAAE,MAAoB,CAAC;gBAC5D,MAAM,KAAK,GAAW,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC1C,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE;oBACvS,UAAU,GAAG,IAAI,CAAC;iBACnB;gBACD,IAAI,UAAU,EAAE;oBACd,IAAI,UAAU,CAAC,OAAO,KAAK,KAAK,EAAE;wBAChC,IAAI,KAAK,EAAE,MAAM,EAAE,aAAa,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE;4BAC7E,UAAU,GAAG,IAAI,CAAA;4BACjB,WAAW,GAAG,IAAI,CAAA;yBACnB;qBACF;oBACD,IAAI,UAAU,CAAC,OAAO,KAAK,gBAAgB,EAAE;wBAC3C,IACE,KAAK,EAAE,MAAM,EAAE,sBAAsB;4BACrC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,sBAAsB,EAClD;4BACA,UAAU,GAAG,IAAI,CAAA;4BACjB,WAAW,GAAG,IAAI,CAAA;yBACnB;qBACF;oBACD,IAAI,UAAU,CAAC,OAAO,KAAK,OAAO,EAAE;wBAClC,MAAM,OAAO,GAAa,EAAE,CAAC;wBAC7B,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC9B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAa,EAAE,EAAE;gCACxC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;4BAC7B,CAAC,CAAC,CAAC;yBACJ;wBACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;wBACjG,IAAI,MAAM,CAAC,MAAM,EAAE;4BACjB,UAAU,GAAG,IAAI,CAAC;yBACnB;qBACF;oBACD,IAAI,MAAM,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE;wBAC3C,WAAW,GAAG,IAAI,CAAA;qBACnB;oBACD,IAAI,UAAU,CAAC,OAAO,KAAK,eAAe,EAAE;wBAC1C,MAAM,QAAQ,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,CAAA;wBACxD,IAAI,QAAQ,EAAE;4BACZ,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;4BAC9D,IAAI,MAAM,EAAE;gCACV,UAAU,GAAG,IAAI,CAAA;6BAClB;yBACF;wBACD,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,KAAK,MAAM,EAAE;4BAC/C,UAAU,GAAG,IAAI,CAAA;yBAClB;qBACF;oBACH,IAAI,UAAU,CAAC,OAAO,KAAK,MAAM,EAAE;wBACjC,IAAI,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE;4BACxF,UAAU,GAAG,IAAI,CAAC;yBACnB;wBAED,MAAM,QAAQ,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,CAAC;wBACzD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC;wBACvE,MAAM,YAAY,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;wBAC7G,MAAM,eAAe,GAAI,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,IAAK,iBAAiB,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;wBAC7H,MAAM,iBAAiB,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC;wBACzI,IAAI,QAAQ,IAAI,YAAY,IAAI,iBAAiB,IAAI,UAAU,IAAE,eAAe,EAAE;4BAChF,UAAU,GAAG,IAAI,CAAC;4BAClB,8BAA8B;4BAC9B,gCAAgC;4BAChC,gDAAgD;4BAChD,mCAAmC;4BACnC,kDAAkD;4BAClD,0CAA0C;4BAC1C,cAAc;4BACd,QAAQ;4BACR,MAAM;4BACN,oGAAoG;4BACpG,uBAAuB;4BACvB,yBAAyB;4BACzB,IAAI;4BACJ,sFAAsF;4BACtF,sFAAsF;yBACvF;wBACD,WAAW,GAAG,IAAI,CAAC;qBACpB;oBACC,IAAI,UAAU,CAAC,OAAO,KAAK,aAAa,EAAE;wBACxC,IAAI,iBAAiB,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE;4BAC3D,UAAU,GAAG,IAAI,CAAC;yBACnB;wBAAC,CAAC;wBACL,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE;4BACpC,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAClD,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAC9C,CAAA;4BACD,IAAI,aAAa,EAAE;gCACjB,UAAU,GAAG,IAAI,CAAC;6BACvB;yBACE;wBACD,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,EAAE;4BAC3C,MAAM,aAAa,GAAG,UAAU,EAAE,cAAc,EAAE,IAAI,CACpD,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAC9C,CAAA;4BACD,IAAI,aAAa,EAAE;gCACjB,UAAU,GAAG,IAAI,CAAA;6BAClB;4BACD,WAAW,CAAC,UAAU,CAAC,CAAA;yBACxB;wBACD,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,QAAQ,EAAE;4BAC3C,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE;gCACvE,UAAU,GAAG,IAAI,CAAA;6BAClB;yBACF;wBACD,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;qBAC1B;oBACD,IAAI,UAAU,CAAC,OAAO,KAAK,eAAe,IAAI,UAAU,CAAC,IAAI,KAAK,KAAK,EAAE;wBACvE,MAAM,iBAAiB,GACrB,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;wBACnF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,IAAI,iBAAiB,EAAE;4BACpD,UAAU,GAAG,IAAI,CAAA;yBAClB;qBACF;oBACD,IAAI,UAAU,CAAC,OAAO,KAAK,WAAW,EAAE;wBACtC,MAAM,OAAO,GAAa,EAAE,CAAC;wBAC7B,QAAQ,CAAE,UAAwB,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;wBACvE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;wBACjG,oCAAoC;wBACpC,IAAI,MAAM,CAAC,MAAM,EAAE;4BACjB,UAAU,GAAG,IAAI,CAAC;yBACnB;qBACF;oBACD,eAAe;oBACf,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,EAAE;wBACrC,UAAU,GAAG,IAAI,CAAC;qBACnB;iBACF;gBAEC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAiD,EAAE,EAAE;oBAC3G,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;wBAC1B,IAAI,MAAM,KAAK,QAAQ,EAAE;4BACvB,UAAU,CAAC,IAAI,CAAC;gCACd,MAAM;gCACN,IAAI;gCACJ,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;6BACjB,CAAC,CAAC;yBACJ;6BAAM;4BACL,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gCAC9B,UAAU,CAAC,IAAI,CAAC;oCACd,MAAM;oCACN,IAAI;oCACJ,IAAI,EAAE,IAAI;iCACX,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;yBACJ;qBACF;yBAAM;wBACL,UAAU,CAAC,IAAI,CAAC;4BACd,MAAM;4BACN,IAAI;4BACJ,MAAM,EAAE,OAAO;yBAChB,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;KACF;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,iBAAS,CAAC,WAAW,CAAC,GAAG,EAAE;YACzB,SAAS,EAAE;gBACT,OAAO,EAAE,KAAK,EAAE,OAAO;gBACvB,KAAK,EAAE,KAAK,EAAE,KAAK;aACpB;SACF,CAAC,CAAC;QACH,OAAO;KACR;IAED,MAAM,IAAI,GAAG,IAAA,SAAM,GAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,CAAC;YACpB,IAAI;YACJ,OAAO,EAAE,UAAU;SACpB,CAAC,CAAC;IACH,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,UAAU;QAChB,IAAI;QACJ,UAAU,EAAE;YACV,SAAS;YACT,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;gBAC3B,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;gBACtF,OAAO;oBACL,IAAI;oBACJ,MAAM;oBACN,SAAS;oBACT,KAAK;oBACL,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,MAAM;oBACpC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,SAAS;iBAC9C,CAAA;YACH,CAAC,CAAC;SACH;KACF,CAAC;IACF,QAAQ,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrF,sBAAsB;IACtB,8BAAsB,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IACzD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;QACpB,IAAI,GAAG,CAAC,aAAa,KAAK,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE;YACjD,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;SAClE;QACD,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC;YACpB,SAAS;YACT,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;SACjD,CAAC,CAAC;QACH,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC;KAC7C;SAAM;QACL,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;SACf,CAAC;QACF,IAAI,GAAG,GAAG,SAAS,CAAC,MAAyB,CAAC,CAAC;QAC/C,GAAG,IAAI,SAAS,CAAC;QACjB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM,EAAE;YACvC,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC7C;QACD,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;KACzB;IACD,sBAAY,CAAC,WAAW,IAAI,sBAAY,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACrF,CAAC;AAaD,IAAK,eAGJ;AAHD,WAAK,eAAe;IAClB,iFAAkB,CAAA;IAClB,6DAAQ,CAAA;AACV,CAAC,EAHI,eAAe,KAAf,eAAe,QAGnB;AAQD,MAAM,SAAS;IACb,KAAK,GAAiB,EAAE,CAAA;IACxB,SAAS,GAAiB,EAAE,CAAA;IAC5B,OAAO,GAAY,KAAK,CAAA;IACxB,YAAY,GAAW,EAAE,CAAA;IACzB,MAAM,GAAqB,SAAS,CAAA;IAEpC,OAAO,CAAC,IAAgB;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE;YAC1C,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,kBAAkB,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;SACrC;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;QAC1B,IAAI,IAAI,CAAC,OAAO;YACd,OAAO;QACT,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YACpB,OAAO;QAET,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACzB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,YAAY,GAAe,EAAE,CAAC;QAClC,IAAI,aAAa,GAAgB,EAAE,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,WAAW;gBAClB,WAAW,GAAG,IAAI,CAAC;YACrB,IAAI,IAAI,CAAC,UAAU;gBACjB,UAAU,GAAG,IAAI,CAAC;YACpB,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtD,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC1D;QAED,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;SACjB;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC;YAC5B,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa;SAC1D,CAAC,CAAC;QAEH,4CAA4C;QAC5C,sDAAsD;QACtD,IAAI,CAAC,KAAK;YACR,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aACf,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC/C,oBAAoB;YACpB,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;mBACjG,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,QAAQ,EAAE;gBAC7C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,IAAI,CAAC,KAAK,EAAE,CAAC;aACd;;gBACC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAExB,OAAO;SACR;QAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAC7B,OAAO;QAET,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAQ,EAAE,UAA8B,EAAE,SAAS,EAAE,EAAE,EAAE;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YACrF,WAAW,EAAE,UAAU,EAAE,YAAY;SACtC,CAAC,CAAC,CAAC;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3E,WAAW,EAAE,UAAU,EAAE,YAAY;SACtC,CAAC,CAAC,CAAC;QACJ,MAAM,iBAAc,CAAC,gBAAgB,CAAC;YACpC,IAAI,EAAE;gBACJ,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE;gBACnB,WAAW;gBACX,KAAK;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B;SACF,CAAC,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,QAAQ,IAAI,CAAC,MAAM,EAAE;YACnB,KAAK,eAAe,CAAC,kBAAkB;gBACrC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC9B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,MAAM;YACR,KAAK,eAAe,CAAC,QAAQ;gBAC3B,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,MAAM;SACT;IACH,CAAC;CACF;AAEY,QAAA,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;AACzC,KAAK,UAAU,QAAQ,CAAC,OAAmB;IACzC,iBAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,SAAS;IACb,KAAK,CAAU;IACf,QAAQ,CAAU;IAClB,SAAS,CAAU;IACnB,MAAM,CAAU;IAChB,KAAK,CAAU;IACf,UAAU,CAAM;IAChB,GAAG,CAAO;IACV,GAAG,CAAO;IACV,SAAS,CAAU;IACnB,SAAS,CAAO;IAChB,IAAI,CAAU;IACd,IAAI,CAAU;IACd,MAAM,CAAU;CACjB;AAED,KAAK,UAAU,SAAS,CAAC,OAAmB;IAC1C,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAC9E,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnB,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,WAAW,IAAI,UAAU,EAAE;QAC7B,eAAe,GAAG,MAAM,CAAC;KAC1B;SAAM,IAAI,WAAW,EAAE;QACtB,eAAe,GAAG,KAAK,CAAC;KACzB;SAAM,IAAI,UAAU,EAAE;QACrB,eAAe,GAAG,SAAS,CAAC;KAC7B;IACD,IAAI,GAAQ,CAAC;IACb,IAAI,GAAQ,CAAC;IAEb,IAAI,eAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE;QACtC,IAAI;YACF,OAAO;YACP,GAAG,GAAG,MAAM,iBAAc,CAAC,aAAa,CAAC;gBACvC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,KAAK,EAAE,GAAG,CAAC,EAAE;oBACb,eAAe;oBACf,YAAY;oBACZ,0BAA0B;iBAC3B;aACF,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,GAAG,GAAG,KAAK,CAAC;SACb;QACD,aAAa,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAClC,iBAAiB,CAAC;gBAChB,GAAG,SAAS;gBACZ,GAAG;gBACH,GAAG;aACJ,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;SAAM,IAAI,eAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE;QAC7C,aAAa;KACd;SAAM;QACL,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAExD,IAAI,UAAU,GAAU,EAAE,CAAC;QAC3B,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,YAAY,EAAE;YACtC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SACzC;QAED,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACrC,MAAM,EAAE,CAAC,SAAS,CAAC,eAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE;YAChD,MAAM,EAAE,CAAC;SACV,CAAC,CAAC;KACJ;IACD,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACvB,OAAO,GAAG,CAAC;AACb,CAAC;AAeD,SAAgB,SAAS,CAAC,GAAa;IACrC,GAAG,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAC3B,GAAG,CAAC,eAAe,GAAG,EAAE,CAAC;IACzB,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;IACtB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;IACxB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;IAElB,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,UAA0B,KAAU;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,IAAI,QAAQ,CAAC,MAAM,EAAE;YACnB,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACtB,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;SACnC;QACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACtB,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACrC,iBAAS,CAAC,WAAW,CAAC,QAAQ,EAAE;oBAC9B,SAAS,EAAE;wBACT,OAAO,EAAE,cAAc;qBACxB;iBACF,CAAC,CAAC;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;SACV;QACD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE;YAChC,QAAQ,CAAC,UAAU,GAAG,KAAK,EAAE,SAAS,CAAC;YACvC,QAAQ,CAAC,OAAO,GAAG,KAAK,EAAE,MAAM,CAAC;SAClC;QACD,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QAC9B,IAAI,QAAQ,CAAC,kBAAkB,KAAK,CAAC,EAAE;YACrC,IAAI,QAAQ,CAAC,MAAM,EAAE;gBACnB,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAC/B;YACD,iCAAiC;YACjC,MAAM,cAAc,GAAG,QAAQ,CAAC,eAAe,CAAC;YAChD,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC;YACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC;YAChC,QAAQ,CAAC,eAAe,GAAG,EAAE,CAAC;YAC9B,QAAQ,CAAC,UAAU,GAAG,EAAE,CAAC;YACzB,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;YACtB,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE;gBAC1D,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAC7B,QAAQ,CAAC,UAAU,EAAE,iBAAiB,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACrD,KAAK,EAAE,cAAc;iBACtB,CAAC,CAAC;gBACH,MAAM,QAAQ,CAAC,QAAQ,EAAE;oBACvB,IAAI,EAAE,cAAc;oBACpB,SAAS;oBACT,MAAM;iBACP,CAAC,CAAC;aACJ;SACF;aAAM,IAAI,QAAQ,CAAC,kBAAkB,GAAG,CAAC,EAAE;YAC1C,QAAQ,CAAC,kBAAkB,GAAG,CAAC,CAAC;YAChC,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;SAC5B;IACH,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,UAA0B,KAAU;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,SAAS;QACT,IAAI,QAAQ,CAAC,kBAAkB,KAAK,CAAC,EAAE;YACrC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACrD,KAAK,EAAE,CAAC,KAAK,CAAC;aACf,CAAC,CAAC;YACH,IAAI,SAAS,GAAG,EAAE,CAAC;YACnB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;YACnD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;YACvC,QAAQ,MAAM,EAAE;gBACd,KAAK,QAAQ;oBACX,SAAS,GAAG,IAAI,CAAC;oBACjB,MAAM;gBACR,KAAK,QAAQ;oBACX,SAAS,GAAG,IAAI,CAAC;oBACjB,MAAM;gBACR,KAAK,QAAQ;oBACX,SAAS,GAAG,IAAI,CAAC;oBACjB,MAAM;aACT;YACD,SAAS,IAAI,IAAA,kCAAqB,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC;YACtD,IAAI,IAAI,EAAE;gBACR,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC;aAC1B;YACD,QAAQ,CAAC,QAAQ,EAAE;gBACjB,IAAI,EAAE,CAAC,KAAK,CAAC;gBACb,SAAS;aACV,CAAC,CAAC;SACJ;aAAM;YACL,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACtC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AArHD,8BAqHC;AASD;;;;GAIG;AACI,KAAK,UAAU,OAAO,CAAC,KAAc;IAC1C,IAAI;QACF,SAAS;QACT,oBAAoB,EAAE,CAAC;KACxB;IAAC,OAAM,GAAG,EAAE,GAAG;IAChB,IAAI,GAAQ,CAAC;IACb,IAAI,eAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE;QACtC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG;YACf,iBAAc,CAAC,UAAU,CAAC;gBACxB,IAAI,EAAE;oBACJ;wBACE,IAAI,EAAE,KAAK;wBACX,uBAAuB;qBACxB;iBACF;gBACD,OAAO,EAAE;oBACP,KAAK;oBACL,gBAAgB,EAAE,MAAM;oBACxB,0BAA0B;iBAC3B;gBACD,MAAM,EAAE;oBACN,aAAa,EAAE,KAAK;iBACrB;aACF,CAAC;YACF,iBAAc,CAAC,UAAU,CAAC;gBACxB,IAAI,EAAE,EAAE,KAAK,EAAE;aAChB,CAAC;SACH,CAAA;QAED,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAElE,KAAK;QACL,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAE9B,YAAY,GAAG,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC;QACpD,MAAM,IAAI,GAAG,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC;QAEzC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,GAAG,GAAG,IAAI,cAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAEvD,aAAa,EAAE,OAAO,CAAC,CAAC,OAAuB,EAAE,EAAE,EAAE;YACnD,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;YAEvC,IAAI,gBAAgB,EAAE;gBACpB,MAAM,IAAI,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;gBAErC,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAA;iBACnC;aACF;QACH,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACX,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;SAChB;QACD,IAAA,sCAAyB,EAAC,GAAG,CAAC,CAAA;KAC/B;SAAM,IAAI,eAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE;QAC7C,GAAG,GAAG,IAAI,cAAG,CAAC;YACZ,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,EAAE;YACd,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,qBAAqB,EAAE,EAAE;YACzB,SAAS,EAAE,EAAE;SACd,CAAC,CAAC;KACJ;SAAM;QACL,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxD,GAAG,GAAG,IAAI,cAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KAClE;IACD,4BAA4B;IAC5B,SAAS,CAAC,GAAe,CAAC,CAAC;IAC1B,GAAW,CAAC,kBAAkB,GAAG,CAAC,CAAC;IACpC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,GAAU,CAAC;AACpB,CAAC;AAtFD,0BAsFC;AAED,kBAAkB;AACX,KAAK,UAAU,kBAAkB,CAAC,GAAQ;IAC/C,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;QAC1B,GAAG,CAAC,iBAAiB,GAAG,EAAE,CAAC;KAC5B;IACD,MAAM,WAAW,GAAG,GAAG,EAAE,WAAW,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACjC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,EAAE,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACpG,IAAI,iBAAiB,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE;gBAClE,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aAClC;QACH,CAAC,CAAC,CAAC;KACJ;IACD,MAAM,OAAO,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE;QAC5C,MAAM,GAAG,GAAQ,MAAM,IAAA,qBAAa,EAAC;YACnC,KAAK,EAAE;gBACL,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;aAC3B;SACF,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,GAAG,CAAC,OAAO,CAAC,CAAC,YAAiB,EAAE,EAAE;gBAChC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,IAAI,EAAE,CAAC;gBACnD,MAAM,aAAa,GAAQ,EAAE,CAAC;gBAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;wBACjC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC;wBAC/C,MAAM,eAAe,GAAQ,EAAE,CAAC;wBAChC,IAAI,mBAAmB,CAAC;wBACxB,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;4BAChC,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;gCACrC,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,IAAI,EAAE,CAAC;gCACpC,IAAI,IAAI,EAAE;oCACR,eAAe,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC;oCACrC,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC;oCACrC,IAAI,WAAW,EAAE;wCACf,mBAAmB,GAAG,YAAY,CAAC;qCACpC;iCACF;4BACH,CAAC,CAAC,CAAC;yBACJ;wBACD,aAAa,CAAC,QAAQ,CAAC,GAAG;4BACxB,aAAa;4BACb,eAAe;4BACf,mBAAmB;yBACpB,CAAC;oBACJ,CAAC,CAAC,CAAC;iBACJ;gBACD,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;YAChD,CAAC,CAAC,CAAC;SACJ;KACF;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACjC,UAAU,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;KACJ;AACH,CAAC;AA1DD,gDA0DC;AAED;;;GAGG;AACH,SAAgB,WAAW;IACzB,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,eAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,IAAI,cAAG,CAAC,IAAI,CAAC,CAAC;IAC1B,SAAS,CAAC,GAAe,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC;AACb,CAAC;AALD,kCAKC"}
@@ -41,3 +41,4 @@ export declare type NoReadonly<T> = {
41
41
  };
42
42
  export declare function toBriefExpr(expression: LogicItem): string;
43
43
  export declare function replaceNode(oldNode: any, newNode: any): void;
44
+ export declare function attrConvertCamelCase(str: string): string;
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.replaceNode = exports.toBriefExpr = exports.shouldLoadCss = exports.specialOfficialCustoms = exports.officialCustoms = exports.waitPromise = exports.clearObjectDeep = exports.clearObject = exports.throttle = exports.getGlobalEnv = exports.findConceptValueFromNamespace = exports.findConceptKeyWordIndexFromNamespace = exports.findConceptKeyWordByNamespace = exports.findClosestModule = void 0;
17
+ exports.attrConvertCamelCase = exports.replaceNode = exports.toBriefExpr = exports.shouldLoadCss = exports.specialOfficialCustoms = exports.officialCustoms = exports.waitPromise = exports.clearObjectDeep = exports.clearObject = exports.throttle = exports.getGlobalEnv = exports.findConceptValueFromNamespace = exports.findConceptKeyWordIndexFromNamespace = exports.findConceptKeyWordByNamespace = exports.findClosestModule = void 0;
18
18
  const compare_versions_1 = require("compare-versions");
19
19
  const traverse_1 = require("./traverse");
20
20
  __exportStar(require("./string"), exports);
@@ -185,4 +185,17 @@ function replaceNode(oldNode, newNode) {
185
185
  }
186
186
  }
187
187
  exports.replaceNode = replaceNode;
188
+ function attrConvertCamelCase(str) {
189
+ let strList = str.split('-');
190
+ strList = strList.map((strItem, index) => {
191
+ if (index === 0) {
192
+ return strItem;
193
+ }
194
+ else {
195
+ return `${strItem.slice(0, 1).toUpperCase()}${strItem.slice(1)}`;
196
+ }
197
+ });
198
+ return strList.join('');
199
+ }
200
+ exports.attrConvertCamelCase = attrConvertCamelCase;
188
201
  //# sourceMappingURL=index.js.map