@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.20.0 → 3.21.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.
@@ -85,9 +85,11 @@ class MaterialLoader {
85
85
  materialWithDefines.defines = materialWithDefines.defines || {};
86
86
  if (mode === viewer_shared_types_1.ENVIRONMENT_MAP_PBR_MODE.LEGACY) {
87
87
  materialWithDefines.defines[viewer_shared_types_1.ENVIRONMENT_MAP_PBR_MODE.LEGACY] = "";
88
+ materialWithDefines.defines["SDV_LEGACY_DFG_APPROX"] = "";
88
89
  }
89
90
  else {
90
91
  delete materialWithDefines.defines[viewer_shared_types_1.ENVIRONMENT_MAP_PBR_MODE.LEGACY];
92
+ delete materialWithDefines.defines["SDV_LEGACY_DFG_APPROX"];
91
93
  }
92
94
  material.needsUpdate = true;
93
95
  };
@@ -1634,6 +1636,147 @@ const adaptShaders = () => {
1634
1636
  THREE.ShaderChunk.envmap_physical_pars_fragment =
1635
1637
  THREE.ShaderChunk.envmap_physical_pars_fragment.replace("reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );", legacyEnvironmentMapPbrMix);
1636
1638
  }
1639
+ // In legacy PBR mode, restore the analytical DFG approximation from three.js r162
1640
+ // instead of the DFG lookup texture introduced in r181.
1641
+ if (!THREE.ShaderChunk.lights_physical_pars_fragment.includes("SDV_LEGACY_DFG_APPROX")) {
1642
+ // Restore the DFGApprox function that was removed in r181
1643
+ const dfgApproxFunction = `
1644
+ #ifdef SDV_LEGACY_DFG_APPROX
1645
+ vec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {
1646
+ float dotNV = saturate( dot( normal, viewDir ) );
1647
+ const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );
1648
+ const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );
1649
+ vec4 r = roughness * c0 + c1;
1650
+ float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;
1651
+ vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;
1652
+ return fab;
1653
+ }
1654
+ #endif`;
1655
+ // Inject DFGApprox function right before EnvironmentBRDF
1656
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1657
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("vec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {", dfgApproxFunction +
1658
+ "\n\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {");
1659
+ // Replace the dfgLUT lookup in EnvironmentBRDF with a legacy/modern branch
1660
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1661
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("\tvec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;\n\treturn specularColor * fab.x + specularF90 * fab.y;", `\t#ifdef SDV_LEGACY_DFG_APPROX
1662
+ vec2 fab = DFGApprox( normal, viewDir, roughness );
1663
+ #else
1664
+ vec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;
1665
+ #endif
1666
+ return specularColor * fab.x + specularF90 * fab.y;`);
1667
+ // Replace the dfgLUT lookup in computeMultiscattering with a legacy/modern branch
1668
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1669
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;\n\t#ifdef USE_IRIDESCENCE", `\tfloat dotNV = saturate( dot( normal, viewDir ) );
1670
+ #ifdef SDV_LEGACY_DFG_APPROX
1671
+ vec2 fab = DFGApprox( normal, viewDir, roughness );
1672
+ #else
1673
+ vec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;
1674
+ #endif
1675
+ #ifdef USE_IRIDESCENCE`);
1676
+ // In legacy mode, skip the multi-scattering energy compensation for direct lighting
1677
+ // that was added in r181. In r162, RE_Direct_Physical just used BRDF_GGX without compensation.
1678
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1679
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("reflectedLight.directSpecular += irradiance * BRDF_GGX_Multiscatter( directLight.direction, geometryViewDir, geometryNormal, material );", `#ifdef SDV_LEGACY_DFG_APPROX
1680
+ reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );
1681
+ #else
1682
+ reflectedLight.directSpecular += irradiance * BRDF_GGX_Multiscatter( directLight.direction, geometryViewDir, geometryNormal, material );
1683
+ #endif`);
1684
+ // In legacy mode, replace RE_IndirectSpecular_Physical with the r162 single-call approach.
1685
+ // r184 splits into dielectric/metallic paths and mixes by metalness, which produces brighter results.
1686
+ const legacyIndirectSpecular = `void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {
1687
+ #ifdef USE_CLEARCOAT
1688
+ clearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );
1689
+ #endif
1690
+ #ifdef USE_SHEEN
1691
+ #ifdef SDV_LEGACY_DFG_APPROX
1692
+ sheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );
1693
+ #else
1694
+ sheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness ) * RECIPROCAL_PI;
1695
+ #endif
1696
+ #endif
1697
+ #ifdef SDV_LEGACY_DFG_APPROX
1698
+ vec3 singleScattering = vec3( 0.0 );
1699
+ vec3 multiScattering = vec3( 0.0 );
1700
+ vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;
1701
+ #ifdef USE_IRIDESCENCE
1702
+ computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColorBlended, material.specularF90, material.iridescence, material.iridescenceFresnelDielectric, material.roughness, singleScattering, multiScattering );
1703
+ #else
1704
+ computeMultiscattering( geometryNormal, geometryViewDir, material.specularColorBlended, material.specularF90, material.roughness, singleScattering, multiScattering );
1705
+ #endif
1706
+ vec3 totalScattering = singleScattering + multiScattering;
1707
+ vec3 diffuse = material.diffuseContribution * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );
1708
+ reflectedLight.indirectSpecular += radiance * singleScattering;
1709
+ reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;
1710
+ reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;
1711
+ #else
1712
+ vec3 singleScatteringDielectric = vec3( 0.0 );
1713
+ vec3 multiScatteringDielectric = vec3( 0.0 );
1714
+ vec3 singleScatteringMetallic = vec3( 0.0 );
1715
+ vec3 multiScatteringMetallic = vec3( 0.0 );
1716
+ #ifdef USE_IRIDESCENCE
1717
+ computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnelDielectric, material.roughness, singleScatteringDielectric, multiScatteringDielectric );
1718
+ computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.diffuseColor, material.specularF90, material.iridescence, material.iridescenceFresnelMetallic, material.roughness, singleScatteringMetallic, multiScatteringMetallic );
1719
+ #else
1720
+ computeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScatteringDielectric, multiScatteringDielectric );
1721
+ computeMultiscattering( geometryNormal, geometryViewDir, material.diffuseColor, material.specularF90, material.roughness, singleScatteringMetallic, multiScatteringMetallic );
1722
+ #endif
1723
+ vec3 singleScattering = mix( singleScatteringDielectric, singleScatteringMetallic, material.metalness );
1724
+ vec3 multiScattering = mix( multiScatteringDielectric, multiScatteringMetallic, material.metalness );
1725
+ vec3 totalScatteringDielectric = singleScatteringDielectric + multiScatteringDielectric;
1726
+ vec3 diffuse = material.diffuseContribution * ( 1.0 - totalScatteringDielectric );
1727
+ vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;
1728
+ vec3 indirectSpecular = radiance * singleScattering;
1729
+ indirectSpecular += multiScattering * cosineWeightedIrradiance;
1730
+ vec3 indirectDiffuse = diffuse * cosineWeightedIrradiance;
1731
+ #ifdef USE_SHEEN
1732
+ float sheenAlbedo = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );
1733
+ float sheenEnergyComp = 1.0 - max3( material.sheenColor ) * sheenAlbedo;
1734
+ indirectSpecular *= sheenEnergyComp;
1735
+ indirectDiffuse *= sheenEnergyComp;
1736
+ #endif
1737
+ reflectedLight.indirectSpecular += indirectSpecular;
1738
+ reflectedLight.indirectDiffuse += indirectDiffuse;
1739
+ #endif
1740
+ }`;
1741
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1742
+ replaceShaderFunction(THREE.ShaderChunk.lights_physical_pars_fragment, "void RE_IndirectSpecular_Physical", legacyIndirectSpecular);
1743
+ // In legacy mode, use the r162 IBLSheenBRDF formula (piecewise curve-fit
1744
+ // with PI normalization). r184 changed to a different curve-fit without it.
1745
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1746
+ replaceShaderFunction(THREE.ShaderChunk.lights_physical_pars_fragment, "float IBLSheenBRDF", `float IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {
1747
+ float dotNV = saturate( dot( normal, viewDir ) );
1748
+ #ifdef SDV_LEGACY_DFG_APPROX
1749
+ float r2 = roughness * roughness;
1750
+ float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;
1751
+ float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;
1752
+ float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );
1753
+ return saturate( DG * RECIPROCAL_PI );
1754
+ #else
1755
+ float r2 = roughness * roughness;
1756
+ float rInv = 1.0 / ( roughness + 0.1 );
1757
+ float a = -1.9362 + 1.0678 * roughness + 0.4573 * r2 - 0.8469 * rInv;
1758
+ float b = -0.6014 + 0.5538 * roughness - 0.4670 * r2 - 0.1255 * rInv;
1759
+ float DG = exp( a * dotNV + b );
1760
+ return saturate( DG );
1761
+ #endif
1762
+ }`);
1763
+ // In legacy mode, skip sheen energy compensation in RE_Direct_Physical
1764
+ // that was added in r181. r162 had no sheen energy comp for direct lights.
1765
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1766
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("\tfloat sheenAlbedoV = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );", "#ifndef SDV_LEGACY_DFG_APPROX\n\t\tfloat sheenAlbedoV = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );");
1767
+ // In legacy mode, restore the r162 sheen assembly in meshphysical_frag.
1768
+ // r162 multiplied outgoingLight by sheenEnergyComp before adding sheen,
1769
+ // r184 moved energy comp into RE_Direct/RE_Indirect and removed it here.
1770
+ THREE.ShaderChunk.meshphysical_frag =
1771
+ THREE.ShaderChunk.meshphysical_frag.replace("outgoingLight = outgoingLight + sheenSpecularDirect + sheenSpecularIndirect;", `#ifdef SDV_LEGACY_DFG_APPROX
1772
+ float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );
1773
+ outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;
1774
+ #else
1775
+ outgoingLight = outgoingLight + sheenSpecularDirect + sheenSpecularIndirect;
1776
+ #endif`);
1777
+ THREE.ShaderChunk.lights_physical_pars_fragment =
1778
+ THREE.ShaderChunk.lights_physical_pars_fragment.replace("\t\tirradiance *= sheenEnergyComp;", "\t\tirradiance *= sheenEnergyComp;\n\t\t#endif");
1779
+ }
1637
1780
  // here we replace in the background cube fragment shader the y component of the reflection vector with the negative y component in the case of a LDR environment map
1638
1781
  // older and newer three.js versions set up the background rotation matrix differently, so we patch both shader variants
1639
1782
  THREE.ShaderChunk.backgroundCube_frag =
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialLoader.js","sourceRoot":"","sources":["../../src/loaders/MaterialLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialLoader.js","sourceRoot":"","sources":["../../src/loaders/MaterialLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iFAc6C;AAC7C,+EAAyE;AACzE,yEAUyC;AACzC,yCAAqC;AACrC,6CAA+B;AAE/B,0DAGkC;AAElC,0EAG0C;AAC1C,wFAGiD;AACjD,gDAA2C;AAE3C,0CAAgD;AAChD,iEAA4D;AAuD5D,8BAA8B;AAE9B,sBAAsB;AAEtB,MAAa,cAAc;IAyC1B,6BAA6B;IAE7B,2BAA2B;IAE3B,YAA6B,gBAAiC;QAAjC,qBAAgB,GAAhB,gBAAgB,CAAiB;QA5C9D,0BAA0B;QAET,eAAU,GAAc,kCAAS,CAAC,QAAQ,CAAC;QAC3C,eAAU,GAAS,8BAAI,CAAC,QAAQ,CAAC;QAE1C,cAAS,GAAW,GAAG,CAAC;QACxB,6BAAwB,GAC/B,IAAI,+CAAqB,CAAC,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC;QACvC,yBAAoB,GAC3B,IAAI,8CAAoB,CAAC;YACxB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,mCAAa,CAAC,MAAM;YAC1B,SAAS,EAAE,GAAG;SACd,CAAC,CAAC;QACI,8BAAyB,GAChC,IAAI,2CAAiB,CAAC,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC;QACnC,YAAO,GAA6C,IAAI,CAAC;QACzD,qBAAgB,GAAW,CAAC,CAAC;QAC7B,gBAAW,GAAyB,2CAAoB,CAAC,IAAI,CAAC;QAC9D,2BAAsB,GAC7B,8CAAwB,CAAC,MAAM,CAAC;QACzB,iCAA4B,GAAgB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9D,YAAO,GAAW,IAAI,CAAC;QACvB,iBAAY,GAAW,KAAK,CAAC;QAC7B,0BAAqB,GAA8B,SAAS,CAAC;QAC7D,mBAAc,GAMlB,EAAE,CAAC;QACC,wBAAmB,GAAsC,IAAI,GAAG,EAAE,CAAC;QACnE,8BAAyB,GAAgB,IAAI,GAAG,EAAE,CAAC;QACnD,iBAAY,GAAW,CAAC,CAAC;QACzB,eAAU,GAAW,GAAG,CAAC;QACzB,qBAAgB,GAAqB,KAAK,CAAC,cAAc,CAAC;QAC1D,yBAAoB,GAC3B,EAAE,CAAC;QAyLI,0CAAqC,GAAG,CAC/C,QAAwB,EACxB,IAA8B,EACvB,EAAE;YACT,IAAI,CAAC,CAAC,QAAQ,YAAY,KAAK,CAAC,oBAAoB,CAAC;gBAAE,OAAO;YAE9D,MAAM,mBAAmB,GAAG,QAE3B,CAAC;YACF,mBAAmB,CAAC,OAAO,GAAG,mBAAmB,CAAC,OAAO,IAAI,EAAE,CAAC;YAEhE,IAAI,IAAI,KAAK,8CAAwB,CAAC,MAAM,EAAE,CAAC;gBAC9C,mBAAmB,CAAC,OAAO,CAAC,8CAAwB,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBAClE,mBAAmB,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACP,OAAO,mBAAmB,CAAC,OAAO,CAAC,8CAAwB,CAAC,MAAM,CAAC,CAAC;gBACpE,OAAO,mBAAmB,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC7D,CAAC;YAED,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;QAC7B,CAAC,CAAC;IAvM+D,CAAC;IAElE,8BAA8B;IAE9B,0CAA0C;IAE1C,IAAW,uBAAuB;QACjC,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACtC,CAAC;IAED,IAAW,uBAAuB,CAAC,KAA4B;QAC9D,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;QACtC,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAClC,CAAC;IAED,IAAW,mBAAmB;QAC7B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IAClC,CAAC;IAED,IAAW,mBAAmB,CAAC,KAA2B;QACzD,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC9B,CAAC;IAED,IAAW,wBAAwB;QAClC,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACvC,CAAC;IAED,IAAW,wBAAwB,CAAC,KAAwB;QAC3D,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACnC,CAAC;IAED,IAAW,oBAAoB;QAC9B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACnC,CAAC;IAED,IAAW,oBAAoB,CAAC,KAAgC;QAC/D,IAAI,IAAI,CAAC,qBAAqB,KAAK,KAAK;YAAE,OAAO;QAEjD,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC;IAED,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAW,WAAW,CAAC,KAAa;QACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,IAAW,eAAe;QACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC9B,CAAC;IAED,IAAW,eAAe,CAAC,KAAuB;QACjD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC9B,CAAC;IAED,IAAW,mBAAmB;QAG7B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IAClC,CAAC;IAED,IAAW,mBAAmB,CAAC,KAE9B;QACA,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACnC,CAAC;IAED,6CAA6C;IAE7C,8BAA8B;IAEvB,qBAAqB,CAAC,KAAc;QAC1C,MAAM,YAAY,GAAG,CACpB,CAAoC,EACpC,MAAe,EACqB,EAAE;YACtC,IAAI,CAAC,CAAC;gBAAE,OAAO;YAEf,IAAI,CAAC,YAAY,iBAAO,EAAE,CAAC;gBAC1B,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAC1B,OAAO,CAAC,CAAC;YACV,CAAC;iBAAM,CAAC;gBACP,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/D,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CACf,CAAC;gBACF,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;oBAChC,OAAO,OAAO,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACP,uEAAuE;oBACvE,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;oBACxB,MAAM,KAAK,IAAI;wBACd,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE;wBAC7B,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CACzD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAC9B,CAAC;oBAEF,IAAI,YAAY,EAAE,CAAC;wBAClB,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;wBACrC,OAAO,YAAY,CAAC;oBACrB,CAAC;yBAAM,CAAC;wBACP,2EAA2E;wBAC3E,iGAAiG;wBACjG,OAAO,CAAC,CAAC;oBACV,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,8DAA8D;YAC9D,MAAM,QAAQ,GAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;YAE7D,IAAI,QAAQ,CAAC,KAAK;gBACjB,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,QAAQ,CAAC,QAAQ;gBACpB,QAAQ,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC5D,IAAI,QAAQ,CAAC,QAAQ;gBACpB,QAAQ,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC5D,IAAI,QAAQ,CAAC,kBAAkB;gBAC9B,QAAQ,CAAC,kBAAkB,GAAG,YAAY,CACzC,QAAQ,CAAC,kBAAkB,EAC3B,KAAK,CACL,CAAC;YACH,IAAI,QAAQ,CAAC,gBAAgB;gBAC5B,QAAQ,CAAC,gBAAgB,GAAG,YAAY,CACvC,QAAQ,CAAC,gBAAgB,EACzB,KAAK,CACL,CAAC;YACH,IAAI,QAAQ,CAAC,gBAAgB;gBAC5B,QAAQ,CAAC,gBAAgB,GAAG,YAAY,CACvC,QAAQ,CAAC,gBAAgB,EACzB,KAAK,CACL,CAAC;YACH,IAAI,QAAQ,CAAC,UAAU;gBACtB,QAAQ,CAAC,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAChE,IAAI,QAAQ,CAAC,aAAa;gBACzB,QAAQ,CAAC,aAAa,GAAG,YAAY,CACpC,QAAQ,CAAC,aAAa,EACtB,KAAK,CACL,CAAC;YAEH,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;QAC7B,CAAC;IACF,CAAC;IAEM,yBAAyB;QAC/B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,iBAAiB;gBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,IAAI,EAClD,CAAC;gBACF,MAAM,QAAQ,GAA4B,IAAI,CAAC,cAAc,CAC5D,QAAQ,CACR,CAAC,QAAmC,CAAC;gBACtC,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,qBAAqB,CACxD,IAAI,CAAC,wBAAwB,EAC7B,sBAAsB,CAAC,IAAI,EAC3B,SAAS,CACT,CAAC;gBACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBACxD,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;gBACvD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAwBM,qBAAqB;QAC3B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;gBACxD,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,qBAAqB,CACxD,IAAI,CAAC,oBAAoB,EACzB,sBAAsB,CAAC,IAAI,EAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAC9C,CAAC;gBACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBACxD,IAAI,QAAQ,YAAY,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,QAAQ,YAAY,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBACxD,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,QAAQ,YAAY,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC1D,QAAQ,CAAC,IAAI,CACZ,IAAI,KAAK,CAAC,mBAAmB,CAC5B,UAAiD,CACjD,CACD,CAAC;gBACH,CAAC;qBAAM,IAAI,QAAQ,YAAY,uDAA0B,EAAE,CAAC;oBAC3D,QAAQ,CAAC,IAAI,CAAC,IAAI,uDAA0B,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBACD,IAAI,CAAC,qCAAqC,CACzC,QAAQ,EACR,IAAI,CAAC,sBAAsB,CAC3B,CAAC;gBACF,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAEM,0BAA0B;QAChC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,cAAc;gBACrB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,IAAI,EAClD,CAAC;gBACF,MAAM,QAAQ,GAA+C,CAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CACtC,CAAC;gBACF,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,qBAAqB,CACxD,IAAI,CAAC,yBAAyB,EAC9B,sBAAsB,CAAC,KAAK,EAC5B,SAAS,CACT,CAAC;gBACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBACxD,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;gBACpD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAEM,oBAAoB,CAC1B,CAA2C,EAC3C,IAA0B;QAE1B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,iBAAiB;gBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,mBAAmB;gBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,iBAAiB,EACvB,CAAC;gBACF,MAAM,QAAQ,GAA6B,IAAI,CAAC,cAAc,CAC7D,QAAQ,CACR,CAAC,QAAoC,CAAC;gBACvC,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;oBAC1C,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBAC1C,8CAAoB;wBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,yCAAe;wBAChB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,wDAA8B;wBAC/B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,2CAAiB;wBAClB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,6CAAmB;wBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,2CAAiB,CAAC;oBACI,CACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,CACzC,CAAC,MAAM,KAAK,SAAS;oBAEvB,SAAS;gBAEV,IACC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;oBAC1C,2CAAiB;oBACjB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBACzC,6CAAmB;oBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBACzC,2CAAiB,CAAC;oBACpB,IAAI,CAAC,gBAAgB,CAAC,+BAA+B;wBACpD,KAAK;oBAEN,OAAO;gBAER,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;gBACpB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC5B,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAClC,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC;wBAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC;gBACD,IAAI,QAAQ,CAAC,OAAO;oBACnB,QAAQ,CAAC,OAAO,CACf,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAC/C,GAAG,EAAE,CAAC;gBAER,IAAI,CAAC,4BAA4B,CAChC,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAC5C,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAEM,qCAAqC,CAAC,MAAe;QAC3D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,iBAAiB;gBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,mBAAmB;gBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,iBAAiB,EACvB,CAAC;gBACF,MAAM,QAAQ,GAGe,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;qBACxD,QAGwB,CAAC;gBAC3B,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;oBAC1C,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBAC1C,2CAAiB;wBACjB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,6CAAmB;wBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,2CAAiB,CAAC;oBAEnB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAI9B,CAAC,MAAM,KAAK,SAAS;oBAEtB,SAAS;gBAEV,IAAI,MAAM,EAAE,CAAC;oBACZ,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;oBAC/B,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;oBAC5B,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;wBAClC,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC;4BAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC7B,CAAC;oBACD,IAAI,QAAQ,CAAC,OAAO;wBACnB,QAAQ,CAAC,OAAO,CACf,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAC/C,GAAG,EAAE,CAAC;gBACT,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;oBACvB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAEM,2BAA2B,CAAC,KAA+B;QACjE,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACpC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IAAI,CAAC,qCAAqC,CACzC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,EACtC,KAAK,CACL,CAAC;QACH,CAAC;IACF,CAAC;IAEM,6BAA6B,CAAC,KAAa;QACjD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,oBAAoB,EAC1B,CAAC;gBACF,MAAM,QAAQ,GAEkB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;qBAC3D,QAE2B,CAAC;gBAC9B,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;oBAC1C,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBAC1C,8CAAoB;wBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,yCAAe;wBAChB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,wDAA8B;wBAC/B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,2CAAiB,CAAC;oBACI,CACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,CACzC,CAAC,MAAM,KAAK,SAAS;oBAEvB,SAAS;gBAEV,QAAQ,CAAC,eAAe,GAAG,KAAK,CAAC;gBACjC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAEM,4BAA4B,CAAC,KAAW;QAC9C,qEAAqE;QACrE,MAAM,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE;aACxC,SAAS,CACT,gBAAI,CAAC,QAAQ,CACZ,gBAAI,CAAC,MAAM,EAAE,EACb,gBAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CACxD,CACD;aACA,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,4BAA4B;YAChC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,kBAAkB;YAC7C,IAAI,CAAC,4BAA4B,CAAC;QAEnC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,oBAAoB,EAC1B,CAAC;gBACF,MAAM,QAAQ,GAEkB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;qBAC3D,QAE2B,CAAC;gBAC9B,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;oBAC1C,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;wBAC1C,8CAAoB;wBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,yCAAe;wBAChB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,wDAA8B;wBAC/B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY;4BACzC,2CAAiB,CAAC;oBAEnB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAK9B,CAAC,MAAM,KAAK,SAAS;oBAEtB,SAAS;gBAEV,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,4BAA4B,CAAC;gBAC5D,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAEM,eAAe,CAAC,CAAS;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ;YAC5C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,IAAI,CAAC;QACR,IACC,MAAM,KAAK,IAAI,CAAC,OAAO;YACvB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU;YAE7C,OAAO;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAE5C,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACtC,yCAAmB,EAClB,CAAC;gBACF,MAAM,QAAQ,GAA6C,CAC1D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CACtC,CAAC;gBAEF,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;gBAED,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,wBAAwB;oBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,wBAAwB,KAAK,IAAI,EAClC,CAAC;oBACF,QAAQ,CAAC,MAAM;wBACd,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,iBAAiB,CAAC;oBACrB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACF,CAAC;iBAAM,IACN,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACtC,KAAK,CAAC,cAAc,EACnB,CAAC;gBACF,MAAM,QAAQ,GAA+C,CAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CACtC,CAAC;gBAEF,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;qBAC7C,sBAAsB;oBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;yBAC7C,sBAAsB,KAAK,IAAI,EAChC,CAAC;oBACF,QAAQ,CAAC,IAAI;wBACZ,IAAI,CAAC,UAAU;4BACf,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ;iCAC7C,eAAe,CAAC;oBACnB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;oBAChC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAEM,SAAS;QACf,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;IACnD,CAAC;IAEM,cAAc,CACpB,IAA4B,EAC5B,YAAkD,EAClD,YAA0C,EAC1C,gBAAmC;;QAEnC,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,qBAAqB,CACxD,YAAY,EACZ,IAAI,EACJ,gBAAgB,CAChB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAExD,IAAI,QAA8B,CAAC;QACnC,IAAI,IAAI,KAAK,sBAAsB,CAAC,KAAK,EAAE,CAAC;YAC3C,IAAI,YAAY,YAAY,gDAAsB,EAAE,CAAC;gBACpD,QAAQ,GAAG,IAAI,yCAAmB,CAAC,UAAU,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YACjD,CAAC;QACF,CAAC;aAAM,IAAI,IAAI,KAAK,sBAAsB,CAAC,IAAI,EAAE,CAAC;YACjD,QAAQ,GAAG,IAAI,KAAK,CAAC,iBAAiB,CACrC,UAA+C,CAC/C,CAAC;QACH,CAAC;aAAM,CAAC;YACP,IAAI,YAAY,YAAY,2CAAiB,EAAE,CAAC;gBAC/C,QAAQ,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACP,IAAI,YAAY,YAAY,4CAAkB,EAAE,CAAC;oBAChD,QAAQ,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC;wBACnC,OAAO,EAAE,UAAU,CAAC,OAAO;wBAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;wBACvB,WAAW,EAAE,IAAI;wBACjB,UAAU,EAAE,KAAK;qBACjB,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;wBAC9C,IACC,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,KAAK,EACjD,CAAC;4BACF,QAAQ,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBACpD,CAAC;6BAAM,IACN,IAAI,CAAC,qBAAqB;4BAC1B,mCAAa,CAAC,mBAAmB,EAChC,CAAC;4BACF,QAAQ,GAAG,IAAI,uDAA0B,CACxC,UAAU,CACV,CAAC;wBACH,CAAC;6BAAM,IACN,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,OAAO,EACnD,CAAC;4BACF,QAAQ,GAAG,IAAI,KAAK,CAAC,mBAAmB,CACvC,UAAiD,CACjD,CAAC;wBACH,CAAC;6BAAM,IACN,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,KAAK,EACjD,CAAC;4BACF,QAAQ,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBACpD,CAAC;6BAAM,CAAC;4BACP,QAAQ,GAAG,IAAI,KAAK,CAAC,oBAAoB,CACxC,UAAU,CACV,CAAC;wBACH,CAAC;oBACF,CAAC;yBAAM,IACN,YAAY,YAAY,wDAA8B,EACrD,CAAC;wBACF,QAAQ,GAAG,IAAI,uDAA0B,CAAC,UAAU,CAAC,CAAC;oBACvD,CAAC;yBAAM,IAAI,YAAY,YAAY,yCAAe,EAAE,CAAC;wBACpD,QAAQ,GAAG,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAC;oBACxC,CAAC;yBAAM,IAAI,YAAY,YAAY,6CAAmB,EAAE,CAAC;wBACxD,QAAQ,GAAG,IAAI,KAAK,CAAC,mBAAmB,CACvC,UAAiD,CACjD,CAAC;oBACH,CAAC;yBAAM,IAAI,YAAY,YAAY,2CAAiB,EAAE,CAAC;wBACtD,QAAQ,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBACpD,CAAC;yBAAM,CAAC;wBACP,QAAQ,GAAG,IAAI,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;oBACvD,CAAC;gBACF,CAAC;gBACD,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC;gBACxC,QAAQ,CAAC,eAAe,GAAG,CAC1B,MAAgD,EAChD,QAA6B,EAC5B,EAAE;oBACH,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;oBACzB,mEAAmE;oBACnE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;wBAClC,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAG;4BAC7B,KAAK,EAAE,IAAI,CAAC,YAAY;yBACxB,CAAC;wBACF,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC;oBACpD,CAAC;oBACD,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;gBACnC,CAAC,CAAC;gBACF,IACC,QAAQ,YAAY,uDAA0B;oBAC9C,QAAQ,YAAY,KAAK,CAAC,oBAAoB,EAC7C,CAAC;oBACF,MAAA,QAAQ,CAAC,OAAO,oCAAhB,QAAQ,CAAC,OAAO,GAAK,EAAE,EAAC;oBACxB,QAAQ,CAAC,OAAO,CACf,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAC/C,GAAG,EAAE,CAAC;oBAEP,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,iBAAiB;wBACzD,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC9B,IACC,gBAAgB;wBAChB,gBAAgB,CAAC,iBAAiB;wBAClC,QAAQ,YAAY,KAAK,CAAC,oBAAoB;wBAE9C,QAAQ,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBACvC,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,cAAc;wBACtD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC9B,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,eAAe;YACvD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;QAE9B,IAAI,CAAC,qCAAqC,CACzC,QAAQ,EACR,IAAI,CAAC,sBAAsB,CAC3B,CAAC;QAEF,IACC,YAAY,YAAY,8CAAoB;YAC5C,YAAY,YAAY,yCAAe;YACvC,YAAY,YAAY,wDAA8B;YACtD,YAAY,YAAY,2CAAiB;YACzC,YAAY,YAAY,6CAAmB;YAC3C,YAAY,YAAY,2CAAiB,EACxC,CAAC;YACF,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,WAAW,GAA2B,YAAa;qBACvD,MAAM,CAAC;gBACT,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC/B,MAAM,YAAY,GACjB,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,UAAU,CACpD,WAAW,CACX,CAAC;oBACH,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;wBAChC,IACC,CAAC,QAAQ,YAAY,KAAK,CAAC,iBAAiB;4BAC3C,QAAQ,YAAY,KAAK,CAAC,mBAAmB;4BAC7C,QAAQ,YAAY,KAAK,CAAC,iBAAiB,CAAC;4BAC7C,IAAI,CAAC,gBAAgB;iCACnB,+BAA+B,KAAK,KAAK;4BAE3C,OAAO;wBAEmB,QAAS,CAAC,MAAM,GAAG,MAAM,CAAC;wBAErD,MAAM,UAAU,GACY,QAAS;6BAClC,MAAM,YAAY,KAAK,CAAC,WAAW;4BACpC,CAAC,CAAC,2CAAoB,CAAC,GAAG;4BAC1B,CAAC,CAAC,2CAAoB,CAAC,GAAG,CAAC;wBAC7B,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;4BAClC,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC;gCAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC7B,CAAC;wBACD,IAAI,QAAQ,CAAC,OAAO;4BACnB,QAAQ,CAAC,OAAO,CACf,cAAc,GAAG,UAAU,CAAC,WAAW,EAAE,CACzC,GAAG,EAAE,CAAC;wBAER,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;oBAC7B,CAAC,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,YAAY;YACf,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC;QAEnE,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;QAE5B,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC,EAAE,CAAC;YACzC,QAAQ,CAAC,QAAQ,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;QACpD,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,QAAQ,GAAG;gBACnB,IAAI,EAAE,YAAY,CAAC,EAAE;gBACrB,SAAS,EAAE,YAAY,CAAC,OAAO;aAC/B,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC;IAEM,kBAAkB;QACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;IACxC,CAAC;IAEM,qBAAqB,CAC3B,YAA0C,EAC1C,IAA4B,EAC5B,gBAAmC;QAKnC,MAAM,iBAAiB,GAAkC,EAAE,CAAC;QAE5D,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,gEAAgE;QAChE,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,IAAI,IAAI,KAAK,sBAAsB,CAAC,KAAK,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC,qBAAqB,CAChC,IAAI,CAAC,yBAAyB,EAC9B,IAAI,EACJ,gBAAgB,CAChB,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,KAAK,sBAAsB,CAAC,IAAI,EAAE,CAAC;gBACjD,OAAO,IAAI,CAAC,qBAAqB,CAChC,IAAI,CAAC,wBAAwB,EAC7B,IAAI,EACJ,gBAAgB,CAChB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,IACC,gBAAgB,KAAK,SAAS;oBAC9B,gBAAgB,CAAC,eAAe,EAC/B,CAAC;oBACF,MAAM,2BAA2B,GAChC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACjC,IAAI,CAAC,oBAAoB,CAAC,KAAK,GAAG,SAAS,CAAC;oBAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAC5C,IAAI,CAAC,oBAAoB,EACzB,IAAI,EACJ,gBAAgB,CAChB,CAAC;oBACF,IAAI,CAAC,oBAAoB,CAAC,KAAK;wBAC9B,2BAA2B,CAAC;oBAC7B,OAAO,UAAU,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACP,OAAO,IAAI,CAAC,qBAAqB,CAChC,IAAI,CAAC,oBAAoB,EACzB,IAAI,EACJ,gBAAgB,CAChB,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED;;WAEG;QAEH,iBAAiB,CAAC,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC;QAEvD,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACxC,iBAAiB,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;YACjD,iBAAiB,CAAC,WAAW,GAAG,iBAAiB,CAAC,OAAO,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,YAAY,CAAC,SAAS,KAAK,oCAAc,CAAC,KAAK,EAAE,CAAC;YACrD,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC;YACrC,iBAAiB,CAAC,UAAU,GAAG,KAAK,CAAC;QACtC,CAAC;aAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;YAC3C,iBAAiB,CAAC,WAAW,GAAG,KAAK,CAAC;QACvC,CAAC;QAED,IAAI,YAAY,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1C,iBAAiB,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QACtD,CAAC;QAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3C,iBAAiB,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;QACxD,CAAC;QAED,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5C,iBAAiB,CAAC,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;QAC1D,CAAC;QAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS;YACnC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACjE,YAAY,CAAC,KAAK,CAClB,CAAC;QAEH,IACC,YAAY,CAAC,KAAK,KAAK,SAAS;YAChC,YAAY,CAAC,GAAG,KAAK,SAAS;YAC9B,YAAY,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS;YAEpC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACjE,YAAY,CAAC,GAAG,CAAC,KAAK,CACtB,CAAC;QAEH,IACC,YAAY,CAAC,KAAK,KAAK,SAAS;YAChC,YAAY,CAAC,GAAG,KAAK,SAAS;YAC9B,YAAY,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS;YACpC,CAAC,CACA,gBAAgB,KAAK,SAAS;gBAC9B,gBAAgB,CAAC,eAAe,CAChC;YAED,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACjE,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAC1C,CAAC;QAEH,IACC,gBAAgB,KAAK,SAAS;YAC9B,gBAAgB,CAAC,eAAe;YAChC,CAAC,YAAY,CAAC,KAAK;gBAClB,IAAI,CAAC,UAAU,CAAC,UAAU,CACzB,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAC1C;gBACD,YAAY,CAAC,KAAK,GAAG,IAAI;oBACxB,IAAI,CAAC,UAAU,CAAC,UAAU,CACzB,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAC1C;gBACF,YAAY,CAAC,KAAK;oBACjB,IAAI,CAAC,gBAAgB,CAAC,oBAAoB;gBAC3C,YAAY,CAAC,KAAK;oBACjB,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,GAAG,IAAI;gBAClD,YAAY,CAAC,KAAK,KAAK,SAAS,CAAC;YAElC,iBAAiB,CAAC,KAAK;gBACtB,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEtD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS;YAClC,iBAAiB,CAAC,IAAI;gBACrB,YAAY,CAAC,IAAI,KAAK,mCAAa,CAAC,IAAI;oBACvC,CAAC,CAAC,KAAK,CAAC,QAAQ;oBAChB,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,mCAAa,CAAC,KAAK;wBAC1C,CAAC,CAAC,KAAK,CAAC,SAAS;wBACjB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;QAEvB;;;;WAIG;QAEH,IAAI,IAAI,KAAK,sBAAsB,CAAC,KAAK,EAAE,CAAC;YAC3C,IAAI,YAAY,YAAY,2CAAiB,EAAE,CAAC;gBAC/C,MAAM,uBAAuB,GAC5B,iBAAiB,CAAC;gBAEnB,uBAAuB,CAAC,IAAI;oBAC3B,YAAY,CAAC,IAAI,KAAK,SAAS;wBAC9B,CAAC,CAAC,YAAY,CAAC,IAAI;wBACnB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,uBAAuB,CAAC,QAAQ,GAAG;oBAClC,sBAAsB,EAAE,YAAY,CAAC,IAAI,KAAK,SAAS;oBACvD,eAAe,EAAE,YAAY,CAAC,IAAI;iBAClC,CAAC;gBACF,uBAAuB,CAAC,eAAe;oBACtC,YAAY,CAAC,eAAe,KAAK,SAAS;wBACzC,CAAC,CAAC,YAAY,CAAC,eAAe;wBAC9B,CAAC,CAAC,IAAI,CAAC;gBAET,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;oBACpC,uBAAuB,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAC/C,YAAY,CAAC,GAAG,CAChB,CAAC;oBACF,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;oBACzC,uBAAuB,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CACpD,YAAY,CAAC,QAAQ,CACrB,CAAC;oBACF,uBAAuB,CAAC,WAAW,GAAG,IAAI,CAAC;oBAC3C,uBAAuB,CAAC,UAAU,GAAG,KAAK,CAAC;oBAC3C,QAAQ,EAAE,CAAC;gBACZ,CAAC;YACF,CAAC;iBAAM,IAAI,YAAY,YAAY,gDAAsB,EAAE,CAAC;gBAC3D,MAAM,4BAA4B,GACjC,iBAAiB,CAAC;gBAEnB,IAAI,YAAY,CAAC,oBAAoB,EAAE,CAAC;oBACvC,4BAA4B,CAAC,wBAAwB;wBACpD,IAAI,CAAC,aAAa,CACjB,YAAY,CAAC,oBAAoB,CACZ,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACP,4BAA4B,CAAC,wBAAwB;wBACpD,IAAI,KAAK,CAAC,WAAW,CACpB,IAAI,UAAU,CACb,4BAA4B,CAAC,4BAA4B;4BACxD,IAAI,CACL,EACD,4BAA4B,CAAC,4BAA4B;4BACxD,IAAI,EACL,CAAC,EACD,KAAK,CAAC,gBAAgB,EACtB,KAAK,CAAC,eAAe,CACrB,CAAC;oBACH,4BAA4B,CAAC,wBAAwB,CAAC,cAAc;wBACnE,OAAO,CAAC;gBACV,CAAC;gBAED,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpB,4BAA4B,CAAC,MAAM;oBAClC,YAAY,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM;wBACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBAEpB,4BAA4B,CAAC,QAAQ,GAAG;oBACvC,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,wBAAwB,EAAE,YAAY,CAAC,MAAM,KAAK,SAAS;oBAC3D,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM;iBACtC,CAAC;gBAEF,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBACV,4BAA4B,CAAC,iBAAiB;oBAC7C,YAAY,CAAC,iBAAiB,KAAK,SAAS;wBAC3C,CAAC,CAAC,YAAY,CAAC,iBAAiB;wBAChC,CAAC,CAAC,KAAK,CAAC;gBAEV,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtC,4BAA4B,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CACtD,YAAY,CAAC,KAAK,CAClB,CAAC;oBACF,4BAA4B,CAAC,GAAG;wBAC/B,4BAA4B,CAAC,KAAK,CAAC;oBACpC,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,4BAA4B,CAAC,UAAU;wBACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,4BAA4B,CAAC,QAAQ;wBACpC,4BAA4B,CAAC,UAAU,CAAC;oBACzC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC;oBAChD,4BAA4B,CAAC,UAAU,GAAG,KAAK,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxC,4BAA4B,CAAC,OAAO;wBACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,OAAO,CACpB,CAAC;gBACJ,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,uBAAuB,GAC5B,iBAAiB,CAAC;gBACnB,uBAAuB,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;YAChD,CAAC;YACD,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAC,CAAC;QAClD,CAAC;aAAM,IAAI,IAAI,KAAK,sBAAsB,CAAC,IAAI,EAAE,CAAC;YACjD,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAC,CAAC;QAClD,CAAC;QAED;;;;WAIG;QAEH,IAAI,YAAY,YAAY,4CAAkB;YAC7C,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAC,CAAC;QAElD;;WAEG;QAEH,MAAM,eAAe,GAGqB,iBAAiB,CAAC;QAE5D,IAAI,YAAY,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAC5C,YAAY,CAAC,QAAQ,CACrB,CAAC;YACF,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC;YACnC,eAAe,CAAC,UAAU,GAAG,KAAK,CAAC;YACnC,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACtC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/D,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/C,eAAe,CAAC,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QAC9D,CAAC;QAED,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC3D,eAAe,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACvD,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED;;;;WAIG;QAEH,IACC,YAAY,YAAY,2CAAiB;YACzC,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,KAAK;YAClD,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,OAAO;YACpD,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,KAAK;YAElD,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAC,CAAC;QAEhD,IACC,YAAY,YAAY,2CAAiB;YACzC,IAAI,CAAC,qBAAqB,KAAK,SAAS,EACvC,CAAC;YACF,MAAM,eAAe,GACpB,eAAe,CAAC;YAEjB,eAAe,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;YAEnD,IAAI,YAAY,CAAC,QAAQ,KAAK,SAAS;gBACtC,eAAe,CAAC,QAAQ;oBACvB,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,QAAQ,CACrB,CAAC;YAEJ,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5C,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAC/C,YAAY,CAAC,WAAW,CACxB,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YAED,eAAe,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC;YAEjE,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAChD,eAAe,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CACnD,YAAY,CAAC,eAAe,CAC5B,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YAED,eAAe,CAAC,iBAAiB,GAAG,YAAY,CAAC,iBAAiB,CAAC;YAEnE,eAAe,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;YAEzD,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAC,CAAC;QAChD,CAAC;QAED,IACC,YAAY,YAAY,6CAAmB;YAC3C,IAAI,CAAC,qBAAqB,KAAK,SAAS,EACvC,CAAC;YACF,MAAM,iBAAiB,GACtB,eAAsD,CAAC;YAExD,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5C,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CACjD,YAAY,CAAC,WAAW,CACxB,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YAED,iBAAiB,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC;YAEnE,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAChD,iBAAiB,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CACrD,YAAY,CAAC,eAAe,CAC5B,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YAED,iBAAiB,CAAC,iBAAiB;gBAClC,YAAY,CAAC,iBAAiB,CAAC;YAEhC,iBAAiB,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;YAE3D,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAC,CAAC;QAClD,CAAC;QAED;;WAEG;QAEH,MAAM,kBAAkB,GAGG,eAAe,CAAC;QAE3C,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS;YACrC,kBAAkB,CAAC,WAAW,GAAG,YAAY,CAAC,OAAO,KAAK,QAAQ,CAAC;QAEpE,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACxC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAC9C,YAAY,CAAC,OAAO,CACpB,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,kBAAkB,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAEtD,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS;YAC1C,kBAAkB,CAAC,QAAQ;gBAC1B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,YAAY,CACzB,CAAC;QAEJ,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5C,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAClD,YAAY,CAAC,WAAW,CACxB,CAAC;YACF,kBAAkB,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAClE,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,kBAAkB,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QACzC,kBAAkB,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3D,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,4BAA4B,CAAC;QAEtE,IAAI,YAAY,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1C,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAChD,YAAY,CAAC,SAAS,CACtB,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS;YACzC,kBAAkB,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,OAAO,CACjD,YAAY,CAAC,WAAW,EACxB,CAAC,YAAY,CAAC,WAAW,CACzB,CAAC;QAEH;;;;WAIG;QAEH,IACC,IAAI,CAAC,qBAAqB,KAAK,mCAAa,CAAC,mBAAmB;YAChE,CAAC,CAAC,YAAY,YAAY,wDAA8B,CAAC;YAEzD,OAAO,EAAC,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAC,CAAC;QAEnD,IAAI,YAAY,YAAY,wDAA8B,EAAE,CAAC;YAC5D,MAAM,4BAA4B,GACjC,kBAAkB,CAAC;YAEpB,4BAA4B,CAAC,QAAQ;gBACpC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACjE,4BAA4B,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAElE,IAAI,YAAY,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;gBACtD,4BAA4B,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAC7D,YAAY,CAAC,qBAAqB,CAClC,CAAC;gBACF,4BAA4B,CAAC,YAAY,CAAC,UAAU;oBACnD,KAAK,CAAC,cAAc,CAAC;gBACtB,4BAA4B,CAAC,aAAa;oBACzC,4BAA4B,CAAC,YAAY,CAAC;gBAC3C,QAAQ,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACP,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC5C,4BAA4B,CAAC,YAAY;wBACxC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC9C,4BAA4B,CAAC,YAAY,CAAC,UAAU;wBACnD,KAAK,CAAC,cAAc,CAAC;oBACtB,QAAQ,EAAE,CAAC;gBACZ,CAAC;gBACD,IAAI,YAAY,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;oBAC9C,4BAA4B,CAAC,aAAa;wBACzC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;oBAChD,QAAQ,EAAE,CAAC;gBACZ,CAAC;YACF,CAAC;YAED,OAAO,EAAC,UAAU,EAAE,4BAA4B,EAAE,QAAQ,EAAC,CAAC;QAC7D,CAAC;QAED;;;;WAIG;QACH,IACC,YAAY,YAAY,yCAAe;YACvC,IAAI,CAAC,qBAAqB,KAAK,SAAS,EACvC,CAAC;YACF,MAAM,aAAa,GAA0B,kBAAkB,CAAC;YAEhE,aAAa,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;YAE7D,IAAI,YAAY,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5C,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAC7C,YAAY,CAAC,WAAW,CACxB,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YAED,aAAa,CAAC,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;YAEzD,IAAI,YAAY,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACnD,aAAa,CAAC,kBAAkB;oBAC/B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,kBAAkB,CAC/B,CAAC;YACJ,CAAC;YAED,IAAI,YAAY,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBACjD,aAAa,CAAC,gBAAgB;oBAC7B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,gBAAgB,CAC7B,CAAC;YACJ,CAAC;YAED,aAAa,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CACvC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EACtB,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EACtB,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CACtB,CAAC;YAEF,aAAa,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;YAEvD,aAAa,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;YAE3C,aAAa,CAAC,kBAAkB,GACrB,YAAY,CAAC,kBACvB,CAAC;YAEF,aAAa,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;YAEzC,aAAa,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;YAE/C,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAEnD,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAEnD,aAAa,CAAC,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;YAE3D,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;YAC5B,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;YAE5B,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC;YACjC,aAAa,CAAC,OAAO,GAAG,GAAG,CAAC;YAE5B,aAAa,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;YAErC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAC,CAAC;QAC9C,CAAC;QAED;;;;WAIG;QAEH,IAAI,CAAC,CAAC,YAAY,YAAY,8CAAoB,CAAC;YAClD,OAAO,EAAC,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAC,CAAC;QAEnD,MAAM,sBAAsB,GAC3B,kBAAkB,CAAC;QAEpB,sBAAsB,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAE1D,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7C,sBAAsB,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CACvD,YAAY,CAAC,YAAY,CACzB,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,sBAAsB,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAC7D,YAAY,CAAC,kBAAkB,CAC/B,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,kBAAkB;YACxC,YAAY,CAAC,kBAAkB,CAAC;QAEjC,IAAI,YAAY,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACtD,sBAAsB,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAChE,YAAY,CAAC,qBAAqB,CAClC,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAChD,sBAAsB,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAC1D,YAAY,CAAC,eAAe,CAC5B,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,iBAAiB;YACvC,YAAY,CAAC,iBAAiB,CAAC;QAEhC,sBAAsB,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC;QAExE,sBAAsB,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;QAE9C,sBAAsB,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;QAEhE,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAChD,sBAAsB,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAC1D,YAAY,CAAC,eAAe,CAC5B,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAE4B,sBAAuB,CAAC,SAAS;YAC7D,YAAY,CAAC,SAAS,CAAC;QAExB,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAChB,sBAAuB,CAAC,YAAY;gBAChE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAC/C,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,mBAAmB;YACzC,YAAY,CAAC,mBAAmB,CAAC;QAClC,sBAAsB,CAAC,gBAAgB;YACtC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,gBAAgB,CAC7B,CAAC;QAEH,sBAAsB,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QAClD,sBAAsB,CAAC,UAAU;YAChC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACnE,sBAAsB,CAAC,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC;QAEpE,IAAI,YAAY,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACjB,sBAAuB,CAAC,aAAa;gBACjE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAChD,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,YAAY,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACrB,CAC5B,sBAAsB,CACrB,CAAC,iBAAiB,GAAG,IAAI,CAAC,aAAa,CACxC,YAAY,CAAC,iBAAiB,CAC9B,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,iBAAiB;YACvC,YAAY,CAAC,iBAAiB,CAAC;QAEhC,IAAI,YAAY,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrD,sBAAsB,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAC/D,YAAY,CAAC,oBAAoB,CACjC,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,aAAa;YACnC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACvC,YAAY,CAAC,aAAa,CAC1B,CAAC;QAEH,IAAI,YAAY,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACjD,sBAAsB,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAC3D,YAAY,CAAC,gBAAgB,CAC7B,CAAC;YACF,QAAQ,EAAE,CAAC;QACZ,CAAC;QAED,sBAAsB,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAC1D,sBAAsB,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAE1D,IAAI,YAAY,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACtD,sBAAsB,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CACvD,YAAY,CAAC,qBAAqB,CAClC,CAAC;YACF,sBAAsB,CAAC,YAAY;gBAClC,sBAAsB,CAAC,YAAY,CAAC;YACrC,QAAQ,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACP,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7C,sBAAsB,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CACvD,YAAY,CAAC,YAAY,CACzB,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7C,sBAAsB,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CACvD,YAAY,CAAC,YAAY,CACzB,CAAC;gBACF,QAAQ,EAAE,CAAC;YACZ,CAAC;QACF,CAAC;QACD,OAAO,EAAC,UAAU,EAAE,sBAAsB,EAAE,QAAQ,EAAC,CAAC;IACvD,CAAC;IAEM,IAAI,KAAU,CAAC;IAEtB;;;OAGG;IACK,kBAAkB,CACzB,IAA4B,EAC5B,YAA0C,EAC1C,gBAAmC;QAEnC,+EAA+E;QAC/E,OAAO,GAAG,IAAI,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,WAAW,CAAC,IAAI,KAAI,SAAS,IAAI,IAAI,CAAC,qBAAqB,IAAI,MAAM,IAAI,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,cAAc,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;IAC/Q,CAAC;IAED;;;OAGG;IACI,iBAAiB,CACvB,SAA2B,EAC3B,KAAkB,EAClB,MAAoB;QAEpB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ;YAAE,OAAO;QAE5C,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;QAChD,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAClC,2BAA2B;YAC3B,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;YACpD,IAAI,SAAS,IAAI,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChE,SAAS;YACV,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAC1D,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACrB,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAChC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,SAAS,EAAE,CAAC;gBACf,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;QAED,aAAa,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACI,IAAI,CACV,YAAkD,EAClD,gBAAmC;QAEnC,IAAI,YAAY,GAAiC,IAAI,CAAC;QACtD,IAAI,CAAC,CAAC,YAAY,YAAY,sCAAY,CAAC;YAC1C,YAAY,GAAG,YAAY,CAAC;QAE7B,iEAAiE;QACjE,IAAI,IAA4B,CAAC;QACjC,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACrD,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC;QACrC,CAAC;aAAM,IACN,gBAAgB;YAChB,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,KAAK,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,KAAK,CAAC,CAAC,EAC5B,CAAC;YACF,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC;QACpC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAC9C,YAAY,EACZ,IAAI,EACJ,gBAAgB,CAChB,CAAC;QAEF,6BAA6B;QAC7B,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;QAC/C,CAAC;QAED,sBAAsB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CACnC,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,gBAAgB,CAChB,CAAC;QAEF,4DAA4D;QAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAC9C,IAAI,EACJ,YAAY,EACZ,gBAAgB,CAChB,CAAC;QACF,QAAQ,CAAC,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACtC,QAAQ,CAAC,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAEpD,4DAA4D;QAC5D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG;YAC/B,QAAQ;YACR,YAAY;YACZ,gBAAgB;SAChB,CAAC;QAEF,OAAO,QAAQ,CAAC;IACjB,CAAC;IAEM,uBAAuB,CAAC,QAAgB;QAC9C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEM,eAAe;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc;YACzC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5D,CAAC;IAEM,gBAAgB,CAAC,WAAmB,EAAE,QAAgB;QAC5D,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC5D,IAAI,CAAC,cAAc,CAClB,QAAQ,CACR,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK;oBACpD,WAAW,CAAC;gBACb,IAAI,CAAC,cAAc,CAClB,QAAQ,CACR,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;YAC/D,CAAC;QACF,CAAC;IACF,CAAC;IAED,iCAAiC;IAEjC,8BAA8B;IAEtB,qBAAqB;QAC5B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,IACC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBACrC,KAAK,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBACrC,KAAK,CAAC,oBAAoB,EAC1B,CAAC;gBACF,MAAM,QAAQ,GAIb,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;gBACxC,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBAC1B,QAAQ,CAAC,WAAY,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBACzD,QAAQ,CAAC,WAAY,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC1C,CAAC;gBACD,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;oBAClB,QAAQ,CAAC,GAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBACjD,QAAQ,CAAC,GAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBAClC,CAAC;gBACD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAEO,oBAAoB,CAAC,GAAa;QACzC,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzB,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;QACb,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,YAAY,gBAAgB,EAAE,CAAC;YAClD,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;QACpB,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,YAAY,WAAW,EAAE,CAAC;YAC7C,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACP,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,IAAA,mCAAU,EAChB,GAAG,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,CACvK,CAAC;IACH,CAAC;IAEO,yBAAyB,CAChC,IAAmB,EACnB,IAA4B,EAC5B,gBAAmC;QAEnC,OAAO,IAAA,mCAAU,EAChB,IAAI,CAAC,EAAE;YACN,GAAG;YACH,IAAI,CAAC,OAAO;YACZ,GAAG;YACH,IAAI;YACJ,GAAG;YACH,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CACjC,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,GAAa;QAClC,IAAI,GAAG,CAAC,KAAK,YAAY,WAAW;YAAE,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAEjE,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAE3C,kFAAkF;QAClF,2FAA2F;QAC3F,0CAA0C;QAC1C,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QAC/C,CAAC;QAED,IAAI,OAAsB,CAAC;QAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,GAAG,IAAI,KAAK,CAAC,WAAW,CAC9B,IAAI,WAAW,CAAC,GAAG,CAAC,IAAK,CAAC,EAC1B,GAAG,CAAC,IAAK,CAAC,MAAM,EAChB,CAAC,EACD,KAAK,CAAC,gBAAgB,EACtB,KAAK,CAAC,eAAe,CACrB,CAAC;YACF,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC;QAClC,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;YAClC,OAAO,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE;gBACzB,QAAQ,GAAG,CAAC,SAAS,EAAE,CAAC;oBACvB,KAAK,uCAAiB,CAAC,OAAO;wBAC7B,OAAO,KAAK,CAAC,aAAa,CAAC;oBAC5B,KAAK,uCAAiB,CAAC,sBAAsB;wBAC5C,OAAO,KAAK,CAAC,0BAA0B,CAAC;oBACzC,KAAK,uCAAiB,CAAC,qBAAqB;wBAC3C,OAAO,KAAK,CAAC,yBAAyB,CAAC;oBACxC,KAAK,uCAAiB,CAAC,qBAAqB;wBAC3C,OAAO,KAAK,CAAC,yBAAyB,CAAC;oBACxC,KAAK,uCAAiB,CAAC,MAAM;wBAC5B,OAAO,KAAK,CAAC,YAAY,CAAC;oBAC3B,KAAK,uCAAiB,CAAC,oBAAoB,CAAC;oBAC5C;wBACC,OAAO,KAAK,CAAC,wBAAwB,CAAC;gBACxC,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE;gBACzB,QAAQ,GAAG,CAAC,SAAS,EAAE,CAAC;oBACvB,KAAK,uCAAiB,CAAC,OAAO;wBAC7B,OAAO,KAAK,CAAC,aAAa,CAAC;oBAC5B,KAAK,uCAAiB,CAAC,MAAM,CAAC;oBAC9B;wBACC,OAAO,KAAK,CAAC,YAAY,CAAC;gBAC5B,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE;gBACrB,QAAQ,GAAG,CAAC,KAAK,EAAE,CAAC;oBACnB,KAAK,sCAAgB,CAAC,aAAa;wBAClC,OAAO,KAAK,CAAC,mBAAmB,CAAC;oBAClC,KAAK,sCAAgB,CAAC,eAAe;wBACpC,OAAO,KAAK,CAAC,sBAAsB,CAAC;oBACrC,KAAK,sCAAgB,CAAC,MAAM,CAAC;oBAC7B;wBACC,OAAO,KAAK,CAAC,cAAc,CAAC;gBAC9B,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE;gBACrB,QAAQ,GAAG,CAAC,KAAK,EAAE,CAAC;oBACnB,KAAK,sCAAgB,CAAC,aAAa;wBAClC,OAAO,KAAK,CAAC,mBAAmB,CAAC;oBAClC,KAAK,sCAAgB,CAAC,eAAe;wBACpC,OAAO,KAAK,CAAC,sBAAsB,CAAC;oBACrC,KAAK,sCAAgB,CAAC,MAAM,CAAC;oBAC7B;wBACC,OAAO,KAAK,CAAC,cAAc,CAAC;gBAC9B,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;YAEL,OAAO,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YAChC,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC;YAE/D,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QAC3B,CAAC;QAED,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;QAE3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEhC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG;YAChC,OAAO;YACP,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,KAAK;SAClB,CAAC;QACF,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;IAC/C,CAAC;CAGD;AA5mED,wCA4mEC;AAED,yBAAyB;AAEzB,oBAAoB;AAEpB,yDAAyD;AACzD,IAAK,sBAIJ;AAJD,WAAK,sBAAsB;IAC1B,yCAAe,CAAA;IACf,uCAAa,CAAA;IACb,uCAAa,CAAA;AACd,CAAC,EAJI,sBAAsB,KAAtB,sBAAsB,QAI1B;AAED,uBAAuB;AAEvB,wBAAwB;AAExB,MAAM,qBAAqB,GAAG,CAC7B,MAAc,EACd,SAAiB,EACjB,WAAmB,EACV,EAAE;IACX,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IAEhC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAI,SAAS,KAAK,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IAEpC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,KAAK,EAAE,CAAC;aAC1B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACjB,OAAO,CACN,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC;oBAC1B,WAAW;oBACX,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CACvB,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,GAAG,EAAE;IAChC,IAAI,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,uBAAuB,CAAC;IACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAC7C,MAAM,kBAAkB,GACvB,2IAA2I,CAAC;QAC7I,MAAM,aAAa,GAAG,qBAAqB,CAC1C,MAAM,EACN,kBAAkB,EAClB,gBAAS,CACT,CAAC;QAEF,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,GAAG,aAAa,CAAC,OAAO,CAC7B,sBAAsB,EACtB,sBAAsB,GAAG,WAAI,CAC7B,CAAC;YACF,KAAK,CAAC,WAAW,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACpD,CAAC;IACF,CAAC;IAED,IACC,CAAC,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,QAAQ,CACxD,8CAAwB,CAAC,MAAM,CAC/B,EACA,CAAC;QACF,MAAM,0BAA0B,GAAG;YACzB,8CAAwB,CAAC,MAAM;;;;;iFAKsC,CAAC;QAEhF,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,yEAAyE,EACzE,0BAA0B,CAC1B,CAAC;QACH,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,4EAA4E,EAC5E,0BAA0B,CAC1B,CAAC;IACJ,CAAC;IAED,kFAAkF;IAClF,wDAAwD;IACxD,IACC,CAAC,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,QAAQ,CACxD,uBAAuB,CACvB,EACA,CAAC;QACF,0DAA0D;QAC1D,MAAM,iBAAiB,GAAG;;;;;;;;;;;UAWlB,CAAC;QAET,yDAAyD;QACzD,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,0JAA0J,EAC1J,iBAAiB;gBAChB,8JAA8J,CAC/J,CAAC;QAEH,2EAA2E;QAC3E,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,uHAAuH,EACvH;;;;;wDAKoD,CACpD,CAAC;QAEH,kFAAkF;QAClF,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,+IAA+I,EAC/I;;;;;;0BAMsB,CACtB,CAAC;QAEH,oFAAoF;QACpF,+FAA+F;QAC/F,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,0IAA0I,EAC1I;;;;UAIM,CACN,CAAC;QAEH,2FAA2F;QAC3F,sGAAsG;QACtG,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsD/B,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,qBAAqB,CACpB,KAAK,CAAC,WAAW,CAAC,6BAA6B,EAC/C,mCAAmC,EACnC,sBAAsB,CACtB,CAAC;QAEH,yEAAyE;QACzE,4EAA4E;QAC5E,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,qBAAqB,CACpB,KAAK,CAAC,WAAW,CAAC,6BAA6B,EAC/C,oBAAoB,EACpB;;;;;;;;;;;;;;;;EAgBF,CACE,CAAC;QAEH,uEAAuE;QACvE,2EAA2E;QAC3E,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,kGAAkG,EAClG,mIAAmI,CACnI,CAAC;QACH,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,KAAK,CAAC,WAAW,CAAC,iBAAiB;YAClC,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAC1C,8EAA8E,EAC9E;;;;;UAKM,CACN,CAAC;QAEH,KAAK,CAAC,WAAW,CAAC,6BAA6B;YAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,oCAAoC,EACpC,gDAAgD,CAChD,CAAC;IACJ,CAAC;IAED,qKAAqK;IACrK,wHAAwH;IACxH,KAAK,CAAC,WAAW,CAAC,mBAAmB;QACpC,KAAK,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAC5C,yHAAyH,EACzH,qJAAqJ,CACrJ,CAAC,OAAO,CACR,8EAA8E,EAC9E;;;IAGC,CACD,CAAC;IACH,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,cAAc;QAC5C,KAAK,CAAC,WAAW,CAAC,mBAAmB,CAAC;IAEvC,mKAAmK;IACnK,4MAA4M;IAC5M,KAAK,CAAC,WAAW,CAAC,6BAA6B;QAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,gFAAgF,EAChF;;;;;;;;aAQU,CACV,CAAC;IAEH,qJAAqJ;IACrJ,iNAAiN;IACjN,KAAK,CAAC,WAAW,CAAC,6BAA6B;QAC9C,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,OAAO,CACtD,qFAAqF,EACrF;;;;;;;;aAQU,CACV,CAAC;IAEH,qJAAqJ;IACrJ,KAAK,CAAC,WAAW,CAAC,eAAe;QAChC,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,CACxC,2GAA2G,EAC3G;;;;;;SAMM,CACN,CAAC,OAAO,CACR,qEAAqE,EACrE;;;;;;;SAOM,CACN,CAAC;IAEH,4FAA4F;IAC5F,oIAAoI;IACpI,KAAK,CAAC,WAAW,CAAC,2BAA2B;QAC5C,KAAK,CAAC,WAAW,CAAC,2BAA2B,CAAC,OAAO,CACpD,4DAA4D,EAC5D;;;;;;SAMM,CACN,CAAC;IAEH,4FAA4F;IAC5F,6DAA6D;IAC7D,KAAK,CAAC,WAAW,CAAC,2BAA2B;QAC5C,KAAK,CAAC,WAAW,CAAC,2BAA2B,CAAC,OAAO,CACpD,kEAAkE,EAClE;;;;;;SAMM,CACN,CAAC;IAEH,yFAAyF;IACzF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACzE,MAAM,KAAK,GACV,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9D,KAAK,CAAC,WAAW,CAAC,oBAAoB;YACrC,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC;gBAC1D;;;;;;;;SAQM;gBACN,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,SAAS,CAC/C,KAAK,GAAG,QAAQ,CAAC,MAAM,CACvB,CAAC;IACJ,CAAC;AACF,CAAC,CAAC;AA3VW,QAAA,YAAY,gBA2VvB;AAEF,2BAA2B"}
@@ -0,0 +1,24 @@
1
+ import { GeometryData } from "@shapediver/viewer.shared.node-tree";
2
+ import * as THREE from "three";
3
+ import { type RenderingEngine } from "../RenderingEngine";
4
+ type GeometryType = THREE.Mesh | THREE.Line | THREE.Points | THREE.LineSegments | THREE.LineLoop;
5
+ /** Applies and animates material pulse effects for rendered geometry objects. */
6
+ export declare class PulseEffectManager {
7
+ private readonly _renderingEngine;
8
+ private static readonly _colorSimilarityThreshold;
9
+ private readonly _animationFrameEngine;
10
+ private _animationFrameToken?;
11
+ private _continuousRenderingToken?;
12
+ private readonly _pulsedObjects;
13
+ constructor(_renderingEngine: RenderingEngine);
14
+ update(geometry: GeometryData, objects: Iterable<GeometryType>): void;
15
+ clear(object: GeometryType): void;
16
+ /** Restore an object's original material when it leaves the scene. */
17
+ remove(object: GeometryType): void;
18
+ dispose(): void;
19
+ private updateAnimation;
20
+ private animate;
21
+ private getBlendColor;
22
+ }
23
+ export {};
24
+ //# sourceMappingURL=PulseEffectManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PulseEffectManager.d.ts","sourceRoot":"","sources":["../../src/managers/PulseEffectManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,qCAAqC,CAAC;AAMjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,KAAK,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAExD,KAAK,YAAY,GACd,KAAK,CAAC,IAAI,GACV,KAAK,CAAC,IAAI,GACV,KAAK,CAAC,MAAM,GACZ,KAAK,CAAC,YAAY,GAClB,KAAK,CAAC,QAAQ,CAAC;AAElB,iFAAiF;AACjF,qBAAa,kBAAkB;IAsBlB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IArB7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAQ;IACzD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiC;IACvE,OAAO,CAAC,oBAAoB,CAAC,CAAS;IACtC,OAAO,CAAC,yBAAyB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAe3B;gBAEyB,gBAAgB,EAAE,eAAe;IAEvD,MAAM,CACZ,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC7B,IAAI;IAmCA,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IASxC,sEAAsE;IAC/D,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAKlC,OAAO,IAAI,IAAI;IAKtB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,OAAO;IA6Bf,OAAO,CAAC,aAAa;CAsBrB"}
@@ -0,0 +1,144 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.PulseEffectManager = void 0;
37
+ const viewer_rendering_engine_animation_frame_engine_1 = require("@shapediver/viewer.rendering-engine.animation-frame-engine");
38
+ const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
39
+ const THREE = __importStar(require("three"));
40
+ /** Applies and animates material pulse effects for rendered geometry objects. */
41
+ class PulseEffectManager {
42
+ constructor(_renderingEngine) {
43
+ this._renderingEngine = _renderingEngine;
44
+ this._animationFrameEngine = viewer_rendering_engine_animation_frame_engine_1.AnimationFrameEngine.instance;
45
+ this._pulsedObjects = new Map();
46
+ }
47
+ update(geometry, objects) {
48
+ var _a, _b;
49
+ const effect = (_a = geometry.effectPulses[geometry.effectPulses.length - 1]) === null || _a === void 0 ? void 0 : _a.effect;
50
+ for (const object of objects) {
51
+ this.clear(object);
52
+ if (!effect || object instanceof THREE.InstancedMesh)
53
+ continue;
54
+ const source = object.material;
55
+ if (Array.isArray(source) || !("color" in source))
56
+ continue;
57
+ const material = source.clone();
58
+ object.material = material;
59
+ const baseColor = material.color.clone();
60
+ const effectColor = this._renderingEngine.createThreeJsColor((_b = effect.color) !== null && _b !== void 0 ? _b : "#00ff78");
61
+ this._pulsedObjects.set(object, {
62
+ baseColor,
63
+ baseOpacity: material.transparent && "opacity" in material
64
+ ? material.opacity
65
+ : undefined,
66
+ baseMaterial: source,
67
+ blendColor: this.getBlendColor(baseColor, effectColor),
68
+ colorDefinition: effect.color,
69
+ effect,
70
+ effectColor,
71
+ material,
72
+ });
73
+ }
74
+ this.updateAnimation();
75
+ }
76
+ clear(object) {
77
+ const current = this._pulsedObjects.get(object);
78
+ if (!current)
79
+ return;
80
+ if (object.material === current.material)
81
+ object.material = current.baseMaterial;
82
+ current.material.dispose();
83
+ this._pulsedObjects.delete(object);
84
+ }
85
+ /** Restore an object's original material when it leaves the scene. */
86
+ remove(object) {
87
+ this.clear(object);
88
+ this.updateAnimation();
89
+ }
90
+ dispose() {
91
+ for (const object of this._pulsedObjects.keys())
92
+ this.clear(object);
93
+ this.updateAnimation();
94
+ }
95
+ updateAnimation() {
96
+ if (this._pulsedObjects.size === 0) {
97
+ if (this._animationFrameToken)
98
+ this._animationFrameEngine.removeAnimationFrameCallback(this._animationFrameToken);
99
+ if (this._continuousRenderingToken)
100
+ this._renderingEngine.removeFlag(this._continuousRenderingToken);
101
+ this._animationFrameToken = undefined;
102
+ this._continuousRenderingToken = undefined;
103
+ return;
104
+ }
105
+ if (!this._continuousRenderingToken)
106
+ this._continuousRenderingToken = this._renderingEngine.addFlag(viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_RENDERING);
107
+ if (!this._animationFrameToken)
108
+ this._animationFrameToken =
109
+ this._animationFrameEngine.addAnimationFrameCallback((time) => this.animate(time));
110
+ }
111
+ animate(time) {
112
+ var _a, _b, _c;
113
+ for (const pulse of this._pulsedObjects.values()) {
114
+ const phase = (time / 1000) * ((_a = pulse.effect.pulseSpeed) !== null && _a !== void 0 ? _a : 1.4) * Math.PI * 2;
115
+ const intensity = ((_b = pulse.effect.intensity) !== null && _b !== void 0 ? _b : 0.3) * ((Math.sin(phase) + 1) / 2);
116
+ if (pulse.colorDefinition !== pulse.effect.color) {
117
+ pulse.effectColor = this._renderingEngine.createThreeJsColor((_c = pulse.effect.color) !== null && _c !== void 0 ? _c : "#00ff78");
118
+ pulse.blendColor = this.getBlendColor(pulse.baseColor, pulse.effectColor);
119
+ pulse.colorDefinition = pulse.effect.color;
120
+ }
121
+ pulse.material.color.lerpColors(pulse.baseColor, pulse.blendColor, THREE.MathUtils.clamp(intensity, 0, 1));
122
+ if (pulse.baseOpacity !== undefined)
123
+ pulse.material.opacity =
124
+ 1 -
125
+ (1 - pulse.baseOpacity) *
126
+ Math.pow((1 - THREE.MathUtils.clamp(intensity, 0, 1)), 2);
127
+ }
128
+ }
129
+ getBlendColor(baseColor, effectColor) {
130
+ const redDelta = baseColor.r - effectColor.r;
131
+ const greenDelta = baseColor.g - effectColor.g;
132
+ const blueDelta = baseColor.b - effectColor.b;
133
+ if (redDelta * redDelta +
134
+ greenDelta * greenDelta +
135
+ blueDelta * blueDelta >
136
+ PulseEffectManager._colorSimilarityThreshold)
137
+ return effectColor;
138
+ const inverseColor = new THREE.Color(1 - baseColor.r, 1 - baseColor.g, 1 - baseColor.b);
139
+ return baseColor.clone().lerp(inverseColor, 0.4);
140
+ }
141
+ }
142
+ exports.PulseEffectManager = PulseEffectManager;
143
+ PulseEffectManager._colorSimilarityThreshold = 0.01;
144
+ //# sourceMappingURL=PulseEffectManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PulseEffectManager.js","sourceRoot":"","sources":["../../src/managers/PulseEffectManager.ts"],"names":[],"mappings":"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"}
@@ -69,7 +69,7 @@ class NormalPass extends postprocessing_1.Pass {
69
69
  * @readonly
70
70
  */
71
71
  const resolution = (this.resolution = new postprocessing_1.Resolution(this, resolutionX, resolutionY, resolutionScale));
72
- resolution.addEventListener("change", (e) => this.setSize(resolution.baseWidth, resolution.baseHeight));
72
+ resolution.addEventListener("change", () => this.setSize(resolution.baseWidth, resolution.baseHeight));
73
73
  }
74
74
  set mainScene(value) {
75
75
  this.renderPass.mainScene = value;