emberflow 1.4.96 → 1.4.98
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.
- package/lib/index.d.ts +4 -1
- package/lib/index.js +22 -6
- package/lib/index.js.map +1 -1
- package/lib/init-db-structure.d.ts +3 -1
- package/lib/init-db-structure.js +19 -2
- package/lib/init-db-structure.js.map +1 -1
- package/lib/logics/view-logics.js +37 -51
- package/lib/logics/view-logics.js.map +1 -1
- package/lib/tests/index-utils.test.js +2 -2
- package/lib/tests/index-utils.test.js.map +1 -1
- package/lib/tests/init-db-structure.test.js +53 -0
- package/lib/tests/init-db-structure.test.js.map +1 -1
- package/lib/tests/logics/view-logics.test.js +10 -52
- package/lib/tests/logics/view-logics.test.js.map +1 -1
- package/lib/tests/on-message-error-handling.test.d.ts +1 -0
- package/lib/tests/on-message-error-handling.test.js +108 -0
- package/lib/tests/on-message-error-handling.test.js.map +1 -0
- package/lib/tests/transform-logic-doc.test.d.ts +1 -0
- package/lib/tests/transform-logic-doc.test.js +93 -0
- package/lib/tests/transform-logic-doc.test.js.map +1 -0
- package/lib/types.d.ts +5 -0
- package/lib/utils/paths.d.ts +0 -1
- package/lib/utils/paths.js +1 -17
- package/lib/utils/paths.js.map +1 -1
- package/package.json +1 -1
|
@@ -235,7 +235,7 @@ describe("createViewLogicFn", () => {
|
|
|
235
235
|
};
|
|
236
236
|
const result = await logicFn[1](logicResultDoc, targetVersion, appVersion);
|
|
237
237
|
expect(result.documents.length).toEqual(0);
|
|
238
|
-
expect(console.error).toHaveBeenCalledWith("
|
|
238
|
+
expect(console.error).toHaveBeenCalledWith("srcPath should not have a placeholder");
|
|
239
239
|
});
|
|
240
240
|
it("should log error when srcPath includes placeholder", async () => {
|
|
241
241
|
jest.spyOn(console, "error").mockImplementation();
|
|
@@ -251,7 +251,7 @@ describe("createViewLogicFn", () => {
|
|
|
251
251
|
};
|
|
252
252
|
const result = await logicFn[1](logicResultDoc, targetVersion, appVersion);
|
|
253
253
|
expect(result.documents.length).toEqual(0);
|
|
254
|
-
expect(console.error).toHaveBeenCalledWith("
|
|
254
|
+
expect(console.error).toHaveBeenCalledWith("srcPath should not have a placeholder");
|
|
255
255
|
});
|
|
256
256
|
it("should create @views doc", async () => {
|
|
257
257
|
let logicFn = viewLogics.createViewLogicFn(vd1);
|
|
@@ -642,7 +642,7 @@ describe("createViewLogicFn", () => {
|
|
|
642
642
|
};
|
|
643
643
|
const result = await logicFn[1](logicResultDoc, targetVersion, appVersion);
|
|
644
644
|
expect(result.status).toBe("error");
|
|
645
|
-
expect(result.message).toBe("
|
|
645
|
+
expect(result.message).toBe("srcPath should not have a placeholder");
|
|
646
646
|
});
|
|
647
647
|
it("should create delete logicDoc if viewDoc path doesn't exist anymore", async () => {
|
|
648
648
|
dbGetAllMock.mockResolvedValue([
|
|
@@ -1201,8 +1201,8 @@ describe("createViewLogicFn", () => {
|
|
|
1201
1201
|
jest.spyOn(console, "error").mockImplementation();
|
|
1202
1202
|
const result = await logicFn[1](logicResultDoc, "1.0.0", "1.0.0");
|
|
1203
1203
|
expect(result.status).toBe("error");
|
|
1204
|
-
expect(result.message).toBe("
|
|
1205
|
-
expect(console.error).toHaveBeenCalledWith("
|
|
1204
|
+
expect(result.message).toBe("srcPath should not have a placeholder");
|
|
1205
|
+
expect(console.error).toHaveBeenCalledWith("srcPath should not have a placeholder");
|
|
1206
1206
|
});
|
|
1207
1207
|
it("should extract srcDocId from viewDoc even if it differs from dstPath last segment", async () => {
|
|
1208
1208
|
const logicFn = viewLogics.createViewLogicFn(vd1);
|
|
@@ -1246,7 +1246,7 @@ describe("createViewLogicFn", () => {
|
|
|
1246
1246
|
it("should return finished logicResult with 2 documents", async () => {
|
|
1247
1247
|
jest.spyOn(paths_1._mockable, "doesPathExists").mockResolvedValue(false);
|
|
1248
1248
|
const result = await logicFn[1](logicResultDoc, targetVersion, appVersion);
|
|
1249
|
-
expect(result.name).toBe("menuItemIngredient
|
|
1249
|
+
expect(result.name).toBe("menuItemIngredient Dst-to-Src");
|
|
1250
1250
|
expect(result.status).toBe("finished");
|
|
1251
1251
|
expect(result.timeFinished).toBe(undefined);
|
|
1252
1252
|
});
|
|
@@ -1266,7 +1266,7 @@ describe("createViewLogicFn", () => {
|
|
|
1266
1266
|
jest.spyOn(paths_1._mockable, "doesPathExists").mockResolvedValue(false);
|
|
1267
1267
|
const errorSpy = jest.spyOn(console, "error").mockImplementation();
|
|
1268
1268
|
const result = await logicFn[1](invalidLogicResultDoc, targetVersion, appVersion);
|
|
1269
|
-
expect(errorSpy).toHaveBeenCalledWith("
|
|
1269
|
+
expect(errorSpy).toHaveBeenCalledWith("invalid syncCreate dstPath, topics/topic21/menus/menu1#ingredients");
|
|
1270
1270
|
expect(result.documents.length).toEqual(1);
|
|
1271
1271
|
expect(result.documents[0].dstPath).not.toBe("@syncCreateViews/topics+topic21+menus+menu1+ingredients");
|
|
1272
1272
|
});
|
|
@@ -1274,7 +1274,7 @@ describe("createViewLogicFn", () => {
|
|
|
1274
1274
|
const infoSpy = jest.spyOn(console, "info").mockImplementation();
|
|
1275
1275
|
jest.spyOn(paths_1._mockable, "doesPathExists").mockResolvedValue(true);
|
|
1276
1276
|
const result = await logicFn[1](logicResultDoc, targetVersion, appVersion);
|
|
1277
|
-
expect(infoSpy).toHaveBeenCalledWith("
|
|
1277
|
+
expect(infoSpy).toHaveBeenCalledWith("@syncCreateViews/topics+topic21+menus+menu1+ingredients already exists — skipping creation.");
|
|
1278
1278
|
expect(result.documents.length).toEqual(1);
|
|
1279
1279
|
expect(result.documents[0].dstPath).not.toBe("@syncCreateViews/topics+topic21+menus+menu1+ingredients");
|
|
1280
1280
|
});
|
|
@@ -1389,7 +1389,7 @@ describe("queueRunViewLogics", () => {
|
|
|
1389
1389
|
};
|
|
1390
1390
|
await viewLogics.queueRunViewLogics(targetVersion, appVersion, [doc1]);
|
|
1391
1391
|
expect(findMatchingViewLogicsSpy).toHaveBeenCalled();
|
|
1392
|
-
expect(publishMessageSpy).toHaveBeenCalledWith({ json: { doc: doc1, targetVersion, appVersion
|
|
1392
|
+
expect(publishMessageSpy).toHaveBeenCalledWith({ json: { "doc": doc1, targetVersion, appVersion } });
|
|
1393
1393
|
});
|
|
1394
1394
|
it("should capture unwrapped view document data when action is delete", async () => {
|
|
1395
1395
|
// Mock findMatchingViewLogics to return a match for this test
|
|
@@ -1413,10 +1413,9 @@ describe("queueRunViewLogics", () => {
|
|
|
1413
1413
|
expect(docSpy).toHaveBeenCalledWith("servers/server1");
|
|
1414
1414
|
expect(publishMessageSpy).toHaveBeenCalledWith({
|
|
1415
1415
|
json: {
|
|
1416
|
-
doc: Object.assign(Object.assign({}, doc1), { doc: mockData.createdBy }),
|
|
1416
|
+
"doc": Object.assign(Object.assign({}, doc1), { doc: mockData.createdBy }),
|
|
1417
1417
|
targetVersion,
|
|
1418
1418
|
appVersion,
|
|
1419
|
-
lastProcessedId: undefined,
|
|
1420
1419
|
},
|
|
1421
1420
|
});
|
|
1422
1421
|
docSpy.mockRestore();
|
|
@@ -1601,45 +1600,4 @@ describe("findMatchingViewLogics", () => {
|
|
|
1601
1600
|
expect(result === null || result === void 0 ? void 0 : result.has("user#todosArray Reverse ViewLogic")).toBe(true);
|
|
1602
1601
|
});
|
|
1603
1602
|
});
|
|
1604
|
-
describe("runViewLogics with dstPath#prop", () => {
|
|
1605
|
-
const targetVersion = "1.0.0";
|
|
1606
|
-
const appVersion = "1.0.0";
|
|
1607
|
-
beforeEach(() => {
|
|
1608
|
-
jest.clearAllMocks();
|
|
1609
|
-
jest.spyOn(paths_1._mockable, "doesPathExists").mockResolvedValue(true);
|
|
1610
|
-
(0, index_1.initializeEmberFlow)(projectConfig, admin, db_structure_1.dbStructure, db_structure_1.Entity, security_1.securityConfigs, validators_1.validatorConfigs, [], []);
|
|
1611
|
-
});
|
|
1612
|
-
it("should convert dstPath#prop to nested object in runViewLogics", async () => {
|
|
1613
|
-
const logicResultDoc = {
|
|
1614
|
-
action: "merge",
|
|
1615
|
-
dstPath: "users/userId#name",
|
|
1616
|
-
doc: { name: "John Doe" },
|
|
1617
|
-
};
|
|
1618
|
-
const matchingLogicsMock = new Map();
|
|
1619
|
-
const viewLogicFn = jest.fn().mockResolvedValue({ status: "finished", documents: [] });
|
|
1620
|
-
matchingLogicsMock.set("dummy ViewLogic", { name: "dummy ViewLogic", viewLogicFn });
|
|
1621
|
-
jest.spyOn(viewLogics, "findMatchingViewLogics").mockReturnValue(matchingLogicsMock);
|
|
1622
|
-
await viewLogics.runViewLogics(logicResultDoc, targetVersion, appVersion);
|
|
1623
|
-
expect(viewLogicFn).toHaveBeenCalledWith(expect.objectContaining({
|
|
1624
|
-
dstPath: "users/userId",
|
|
1625
|
-
doc: { name: { name: "John Doe" } },
|
|
1626
|
-
}), targetVersion, appVersion, undefined);
|
|
1627
|
-
});
|
|
1628
|
-
it("should NOT convert dstPath#prop[id] to nested object in runViewLogics", async () => {
|
|
1629
|
-
const logicResultDoc = {
|
|
1630
|
-
action: "merge",
|
|
1631
|
-
dstPath: "posts/postId#likes[userId]",
|
|
1632
|
-
doc: { likedAt: 123456789 },
|
|
1633
|
-
};
|
|
1634
|
-
const matchingLogicsMock = new Map();
|
|
1635
|
-
const viewLogicFn = jest.fn().mockResolvedValue({ status: "finished", documents: [] });
|
|
1636
|
-
matchingLogicsMock.set("dummy ViewLogic", { name: "dummy ViewLogic", viewLogicFn });
|
|
1637
|
-
jest.spyOn(viewLogics, "findMatchingViewLogics").mockReturnValue(matchingLogicsMock);
|
|
1638
|
-
await viewLogics.runViewLogics(logicResultDoc, targetVersion, appVersion);
|
|
1639
|
-
expect(viewLogicFn).toHaveBeenCalledWith(expect.objectContaining({
|
|
1640
|
-
dstPath: "posts/postId#likes[userId]",
|
|
1641
|
-
doc: { likedAt: 123456789 },
|
|
1642
|
-
}), targetVersion, appVersion, undefined);
|
|
1643
|
-
});
|
|
1644
|
-
});
|
|
1645
1603
|
//# sourceMappingURL=view-logics.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-logics.test.js","sourceRoot":"","sources":["../../../src/tests/logics/view-logics.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AAClC,MAAM,qBAAqB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AACxC,qEAAuD;AAGvD,8DAAgD;AAChD,mDAAyC;AACzC,uCAIqB;AACrB,sDAAwC;AACxC,2DAA6D;AAC7D,+DAAgE;AAChE,mEAAqE;AAErE,IAAO,SAAS,GAAG,0BAAS,CAAC,SAAS,CAAC;AACvC,6CAA6D;AAE7D,mDAAwE;AACxE,0DAAgE;AAChE,yDAA2C;AAE3C,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,OAAO;QACL,WAAW,EAAE;YACX,WAAW,EAAE,eAAe;YAC5B,iBAAiB,EAAE,qBAAqB;SACzC;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,aAAa,GAAkB;IACnC,SAAS,EAAE,iBAAiB;IAC5B,MAAM,EAAE,iBAAiB;IACzB,QAAQ,EAAE,gBAAgB;IAC1B,oBAAoB,EAAE,eAAe;IACrC,uBAAuB,EAAE,GAAG;IAC5B,2BAA2B,EAAE;QAC3B,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,GAAG;KACf;CACF,CAAC;AACF,KAAK,CAAC,aAAa,CAAC;IAClB,WAAW,EAAE,qCAAqC;CACnD,CAAC,CAAC;AACH,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACpE,IAAA,2BAAmB,EAAC,aAAa,EAAE,KAAK,EAAE,0BAAW,EAAE,qBAAM,EAAE,0BAAe,EAAE,6BAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAE1G,MAAM,GAAG,GAAmB;IAC1B,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;IACnC,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF,MAAM,GAAG,GAAmB;IAC1B,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC5B,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;KAClB;IACD,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF,MAAM,GAAG,GAAmB;IAC1B,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC;IACvD,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE;QACR,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,KAAK;KACZ;IACD,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF,MAAM,GAAG,GAAmB;IAC1B,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;IACnC,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF,MAAM,oBAAoB,GAAmB;IAC3C,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,YAAY;IACrB,GAAG,EAAE;QACH,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,IAAI;KACZ;IACD,QAAQ,EAAE,QAAQ;CACnB,CAAC;AAEF,MAAM,mBAAmB,GAAmB;IAC1C,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,YAAY;IACrB,GAAG,EAAE;QACH,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,CAAC;KACV;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,IAAI;KACV;IACD,QAAQ,EAAE,QAAQ;CACnB,CAAC;AAEF,MAAM,oBAAoB,GAAmB;IAC3C,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE;QACH,KAAK,EAAE,MAAM;KACd;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAmB;IACzC,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE;QACH,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,EAAE;KACV;CACF,CAAC;AAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAI,UAA4B,CAAC;IACjC,IAAI,UAA4B,CAAC;IACjC,IAAI,aAA+B,CAAC;IACpC,IAAI,UAA4B,CAAC;IACjC,IAAI,MAAwB,CAAC;IAC7B,IAAI,eAA0B,CAAC;IAC/B,IAAI,eAA0B,CAAC;IAC/B,IAAI,YAAuB,CAAC;IAE5B,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAE,EAAE,EAAC,CAAC,CAAC;QACrD,aAAa,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAC1B,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACvB,eAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAC5B,eAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAClD,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE;YAC7D,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;gBAC7C,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;gBAChB,GAAG,EAAE,GAAG;aACT,CAAC,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC;YACvC,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,KAAK;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;YAC7D,OAAO;gBACL,MAAM,EAAE,eAAe;gBACvB,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;gBACd,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;gBACjB,MAAM,EAAE,eAAe;aACW,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAEzE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,YAAY,CAAC,CAAC,sBAAsB,CAAC,GAAG,EAAE;YACtE,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oBAC/B,GAAG,EAAE,UAAU;iBAChB,CAAC;aAC+B,CAAC;QACtC,CAAC,CAAC,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE;YACxE,OAAO;gBACL,IAAI;gBACJ,GAAG,EAAE,UAAU;gBACf,MAAM,EAAE,aAAa;gBACrB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oBACpC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;wBAC/B,GAAG,EAAE,UAAU;wBACf,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;4BAC/B,GAAG,EAAE,UAAU;yBAChB,CAAC;wBACF,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;4BAC/B,GAAG,EAAE,UAAU;4BACf,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;gCAC/B,GAAG,EAAE,UAAU;gCACf,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oCACpC,GAAG,EAAE,UAAU;iCAChB,CAAC;6BACH,CAAC;4BACF,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;gCAC/B,GAAG,EAAE,UAAU;gCACf,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oCAC/B,GAAG,EAAE,UAAU;iCAChB,CAAC;gCACF,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oCAC/B,GAAG,EAAE,UAAU;oCACf,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;wCAC/B,GAAG,EAAE,UAAU;qCAChB,CAAC;iCACH,CAAC;6BACH,CAAC;yBACH,CAAC;qBACH,CAAC;iBACH,CAAC;aAC6B,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC;IAE3B,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,QAAQ;YACjB,GAAG,EAAE;gBACH,IAAI,EAAE,UAAU;aACjB;YACD,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,4FAA4F,CAAC,CAAC;IAC3I,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAClE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,yBAAyB;YAClC,GAAG,EAAE;gBACH,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,UAAU;aACnB;YACD,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,4FAA4F,CAAC,CAAC;IAC3I,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,IAAI,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAEhD,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,8BAA8B,CAAC,CAAC;QACtF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;YACtC,MAAM,EAAE,YAAY;YACpB,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;YACrC,YAAY,EAAE,QAAQ;SACvB,CAAC,CAAC;QAEH,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAE5C,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,iCAAK,oBAAoB,KAAE,OAAO,EAAE,sCAAsC,KAAG,aAAa,EAAE,UAAU,CAAC,CAAC;QACjI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxB,cAAc,CAAC,SAAS,EAAE,wDAAwD,CAAC,CAAC;QACvF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;YACtC,IAAI,EAAE,sCAAsC;YAC5C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC5B,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAC9E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;YAC/C,YAAY,EAAE,YAAY;SAC3B,CAAC,CAAC;QAEH,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAE5C,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,iCAAK,oBAAoB,KAAE,OAAO,EAAE,uBAAuB,KAAG,aAAa,EAAE,UAAU,CAAC,CAAC;QAClH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxB,cAAc,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;YACtC,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC;YACvD,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,IAAI;iBAClC,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QACH,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QAEH,qDAAqD;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAChG,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC,CAAC;QACH,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QACH,MAAM,uBAAuB,mCACxB,oBAAoB,KACvB,GAAG,EAAE;gBACH,2BAA2B,EAAE,IAAI;aAClC,GACF,CAAC;QAEF,qDAAqD;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEpF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEH,qDAAqD;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;QAChF,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;QAChF,MAAM,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAC,IAAI,EAAE,0CAA0C,EAAC,CAAC,EAAE;YACxH,UAAU,EAAE;gBACV,KAAK,EAAE,QAAQ,EAAE,MAAM;aACxB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4FAA4F,EAAE,KAAK,IAAI,EAAE;QAC1G,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACC,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,sCAAsC;oBAC1C,GAAG,EAAE;wBACH,IAAI,EAAE,kDAAkD;qBACzD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,sCAAsC;4BAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,sCAAsC;oBAC1C,GAAG,EAAE;wBACH,IAAI,EAAE,wDAAwD;qBAC/D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,sCAAsC;4BAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,qCAAqC;oBACzC,GAAG,EAAE;wBACH,IAAI,EAAE,uDAAuD;qBAC9D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,qCAAqC;4BAC7C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,qCAAqC;oBACzC,GAAG,EAAE;wBACH,IAAI,EAAE,uDAAuD;qBAC9D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,qCAAqC;4BAC7C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACD,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACD,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,uBAAuB;oBAC3B,GAAG,EAAE;wBACH,IAAI,EAAE,wCAAwC;qBAC/C;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uBAAuB;4BAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,uBAAuB;oBAC3B,GAAG,EAAE;wBACH,IAAI,EAAE,wCAAwC;qBAC/C;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uBAAuB;4BAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEL,qDAAqD;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3C,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QACrE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QACxG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;QAErD,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QACrE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QACxG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;QAErD,qDAAqD;QACrD,MAAM,QAAQ,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAEnD,+CAA+C;QAC/C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAElF,mGAAmG;QACnG,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5C,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC;QACnF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QAExG,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC;QACnF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QAExG,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;QAClF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QAExG,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;QAClF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QAExG,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEvF,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEjD,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QAErE,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QAErE,qDAAqD;QACrD,MAAM,QAAQ,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAEnD,+CAA+C;QAC/C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEjF,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5C,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;QACpE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;QAEvI,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;QACpE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC;IACzI,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,eAAe;YAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,kBAAkB;YAC9B,QAAQ,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,KAAK;aACZ;YACD,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,6DAA6D,CAAC;QAC9E,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,OAAO;YACf,OAAO;YACP,GAAG,EAAE;gBACH,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,UAAU;aACtB;YACD,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAE3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qHAAqH,CAAC,CAAC;IAClK,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,kBAAkB;YAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,kBAAkB;YAC9B,QAAQ,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,KAAK;aACZ;YACD,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,uEAAuE,CAAC;QACxF,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,EAAE;gBACH,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,SAAS;aACrB;SACF,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAE3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,mIAAmI,CAAC,CAAC;IAChL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,eAAe;YAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,kBAAkB;YAC9B,QAAQ,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,KAAK;aACZ;YACD,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,uEAAuE,CAAC;QACxF,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,OAAO;YACf,OAAO;YACP,GAAG,EAAE;gBACH,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,aAAa;aACrB;SACF,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,YAAY,CAAC,iBAAiB,CAAC;YAC7B,EAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;YACjC,EAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;SAClC,CAAC,CAAC;QACH,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACC,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,sCAAsC;oBAC1C,GAAG,EAAE;wBACH,IAAI,EAAE,kDAAkD;qBACzD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,sCAAsC;4BAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,sCAAsC;oBAC1C,GAAG,EAAE;wBACH,IAAI,EAAE,wDAAwD;qBAC/D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,sCAAsC;4BAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,qCAAqC;oBACzC,GAAG,EAAE;wBACH,IAAI,EAAE,uDAAuD;qBAC9D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,qCAAqC;4BAC7C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,qCAAqC;oBACzC,GAAG,EAAE;wBACH,IAAI,EAAE,uDAAuD;qBAC9D;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,qCAAqC;4BAC7C,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;yBAC/B,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACD,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,wBAAwB;4BAChC,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC;aACD,qBAAqB,CAAC;YACrB,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,uBAAuB;oBAC3B,GAAG,EAAE;wBACH,IAAI,EAAE,wCAAwC;qBAC/C;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uBAAuB;4BAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,uBAAuB;oBAC3B,GAAG,EAAE;wBACH,IAAI,EAAE,wCAAwC;qBAC/C;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uBAAuB;4BAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;yBAClC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEL,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3C,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;QAEvF,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;QAC5F,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,KAAK;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,8BAA8B;oBAClC,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;wBAChD,MAAM,EAAE;4BACN,MAAM,EAAE;gCACN,EAAE,EAAE,MAAM;6BACX;yBACF;qBACF;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,8BAA8B;4BACtC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,uCAAuC;oBAC3C,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;wBAChD,MAAM,EAAE;4BACN,MAAM,EAAE;gCACN,EAAE,EAAE,MAAM;6BACX;yBACF;qBACF;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uCAAuC;4BAC/C,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3C,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;QAEvF,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;QACnG,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,KAAK;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QAEH,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE;YAC7D,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;gBAC7C,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;oBACX,OAAO,EAAE;wBACP,KAAK,EAAE,MAAM;wBACb,KAAK,EAAE,EAAE;wBACT,MAAM,EAAE,UAAU;qBACnB;iBACF,CAAC;gBACF,GAAG,EAAE,GAAG;aACT,CAAC,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAEzE,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,8BAA8B;oBAClC,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;wBAChD,MAAM,EAAE;4BACN,MAAM,EAAE;gCACN,EAAE,EAAE,MAAM;6BACX;yBACF;qBACF;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,8BAA8B;4BACtC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3C,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,UAAU,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,KAAK;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,EAAE,EAAC,EAAE,GAAG,EAAE,CAAC,CAAC;oBACzC,EAAE,EAAE,wBAAwB;oBAC5B,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;qBACjD;oBACD,IAAI,EAAE,GAAE,EAAE;wBACR,OAAO;4BACL,KAAK,EAAE,2BAA2B;4BAClC,YAAY,EAAE,MAAM;4BACpB,MAAM,EAAE,2BAA2B;4BACnC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC,CAAC,CAAC;gBACJ;oBACE,IAAI,EAAE,YAAY;oBAClB,KAAK,EAAE;wBACL,IAAI,EAAE,8BAA8B;qBACrC;oBACD,MAAM,EAAE,GAAE,EAAE;wBACV,OAAO;4BACL,KAAK,EAAE,YAAY;4BACnB,YAAY,EAAE,MAAM;4BACpB,MAAM,EAAE,2BAA2B;4BACnC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF;aACA;SACF,CAAC,CAAC;QACH,MAAM,qBAAqB,GACzB,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAEnE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAEhF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE5C,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,mBAAmB,CAAC,EAAE,YAAY,CAAC,CAAC;IAC3H,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACtE,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO;oBACL,2BAA2B,EAAE,KAAK;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC,qBAAqB,CAAC;YACvB,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO;oBACL,KAAK,EAAE,YAAY;oBACnB,YAAY,EAAE,MAAM;oBACpB,MAAM,EAAE,2BAA2B;oBACnC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;iBACtC,CAAC;YACJ,CAAC;YACD,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QACH,UAAU,CAAC,qBAAqB,CAAC;YAC/B,IAAI,EAAE,CAAC;oBACL,EAAE,EAAE,8BAA8B;oBAClC,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;wBAChD,MAAM,EAAE;4BACN,MAAM,EAAE;gCACN,EAAE,EAAE,MAAM;6BACX;yBACF;qBACF;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,8BAA8B;4BACtC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,EAAE;oBACD,EAAE,EAAE,uCAAuC;oBAC3C,GAAG,EAAE;wBACH,IAAI,EAAE,0CAA0C;wBAChD,MAAM,EAAE;4BACN,MAAM,EAAE;gCACN,EAAE,EAAE,MAAM;6BACX;yBACF;qBACF;oBACD,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO;4BACL,MAAM,EAAE,uCAAuC;4BAC/C,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;yBACtC,CAAC;oBACJ,CAAC;iBACF,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;QAElF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uGAAuG,EAAE,KAAK,IAAI,EAAE;QACrH,MAAM,OAAO,GAAG,qDAAqD,CAAC;QACtE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,kBAAkB;YAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YAClC,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;YAC3B,QAAQ,EAAE;gBACR,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,WAAW;aAClB;YACD,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,EAAE;gBACH,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,SAAS;aACrB;SACF,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,kBAAkB;QAClB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,mGAAmG,CAAC,CAAC;QAC9I,oBAAoB;QACpB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACvE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;YAC/C,cAAc,EAAE,mBAAmB;SACpC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,OAAO,GAAG,wDAAwD,CAAC;QACzE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,kBAAkB;YAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YAClC,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;YAC3B,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,+BAA+B;SAChC,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,mFAAmF;QACnF,oEAAoE;QACpE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sGAAsG,CAAC,CAAC;IACnJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,OAAO,GAAG,oDAAoD,CAAC;QACrE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;YAC5C,SAAS,EAAE,kBAAkB;YAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YAClC,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;YAC3B,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,EAAE;gBACH,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,SAAS;aACrB;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,kGAAkG,CAAC,CAAC;IAC/I,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAChG,oDAAoD;QACpD,MAAM,EAAE,GAAmB;YACzB,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,KAAK;aACZ;YACD,OAAO,EAAE,OAAO;SACjB,CAAC;QACF,MAAM,OAAO,GAAG,2BAA2B,CAAC;QAC5C,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAEjD,4HAA4H;QAC5H,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,EAAE;gBACH,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,SAAS;gBACnB,gBAAgB,EAAE,OAAO;aAC1B;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,gDAAgD;QAChD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+FAA+F,EAAE,KAAK,IAAI,EAAE;QAC7G,iCAAiC;QACjC,MAAM,OAAO,GAAG,gCAAgC,CAAC;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAElD,kFAAkF;QAClF,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO;YACP,GAAG,EAAE;gBACH,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,UAAU;aACnB;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,uDAAuD;QACvD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACvE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAC,YAAY,EAAE,eAAe,EAAC,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,0FAA0F;YAC1F,sHAAsH;YACtH,MAAM,QAAQ,GAAmB;gBAC/B,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,OAAO;aACjB,CAAC;YACF,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG,uDAAuD,CAAC;YACxE,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,aAAa;oBACpB,8DAA8D;iBAC/D;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,yBAAyB;YACzB,oDAAoD;YACpD,kDAAkD;YAClD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;QACjJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;YACrG,mEAAmE;YACnE,MAAM,QAAQ,GAAmB;gBAC/B,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,OAAO;aACjB,CAAC;YACF,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG,uDAAuD,CAAC;YACxE,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,aAAa;oBACpB,SAAS,EAAE,eAAe,EAAE,sCAAsC;iBACnE;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,2GAA2G,CAAC,CAAC;QACxJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;YACrG,MAAM,QAAQ,GAAmB;gBAC/B,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,OAAO;aACjB,CAAC;YACF,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvD,wGAAwG;YACxG,MAAM,OAAO,GAAG,+BAA+B,CAAC;YAChD,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,aAAa;oBACpB,qBAAqB;iBACtB;aACF,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YACvF,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,4FAA4F,CAAC,CAAC;QAC3I,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YACjG,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC;YAClC,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,cAAc,EAAE,uBAAuB;iBAC/C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,0BAA0B;YAC1B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC/B,MAAM,OAAO,GAAG,oDAAoD,CAAC;YACrE,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;gBAC5C,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;gBAClC,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;gBAC3B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC;YACH,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,cAAc;oBACrB,QAAQ,EAAE,CAAC;oBACX,YAAY,EAAE,gBAAgB;oBAC9B,SAAS,EAAE,SAAS;iBACrB;aACF,CAAC;YAEF,SAAS,CAAC,GAAG,EAAE;gBACb,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;gBACnE,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAErE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAC3E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;gBAClE,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAErE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACpG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;oBACtC,YAAY,EAAE,oBAAoB;oBAClC,SAAS,EAAE,wCAAwC;oBACnD,SAAS,EAAE,4BAA4B;iBACxC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,WAAW,GAAG,wCAAwC,CAAC;gBAC7D,MAAM,qBAAqB,mCACtB,cAAc,KACjB,OAAO,EAAE,WAAW,GACrB,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBAEnE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAClF,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,yHAAyH,CAAC,CAAC;gBACjK,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAC1G,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,wGAAwG,EAAE,KAAK,IAAI,EAAE;gBACtH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBACjE,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAEpE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAC3E,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,+GAA+G,CAAC,CAAC;gBACtJ,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAC1G,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC/B,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAE;gBAC5C,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;gBAClC,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;gBAC3B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,wCAAwC,CAAC;YACzD,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,QAAQ;gBAChB,OAAO;gBACP,GAAG,EAAE;oBACH,KAAK,EAAE,cAAc;oBACrB,QAAQ,EAAE,CAAC;oBACX,YAAY,EAAE,gBAAgB;oBAC9B,SAAS,EAAE,SAAS;iBACrB;aACF,CAAC;YAEF,MAAM,aAAa,GAAG,4BAA4B,CAAC;YACnD,MAAM,QAAQ,GAAG,wCAAwC,CAAC;YAC1D,MAAM,QAAQ,GAAG,mEAAmE,CAAC;YACrF,UAAU,CAAC,GAAG,EAAE;gBACd,UAAU,CAAC,iBAAiB,CAAC;oBAC3B,IAAI,EAAE,CAAC;4BACL,EAAE,EAAE,wCAAwC;4BAC5C,IAAI,EAAE,GAAG,EAAE;gCACT,OAAO;oCACL,YAAY,EAAE,oBAAoB;oCAClC,SAAS,EAAE,QAAQ;oCACnB,SAAS,EAAE,aAAa;iCACzB,CAAC;4BACJ,CAAC;yBACF,EAAE;4BACD,EAAE,EAAE,mDAAmD;4BACvD,IAAI,EAAE,GAAG,EAAE;gCACT,OAAO;oCACL,YAAY,EAAE,2BAA2B;oCACzC,UAAU,EAAE,aAAa;oCACzB,SAAS,EAAE,QAAQ;oCACnB,SAAS,EAAE,aAAa;iCACzB,CAAC;4BACJ,CAAC;yBACF,CAAC;iBACH,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAG,IAAI,CAAC,EAAE,EAAE;iBACjC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC/B,iBAAa,CAAC,cAAc,GAAG,kBAAkB,CAAC;YAElD,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;gBAClG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAC3E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,cAAc,CAAC,CAAC;gBACpE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;gBAClF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAE3E,MAAM,qBAAqB,GAAG,GAAG,aAAa,qBAAqB,CAAC;gBACpE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACtC,GAAG,qBAAqB,qDAAqD,CAAC,CAAC;gBACjF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;oBACtC,YAAY,EAAE,oBAAoB;oBAClC,MAAM,EAAE,GAAG,QAAQ,cAAc;oBACjC,UAAU,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;iBACrC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;gBAC3E,MAAM,eAAe,GAAG,UAAU,CAAC,iBAAiB,CAAC;oBACnD,SAAS,EAAE,kBAAkB;oBAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;oBAClC,UAAU,EAAE,2BAA2B;oBACvC,QAAQ,EAAE,EAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAC;oBAClD,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC;oBAC3B,OAAO,EAAE,OAAO;iBACjB,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;gBAEnF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACtC,uDAAuD,CAAC,CAAC;gBAC3D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC;oBAC/C,cAAc,EAAE,mBAAmB;iBACpC,CAAC,CAAC;gBACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,iBAAmC,CAAC;IACxC,IAAI,yBAA2C,CAAC;IAChD,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,yBAAiB,EAAE,gBAAgB,CAAC;aAChE,kBAAkB,CAAC,GAAG,EAAE;YACvB,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC,CAAC;QACL,8BAA8B;QAC9B,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC;YACnG,CAAC,OAAO,EAAE,EAAqB,CAAC;SACjC,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC;IAE3B,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,IAAI,GAAmB;YAC3B,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,QAAQ;YAClB,GAAG,EAAE,EAAC,IAAI,EAAE,qBAAqB,EAAC;YAClC,OAAO,EAAE,mCAAmC;SAC7C,CAAC;QACF,MAAM,UAAU,CAAC,kBAAkB,CAAC,aAAa,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAEvE,MAAM,CAAC,yBAAyB,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACrD,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC,EAAC,IAAI,EAAE,EAAC,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAC,EAAC,CAAC,CAAC;IAC7H,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,8DAA8D;QAC9D,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAErI,MAAM,IAAI,GAAmB;YAC3B,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,2BAA2B;SACrC,CAAC;QACF,MAAM,QAAQ,GAAG;YACf,SAAS,EAAE,EAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAC;YAChD,UAAU,EAAE,UAAU;SACvB,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC;YACzC,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ;SACrB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC;YAClE,GAAG,EAAE,MAAM;SACL,CAAC,CAAC;QAEV,MAAM,UAAU,CAAC,kBAAkB,CAAC,aAAa,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAEvE,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QACvD,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC;YAC7C,IAAI,EAAE;gBACJ,GAAG,kCACE,IAAI,KACP,GAAG,EAAE,QAAQ,CAAC,SAAS,GACxB;gBACD,aAAa;gBACb,UAAU;gBACV,eAAe,EAAE,SAAS;aAC3B;SACF,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,EAAE,CAAC;QACpB,UAAU,CAAC,sBAAoC,CAAC,WAAW,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAI,gBAAkC,CAAC;IACvC,IAAI,qCAAuD,CAAC;IAC5D,IAAI,aAA+B,CAAC;IACpC,IAAI,wBAA0C,CAAC;IAE/C,MAAM,gBAAgB,GAAkB;QACtC;YACE,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,0BAAS,CAAC,SAAS,CAAC,GAAG,EAAE;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,GAAG;YACb,SAAS,EAAE;gBACT;oBACE,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,YAAY;oBACrB,GAAG,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC;oBACvB,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC;iBAC7B;gBACD,EAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAC;aAC9D;SACF;QACD;YACE,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,0BAAS,CAAC,SAAS,CAAC,GAAG,EAAE;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,GAAG;YACb,SAAS,EAAE;gBACT;oBACE,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,YAAY;oBACrB,GAAG,EAAE,EAAC,MAAM,EAAE,SAAS,EAAC;oBACxB,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC;iBAC7B;gBACD;oBACE,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,YAAY;oBACrB,GAAG,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC;oBACvB,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC;iBAC7B;gBACD,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAC;gBAClF,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAC;gBACrF,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAC;aACtF;SACF;KACF,CAAC;IACF,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAA2B;QAChE,CAAC,YAAY,EAAE,CAAC;oBACd,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,YAAY;oBACrB,GAAG,EAAE,EAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAC;oBAC1C,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC;iBAC3C,CAAC,CAAC;QACH,CAAC,YAAY,EAAE,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAC,CAAC,CAAC;QAC/E,CAAC,YAAY,EAAE,CAAC,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;QACzG,CAAC,YAAY,EAAE,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAC,CAAC,CAAC;QAC/E,CAAC,YAAY,EAAE,CAAC,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,EAAC,CAAC,CAAC;KACxF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,IAAI,GAAmB;QAC3B,MAAM,EAAE,OAAO;QACf,QAAQ,EAAE,QAAQ;QAClB,GAAG,EAAE,EAAC,IAAI,EAAE,uBAAuB,EAAC;QACpC,OAAO,EAAE,SAAS,MAAM,EAAE;KAC3B,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI;oBACT,aAAa;oBACb,UAAU;iBACX;aACF;SACF;KACkC,CAAC;IAEtC,UAAU,CAAC,GAAG,EAAE;QACd,wBAAwB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACvG,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE;YACvF,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iCAAK,MAAM,KAAE,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,IAAE,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QACH,qCAAqC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,oCAAoC,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;QAChJ,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAEjD,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,8BAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,uBAAuB,GAAgB;YAC3C,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;SAC7B,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAEhE,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC1F,MAAM,wBAAwB,GAAG,IAAA,mDAAqC,EAAC,CAAC,GAAG,gBAAgB,EAAE,uBAAuB,CAAC,CAAC,CAAC;QACvH,MAAM,CAAC,wBAAwB,CAAC,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;QAChF,MAAM,CAAC,qCAAqC,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACjE,MAAM,UAAU,GAAG,qCAAqC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,6GAA6G;QAC7G,yDAAyD;QACzD,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CAAC,uBAAuB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACtF,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,8BAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACrF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,MAAM,cAAc,GAAmB;QACrC,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,gBAAgB;QACzB,GAAG,EAAE,EAAC,KAAK,EAAE,WAAW,EAAC;KAC1B,CAAC;IACF,UAAU,CAAC,GAAE,EAAE;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpE,IAAA,2BAAmB,EAAC,aAAa,EAAE,KAAK,EAAE,0BAAW,EAAE,qBAAM,EAAE,0BAAe,EAAE,6BAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC,eAAe,CAAC;YAC5D,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,MAAM,GAAG,IAAA,oCAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE/D,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;QAC9D,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;QACxE,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,yBAAyB;QAEtF,6BAA6B;QAC7B,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAC5C,MAAM,CAAC,gBAAgB,CAAC;YACtB,OAAO,EAAE,OAAO;SACjB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,IAAA,oCAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE/D,cAAc;QACd,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,WAAW;QACX,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,iBAAiB;QACjB,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;QAChG,MAAM,SAAS,GAAmB;YAChC,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,cAAc;YACvB,GAAG,EAAE,EAAC,KAAK,EAAE,WAAW,EAAC;SAC1B,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,oCAAsB,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE1D,yEAAyE;QACzE,4CAA4C;QAC5C,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,8DAA8D;QAC9D,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC,eAAe,CAAC;YAC5D,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAmB;YAC/B,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,iCAAiC;YAC1C,GAAG,EAAE,EAAC,KAAK,EAAE,eAAe,EAAC;SAC9B,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,oCAAsB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzD,+EAA+E;QAC/E,+EAA+E;QAC/E,MAAM,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC;IAE3B,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,iBAAa,EAAE,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpE,IAAA,2BAAmB,EAAC,aAAa,EAAE,KAAK,EAAE,0BAAW,EAAE,qBAAM,EAAE,0BAAe,EAAE,6BAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,mBAAmB;YAC5B,GAAG,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC;SACxB,CAAC;QAEF,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAC,CAAC,CAAC;QACrF,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAC,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAC,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAErF,MAAM,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAE1E,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CACtC,MAAM,CAAC,gBAAgB,CAAC;YACtB,OAAO,EAAE,cAAc;YACvB,GAAG,EAAE,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,EAAC;SAChC,CAAC,EACF,aAAa,EACb,UAAU,EACV,SAAS,CACV,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,cAAc,GAAmB;YACrC,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,4BAA4B;YACrC,GAAG,EAAE,EAAC,OAAO,EAAE,SAAS,EAAC;SAC1B,CAAC;QAEF,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAC,CAAC,CAAC;QACrF,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAC,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAC,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAErF,MAAM,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAE1E,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CACtC,MAAM,CAAC,gBAAgB,CAAC;YACtB,OAAO,EAAE,4BAA4B;YACrC,GAAG,EAAE,EAAC,OAAO,EAAE,SAAS,EAAC;SAC1B,CAAC,EACF,aAAa,EACb,UAAU,EACV,SAAS,CACV,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"view-logics.test.js","sourceRoot":"","sources":["../../../src/tests/logics/view-logics.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
const pubsub_1 = require("../utils/pubsub");
|
|
27
|
+
jest.mock("../utils/pubsub", () => ({
|
|
28
|
+
pubsubUtils: {
|
|
29
|
+
isProcessed: jest.fn(),
|
|
30
|
+
trackProcessedIds: jest.fn(),
|
|
31
|
+
},
|
|
32
|
+
}));
|
|
33
|
+
const viewLogics = __importStar(require("../logics/view-logics"));
|
|
34
|
+
const indexUtils = __importStar(require("../index-utils"));
|
|
35
|
+
const firebase_admin_1 = require("firebase-admin");
|
|
36
|
+
jest.mock("../index", () => ({
|
|
37
|
+
db: {
|
|
38
|
+
collection: jest.fn().mockReturnThis(),
|
|
39
|
+
doc: jest.fn().mockReturnThis(),
|
|
40
|
+
batch: jest.fn().mockReturnValue({
|
|
41
|
+
set: jest.fn(),
|
|
42
|
+
commit: jest.fn().mockResolvedValue(null),
|
|
43
|
+
}),
|
|
44
|
+
},
|
|
45
|
+
VIEW_LOGICS_TOPIC_NAME: "view-logics",
|
|
46
|
+
}));
|
|
47
|
+
describe("onMessageViewLogicsQueue Error Handling", () => {
|
|
48
|
+
let runViewLogicsSpy;
|
|
49
|
+
const doc1 = {
|
|
50
|
+
action: "merge",
|
|
51
|
+
priority: "normal",
|
|
52
|
+
doc: { name: "test" },
|
|
53
|
+
dstPath: "users/doc1",
|
|
54
|
+
};
|
|
55
|
+
const targetVersion = "1.0.0";
|
|
56
|
+
const appVersion = "1.0.0";
|
|
57
|
+
const eventWithNoJson = {
|
|
58
|
+
id: "event-id",
|
|
59
|
+
data: {
|
|
60
|
+
message: {
|
|
61
|
+
json: null,
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
const eventWithData = {
|
|
66
|
+
id: "event-id-2",
|
|
67
|
+
data: {
|
|
68
|
+
message: {
|
|
69
|
+
json: {
|
|
70
|
+
doc: doc1,
|
|
71
|
+
targetVersion,
|
|
72
|
+
appVersion,
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
beforeEach(() => {
|
|
78
|
+
jest.clearAllMocks();
|
|
79
|
+
// @ts-ignore
|
|
80
|
+
runViewLogicsSpy = jest.spyOn(viewLogics, "runViewLogics");
|
|
81
|
+
pubsub_1.pubsubUtils.isProcessed.mockResolvedValue(false);
|
|
82
|
+
});
|
|
83
|
+
afterEach(() => {
|
|
84
|
+
runViewLogicsSpy.mockRestore();
|
|
85
|
+
});
|
|
86
|
+
it("should throw 'No json in message' when json is missing", async () => {
|
|
87
|
+
await expect(viewLogics.onMessageViewLogicsQueue(eventWithNoJson)).rejects.toThrow("No json in message");
|
|
88
|
+
});
|
|
89
|
+
it("should handle runViewLogics returning a result with undefined message", async () => {
|
|
90
|
+
const resultWithUndefinedMessage = {
|
|
91
|
+
name: "test-logic",
|
|
92
|
+
status: "error",
|
|
93
|
+
message: undefined,
|
|
94
|
+
documents: [],
|
|
95
|
+
execTime: 10,
|
|
96
|
+
timeFinished: firebase_admin_1.firestore.Timestamp.now(),
|
|
97
|
+
};
|
|
98
|
+
runViewLogicsSpy.mockResolvedValue([resultWithUndefinedMessage]);
|
|
99
|
+
// Mock expand and distribute to avoid unnecessary work
|
|
100
|
+
jest.spyOn(indexUtils, "expandConsolidateAndGroupByDstPath").mockResolvedValue(new Map());
|
|
101
|
+
jest.spyOn(indexUtils, "distributeFnNonTransactional").mockResolvedValue([]);
|
|
102
|
+
jest.spyOn(indexUtils._mockable, "saveMetricExecution").mockResolvedValue();
|
|
103
|
+
// This should not throw Firestore validation error because we handle undefined message
|
|
104
|
+
await viewLogics.onMessageViewLogicsQueue(eventWithData);
|
|
105
|
+
// If we reached here, it didn't crash.
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
//# sourceMappingURL=on-message-error-handling.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"on-message-error-handling.test.js","sourceRoot":"","sources":["../../src/tests/on-message-error-handling.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
const index_1 = require("../index");
|
|
27
|
+
const index = __importStar(require("../index"));
|
|
28
|
+
describe('transformLogicResultDocIfNeeded', () => {
|
|
29
|
+
let originalEntityViewDefinitions;
|
|
30
|
+
let originalDocPathsRegex;
|
|
31
|
+
beforeAll(() => {
|
|
32
|
+
originalEntityViewDefinitions = Object.assign({}, index.entityViewDefinitions);
|
|
33
|
+
originalDocPathsRegex = Object.assign({}, index.docPathsRegex);
|
|
34
|
+
});
|
|
35
|
+
afterAll(() => {
|
|
36
|
+
// @ts-ignore
|
|
37
|
+
Object.keys(index.entityViewDefinitions).forEach(key => delete index.entityViewDefinitions[key]);
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
Object.assign(index.entityViewDefinitions, originalEntityViewDefinitions);
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
Object.keys(index.docPathsRegex).forEach(key => delete index.docPathsRegex[key]);
|
|
42
|
+
// @ts-ignore
|
|
43
|
+
Object.assign(index.docPathsRegex, originalDocPathsRegex);
|
|
44
|
+
});
|
|
45
|
+
it('should transform LogicResultDoc when destProp is present and no viewDefinition exists', () => {
|
|
46
|
+
// Setup entityViewDefinitions
|
|
47
|
+
// @ts-ignore
|
|
48
|
+
index.entityViewDefinitions['myEntity'] = {};
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
index.docPathsRegex['myEntity'] = /^myCollection\/([^/]+)$/;
|
|
51
|
+
const doc = {
|
|
52
|
+
dstPath: 'myCollection/myDoc#myProp',
|
|
53
|
+
doc: { prop1: 'hello' },
|
|
54
|
+
action: 'create',
|
|
55
|
+
priority: 'normal'
|
|
56
|
+
};
|
|
57
|
+
// @ts-ignore
|
|
58
|
+
const result = (0, index_1.transformLogicResultDocIfNeeded)(doc);
|
|
59
|
+
expect(result.dstPath).toBe('myCollection/myDoc');
|
|
60
|
+
expect(result.doc).toEqual({ myProp: { prop1: 'hello' } });
|
|
61
|
+
});
|
|
62
|
+
it('should NOT transform LogicResultDoc when destProp is present and viewDefinition EXISTS', () => {
|
|
63
|
+
// @ts-ignore
|
|
64
|
+
index.entityViewDefinitions['myEntity'] = {
|
|
65
|
+
'myProp': { destEntity: 'myEntity', destProp: { name: 'myProp', type: 'map' } }
|
|
66
|
+
};
|
|
67
|
+
// @ts-ignore
|
|
68
|
+
index.docPathsRegex['myEntity'] = /^myCollection\/([^/]+)$/;
|
|
69
|
+
const doc = {
|
|
70
|
+
dstPath: 'myCollection/myDoc#myProp',
|
|
71
|
+
doc: { prop1: 'hello' },
|
|
72
|
+
action: 'create',
|
|
73
|
+
priority: 'normal'
|
|
74
|
+
};
|
|
75
|
+
// @ts-ignore
|
|
76
|
+
const result = (0, index_1.transformLogicResultDocIfNeeded)(doc);
|
|
77
|
+
expect(result.dstPath).toBe('myCollection/myDoc#myProp');
|
|
78
|
+
expect(result.doc).toEqual({ prop1: 'hello' });
|
|
79
|
+
});
|
|
80
|
+
it('should NOT transform LogicResultDoc when NO destProp is present', () => {
|
|
81
|
+
const doc = {
|
|
82
|
+
dstPath: 'myCollection/myDoc',
|
|
83
|
+
doc: { prop1: 'hello' },
|
|
84
|
+
action: 'create',
|
|
85
|
+
priority: 'normal'
|
|
86
|
+
};
|
|
87
|
+
// @ts-ignore
|
|
88
|
+
const result = (0, index_1.transformLogicResultDocIfNeeded)(doc);
|
|
89
|
+
expect(result.dstPath).toBe('myCollection/myDoc');
|
|
90
|
+
expect(result.doc).toEqual({ prop1: 'hello' });
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=transform-logic-doc.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-logic-doc.test.js","sourceRoot":"","sources":["../../src/tests/transform-logic-doc.test.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -200,6 +200,11 @@ export interface ViewDefinition {
|
|
|
200
200
|
options?: ViewDefinitionOptions;
|
|
201
201
|
version: string;
|
|
202
202
|
}
|
|
203
|
+
export interface EntityViewDefinitions {
|
|
204
|
+
[entity: string]: {
|
|
205
|
+
[property: string]: ViewDefinition;
|
|
206
|
+
};
|
|
207
|
+
}
|
|
203
208
|
export type IdGenerator = (collectionPath: string) => Promise<string[]>;
|
|
204
209
|
export type ChunkableWhereFilterOp = "in" | "not-in" | "array-contains-any";
|
|
205
210
|
export interface QueryCondition {
|
package/lib/utils/paths.d.ts
CHANGED
|
@@ -40,5 +40,4 @@ export declare function getParentPath(path: string): string;
|
|
|
40
40
|
* @param {any} doc The document data.
|
|
41
41
|
*/
|
|
42
42
|
export declare function addAncestorIds(dstPath: string, doc: any): void;
|
|
43
|
-
export declare function convertLogicResultDocToNestedObject(logicResultDoc: any): void;
|
|
44
43
|
export {};
|