@flowselections/logistiek-engine 1.0.241 → 1.0.243
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/db/schema/logistiek-engine.sql +8794 -33
- package/dist-lib/components/BeheerPage.d.ts.map +1 -1
- package/dist-lib/components/BeheerPage.js +2 -1
- package/dist-lib/components/DataGereedheidCard.d.ts +1 -0
- package/dist-lib/components/DataGereedheidCard.d.ts.map +1 -1
- package/dist-lib/components/DataGereedheidCard.js +4 -3
- package/dist-lib/components/GeblokkeerdeOrdersCard.d.ts.map +1 -1
- package/dist-lib/components/GeblokkeerdeOrdersCard.js +14 -3
- package/dist-lib/components/GereedheidCard.d.ts +14 -0
- package/dist-lib/components/GereedheidCard.d.ts.map +1 -0
- package/dist-lib/components/GereedheidCard.js +60 -0
- package/dist-lib/components/LadingdragersPage.d.ts.map +1 -1
- package/dist-lib/components/LadingdragersPage.js +5 -1
- package/dist-lib/components/MinuutrondeCard.js +1 -1
- package/dist-lib/components/StandaardgegevensCard.d.ts.map +1 -1
- package/dist-lib/components/StandaardgegevensCard.js +25 -1
- package/dist-lib/components/StartlijstCard.d.ts.map +1 -1
- package/dist-lib/components/StartlijstCard.js +4 -1
- package/dist-lib/components/rule-engine/RuleFieldInput.d.ts.map +1 -1
- package/dist-lib/components/rule-engine/RuleFieldInput.js +1 -1
- package/dist-lib/hooks/useGeblokkeerdeOrders.d.ts +14 -0
- package/dist-lib/hooks/useGeblokkeerdeOrders.d.ts.map +1 -1
- package/dist-lib/hooks/useGeblokkeerdeOrders.js +40 -3
- package/dist-lib/index.d.ts +1 -0
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +1 -0
- package/dist-lib/integrations/supabase/types.d.ts +3014 -85
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/beladingRegels.d.ts +17 -0
- package/dist-lib/lib/beladingRegels.d.ts.map +1 -1
- package/dist-lib/lib/beladingRegels.js +29 -3
- package/dist-lib/lib/dimensionPlanner.d.ts +10 -0
- package/dist-lib/lib/dimensionPlanner.d.ts.map +1 -1
- package/dist-lib/lib/dimensionPlanner.js +20 -0
- package/dist-lib/lib/engineStatusTeksten.d.ts +1 -1
- package/dist-lib/lib/engineStatusTeksten.js +1 -1
- package/dist-lib/lib/flowRoute.d.ts.map +1 -1
- package/dist-lib/lib/flowRoute.js +2 -2
- package/dist-lib/lib/handlers/logistics-tick.server.d.ts +2 -0
- package/dist-lib/lib/handlers/logistics-tick.server.d.ts.map +1 -1
- package/dist-lib/lib/handlers/logistics-tick.server.js +259 -184
- package/dist-lib/lib/karindelingBewakingTeksten.d.ts +9 -0
- package/dist-lib/lib/karindelingBewakingTeksten.d.ts.map +1 -0
- package/dist-lib/lib/karindelingBewakingTeksten.js +26 -0
- package/dist-lib/lib/loadCarrierPlanning.server.d.ts +21 -0
- package/dist-lib/lib/loadCarrierPlanning.server.d.ts.map +1 -1
- package/dist-lib/lib/loadCarrierPlanning.server.js +162 -21
- package/dist-lib/lib/loadCarrierTypes.d.ts +2 -0
- package/dist-lib/lib/loadCarrierTypes.d.ts.map +1 -1
- package/dist-lib/lib/logisticsRecalcJob.server.d.ts.map +1 -1
- package/dist-lib/lib/logisticsRecalcJob.server.js +8 -1
- package/dist-lib/lib/moduleVersion.d.ts +1 -1
- package/dist-lib/lib/moduleVersion.js +1 -1
- package/dist-lib/lib/ruleEngineSchema.d.ts +2 -0
- package/dist-lib/lib/ruleEngineSchema.d.ts.map +1 -1
- package/dist-lib/lib/ruleEngineSchema.js +38 -1
- package/dist-lib/lib/scheduleTasks.server.d.ts +3 -1
- package/dist-lib/lib/scheduleTasks.server.d.ts.map +1 -1
- package/dist-lib/lib/scheduleTasks.server.js +5 -2
- package/dist-lib/lib/statusFase.d.ts +11 -0
- package/dist-lib/lib/statusFase.d.ts.map +1 -0
- package/dist-lib/lib/statusFase.js +58 -0
- package/dist-lib/lib/werkers.server.d.ts +17 -0
- package/dist-lib/lib/werkers.server.d.ts.map +1 -0
- package/dist-lib/lib/werkers.server.js +31 -0
- package/package.json +31 -1
|
@@ -110,13 +110,30 @@ export interface FysiekeInvoer {
|
|
|
110
110
|
ladingdrager_hoogte_cm: number | null;
|
|
111
111
|
max_crates_per_layer: number | null;
|
|
112
112
|
standaard_lagen: number | null;
|
|
113
|
+
/** Golf 1 / 11: blokkeergrens uit de werkwijze (standaard 1,5×). Daaronder is een afwijking een vraag. */
|
|
114
|
+
blokkeer_factor?: number | null;
|
|
115
|
+
/** Golf 1 / 11: eerder bevestigd aantal per laag voor dit product + fust + ladingdrager. */
|
|
116
|
+
laag_bevestigd?: number | null;
|
|
113
117
|
}
|
|
118
|
+
/** Golf 1 / 11: vraag "Klopt N?" als de bron meer fusten per laag opgeeft dan de berekening. */
|
|
119
|
+
export interface LaagVraag {
|
|
120
|
+
opgegeven: number;
|
|
121
|
+
berekend: number;
|
|
122
|
+
tekst: string;
|
|
123
|
+
}
|
|
124
|
+
export declare const STANDAARD_BLOKKEER_FACTOR = 1.5;
|
|
114
125
|
export type FysiekeStatus = "gecontroleerd" | "niet_te_controleren" | "onmogelijk";
|
|
115
126
|
export interface FysiekOordeel {
|
|
116
127
|
status: FysiekeStatus;
|
|
117
128
|
blokkeren: string[];
|
|
118
129
|
waarschuwen: string[];
|
|
119
130
|
ontbreekt: string[];
|
|
131
|
+
/** Golf 1 / 11: te bevestigen afwijkingen (blokkeren de indeling tot bevestigd, nooit "onmogelijk"). */
|
|
132
|
+
vragen: LaagVraag[];
|
|
120
133
|
}
|
|
134
|
+
/** Golf 1 / 11: zelfde tekst als public.logistics_laag_vraag_tekst. */
|
|
135
|
+
export declare function laagVraagTekst(bron: string, opgegeven: number, berekend: number): string;
|
|
136
|
+
/** Golf 1 / 11: ok / vraag / onmogelijk — zelfde regel als public.logistics_laag_oordeel. */
|
|
137
|
+
export declare function laagOordeel(opgegeven: number, berekend: number | null | undefined, factor: number | null | undefined, bevestigd: number | null | undefined): "ok" | "vraag" | "onmogelijk";
|
|
121
138
|
export declare function fysiekeBelading(i: FysiekeInvoer): FysiekOordeel;
|
|
122
139
|
//# sourceMappingURL=beladingRegels.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beladingRegels.d.ts","sourceRoot":"","sources":["../../src/lib/beladingRegels.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"beladingRegels.d.ts","sourceRoot":"","sources":["../../src/lib/beladingRegels.ts"],"names":[],"mappings":"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"}
|
|
@@ -168,11 +168,29 @@ export function traystickerWachtReden(regels) {
|
|
|
168
168
|
export function opnieuwOverSeconden(pogingen) {
|
|
169
169
|
return Math.min(300, 15 * Math.pow(2, Math.max(0, Math.min(5, pogingen))));
|
|
170
170
|
}
|
|
171
|
+
export const STANDAARD_BLOKKEER_FACTOR = 1.5;
|
|
172
|
+
/** Golf 1 / 11: zelfde tekst als public.logistics_laag_vraag_tekst. */
|
|
173
|
+
export function laagVraagTekst(bron, opgegeven, berekend) {
|
|
174
|
+
const wie = /floriday/i.test(bron) ? "Floriday" : "Het artikel";
|
|
175
|
+
return `${wie} zegt ${opgegeven} per laag, de berekening ${berekend}. Klopt ${opgegeven}?`;
|
|
176
|
+
}
|
|
177
|
+
/** Golf 1 / 11: ok / vraag / onmogelijk — zelfde regel als public.logistics_laag_oordeel. */
|
|
178
|
+
export function laagOordeel(opgegeven, berekend, factor, bevestigd) {
|
|
179
|
+
if (berekend == null || !(opgegeven > berekend))
|
|
180
|
+
return "ok";
|
|
181
|
+
const f = typeof factor === "number" && Number.isFinite(factor) && factor >= 1 ? factor : STANDAARD_BLOKKEER_FACTOR;
|
|
182
|
+
if (opgegeven > f * berekend + 1e-9)
|
|
183
|
+
return "onmogelijk";
|
|
184
|
+
if (typeof bevestigd === "number" && opgegeven <= bevestigd)
|
|
185
|
+
return "ok";
|
|
186
|
+
return "vraag";
|
|
187
|
+
}
|
|
171
188
|
const pos = (n) => typeof n === "number" && Number.isFinite(n) && n > 0;
|
|
172
189
|
export function fysiekeBelading(i) {
|
|
173
190
|
const blokkeren = [];
|
|
174
191
|
const waarschuwen = [];
|
|
175
192
|
const ontbreekt = [];
|
|
193
|
+
const vragen = [];
|
|
176
194
|
// Lagen tegen hoogte
|
|
177
195
|
if (pos(i.fust_hoogte_cm) && pos(i.plant_hoogte_cm) && pos(i.ladingdrager_hoogte_cm)) {
|
|
178
196
|
const laag = Math.max(i.fust_hoogte_cm, i.plant_hoogte_cm);
|
|
@@ -199,11 +217,19 @@ export function fysiekeBelading(i) {
|
|
|
199
217
|
}
|
|
200
218
|
// Fusten per laag
|
|
201
219
|
if (i.layerspace_max != null && i.crates_per_layer > i.layerspace_max) {
|
|
202
|
-
|
|
220
|
+
// Golf 1 / 11: afwijking van de berekening is een vraag; alleen boven de blokkeergrens onmogelijk.
|
|
221
|
+
const o = laagOordeel(i.crates_per_layer, i.layerspace_max, i.blokkeer_factor, i.laag_bevestigd);
|
|
222
|
+
const f = pos(i.blokkeer_factor) && i.blokkeer_factor >= 1 ? i.blokkeer_factor : STANDAARD_BLOKKEER_FACTOR;
|
|
223
|
+
if (o === "onmogelijk") {
|
|
224
|
+
blokkeren.push(`${i.product}: ${i.crates_per_layer} fust per laag (bron: ${i.bron}), maar op een laag van ${i.ladingdrager} passen er volgens fustmaat × laagmaat maximaal ${i.layerspace_max}; meer dan ${String(f).replace(".", ",")}× de berekening kan niet`);
|
|
225
|
+
}
|
|
226
|
+
else if (o === "vraag") {
|
|
227
|
+
vragen.push({ opgegeven: i.crates_per_layer, berekend: i.layerspace_max, tekst: laagVraagTekst(i.bron, i.crates_per_layer, i.layerspace_max) });
|
|
228
|
+
}
|
|
203
229
|
}
|
|
204
230
|
if (i.layerspace_max != null && i.layerspace_strikt != null &&
|
|
205
231
|
i.crates_per_layer <= i.layerspace_max && i.crates_per_layer > i.layerspace_strikt) {
|
|
206
|
-
waarschuwen.push(`${i.product}: ${i.crates_per_layer} per laag past alleen met overstek (binnen
|
|
232
|
+
waarschuwen.push(`${i.product}: ${i.crates_per_layer} per laag past alleen met overstek (binnen de tolerantie van de ladingdrager)`);
|
|
207
233
|
}
|
|
208
234
|
if (pos(i.max_crates_per_layer) && i.crates_per_layer > i.max_crates_per_layer) {
|
|
209
235
|
blokkeren.push(`${i.product}: ${i.crates_per_layer} fust per laag (bron: ${i.bron}), maar ${i.ladingdrager} staat maximaal ${i.max_crates_per_layer} fust per laag toe`);
|
|
@@ -216,7 +242,7 @@ export function fysiekeBelading(i) {
|
|
|
216
242
|
waarschuwen.push(`${i.product}: ${i.layers_per_cart} lagen opgegeven, standaard ${i.standaard_lagen}; niet te controleren omdat de ${mist} ontbreekt. Vul dit in bij Beheer → Gegevens voor karindeling.`);
|
|
217
243
|
}
|
|
218
244
|
const status = blokkeren.length > 0 ? "onmogelijk" : ontbreekt.length > 0 ? "niet_te_controleren" : "gecontroleerd";
|
|
219
|
-
return { status, blokkeren, waarschuwen, ontbreekt };
|
|
245
|
+
return { status, blokkeren, waarschuwen, ontbreekt, vragen };
|
|
220
246
|
}
|
|
221
247
|
function r1(n) {
|
|
222
248
|
return String(Number(n.toFixed(1))).replace(".", ",");
|
|
@@ -110,4 +110,14 @@ export declare const LAAG_TOLERANTIE = 0.01;
|
|
|
110
110
|
export declare function maxFustenPerLaag(laagLengteCm: number | null | undefined, laagBreedteCm: number | null | undefined, fustLengteCm: number | null | undefined, fustBreedteCm: number | null | undefined, tolerantie?: number): number | null;
|
|
111
111
|
/** 1.0.210: overstek in mm (op de laagbreedte) die nodig is om n fusten te laten passen; null als het strikt al past of niet binnen de tolerantie. */
|
|
112
112
|
export declare function overstekMm(laagLengteCm: number, laagBreedteCm: number, fustLengteCm: number, fustBreedteCm: number, n: number): number | null;
|
|
113
|
+
/** Golf 1 / 11: standaard overstek per ladingdrager (cm) als de ladingdrager er geen heeft. */
|
|
114
|
+
export declare const STANDAARD_OVERSTEK_CM = 2;
|
|
115
|
+
/**
|
|
116
|
+
* Golf 1 / 11: fusten per laag met precieze pasvorm en het overstek van de ladingdrager
|
|
117
|
+
* (cm, op lengte en breedte). Nooit lager dan de bestaande berekening met 1 % tolerantie.
|
|
118
|
+
* SQL-tegenhanger: public.logistics_max_fusten_per_laag_v2 (zelfde uitkomst, test bewaakt dat).
|
|
119
|
+
*/
|
|
120
|
+
export declare function maxFustenPerLaagMetOverstek(laagLengteCm: number | null | undefined, laagBreedteCm: number | null | undefined, fustLengteCm: number | null | undefined, fustBreedteCm: number | null | undefined, overstekCm?: number | null | undefined): number | null;
|
|
121
|
+
/** Golf 1 / 11: fust herkennen op zijn maat in mm (zelfde als public.logistics_fust_sleutel). */
|
|
122
|
+
export declare function fustSleutel(lengteMm: number | null | undefined, breedteMm: number | null | undefined): string | null;
|
|
113
123
|
//# sourceMappingURL=dimensionPlanner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dimensionPlanner.d.ts","sourceRoot":"","sources":["../../src/lib/dimensionPlanner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dimensionPlanner.d.ts","sourceRoot":"","sources":["../../src/lib/dimensionPlanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -298,3 +298,23 @@ export function overstekMm(laagLengteCm, laagBreedteCm, fustLengteCm, fustBreedt
|
|
|
298
298
|
}
|
|
299
299
|
return Math.max(1, Math.ceil(hi * laagBreedteCm * 10 - 1e-6));
|
|
300
300
|
}
|
|
301
|
+
/** Golf 1 / 11: standaard overstek per ladingdrager (cm) als de ladingdrager er geen heeft. */
|
|
302
|
+
export const STANDAARD_OVERSTEK_CM = 2;
|
|
303
|
+
/**
|
|
304
|
+
* Golf 1 / 11: fusten per laag met precieze pasvorm en het overstek van de ladingdrager
|
|
305
|
+
* (cm, op lengte en breedte). Nooit lager dan de bestaande berekening met 1 % tolerantie.
|
|
306
|
+
* SQL-tegenhanger: public.logistics_max_fusten_per_laag_v2 (zelfde uitkomst, test bewaakt dat).
|
|
307
|
+
*/
|
|
308
|
+
export function maxFustenPerLaagMetOverstek(laagLengteCm, laagBreedteCm, fustLengteCm, fustBreedteCm, overstekCm = STANDAARD_OVERSTEK_CM) {
|
|
309
|
+
const oud = maxFustenPerLaag(laagLengteCm, laagBreedteCm, fustLengteCm, fustBreedteCm);
|
|
310
|
+
if (oud == null)
|
|
311
|
+
return null;
|
|
312
|
+
const o = typeof overstekCm === "number" && Number.isFinite(overstekCm) && overstekCm > 0 ? overstekCm : 0;
|
|
313
|
+
const metOverstek = maxFustenPerLaag(laagLengteCm + o, laagBreedteCm + o, fustLengteCm, fustBreedteCm, 0) ?? 0;
|
|
314
|
+
return Math.max(oud, metOverstek);
|
|
315
|
+
}
|
|
316
|
+
/** Golf 1 / 11: fust herkennen op zijn maat in mm (zelfde als public.logistics_fust_sleutel). */
|
|
317
|
+
export function fustSleutel(lengteMm, breedteMm) {
|
|
318
|
+
const ok = (n) => typeof n === "number" && Number.isFinite(n) && n > 0;
|
|
319
|
+
return ok(lengteMm) && ok(breedteMm) ? `${Math.round(lengteMm)}x${Math.round(breedteMm)}` : null;
|
|
320
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** Schemaversie die deze moduleversie verwacht (gelijk aan logistics_schema_versie()). */
|
|
2
|
-
export declare const VERWACHTE_SCHEMA_VERSIE = "2026-11-
|
|
2
|
+
export declare const VERWACHTE_SCHEMA_VERSIE = "2026-11-10e";
|
|
3
3
|
/** True als de database ouder is dan de module (geen of oudere versiemarkering). */
|
|
4
4
|
export declare function schemaVersieOud(versie: string | null | undefined): boolean;
|
|
5
5
|
/** "X leeg (Pickmodule)" -> "X ontbreken: de Pickschermen-module moet worden bijgewerkt." */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Teksten voor de Engine-status in gewone taal.
|
|
2
2
|
/** Schemaversie die deze moduleversie verwacht (gelijk aan logistics_schema_versie()). */
|
|
3
|
-
export const VERWACHTE_SCHEMA_VERSIE = "2026-11-
|
|
3
|
+
export const VERWACHTE_SCHEMA_VERSIE = "2026-11-10e";
|
|
4
4
|
/** True als de database ouder is dan de module (geen of oudere versiemarkering). */
|
|
5
5
|
export function schemaVersieOud(versie) {
|
|
6
6
|
if (!versie)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowRoute.d.ts","sourceRoot":"","sources":["../../src/lib/flowRoute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flowRoute.d.ts","sourceRoot":"","sources":["../../src/lib/flowRoute.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
// stap gold, komt uit de instellingen van nú; het logboek bewaart (nog) geen
|
|
12
12
|
// momentopname van de werkwijze per herberekening. Dat melden we in de kaart.
|
|
13
13
|
// ============================================================================
|
|
14
|
+
import { isAfgerondeFase } from "./statusFase.js";
|
|
14
15
|
import { WIZARD_STEPS } from "./ruleEngineWizard.js";
|
|
15
16
|
import { FLOW_NODE, bronNodeVoor } from "./flowNodes.js";
|
|
16
17
|
import { vakUitleg } from "./vakUitleg.js";
|
|
@@ -39,7 +40,6 @@ export function redenTekst(code, error) {
|
|
|
39
40
|
return `${label} — ${error}`;
|
|
40
41
|
return label ?? error ?? "Onbekende reden";
|
|
41
42
|
}
|
|
42
|
-
const AFGEROND = new Set(["verzonden", "gereed voor facturatie", "afgehandeld", "gefactureerd", "afgemeld"]);
|
|
43
43
|
/** Leidt uit één versie + de huidige stand van de order de gelopen route af. */
|
|
44
44
|
export function bepaalRoute(versie, order, carts, isLaatste) {
|
|
45
45
|
const bron = order?.orderSource ? bronNodeVoor(order.orderSource) : null;
|
|
@@ -128,7 +128,7 @@ export function bepaalRoute(versie, order, carts, isLaatste) {
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
|
-
if (isLaatste && order?.status &&
|
|
131
|
+
if (isLaatste && order?.status && isAfgerondeFase(order.status)) {
|
|
132
132
|
if (!reached.includes(STAP.controle))
|
|
133
133
|
reached.push(STAP.drukte, STAP.stations, STAP.controle);
|
|
134
134
|
busy = null;
|
|
@@ -17,4 +17,6 @@ export declare function handleLogisticsTick(request: Request, supabase: Supabase
|
|
|
17
17
|
export declare function runLockedTickRound(supabase: SupabaseClient, ident: ReturnType<typeof engineIdent>): Promise<Response>;
|
|
18
18
|
/** Vaste sleutel van het rondeslot; gelijk aan de check in logistics_plan_kick(). */
|
|
19
19
|
export declare const TICK_ROUND_LOCK_KEY = "tick:ronde";
|
|
20
|
+
/** Golf 1: hard budget van één HTTP-ronde (planwachtrij, karindeling, printen). */
|
|
21
|
+
export declare const RONDE_BUDGET_MS = 20000;
|
|
20
22
|
//# sourceMappingURL=logistics-tick.server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logistics-tick.server.d.ts","sourceRoot":"","sources":["../../../src/lib/handlers/logistics-tick.server.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"logistics-tick.server.d.ts","sourceRoot":"","sources":["../../../src/lib/handlers/logistics-tick.server.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D,qFAAqF;AACrF,wBAAgB,WAAW,CAAC,IAAI,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE;;;;EAE7D;AAQD,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,cAAc,EACxB,IAAI,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,GACjC,OAAO,CAAC,QAAQ,CAAC,CA0BnB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GACpC,OAAO,CAAC,QAAQ,CAAC,CAqFnB;AAED,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD,mFAAmF;AACnF,eAAO,MAAM,eAAe,QAAS,CAAC"}
|