@jfk-solutions/demo3d-file-format 1.9.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"raw3d.d.ts","sourceRoot":"","sources":["../../src/three/raw3d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raw3d.d.ts","sourceRoot":"","sources":["../../src/three/raw3d.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAI5E,OAAO,EAEL,SAAS,EACT,YAAY,EACZ,YAAY,EAGb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,gBAAgB,GAAG,OAAO,KAAK,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,sFAAsF;IACtF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;KAAE,KAAK,KAAK,CAAC,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACvO,6FAA6F;IAC7F,QAAQ,CAAC,qBAAqB,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACvD,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC1D,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACjD;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,GAAG,YAAY,EACnC,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAa1B;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,GAAG,YAAY,EACnC,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAEtB;AA6MD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1D,iFAAiF;IACjF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,kGAAkG;IAClG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,+EAA+E;IAC/E,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,oFAAoF;AACpF,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,OAAO,GAAE,iBAAsB,GACnE,OAAO,CAAC,kBAAkB,CAAC,CAgR7B;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,gBAAgB,GACtB,KAAK,CAAC,cAAc,CAqGtB"}
@@ -238,6 +238,7 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
238
238
  options.onWarning?.(item);
239
239
  }
240
240
  const variants = new Map();
241
+ const topologyAppearance = new WeakMap();
241
242
  const archivedStreams = new Map([...resources.textures].filter(([key]) => key.startsWith("stream:")));
242
243
  const streamRevisions = new Map();
243
244
  const streamWarnings = new Set();
@@ -305,23 +306,30 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
305
306
  }
306
307
  const material = entry.material;
307
308
  const wasTransparent = material.transparent;
308
- material.copy(base);
309
+ const appearanceKey = `${values.Diffuse}:${values.Transparency}:${values.Reflectivity}:${values.Luminosity}:${values.NormalScale}:${values.NormalDepth}`;
310
+ if (entry.appearanceKey !== appearanceKey) {
311
+ material.copy(base);
312
+ if (values.Diffuse !== undefined) {
313
+ material.color.setHex(values.Diffuse & 0xffffff, three.SRGBColorSpace);
314
+ material.opacity = (values.Diffuse >>> 24) / 255;
315
+ }
316
+ if (values.Transparency !== undefined)
317
+ material.opacity = 1 - values.Transparency;
318
+ if (values.Reflectivity !== undefined)
319
+ material.roughness = .9 - clamp01(values.Reflectivity) * .75;
320
+ if (values.Luminosity !== undefined && material.emissive)
321
+ material.emissive.copy(material.color).multiplyScalar(values.Luminosity);
322
+ if (values.NormalScale !== undefined && material.normalScale)
323
+ material.normalScale.setScalar(values.NormalScale);
324
+ if (values.NormalDepth !== undefined)
325
+ material.userData.raw3dNormalDepth = values.NormalDepth;
326
+ entry.appearanceKey = appearanceKey;
327
+ // Hosts can apply display-color conversion once per sampled appearance,
328
+ // without repeating it when only texture coordinates advance.
329
+ material.userData.raw3dAppearanceRevision = entry.appearanceRevision = (entry.appearanceRevision ?? 0) + 1;
330
+ }
309
331
  material.map = entry.map ?? null;
310
332
  material.normalMap = entry.normalMap ?? null;
311
- if (values.Diffuse !== undefined) {
312
- material.color.setHex(values.Diffuse & 0xffffff, three.SRGBColorSpace);
313
- material.opacity = (values.Diffuse >>> 24) / 255;
314
- }
315
- if (values.Transparency !== undefined)
316
- material.opacity = 1 - values.Transparency;
317
- if (values.Reflectivity !== undefined)
318
- material.roughness = .9 - clamp01(values.Reflectivity) * .75;
319
- if (values.Luminosity !== undefined && material.emissive)
320
- material.emissive.copy(material.color).multiplyScalar(values.Luminosity);
321
- if (values.NormalScale !== undefined && material.normalScale)
322
- material.normalScale.setScalar(values.NormalScale);
323
- if (values.NormalDepth !== undefined)
324
- material.userData.raw3dNormalDepth = values.NormalDepth;
325
333
  for (const texture of [material.map, material.normalMap]) {
326
334
  if (!texture)
327
335
  continue;
@@ -345,20 +353,47 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
345
353
  return material;
346
354
  });
347
355
  };
356
+ const animatedNodes = new Set(animation.tracks.map(track => track.nodeIndex));
357
+ for (const track of animation.effects.tracks)
358
+ if (track.target === "node")
359
+ animatedNodes.add(track.index);
360
+ const staticDrawables = new Map();
361
+ const staticTexts = new Map();
362
+ // Stream frames can replace maps even when the node has no native update track.
363
+ const hasStreamFrames = project.streamableTextures.length > 0 || !!options.resolveStreamTexture;
364
+ let initialized = false;
348
365
  let seekRevision = 0, pendingFrames;
349
366
  const apply = (time) => {
350
367
  if (disposed)
351
368
  throw new Error("RAW3D playback has been disposed.");
352
369
  frame = animation.sampleFrame(time);
353
370
  const states = frame.nodes;
354
- // Detach first so valid hierarchy changes do not depend on source node order.
355
- for (const object of objects.values())
356
- group.add(object);
371
+ // Detach only changed edges before reparenting, so valid hierarchy changes
372
+ // remain independent of node order without rebuilding an unchanged scene.
373
+ for (const node of project.nodes) {
374
+ const object = objects.get(node.index), parentIndex = states.get(node.index).parentIndex;
375
+ const parent = parentIndex === undefined ? group : objects.get(parentIndex);
376
+ if (object.parent !== parent && object.parent !== group)
377
+ group.add(object);
378
+ }
357
379
  for (const node of project.nodes) {
358
380
  const object = objects.get(node.index), state = states.get(node.index);
359
- object.position.set(state.location[0], state.location[1], -state.location[2]);
360
- object.quaternion.set(-state.quaternion[0], -state.quaternion[1], state.quaternion[2], state.quaternion[3]);
361
- object.scale.set(...state.scale);
381
+ const [x, y, nativeZ] = state.location, z = -nativeZ;
382
+ const [nativeQx, nativeQy, qz, qw] = state.quaternion, qx = -nativeQx, qy = -nativeQy;
383
+ const [sx, sy, sz] = state.scale;
384
+ const changed = object.position.x !== x || object.position.y !== y || object.position.z !== z
385
+ || object.quaternion.x !== qx || object.quaternion.y !== qy || object.quaternion.z !== qz || object.quaternion.w !== qw
386
+ || object.scale.x !== sx || object.scale.y !== sy || object.scale.z !== sz;
387
+ if (changed) {
388
+ object.position.set(x, y, z);
389
+ object.quaternion.set(qx, qy, qz, qw);
390
+ object.scale.set(sx, sy, sz);
391
+ }
392
+ // Playback owns node transforms. Compose only changed local matrices;
393
+ // world matrices still follow animated parents and remain ready after seek.
394
+ if (changed || object.matrixAutoUpdate)
395
+ object.updateMatrix();
396
+ object.matrixAutoUpdate = false;
362
397
  object.visible = !state.deleted;
363
398
  object.userData.raw3d.layerIndex = state.layerIndex;
364
399
  object.userData.raw3d.interactionMode = state.interactionMode;
@@ -367,10 +402,26 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
367
402
  object.userData.raw3d.clientOwner = state.clientOwner;
368
403
  object.userData.raw3d.hasBeenOptimized = state.hasBeenOptimized;
369
404
  const parent = state.parentIndex === undefined ? undefined : objects.get(state.parentIndex);
370
- if (parent && parent !== object && !isDescendantOf(parent, object))
371
- parent.add(object);
405
+ if (parent && parent !== object) {
406
+ if (object.parent !== parent) {
407
+ if (isDescendantOf(parent, object))
408
+ throw new Error(`Invalid animated parent ${state.parentIndex} for RAW3D node ${node.index}.`);
409
+ parent.add(object);
410
+ }
411
+ }
372
412
  else if (state.parentIndex !== undefined)
373
413
  throw new Error(`Invalid animated parent ${state.parentIndex} for RAW3D node ${node.index}.`);
414
+ const fixed = staticDrawables.get(node.index);
415
+ if (initialized && !hasStreamFrames && !animatedNodes.has(node.index) && fixed
416
+ && fixed.object.parent === object && fixed.object.geometry === fixed.geometry && fixed.object.material === fixed.material) {
417
+ fixed.object.visible = state.visible && !object.userData.raw3d.annotationHidden;
418
+ fixed.object.userData.raw3d.sourceVisible = fixed.object.visible;
419
+ for (const text of staticTexts.get(node.index) ?? []) {
420
+ text.visible = state.visible && !object.userData.raw3d.annotationHidden;
421
+ text.userData.raw3d.sourceVisible = text.visible;
422
+ }
423
+ continue;
424
+ }
374
425
  let drawable = object.children.find(child => ["mesh", "lines", "points"].includes(child.userData.raw3d?.kind));
375
426
  const mesh = state.meshIndex === undefined ? undefined : project.meshes[state.meshIndex];
376
427
  if (state.meshIndex !== undefined && !mesh)
@@ -410,11 +461,18 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
410
461
  const material = current[slot] ?? (drawable instanceof three.Points ? toPointMaterial(source, three) : toLineMaterial(source, three));
411
462
  ownedMaterials.add(material);
412
463
  const target = material, original = source;
413
- target.color.copy(original.color);
464
+ const wasTransparent = target.transparent, revision = original.userData.raw3dAppearanceRevision;
465
+ const previous = topologyAppearance.get(material);
466
+ if (revision === undefined || previous?.source !== source || previous.revision !== revision) {
467
+ target.color.copy(original.color);
468
+ target.userData.raw3dAppearanceRevision = Number(target.userData.raw3dAppearanceRevision ?? 0) + 1;
469
+ topologyAppearance.set(material, { source, revision });
470
+ }
414
471
  target.opacity = original.opacity;
415
472
  target.transparent = original.transparent;
416
473
  target.depthWrite = original.depthWrite;
417
- target.needsUpdate = true;
474
+ if (target.transparent !== wasTransparent)
475
+ target.needsUpdate = true;
418
476
  if (drawable instanceof three.Points)
419
477
  target.size = state.materialProperties[slot]?.PointSize ?? project.materials[node.materialIndices[slot] ?? node.materialIndices[0] ?? (state.layerIndex === undefined ? -1 : project.layers[state.layerIndex]?.materialIndex ?? -1)]?.pointSize ?? 1;
420
478
  return material;
@@ -427,6 +485,10 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
427
485
  drawable.visible = state.visible && !!mesh && !object.userData.raw3d.annotationHidden;
428
486
  drawable.userData.raw3d.sourceVisible = drawable.visible;
429
487
  }
488
+ if (!hasStreamFrames && !animatedNodes.has(node.index) && drawable) {
489
+ staticDrawables.set(node.index, { object: drawable, geometry: drawable.geometry, material: drawable.material });
490
+ staticTexts.set(node.index, object.children.filter(child => child.userData.raw3d?.kind === "text"));
491
+ }
430
492
  for (const child of object.children)
431
493
  if (child.userData.raw3d?.kind === "text") {
432
494
  child.visible = state.visible && !object.userData.raw3d.annotationHidden;
@@ -440,10 +502,14 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
440
502
  geometry.dispose();
441
503
  geometryCache.delete(index);
442
504
  }
443
- group.updateMatrixWorld(true);
444
- for (const binding of skinBindings.values())
445
- binding.update();
505
+ if (skinBindings.size) {
506
+ group.updateMatrixWorld(true);
507
+ for (const binding of skinBindings.values())
508
+ binding.update();
509
+ }
510
+ // Effects finish with a world-matrix update, including newly created lights/floors.
446
511
  applyRaw3DThreeEffects(group, frame, project, three);
512
+ initialized = true;
447
513
  };
448
514
  const seek = (time) => { seekRevision++; pendingFrames?.abort(); apply(time); };
449
515
  const seekAsync = async (time) => {
@@ -519,6 +585,8 @@ export async function createRaw3DThreePlayback(parsed, options = {}) {
519
585
  group.clear();
520
586
  variants.clear();
521
587
  geometryCache.clear();
588
+ staticDrawables.clear();
589
+ staticTexts.clear();
522
590
  };
523
591
  try {
524
592
  await seekAsync(0);
@@ -546,24 +614,27 @@ export function decodeRaw3DThreeGeometry(mesh, project, three) {
546
614
  continue;
547
615
  }
548
616
  const values = new Float32Array(vertexCount * sourceAttribute.componentCount);
617
+ const color = /^Color$/i.test(sourceAttribute.type), byte = /^Byte4$/i.test(sourceAttribute.type);
618
+ const short = /^(?:Normalized)?Short[24]$/i.test(sourceAttribute.type), normalized = /^Normalized/i.test(sourceAttribute.type);
619
+ const reflected = name === "position" || name === "normal" || name === "tangent";
549
620
  for (let vertex = 0; vertex < vertexCount; vertex += 1) {
550
621
  const base = vertex * vertexBuffer.stride + sourceAttribute.offset;
622
+ const packed = color ? view.getUint32(base, true) : 0;
551
623
  for (let component = 0; component < sourceAttribute.componentCount; component += 1) {
552
624
  let value;
553
- if (/^Color$/i.test(sourceAttribute.type)) {
554
- const packed = view.getUint32(base, true);
625
+ if (color) {
555
626
  value = ((packed >>> [16, 8, 0, 24][component]) & 255) / 255;
556
627
  }
557
- else if (/^Byte4$/i.test(sourceAttribute.type))
628
+ else if (byte)
558
629
  value = view.getUint8(base + component);
559
- else if (/^(?:Normalized)?Short[24]$/i.test(sourceAttribute.type)) {
630
+ else if (short) {
560
631
  value = view.getInt16(base + component * 2, true);
561
- if (/^Normalized/i.test(sourceAttribute.type))
632
+ if (normalized)
562
633
  value = Math.max(-1, value / 32767);
563
634
  }
564
635
  else
565
636
  value = view.getFloat32(base + component * 4, true);
566
- if ((name === "position" || name === "normal" || name === "tangent") && component === 2) {
637
+ if (reflected && component === 2) {
567
638
  value = -value;
568
639
  }
569
640
  if (name === "tangent" && component === 3)
@@ -1 +1 @@
1
- {"version":3,"file":"raw3d.js","sourceRoot":"","sources":["../../src/three/raw3d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raw3d.js","sourceRoot":"","sources":["../../src/three/raw3d.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAA8B,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,YAAY,EAGb,MAAM,aAAa,CAAC;AA4CrB,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmC,EACnC,OAAO,GAAsB,EAAE;IAE/B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;IAChC,KAAK,CAAC,IAAI,GAAG,aAAa,CAAC;IAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjB,OAAO;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAwB;QACpD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAwC;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmC,EACnC,OAAO,GAAsB,EAAE;IAE/B,OAAO,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,MAAmC,EAAE,OAA0B;IACjG,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,YAAY,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,MAAM,KAAK,GAAoB;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;QAC3B,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,CAAC;QACb,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;QACnC,QAAQ,EAAE,CAAC;QACX,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,MAAM;QACvC,MAAM,EAAE,CAAC;QACT,gBAAgB,EAAE,CAAC;KACpB,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,OAA0B,EAAQ,EAAE;QAChD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACjG,KAAK,MAAM,QAAQ,IAAI,SAAS;QAAE,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,IAAI,GAAG,CAAC;IAC9G,MAAM,eAAe,GAAG,IAAI,KAAK,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5F,MAAM,aAAa,GAAG,IAAI,GAAG,EAAgC,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IAClD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;IAEpB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACzF,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5F,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG;YACtB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC,CAAC,SAAS;YACb,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,gBAAgB;YAChB,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC;SAC5D,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAEhC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,QAAQ,IAAI,CAAC,KAAK,4BAA4B,IAAI,CAAC,SAAS,GAAG;oBACxE,SAAS,EAAE,IAAI,CAAC,KAAK;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,IAAI,CAAC;wBACH,QAAQ,GAAG,wBAAwB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;wBAChE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;wBAC5C,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;oBACxB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC;4BACH,IAAI,EAAE,4BAA4B;4BAClC,OAAO,EAAE,yBAAyB,IAAI,CAAC,SAAS,KAAK,YAAY,CAAC,KAAK,CAAC,EAAE;4BAC1E,SAAS,EAAE,IAAI,CAAC,KAAK;4BACrB,SAAS,EAAE,IAAI,CAAC,SAAS;yBAC1B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;oBAClG,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;oBAC5E,QAAQ,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;oBACtD,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,IAAI,QAAQ,YAAY,KAAK,CAAC,IAAI,CAAC;oBACzE,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;oBAChC,QAAQ,CAAC,aAAa,GAAG,QAAQ,YAAY,KAAK,CAAC,IAAI,CAAC;oBACxD,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG;wBACxB,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC;wBACxC,SAAS,EAAE,IAAI,CAAC,KAAK;wBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;wBAC7B,aAAa,EAAE,IAAI,CAAC,OAAO;qBAC5B,CAAC;oBACF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACrB,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,cAAc,GAAG,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAC1G,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,OAAO,CAAC;gBAClC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC9B,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACxH,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE,iCAAiC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG;gBACrE,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC1G,MAAM,KAAK,GAAG,QAAQ;YACpB,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzF,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,KAAkB,CAAC;QACvB,QAAQ,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAClC,KAAK,SAAS;gBACZ,KAAK,GAAG,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACzC,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAAA,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzG,MAAM;YACR,KAAK,MAAM;gBACT,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAAA,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjG,MAAM;YACR,SAAS,CAAC;gBACR,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACzD,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1C,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC/B,KAAK,GAAG,WAAW,CAAC;gBACpB,MAAM;YACR,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,QAAQ,CAAC;QACnD,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG;YACrB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,WAAW;YAClC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;SAClD,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1F,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACH,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,QAAQ,IAAI,CAAC,KAAK,8BAA8B,IAAI,CAAC,WAAW,GAAG;oBAC5E,SAAS,EAAE,IAAI,CAAC,KAAK;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC3D,6EAA6E;IAC7E,0DAA0D;IAC1D,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyC,CAAC;IACtE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,CAA2B,CAAC;QACrG,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;YAC7F,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACtF,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ;YAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;gBAAE,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjL,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC7B,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE;QAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC9D,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAClF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;AACrH,CAAC;AAeD,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAmC,EAAE,OAAO,GAAsB,EAAE;IAEpE,MAAM,OAAO,GAAG,MAAM,YAAY,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IACrG,IAAI,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QAC9D,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAA,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuN,CAAC;IAChP,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAiE,CAAC;IACxG,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACtG,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAiB,CAAC,GAAG,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAC5C,MAAM,QAAQ,GAAG,MAAoB,CAAC;QACtC,IAAI,QAAQ,CAAC,QAAQ;YAAE,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzH,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC7B,MAAM,GAAG,GAAI,QAAuC,CAAC,GAAG,CAAC;gBACzD,IAAI,GAAG;oBAAE,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,CAAC;IACV,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,CAAC,IAAe,EAAE,KAAqB,EAAE,IAAe,EAAoB,EAAE;QAC5F,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;QACnH,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YACrF,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;YACrF,MAAM,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,eAAe,CAA+B,CAAC;YACzH,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,WAAW,GAAG,MAAM,CAAC,iBAAiB,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,sBAAsB,IAAI,CAAC,CAAC,CAAC,CAAC;YACpI,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,QAAQ,CAAC,CAAC;YAC5I,MAAM,SAAS,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,WAAW,QAAQ,CAAC,CAAC;YACtG,MAAM,SAAS,GAAG,SAAS,IAAI,WAAW,CAAC;YAC3C,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvE,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAChC,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,kCAAkC,EAAE,OAAO,EAAE,sBAAsB,WAAW,oDAAoD,EAAE,CAAC;gBAC7J,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAAA,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,WAAW,WAAW,EAAE,CAAC;YAC3J,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,aAAa,CAAC;gBAC7D,MAAM,YAAY,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,WAAW,SAAS,CAAC,CAAC;gBAC3I,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;gBACxN,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,IAAI,SAAS,EAAE,CAAC;gBACzH,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAAA,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtD,IAAI,KAAK,CAAC,GAAG;oBAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,IAAI,KAAK,CAAC,SAAS;oBAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC,EAAE,CAAC;gBACjD,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;oBAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBAAA,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC;gBACvE,KAAK,CAAC,GAAG,GAAG,SAAS,EAAE,KAAK,EAAE,CAAC;gBAAA,KAAK,CAAC,SAAS,GAAG,SAAS,IAAI,SAAS,CAAC;gBACxE,IAAI,KAAK,CAAC,GAAG;oBAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,KAAK,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YACpC,CAAC;YACD,IAAI,WAAW,IAAI,CAAC,IAAI,KAAK,CAAC,cAAc,KAAK,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBAClF,IAAI,KAAK,CAAC,GAAG;oBAAE,KAAK,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC5C,KAAK,CAAC,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAsC,CAAC;YAC9D,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC;YAC5C,MAAM,aAAa,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACzJ,IAAI,KAAK,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;gBAC1C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACjC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;oBACvE,QAAQ,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC;gBACnD,CAAC;gBACD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;oBAAE,QAAQ,CAAC,OAAO,GAAG,CAAC,GAAC,MAAM,CAAC,YAAY,CAAC;gBAChF,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;oBAAE,QAAQ,CAAC,SAAS,GAAG,EAAE,GAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,GAAC,GAAG,CAAC;gBAChG,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ;oBAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACnI,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,QAAQ,CAAC,WAAW;oBAAE,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACjH,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;oBAAE,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC;gBAC9F,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;gBACpC,wEAAwE;gBACxE,8DAA8D;gBAC9D,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,GAAG,KAAK,CAAC,kBAAkB,GAAG,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC;YAC3G,CAAC;YACD,QAAQ,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;YAAA,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC;YAC9E,KAAK,MAAM,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,OAAO;oBAAE,SAAS;gBACvB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7F,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACvG,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS;oBAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;gBACxD,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS;oBAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;gBACxD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;oBAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBAClE,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;oBAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBAClE,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS;oBAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC;YAC7G,CAAC;YACD,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC;YAAA,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/H,IAAI,cAAc,KAAK,QAAQ,CAAC,WAAW;gBAAE,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YACzE,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9E,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM;QAAE,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;YAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1G,MAAM,eAAe,GAAG,IAAI,GAAG,EAAmJ,CAAC;IACnL,MAAM,WAAW,GAAG,IAAI,GAAG,EAA4B,CAAC;IACxD,gFAAgF;IAChF,MAAM,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAChG,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,GAAG,CAAC,EAAE,aAA0C,CAAC;IACjE,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;QAC7B,IAAI,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnE,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC3B,2EAA2E;QAC3E,0EAA0E;QAC1E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,EAAE,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC,WAAW,CAAC;YAC3F,MAAM,MAAM,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5E,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK;gBAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7E,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,EAAE,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;YACzE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;YACrD,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC;YACtF,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;mBACxF,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE;mBACpH,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YAC7E,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAAA,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAAA,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAClG,CAAC;YACD,sEAAsE;YACtE,4EAA4E;YAC5E,IAAI,OAAO,IAAI,MAAM,CAAC,gBAAgB;gBAAE,MAAM,CAAC,YAAY,EAAE,CAAC;YAC9D,MAAM,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAAA,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;YAChE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YACpD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAC9D,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAClD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAChD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;YACtD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;YAChE,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC5F,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAChC,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;wBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,WAAW,mBAAmB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;oBAClI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,WAAW,mBAAmB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YAC1I,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,WAAW,IAAI,CAAC,eAAe,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK;mBACzE,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC5H,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBAChF,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;gBACjE,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;oBACrD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC3H,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAA+D,CAAC;YAC7K,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACzF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YAC/G,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBACpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAU,CAAC;oBAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAU,EAAE,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC9H,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxL,IAAI,QAAQ,EAAE,CAAC;wBAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAAA,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;wBAAA,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAAC,CAAC;oBAC9G,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAU,CAAE,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,CAAmD,CAAC;oBAClJ,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACjH,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,IAAI,QAAQ,YAAY,KAAK,CAAC,IAAI,CAAC;oBACzE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACrB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC;wBACxD,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;wBACxF,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;wBAAA,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAClE,CAAC;oBACD,8DAA8D;oBAC9D,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAClI,CAAC;gBACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,QAAQ,CAAC,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAU,CAAE,CAAC;gBAC1F,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;gBACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC5C,IAAI,QAAQ,YAAY,KAAK,CAAC,IAAI;oBAAE,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;qBACnG,CAAC;oBACJ,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAC3F,sFAAsF;oBACtF,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;wBAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,YAAY,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;wBACtI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBAC7B,MAAM,MAAM,GAAG,QAAgC,EAAE,QAAQ,GAAG,MAAoC,CAAC;wBACjG,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC;wBAChG,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBAClD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,EAAE,MAAM,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BAC5F,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;4BAClC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC;4BACjG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACzD,CAAC;wBACD,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;wBAAA,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;wBAAA,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;wBACpH,IAAI,MAAM,CAAC,WAAW,KAAK,cAAc;4BAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;wBACrE,IAAI,QAAQ,YAAY,KAAK,CAAC,MAAM;4BAAE,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC;wBAC3R,OAAO,QAAQ,CAAC;oBAClB,CAAC,CAAC,CAAC;oBACH,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACtE,CAAC;gBACD,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACtF,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC3D,CAAC;YACD,IAAI,CAAC,eAAe,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACnE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChH,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YACtG,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ;gBAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC/E,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBACzE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC;gBACrD,CAAC;QACH,CAAC;QACD,sFAAsF;QACtF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACzE,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,aAAa;YAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAAA,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAAC,CAAC;QACxH,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC9B,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE;gBAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QAChE,CAAC;QACD,oFAAoF;QACpF,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACrD,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAA,aAAa,EAAE,KAAK,EAAE,CAAC,CAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;QACzD,IAAI,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,EAAE,YAAY,CAAC;QACpE,aAAa,EAAE,KAAK,EAAE,CAAC;QAAA,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QAAA,aAAa,GAAG,UAAU,CAAC;QAC3F,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACzF,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;gBACpF,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC;gBAC9K,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,iBAAiB,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,sBAAsB,IAAI,CAAC,CAAC,CAAC,CAAC;gBACxK,IAAI,MAAM,IAAI,CAAC;oBAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,oBAAqB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1S,IAAI,QAAQ,IAAI,QAAQ,KAAK,YAAY;gBAAE,OAAO,KAAK,CAAC;YACxD,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACxC,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;gBAC3I,MAAM,GAAG,GAAG,UAAU,KAAK,QAAQ,EAAE,QAAQ,GAAG,OAAO,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpF,IAAI,QAAQ;oBAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;;oBAAK,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACxF,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,CAAC;YAAA,OAAO,IAAI,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,QAAQ,IAAI,QAAQ,KAAK,YAAY;gBAAE,OAAO,KAAK,CAAC;YAAA,MAAM,KAAK,CAAC;QAAC,CAAC;gBAChF,CAAC;YAAC,IAAI,QAAQ,KAAK,YAAY;gBAAE,aAAa,GAAG,SAAS,CAAC;QAAC,CAAC;IACvE,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,YAAY,EAAE,CAAC;QAAA,aAAa,EAAE,KAAK,EAAE,CAAC;QACtC,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE;YAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QAAA,YAAY,CAAC,KAAK,EAAE,CAAC;QACpF,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAClE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,aAAa;YAAG,MAAqB,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5H,OAAO,EAAE,CAAC;QACV,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,QAAsC,CAAC;YACtD,IAAI,MAAM,CAAC,GAAG;gBAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,MAAM,CAAC,SAAS;gBAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,cAAc;YAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC1D,KAAK,MAAM,OAAO,IAAI,aAAa;YAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QACvD,KAAK,CAAC,KAAK,EAAE,CAAC;QAAA,QAAQ,CAAC,KAAK,EAAE,CAAC;QAAA,aAAa,CAAC,KAAK,EAAE,CAAC;QAAA,eAAe,CAAC,KAAK,EAAE,CAAC;QAAA,WAAW,CAAC,KAAK,EAAE,CAAC;IACnG,CAAC,CAAC;IACF,IAAI,CAAC;QAAC,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAAC,OAAO,EAAE,CAAC;QAAA,MAAM,KAAK,CAAC;IAAC,CAAC;IACpE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,KAAK,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACrH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAe,EACf,OAAqB,EACrB,KAAuB;IAEvB,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnE,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,aAAa,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CACb,iBAAiB,IAAI,CAAC,iBAAiB,SAAS,YAAY,CAAC,IAAI,CAAC,UAAU,+BAA+B,YAAY,CAAC,MAAM,EAAE,CACjI,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IACvE,MAAM,IAAI,GAAG,IAAI,QAAQ,CACvB,YAAY,CAAC,IAAI,CAAC,MAAM,EACxB,YAAY,CAAC,IAAI,CAAC,UAAU,EAC5B,YAAY,CAAC,IAAI,CAAC,UAAU,CAC7B,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;IAC5C,KAAK,MAAM,eAAe,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,WAAW,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;QAC9E,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAClG,MAAM,KAAK,GAAG,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/H,MAAM,SAAS,GAAG,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,CAAC;QACjF,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;YACnE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,eAAe,CAAC,cAAc,EAAE,SAAS,IAAI,CAAC,EAAE,CAAC;gBACnF,IAAI,KAAa,CAAC;gBAClB,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,CAAC,CAAC,SAAS,CAAE,CAAC,GAAG,GAAG,CAAC,GAAC,GAAG,CAAC;gBAC3D,CAAC;qBAAM,IAAI,IAAI;oBAAE,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAC,SAAS,CAAC,CAAC;qBAClD,IAAI,KAAK,EAAE,CAAC;oBACf,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAC,SAAS,GAAC,CAAC,EAAE,IAAI,CAAC,CAAC;oBAC9C,IAAI,UAAU;wBAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,GAAC,KAAK,CAAC,CAAC;gBACpD,CAAC;;oBAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,SAAS,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC3D,IAAI,SAAS,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;oBACjC,KAAK,GAAG,CAAC,KAAK,CAAC;gBACjB,CAAC;gBACD,IAAI,IAAI,KAAK,SAAS,IAAI,SAAS,KAAK,CAAC;oBAAE,KAAK,GAAG,CAAC,KAAK,CAAC;gBAC1D,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC;YACtE,CAAC;QACH,CAAC;QACD,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,4BAA4B,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,WAAW,GAAqC,EAAE,CAAC;IACzD,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,KAAK,MAAM,gBAAgB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACvD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,gBAAgB,gBAAgB,aAAa,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,IAAI,WAAW,CAAC,IAAI,CAAC,UAAU,GAAG,WAAW,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,gBAAgB,gBAAgB,KAAK,WAAW,CAAC,MAAM,6BAA6B,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,CAClH,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;QACxD,MAAM,OAAO,GAAG,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClH,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,GAAG,WAAW,KAAK,CAAC;gBACjC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC;gBACvC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;gBACpC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;gBAC3C,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,eAAe,CAAC,CAAC;QAC5G,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;YAC1E,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAE,CAAC;YACzC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC9B,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACtD,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;QAC3B,CAAC;QACD,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,QAAQ,CAAC,oBAAoB,EAAE,CAAC;IAClC,CAAC;IACD,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IAC9B,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,cAAc,CACrB,IAAe,EACf,QAA8B,EAC9B,SAAoC,EACpC,KAAuB;IAEvB,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;IACrG,QAAQ,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACpC,KAAK,UAAU,EAAE,CAAC;YAChB,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;YAC/E,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAC1G,CAAC;QACD,KAAK,WAAW,EAAE,CAAC;YACjB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;YACjF,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACvG,CAAC;QACD;YACE,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,QAAwB,EAAE,KAAuB;IACvE,MAAM,MAAM,GAAG,QAAsC,CAAC;IACtD,OAAO,IAAI,KAAK,CAAC,iBAAiB,CAAC;QACjC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;KAC9B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,QAAwB,EAAE,KAAuB;IACxE,MAAM,MAAM,GAAG,QAAsC,CAAC;IACtD,OAAO,IAAI,KAAK,CAAC,cAAc,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC;QACzC,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;QACzE,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,QAAQ,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC;AACnD,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,QAAQ,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC/B,KAAK,UAAU,EAAE,OAAO,OAAO,CAAC;QAChC,KAAK,WAAW,EAAE,OAAO,QAAQ,CAAC;QAClC,SAAS,OAAO,MAAM,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAe,EACf,KAAqC;IAErC,KAAK,IAAI,OAAO,GAA0B,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,KAAK,SAAS;QAClG,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACnC,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAyC,EACzC,cAAyC,EACzC,KAAuB;IAEvB,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,GAAG,CAAC;IACrB,MAAM,UAAU,GAAG,GAAG,CAAC;IACvB,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,CAAC,UAAU,IAAI,OAAO,EAAE,CAAC;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACnF,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,WAAW,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,CAAC,UAAU,IAAI,OAAO,EAAE,CAAC;IACjE,WAAW,CAAC,SAAS,GAAG,QAAQ,CAAC;IACjC,WAAW,CAAC,YAAY,GAAG,QAAQ,CAAC;IACpC,MAAM,KAAK,GAAG,cAAc;QAC1B,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG;QAChK,CAAC,CAAC,cAAc,CAAC;IACnB,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC;IAC9B,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5B,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC;QACvD,GAAG,EAAE,OAAO;QACZ,WAAW,EAAE,IAAI;QACjB,OAAO;QACP,6EAA6E;QAC7E,sEAAsE;QACtE,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC;IACpD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;IACjE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAe,EACf,IAAe,EACf,OAAqB,EACrB,SAAoC,EACpC,QAAwB;IAExB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,KAAK,SAAS;QACjD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAqB,EAAE,CAAC;IACtC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;QAC9F,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,OAAqB,EACrB,KAAuB,EACvB,KAAsB,EACtB,IAA0C;IAE1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqD,CAAC;IAC5E,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,kBAAkB;QAAE,IAAI,MAAM,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,KAAK,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/I,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACnF,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,YAAY,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnH,CAAC;QACD,IAAI,QAAQ,CAAC,kBAAkB,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC/F,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACjI,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC;QACnE,IAAI,MAAM,CAAC,SAAS,KAAK,UAAU;YAAE,SAAS;QAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC;QACxF,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;YAAE,SAAS;QAC9E,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;QAChG,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/D,IAAI,OAAO,EAAE,CAAC;gBAAC,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC;gBAAA,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAAC,CAAC;QAC7H,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAChD,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,qBAAqB,IAAI,CAAC,OAAO,CAAC,IAAI,eAAe;gBAC9D,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aACxB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAA2B,CAAC,CAAC,CAAC,CAAC;YAC7F,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1C,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACjC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;YAC5E,wEAAwE;YACxE,+DAA+D;YAC/D,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;YACtB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACzB,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,6BAA6B,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,YAAY,CAAC,KAAK,CAAC,EAAE;gBAClF,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC,CAAC;IACJ,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CACrB,MAAqB,EACrB,QAA4C,EAC5C,KAAuB;IAEvB,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,QAAQ,CAAC,CAAC;IAC/G,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,KAAK,SAAS;QAC7D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,kBAAkB,SAAS,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,SAAS,EAAE,KAAK,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,eAAe,EAAE,KAAK,EAAE,CAAC;IAC3C,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;YAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC;QACrJ,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,UAAU,GAAyC;QACvD,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxF,OAAO;QACP,WAAW,EAAE,OAAO,GAAG,CAAC;QACxB,UAAU,EAAE,OAAO,IAAI,CAAC;QACxB,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI;QACpD,SAAS,EAAE,IAAI;KAChB,CAAC;IACF,IAAI,GAAG,EAAE,CAAC;QACR,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;IACvB,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,UAAU,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,MAA4D,CAAC;IACjE,QAAQ,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;QACpC,KAAK,UAAU,CAAC;QAAC,KAAK,GAAG;YAAE,MAAM,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAAA,MAAM;QACnN,KAAK,SAAS,CAAC;QAAC,KAAK,GAAG,CAAC;QAAC,KAAK,YAAY,CAAC;QAAC,KAAK,GAAG;YAAE,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;YAAA,MAAM;QAClK,SAAS,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5C,MAAM,CAAC,QAAQ,CAAC,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC;IAClD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC;IACtD,IAAI,UAAU,IAAI,MAAM;QAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,MAAsB,EAAE,IAAe;IAC7D,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,CAAC,QAAQ,CAAC,GAAG,CACjB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EACxB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EACrB,KAAK,CACN,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QAC5B,KAAK,UAAU,EAAE,OAAO,UAAU,CAAC;QACnC,KAAK,QAAQ,EAAE,OAAO,QAAQ,CAAC;QAC/B,KAAK,SAAS,EAAE,OAAO,IAAI,CAAC;QAC5B,KAAK,SAAS,EAAE,OAAO,SAAS,CAAC;QACjC,KAAK,OAAO,EAAE,OAAO,OAAO,CAAC;QAC7B,SAAS,OAAO,SAAS,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,SAAyB,EAAE,MAAsB;IACvE,KAAK,IAAI,OAAO,GAA0B,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9F,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAA0B;IACpD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC,KAAK,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jfk-solutions/demo3d-file-format",
3
- "version": "1.9.0",
3
+ "version": "1.11.0",
4
4
  "description": "Browser-first TypeScript parser for Demo3D .demo3d and .raw3d files.",
5
5
  "type": "module",
6
6
  "sideEffects": false,