@geotechcli/core 0.4.95 → 0.4.96

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.
@@ -53,6 +53,60 @@ export interface FemMohrCoulombMaterialPointResult {
53
53
  stressPath: FemMohrCoulombStressStep[];
54
54
  policy: FemConvergencePolicy;
55
55
  }
56
+ export type FemPrincipalVector = [number, number, number];
57
+ export interface FemDruckerPragerParameterMapping {
58
+ schemaVersion: 'fem-drucker-prager-parameter-mapping.v1';
59
+ source: 'mohr-coulomb-triaxial-compression-fit';
60
+ signConvention: 'compression-positive';
61
+ frictionAngleDeg: number;
62
+ cohesionKpa: number;
63
+ dilationAngleDeg: number;
64
+ rho: number;
65
+ rhoBar: number;
66
+ yieldStressKpa: number;
67
+ compressionInterceptKpa: number;
68
+ }
69
+ export interface FemDruckerPragerMaterialPointInput {
70
+ initialPrincipalEffectiveStressKpa: FemPrincipalVector;
71
+ principalStrainIncrements: FemPrincipalVector[];
72
+ elasticModulusKpa: number;
73
+ poissonRatio: number;
74
+ frictionAngleDeg: number;
75
+ cohesionKpa: number;
76
+ dilationAngleDeg?: number;
77
+ hardeningModulusKpa?: number;
78
+ policy?: FemConvergencePolicy;
79
+ }
80
+ export interface FemDruckerPragerStressStep {
81
+ step: number;
82
+ principalStrain: FemPrincipalVector;
83
+ principalEffectiveStressKpa: FemPrincipalVector;
84
+ meanEffectiveStressKpa: number;
85
+ deviatoricStressNormKpa: number;
86
+ yieldValueKpa: number;
87
+ yieldResidualRatio: number;
88
+ plasticMultiplier: number;
89
+ equivalentPlasticStrain: number;
90
+ volumetricPlasticStrain: number;
91
+ state: 'elastic' | 'plastic';
92
+ iterations: number;
93
+ converged: boolean;
94
+ }
95
+ export interface FemDruckerPragerMaterialPointResult {
96
+ schemaVersion: 'fem-drucker-prager-material-point.v1';
97
+ signConvention: 'compression-positive';
98
+ model: 'drucker-prager-elastoplastic-principal-stress-return-mapping';
99
+ mapping: FemDruckerPragerParameterMapping;
100
+ elasticModuli: {
101
+ bulkModulusKpa: number;
102
+ shearModulusKpa: number;
103
+ };
104
+ converged: boolean;
105
+ finalStep: FemDruckerPragerStressStep;
106
+ stressPath: FemDruckerPragerStressStep[];
107
+ plasticStrainPrincipal: FemPrincipalVector;
108
+ policy: FemConvergencePolicy;
109
+ }
56
110
  export interface FemConsolidationTimeStepperInput {
57
111
  layerThicknessM: number;
58
112
  drainage: 'single' | 'double';
@@ -225,6 +279,12 @@ export declare function evaluateFemTolerance(quantity: string, actual: number, e
225
279
  relativeTolerance?: number;
226
280
  unit?: string;
227
281
  }): FemToleranceCheck;
282
+ export declare function mapMohrCoulombToDruckerPragerTriaxialCompression(input: {
283
+ frictionAngleDeg: number;
284
+ cohesionKpa: number;
285
+ dilationAngleDeg?: number;
286
+ }): FemDruckerPragerParameterMapping;
287
+ export declare function runDruckerPragerMaterialPoint(input: FemDruckerPragerMaterialPointInput): FemDruckerPragerMaterialPointResult;
228
288
  export declare function runMohrCoulombMaterialPoint(input: FemMohrCoulombMaterialPointInput): FemMohrCoulombMaterialPointResult;
229
289
  export declare function terzaghiAverageConsolidation(timeFactor: number, terms?: number): number;
230
290
  export declare function runTerzaghiConsolidationTimeStepper(input: FemConsolidationTimeStepperInput): FemConsolidationTimeStepperResult;
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-evidence.d.ts","sourceRoot":"","sources":["../../src/fem/engineering-evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-evidence.d.ts","sourceRoot":"","sources":["../../src/fem/engineering-evidence.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,182 @@ function mohrCoulombTriaxialCompressionQFailure(confiningEffectiveStressKpa, fri
47
47
  const denominator = 1 - sinPhi;
48
48
  return ((2 * cohesionKpa * Math.cos(phi)) + (2 * confiningEffectiveStressKpa * sinPhi)) / denominator;
49
49
  }
50
+ function assertPrincipalVector(value, label) {
51
+ if (!Array.isArray(value) || value.length !== 3 || !value.every((item) => Number.isFinite(item))) {
52
+ throw new Error(`${label} must be a finite principal vector [x, y, z].`);
53
+ }
54
+ }
55
+ function addPrincipal(a, b) {
56
+ return [a[0] + b[0], a[1] + b[1], a[2] + b[2]];
57
+ }
58
+ function scalePrincipal(a, factor) {
59
+ return [a[0] * factor, a[1] * factor, a[2] * factor];
60
+ }
61
+ function tracePrincipal(a) {
62
+ return a[0] + a[1] + a[2];
63
+ }
64
+ function deviatorPrincipal(a) {
65
+ const mean = tracePrincipal(a) / 3;
66
+ return [a[0] - mean, a[1] - mean, a[2] - mean];
67
+ }
68
+ function principalNorm(a) {
69
+ return Math.hypot(a[0], a[1], a[2]);
70
+ }
71
+ function roundPrincipal(a, digits = 8) {
72
+ return [round(a[0], digits), round(a[1], digits), round(a[2], digits)];
73
+ }
74
+ function elasticModuliFromEAndNu(elasticModulusKpa, poissonRatio) {
75
+ assertFinitePositive(elasticModulusKpa, 'elasticModulusKpa');
76
+ if (!Number.isFinite(poissonRatio) || poissonRatio < 0 || poissonRatio >= 0.5) {
77
+ throw new Error('poissonRatio must be finite and between 0 and 0.5.');
78
+ }
79
+ return {
80
+ bulkModulusKpa: elasticModulusKpa / (3 * (1 - 2 * poissonRatio)),
81
+ shearModulusKpa: elasticModulusKpa / (2 * (1 + poissonRatio)),
82
+ };
83
+ }
84
+ function druckerPragerRhoFromAngle(angleDeg) {
85
+ if (!Number.isFinite(angleDeg) || angleDeg < 0 || angleDeg >= 50) {
86
+ throw new Error('friction and dilation angles must be finite and between 0 and 50 degrees.');
87
+ }
88
+ const angle = degToRad(angleDeg);
89
+ const sinAngle = Math.sin(angle);
90
+ if (sinAngle === 0)
91
+ return 0;
92
+ return (2 * Math.SQRT2 * sinAngle) / (Math.sqrt(3) * (3 - sinAngle));
93
+ }
94
+ export function mapMohrCoulombToDruckerPragerTriaxialCompression(input) {
95
+ if (!Number.isFinite(input.frictionAngleDeg) || input.frictionAngleDeg <= 0 || input.frictionAngleDeg >= 50) {
96
+ throw new Error('frictionAngleDeg must be finite and between 0 and 50 degrees.');
97
+ }
98
+ assertFiniteNonNegative(input.cohesionKpa, 'cohesionKpa');
99
+ const dilationAngleDeg = input.dilationAngleDeg ?? input.frictionAngleDeg;
100
+ const rho = druckerPragerRhoFromAngle(input.frictionAngleDeg);
101
+ const rhoBar = Math.min(rho, druckerPragerRhoFromAngle(dilationAngleDeg));
102
+ const phi = degToRad(input.frictionAngleDeg);
103
+ const sinPhi = Math.sin(phi);
104
+ const cohesionContributionToQ = (2 * input.cohesionKpa * Math.cos(phi)) / (1 - sinPhi);
105
+ const deviatoricNormFactor = Math.sqrt(2 / 3);
106
+ const compressionInterceptKpa = cohesionContributionToQ * (deviatoricNormFactor - rho);
107
+ return {
108
+ schemaVersion: 'fem-drucker-prager-parameter-mapping.v1',
109
+ source: 'mohr-coulomb-triaxial-compression-fit',
110
+ signConvention: 'compression-positive',
111
+ frictionAngleDeg: round(input.frictionAngleDeg, 6),
112
+ cohesionKpa: round(input.cohesionKpa, 6),
113
+ dilationAngleDeg: round(dilationAngleDeg, 6),
114
+ rho: round(rho, 12),
115
+ rhoBar: round(rhoBar, 12),
116
+ yieldStressKpa: round(compressionInterceptKpa / deviatoricNormFactor, 8),
117
+ compressionInterceptKpa: round(compressionInterceptKpa, 8),
118
+ };
119
+ }
120
+ function elasticStressIncrement(strainIncrement, bulkModulusKpa, shearModulusKpa) {
121
+ const volumetricStrain = tracePrincipal(strainIncrement);
122
+ const deviatoricStrain = deviatorPrincipal(strainIncrement);
123
+ return addPrincipal(scalePrincipal(deviatoricStrain, 2 * shearModulusKpa), [bulkModulusKpa * volumetricStrain, bulkModulusKpa * volumetricStrain, bulkModulusKpa * volumetricStrain]);
124
+ }
125
+ function druckerPragerYieldValue(stress, rho, compressionInterceptKpa) {
126
+ return principalNorm(deviatorPrincipal(stress)) - rho * tracePrincipal(stress) - compressionInterceptKpa;
127
+ }
128
+ export function runDruckerPragerMaterialPoint(input) {
129
+ assertPrincipalVector(input.initialPrincipalEffectiveStressKpa, 'initialPrincipalEffectiveStressKpa');
130
+ if (!Array.isArray(input.principalStrainIncrements) || input.principalStrainIncrements.length === 0) {
131
+ throw new Error('principalStrainIncrements must contain at least one strain increment.');
132
+ }
133
+ for (const [index, increment] of input.principalStrainIncrements.entries()) {
134
+ assertPrincipalVector(increment, `principalStrainIncrements.${index}`);
135
+ }
136
+ if (!Number.isFinite(input.frictionAngleDeg) || input.frictionAngleDeg <= 0 || input.frictionAngleDeg >= 50) {
137
+ throw new Error('frictionAngleDeg must be finite and between 0 and 50 degrees.');
138
+ }
139
+ assertFiniteNonNegative(input.cohesionKpa, 'cohesionKpa');
140
+ assertFiniteNonNegative(input.hardeningModulusKpa ?? 0, 'hardeningModulusKpa');
141
+ const policy = input.policy ?? DEFAULT_FEM_CONVERGENCE_POLICY;
142
+ const mapping = mapMohrCoulombToDruckerPragerTriaxialCompression({
143
+ frictionAngleDeg: input.frictionAngleDeg,
144
+ cohesionKpa: input.cohesionKpa,
145
+ dilationAngleDeg: input.dilationAngleDeg,
146
+ });
147
+ const elasticModuli = elasticModuliFromEAndNu(input.elasticModulusKpa, input.poissonRatio);
148
+ const hardeningModulusKpa = input.hardeningModulusKpa ?? 0;
149
+ const stressPath = [];
150
+ let principalStrain = [0, 0, 0];
151
+ let plasticStrainPrincipal = [0, 0, 0];
152
+ let stress = [...input.initialPrincipalEffectiveStressKpa];
153
+ let equivalentPlasticStrain = 0;
154
+ let volumetricPlasticStrain = 0;
155
+ for (const [index, strainIncrement] of input.principalStrainIncrements.entries()) {
156
+ principalStrain = addPrincipal(principalStrain, strainIncrement);
157
+ const trialStress = addPrincipal(stress, elasticStressIncrement(strainIncrement, elasticModuli.bulkModulusKpa, elasticModuli.shearModulusKpa));
158
+ const currentIntercept = mapping.compressionInterceptKpa + hardeningModulusKpa * equivalentPlasticStrain;
159
+ const trialYield = druckerPragerYieldValue(trialStress, mapping.rho, currentIntercept);
160
+ const trialScale = Math.max(principalNorm(deviatorPrincipal(trialStress)), Math.abs(mapping.rho * tracePrincipal(trialStress)), Math.abs(currentIntercept), 1);
161
+ const trialYieldResidualRatio = Math.abs(trialYield) / trialScale;
162
+ let plasticMultiplier = 0;
163
+ let iterations = 0;
164
+ let state = 'elastic';
165
+ if (trialYieldResidualRatio > policy.residualTolerance && trialYield > 0) {
166
+ state = 'plastic';
167
+ const trialDeviator = deviatorPrincipal(trialStress);
168
+ const trialNorm = principalNorm(trialDeviator);
169
+ const flowDirection = trialNorm > 0
170
+ ? scalePrincipal(trialDeviator, 1 / trialNorm)
171
+ : [0, 0, 0];
172
+ const denominator = 2 * elasticModuli.shearModulusKpa +
173
+ 9 * elasticModuli.bulkModulusKpa * mapping.rho * mapping.rhoBar +
174
+ hardeningModulusKpa;
175
+ plasticMultiplier = Math.max(0, trialYield / denominator);
176
+ equivalentPlasticStrain += plasticMultiplier;
177
+ const plasticIncrement = addPrincipal(scalePrincipal(flowDirection, plasticMultiplier), [-mapping.rhoBar * plasticMultiplier, -mapping.rhoBar * plasticMultiplier, -mapping.rhoBar * plasticMultiplier]);
178
+ plasticStrainPrincipal = addPrincipal(plasticStrainPrincipal, plasticIncrement);
179
+ volumetricPlasticStrain += tracePrincipal(plasticIncrement);
180
+ const correctedDeviator = addPrincipal(trialDeviator, scalePrincipal(flowDirection, -2 * elasticModuli.shearModulusKpa * plasticMultiplier));
181
+ const correctedTrace = tracePrincipal(trialStress) +
182
+ 9 * elasticModuli.bulkModulusKpa * mapping.rhoBar * plasticMultiplier;
183
+ stress = addPrincipal(correctedDeviator, [correctedTrace / 3, correctedTrace / 3, correctedTrace / 3]);
184
+ iterations = 1;
185
+ }
186
+ else {
187
+ stress = trialStress;
188
+ }
189
+ const updatedIntercept = mapping.compressionInterceptKpa + hardeningModulusKpa * equivalentPlasticStrain;
190
+ const yieldValue = druckerPragerYieldValue(stress, mapping.rho, updatedIntercept);
191
+ const yieldScale = Math.max(principalNorm(deviatorPrincipal(stress)), Math.abs(mapping.rho * tracePrincipal(stress)), Math.abs(updatedIntercept), 1);
192
+ const yieldResidualRatio = Math.abs(yieldValue) / yieldScale;
193
+ stressPath.push({
194
+ step: index + 1,
195
+ principalStrain: roundPrincipal(principalStrain, 10),
196
+ principalEffectiveStressKpa: roundPrincipal(stress, 6),
197
+ meanEffectiveStressKpa: round(tracePrincipal(stress) / 3, 6),
198
+ deviatoricStressNormKpa: round(principalNorm(deviatorPrincipal(stress)), 6),
199
+ yieldValueKpa: round(yieldValue, 10),
200
+ yieldResidualRatio: round(yieldResidualRatio, 12),
201
+ plasticMultiplier: round(plasticMultiplier, 12),
202
+ equivalentPlasticStrain: round(equivalentPlasticStrain, 12),
203
+ volumetricPlasticStrain: round(volumetricPlasticStrain, 12),
204
+ state,
205
+ iterations,
206
+ converged: state === 'elastic' || yieldResidualRatio <= policy.residualTolerance,
207
+ });
208
+ }
209
+ const finalStep = stressPath[stressPath.length - 1];
210
+ return {
211
+ schemaVersion: 'fem-drucker-prager-material-point.v1',
212
+ signConvention: 'compression-positive',
213
+ model: 'drucker-prager-elastoplastic-principal-stress-return-mapping',
214
+ mapping,
215
+ elasticModuli: {
216
+ bulkModulusKpa: round(elasticModuli.bulkModulusKpa, 6),
217
+ shearModulusKpa: round(elasticModuli.shearModulusKpa, 6),
218
+ },
219
+ converged: stressPath.every((step) => step.converged),
220
+ finalStep,
221
+ stressPath,
222
+ plasticStrainPrincipal: roundPrincipal(plasticStrainPrincipal, 12),
223
+ policy,
224
+ };
225
+ }
50
226
  export function runMohrCoulombMaterialPoint(input) {
51
227
  assertFinitePositive(input.confiningEffectiveStressKpa, 'confiningEffectiveStressKpa');
52
228
  assertFinitePositive(input.elasticModulusKpa, 'elasticModulusKpa');
@@ -482,6 +658,18 @@ export function runFemEngineeringEvidenceSuite(policy = DEFAULT_FEM_CONVERGENCE_
482
658
  policy,
483
659
  });
484
660
  benchmarks.push(benchmark('mc-triaxial-drained-phi30-sigma3-100', 'nonlinear-plasticity', 'closed-form', 'peakDeviatorStressKpa', plasticity.peakDeviatorStressKpa, 200, 1e-6, 'Mohr-Coulomb triaxial compression closed-form qf = 2 sigma3 sin(phi)/(1 - sin(phi)).', 'kPa'));
661
+ const druckerPrager = runDruckerPragerMaterialPoint({
662
+ initialPrincipalEffectiveStressKpa: [100, 100, 100],
663
+ principalStrainIncrements: Array.from({ length: 16 }, () => [0.001, -0.0002, -0.0002]),
664
+ elasticModulusKpa: 30_000,
665
+ poissonRatio: 0.3,
666
+ frictionAngleDeg: 30,
667
+ cohesionKpa: 0,
668
+ dilationAngleDeg: 0,
669
+ policy,
670
+ });
671
+ benchmarks.push(benchmark('drucker-prager-return-map-yield-residual', 'nonlinear-plasticity', 'internal-balance', 'yieldResidualRatio', druckerPrager.finalStep.yieldResidualRatio, 0, policy.residualTolerance, 'Drucker-Prager principal-stress return mapping must project the plastic trial stress back to the smooth yield surface.'));
672
+ benchmarks.push(benchmark('drucker-prager-material-state-plastic', 'solver-convergence-and-tolerance', 'internal-balance', 'plasticStateAccepted', druckerPrager.finalStep.state === 'plastic' && druckerPrager.converged ? 1 : 0, 1, 0, 'Nonlinear material-point integration must report a converged plastic state and accumulated plastic strain variables.'));
485
673
  const finalTimeYears = 0.197 * 25;
486
674
  const consolidationTimes = Array.from({ length: 80 }, (_, index) => finalTimeYears * ((index + 1) / 80));
487
675
  const consolidation = runTerzaghiConsolidationTimeStepper({
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-evidence.js","sourceRoot":"","sources":["../../src/fem/engineering-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAmBjF,MAAM,CAAC,MAAM,8BAA8B,GAAyB;IAClE,aAAa,EAAE,2BAA2B;IAC1C,iBAAiB,EAAE,IAAI;IACvB,qBAAqB,EAAE,IAAI;IAC3B,gCAAgC,EAAE,IAAI;IACtC,aAAa,EAAE,EAAE;IACjB,gBAAgB,EAAE,CAAC;CACpB,CAAC;AA2OF,SAAS,QAAQ,CAAC,OAAe;IAC/B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;AACnC,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,KAAa;IACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oCAAoC,CAAC,CAAC;IAChE,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa,EAAE,KAAa;IAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,wCAAwC,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,KAAa,EAAE,MAAM,GAAG,CAAC;IACtC,MAAM,KAAK,GAAG,EAAE,IAAI,MAAM,CAAC;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,QAAgB,EAChB,MAAc,EACd,QAAgB,EAChB,iBAAyB,EACzB,UAAyD,EAAE;IAE3D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClF,MAAM,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,IAAI,IAAI,IAAI,aAAa,IAAI,OAAO,CAAC,iBAAiB,CAAC;IACzG,MAAM,QAAQ,GAAG,KAAK,IAAI,iBAAiB,IAAI,gBAAgB,CAAC;IAChE,OAAO;QACL,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,iBAAiB;QACjB,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,KAAK;QACL,aAAa;QACb,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,sCAAsC,CAC7C,2BAAmC,EACnC,gBAAwB,EACxB,WAAmB;IAEnB,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,WAAW,GAAG,CAAC,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,2BAA2B,GAAG,MAAM,CAAC,CAAC,GAAG,WAAW,CAAC;AACxG,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,KAAuC;IAEvC,oBAAoB,CAAC,KAAK,CAAC,2BAA2B,EAAE,6BAA6B,CAAC,CAAC;IACvF,oBAAoB,CAAC,KAAK,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;IACnE,uBAAuB,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC1D,uBAAuB,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,KAAK,CAAC,YAAY,IAAI,GAAG,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,IAAI,KAAK,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC;QAC5G,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,8BAA8B,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,sCAAsC,CACrD,KAAK,CAAC,2BAA2B,EACjC,KAAK,CAAC,gBAAgB,EACtB,KAAK,CAAC,WAAW,CAClB,CAAC;IACF,MAAM,kBAAkB,GAAG,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC9D,MAAM,UAAU,GAA+B,EAAE,CAAC;IAElD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,GAAG,WAAW,CAAC;QACrD,MAAM,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;QAClC,MAAM,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;QACtD,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,kBAAkB,GAAG,OAAO;YAChC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE3D,UAAU,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAClC,uBAAuB,EAAE,KAAK,CAAC,KAAK,CAAC,2BAA2B,GAAG,iBAAiB,EAAE,CAAC,CAAC;YACxF,uBAAuB,EAAE,KAAK,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC;YACpE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAC9C,sBAAsB,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1C,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAC7D,sBAAsB,EAAE,KAAK,CAAC,iBAAiB,GAAG,QAAQ,EAAE,CAAC,CAAC;YAC9D,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACjD,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACvC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpD,OAAO;QACL,aAAa,EAAE,oCAAoC;QACnD,cAAc,EAAE,sBAAsB;QACtC,KAAK,EAAE,6DAA6D;QACpE,SAAS,EAAE,SAAS,CAAC,kBAAkB,IAAI,MAAM,CAAC,iBAAiB;QACnE,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAChD,qBAAqB,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzC,SAAS;QACT,UAAU;QACV,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,UAAkB,EAAE,KAAK,GAAG,EAAE;IACzE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,QAAkB,EAAE,KAAe,EAAE,GAAa;IAC3F,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QAC/C,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;IAC1D,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAgB;IAC3C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,QAAQ,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,KAAuC;IAEvC,oBAAoB,CAAC,KAAK,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IAC/D,oBAAoB,CAAC,KAAK,CAAC,mCAAmC,EAAE,qCAAqC,CAAC,CAAC;IACvG,oBAAoB,CAAC,KAAK,CAAC,4BAA4B,EAAE,8BAA8B,CAAC,CAAC;IACzF,uBAAuB,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;IAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,8BAA8B,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IACtG,MAAM,EAAE,GAAG,aAAa,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,aAAa,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC1F,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,cAAc,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAC1D,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,MAAM,KAAK,GAA2B,EAAE,CAAC;IAEzC,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,EAAE,GAAG,SAAS,GAAG,YAAY,CAAC;QACpC,YAAY,GAAG,SAAS,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;YACxB,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,IAAI,SAAS,GAAG,SAAS,GAAG,CAAC;gBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7D,aAAa,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;QAC/B,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,mBAAmB,GAAG,cAAc,CAAC,CAAC,CAAC;QACjG,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,mCAAmC,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC;QAC7G,MAAM,8BAA8B,GAAG,4BAA4B,CAAC,UAAU,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,8BAA8B,CAAC,CAAC;QACxF,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QAChE,KAAK,CAAC,IAAI,CAAC;YACT,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;YAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAChC,4BAA4B,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAC3D,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;YACtD,8BAA8B,EAAE,KAAK,CAAC,8BAA8B,EAAE,CAAC,CAAC;YACxE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,mBAAmB,GAAG,qBAAqB,EAAE,CAAC,CAAC;YACzE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1C,OAAO;QACL,aAAa,EAAE,mCAAmC;QAClD,MAAM,EAAE,4BAA4B;QACpC,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;QACtC,SAAS;QACT,SAAS,EAAE,iBAAiB,IAAI,IAAI;QACpC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC9C,SAAS;QACT,KAAK;QACL,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAwB;IACxD,oBAAoB,CAAC,KAAK,CAAC,0BAA0B,EAAE,4BAA4B,CAAC,CAAC;IACrF,oBAAoB,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,8BAA8B,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC;IAC7D,MAAM,iBAAiB,GAAG,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC;IACzD,MAAM,oBAAoB,GAAG,KAAK,CAAC,0BAA0B,GAAG,iBAAiB,CAAC;IAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC;IAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACjE,KAAK,CAAC,aAAa,GAAG,QAAQ,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/C,EAAE,EAAE,KAAK,CAAC,KAAK,GAAG,EAAE,EAAE,CAAC,CAAC;QACxB,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACtB,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;KAClE,CAAC,CAAC,CAAC;IAEJ,MAAM,cAAc,GAA8B,EAAE,CAAC;IACrD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,EAAE,gCAAgC,CAAC,CAAC;QAC7F,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,2BAA2B,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACrE,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC;QACvD,MAAM,WAAW,GAAG,KAAK,CAAC,0BAA0B,GAAG,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC;QAC5F,MAAM,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACzC,IAAI,KAAK,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC,IAAI,CAC3C,KAAK,CAAC,SAAS,CAAC,YAAY,IAAI,KAAK,CAAC,eAAe,CACtD,CAAC;QACF,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;QAC/B,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7C,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC;QAE/B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC1B,IAAI,CAAC,KAAK,CAAC;oBAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;gBAC/C,IAAI,CAAC,KAAK,QAAQ,GAAG,CAAC;oBAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;gBAC5D,IAAI,CAAC,GAAG,CAAC;oBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC;oBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtC,CAAC;YACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAC7D,KAAK,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YAChE,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3G,cAAc,CAAC,IAAI,CAAC;gBAClB,WAAW,EAAE,KAAK,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;gBAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;gBACtD,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;aAC5C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,oBAAoB,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,0BAA0B;QAC9C,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;IACnE,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAE7F,OAAO;QACL,aAAa,EAAE,mBAAmB;QAClC,MAAM,EAAE,4BAA4B;QACpC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACnE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC9C,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC;QACvD,SAAS,EAAE,qBAAqB,IAAI,MAAM,CAAC,gCAAgC;QAC3E,KAAK;QACL,cAAc;QACd,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAAsC;IAEtC,oBAAoB,CAAC,KAAK,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;IAC7E,uBAAuB,CAAC,KAAK,CAAC,qBAAqB,EAAE,uBAAuB,CAAC,CAAC;IAC9E,uBAAuB,CAAC,KAAK,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,CAAC;IAC5E,oBAAoB,CAAC,KAAK,CAAC,qBAAqB,EAAE,uBAAuB,CAAC,CAAC;IAC3E,oBAAoB,CAAC,KAAK,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,8BAA8B,CAAC;IAC9D,MAAM,wBAAwB,GAAG,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,qBAAqB,CAAC;IAC5F,MAAM,uBAAuB,GAAG,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAC1F,MAAM,0BAA0B,GAAG,uBAAuB,GAAG,wBAAwB,CAAC;IACtF,MAAM,YAAY,GAAG,CAAC,0BAA0B,GAAG,KAAK,CAAC,qBAAqB,CAAC;QAC7E,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/B,MAAM,qBAAqB,GAAG,wBAAwB,GAAG,CAAC,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAE1F,OAAO;QACL,aAAa,EAAE,kCAAkC;QACjD,MAAM,EAAE,8BAA8B;QACtC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC;QAC5D,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC1D,0BAA0B,EAAE,KAAK,CAAC,0BAA0B,EAAE,CAAC,CAAC;QAChE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QACpC,qBAAqB;QACrB,SAAS,EAAE,qBAAqB;QAChC,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,KAA2C;IAE3C,oBAAoB,CAAC,KAAK,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;IACjE,oBAAoB,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAC3D,oBAAoB,CAAC,KAAK,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC7D,uBAAuB,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC1D,oBAAoB,CAAC,KAAK,CAAC,0BAA0B,EAAE,4BAA4B,CAAC,CAAC;IACrF,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,IAAI,KAAK,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC;QAC5G,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,8BAA8B,CAAC;IAC9D,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;IAC7C,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,IAAI,GAAG,CAAC;IACvD,MAAM,MAAM,GAAG,6BAA6B,CAAC;QAC3C,UAAU,EAAE,KAAK,CAAC,gBAAgB;QAClC,UAAU,EAAE,CAAC;gBACX,SAAS,EAAE,KAAK,CAAC,gBAAgB;gBACjC,UAAU,EAAE,KAAK,CAAC,cAAc;gBAChC,QAAQ,EAAE,KAAK,CAAC,WAAW;gBAC3B,aAAa,EAAE,KAAK,CAAC,gBAAgB;aACtC,CAAC;QACF,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,QAAQ;QACvB,iBAAiB,EAAE,CAAC;QACpB,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,gBAAgB;QACjC,SAAS,EAAE,YAAY;KACxB,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,gBAAgB,CAAC;IAChE,MAAM,OAAO,GAAG,6BAA6B,CAAC;QAC5C,UAAU,EAAE,UAAU;QACtB,UAAU,EAAE,CAAC;gBACX,SAAS,EAAE,UAAU;gBACrB,UAAU,EAAE,KAAK,CAAC,cAAc;gBAChC,QAAQ,EAAE,KAAK,CAAC,WAAW;gBAC3B,aAAa,EAAE,KAAK,CAAC,gBAAgB;aACtC,CAAC;QACF,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,SAAS;QACxB,iBAAiB,EAAE,CAAC;QACpB,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,GAAG;QACpB,SAAS,EAAE,CAAC;KACb,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACzD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC;IAClF,MAAM,mBAAmB,GAAG,YAAY,GAAG,CAAC;QAC1C,CAAC,CAAC,MAAM,CAAC,UAAU,GAAG,YAAY;QAClC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;IACtB,MAAM,2BAA2B,GAAG,YAAY,GAAG,CAAC;QAClD,CAAC,CAAC,KAAK,CAAC,0BAA0B,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC;QACxE,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,mBAAmB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACnF,MAAM,sBAAsB,GAAG,KAAK,CAAC,WAAW,GAAG,CAAC;QAClD,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,gBAAgB,GAAG,YAAY,EAAE,IAAI,CAAC;QAC3G,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,2BAA2B,GAAG,KAAK,CAAC,2BAA2B,IAAI,GAAG,CAAC;IAC7E,MAAM,8BAA8B,GAAG,KAAK,CAAC,8BAA8B,IAAI,GAAG,CAAC;IAEnF,MAAM,MAAM,GAAqB;QAC/B;YACE,EAAE,EAAE,kBAAkB;YACtB,MAAM,EAAE,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC;YAC7C,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,2BAA2B,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SAClE;QACD;YACE,EAAE,EAAE,wBAAwB;YAC5B,MAAM,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC;YACrC,QAAQ,EAAE,2BAA2B;YACrC,MAAM,EAAE,mBAAmB,IAAI,2BAA2B,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SACpF;QACD;YACE,EAAE,EAAE,aAAa;YACjB,MAAM,EAAE,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC;YACxC,QAAQ,EAAE,8BAA8B;YACxC,MAAM,EAAE,sBAAsB,IAAI,8BAA8B,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SAC1F;KACF,CAAC;IAEF,OAAO;QACL,aAAa,EAAE,wCAAwC;QACvD,MAAM,EAAE,0CAA0C;QAClD,yBAAyB,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QACtD,0BAA0B,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACxD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAClD,2BAA2B,EAAE,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC;QAClE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAClD,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACxD,MAAM;QACN,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACrF,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,MAA0C;IAE1C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,MAAM,CAAC,aAAa,KAAK,0BAA0B;QAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC7F,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9F,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACxF,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjH,IACE,CAAC,MAAM,CAAC,iBAAiB;QACzB,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,KAAK,OAAO;YAC1C,MAAM,CAAC,iBAAiB,CAAC,MAAM,KAAK,QAAQ;YAC5C,MAAM,CAAC,iBAAiB,CAAC,MAAM,KAAK,SAAS,CAAC,EAChD,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,iBAAiB,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QACtE,QAAQ,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,YAAY,CAAC,EAAE,CAAC;QAC3D,QAAQ,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC7G,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC7H,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IACrI,IAAI,MAAM,CAAC,KAAK,KAAK,sBAAsB,IAAI,MAAM,CAAC,KAAK,KAAK,mBAAmB;QAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACxH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAChH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAChH,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACrG,QAAQ,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACjC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAC5C,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;IAC/F,CAAC;IAED,OAAO;QACL,aAAa,EAAE,qCAAqC;QACpD,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACtD,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpC,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,EAAU,EACV,OAAoC,EACpC,aAA2D,EAC3D,QAAgB,EAChB,MAAc,EACd,QAAgB,EAChB,SAAiB,EACjB,QAAgB,EAChB,IAAa;IAEb,OAAO;QACL,EAAE;QACF,OAAO;QACP,aAAa;QACb,QAAQ;QACR,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5B,SAAS;QACT,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACzE,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,SAA+B,8BAA8B;IAE7D,MAAM,UAAU,GAAkC,EAAE,CAAC;IAErD,MAAM,UAAU,GAAG,2BAA2B,CAAC;QAC7C,2BAA2B,EAAE,GAAG;QAChC,WAAW,EAAE,IAAI;QACjB,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,GAAG;QACjB,gBAAgB,EAAE,EAAE;QACpB,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,EAAE;QACd,MAAM;KACP,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,sCAAsC,EACtC,sBAAsB,EACtB,aAAa,EACb,uBAAuB,EACvB,UAAU,CAAC,qBAAqB,EAChC,GAAG,EACH,IAAI,EACJ,sFAAsF,EACtF,KAAK,CACN,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,GAAG,EAAE,CAAC;IAClC,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzG,MAAM,aAAa,GAAG,mCAAmC,CAAC;QACxD,eAAe,EAAE,EAAE;QACnB,QAAQ,EAAE,QAAQ;QAClB,mCAAmC,EAAE,CAAC;QACtC,4BAA4B,EAAE,GAAG;QACjC,mBAAmB,EAAE,GAAG;QACxB,cAAc,EAAE,kBAAkB;QAClC,SAAS,EAAE,EAAE;QACb,MAAM;KACP,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,yCAAyC,EACzC,eAAe,EACf,aAAa,EACb,uBAAuB,EACvB,aAAa,CAAC,SAAS,CAAC,qBAAqB,EAC7C,4BAA4B,CAAC,KAAK,CAAC,EACnC,KAAK,EACL,oGAAoG,CACrG,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,0BAA0B,EAAE,IAAI;QAChC,aAAa,EAAE,EAAE;QACjB,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,EAAE;QACb,SAAS,EAAE;YACT,oBAAoB,EAAE,IAAI;YAC1B,eAAe,EAAE,MAAM;YACvB,SAAS,EAAE,EAAE;YACb,YAAY,EAAE,CAAC;SAChB;QACD,MAAM;KACP,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,2BAA2B,EAC3B,gCAAgC,EAChC,aAAa,EACb,sBAAsB,EACtB,OAAO,CAAC,oBAAoB,EAC5B,IAAI,EACJ,KAAK,EACL,wCAAwC,EACxC,QAAQ,CACT,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,uBAAuB,EACvB,kCAAkC,EAClC,kBAAkB,EAClB,uBAAuB,EACvB,OAAO,CAAC,qBAAqB,EAC7B,CAAC,EACD,MAAM,CAAC,gCAAgC,EACvC,+FAA+F,CAChG,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,4BAA4B,CAAC;QAC5C,sBAAsB,EAAE,GAAG;QAC3B,qBAAqB,EAAE,EAAE;QACzB,oBAAoB,EAAE,EAAE;QACxB,qBAAqB,EAAE,MAAM;QAC7B,eAAe,EAAE,CAAC;QAClB,MAAM;KACP,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,sCAAsC,EACtC,gCAAgC,EAChC,aAAa,EACb,cAAc,EACd,QAAQ,CAAC,YAAY,EACrB,EAAE,EACF,IAAI,EACJ,6FAA6F,EAC7F,IAAI,CACL,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,+BAA+B,CAAC;QAC9C,gBAAgB,EAAE,CAAC;QACnB,aAAa,EAAE,EAAE;QACjB,cAAc,EAAE,EAAE;QAClB,gBAAgB,EAAE,EAAE;QACpB,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,gBAAgB,EAAE,EAAE;QACpB,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACtB,0BAA0B,EAAE,GAAG;QAC/B,2BAA2B,EAAE,GAAG;QAChC,8BAA8B,EAAE,GAAG;QACnC,MAAM;KACP,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,uCAAuC,EACvC,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrC,CAAC,EACD,CAAC,EACD,0HAA0H,CAC3H,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,iCAAiC,CAAC;QAC3D,aAAa,EAAE,0BAA0B;QACzC,QAAQ,EAAE,gBAAgB;QAC1B,MAAM,EAAE,cAAc;QACtB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,iBAAiB,EAAE;YACjB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;SAC9D;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,OAAO;SACtB;QACD,UAAU,EAAE,0BAA0B;QACtC,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,CAAC,+BAA+B,CAAC;QAC9C,WAAW,EAAE,CAAC,0CAA0C,CAAC;QACzD,iBAAiB,EAAE,2DAA2D;KAC/E,CAAC,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,SAAS,CACvB,mCAAmC,EACnC,mCAAmC,EACnC,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChD,CAAC,EACD,CAAC,EACD,iIAAiI,CAClI,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAClC,UAAU;aACP,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC;aAC5C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAC/B,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtG,OAAO;QACL,aAAa,EAAE,6BAA6B;QAC5C,MAAM;QACN,eAAe,EAAE,KAAK;QACtB,gBAAgB;QAChB,UAAU;QACV,iBAAiB,EAAE,MAAM;QACzB,2BAA2B,EAAE;YAC3B,wEAAwE;YACxE,8DAA8D;YAC9D,gFAAgF;YAChF,mFAAmF;YACnF,iEAAiE;YACjE,kGAAkG;SACnG;QACD,kBAAkB,EAChB,6OAA6O;KAChP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"engineering-evidence.js","sourceRoot":"","sources":["../../src/fem/engineering-evidence.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  export * from './types.js';
2
2
  export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, buildStagedSettlementConsolidationDemoAnalysisCase, buildTunnelVolumeLossDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, runBuiltinStagedSettlementConsolidationDemo, runBuiltinTunnelVolumeLossDemo, } from './demo.js';
3
+ export { runBuiltinNonlinearConsolidationColumnSolver } from './nonlinear-column-solver.js';
3
4
  export { getFemCapability, listFemCapabilities, prepareFemAnalysisCaseDraft, type FemAnalysisCaseDraft, type FemCapability, type FemCapabilityStatus, type FemRouteObjective, type PrepareFemAnalysisCaseDraftInput, } from './routing.js';
4
5
  export { buildFemDraftCandidateFromReadiness, buildFemDraftCandidatesFromGroundModel, buildFemDraftInputFromReadiness, mapGroundModelEvidenceRefs, stripPlaceholderFemValues, validateFemGroundModelDraftCandidate, validateFemWorkspaceToRunAcceptance, type FemGroundModelDraftCandidate, type FemGroundModelDraftCandidateValidation, type FemGroundModelDraftBridge, type FemGroundModelExecutionBoundary, type FemWorkspaceToRunAcceptance, } from './ground-model-draft.js';
5
6
  export { validateFemAnalysisCase, validateFemResultManifest } from './validation.js';
6
7
  export { validateFemScenarioResult, validateFemScenarioSuite, type FemScenarioExpectation, type FemScenarioMetric, type FemScenarioRangeExpectation, type FemScenarioRun, type FemScenarioSuiteValidation, type FemScenarioTrendExpectation, type FemScenarioValidation, } from './scenario-validation.js';
7
8
  export { assessFemProductionReadiness, type FemProductionFeature, type FemProductionFeatureRequirement, type FemProductionReadinessReport, } from './production-readiness.js';
8
- export { DEFAULT_FEM_CONVERGENCE_POLICY, evaluateFemTolerance, runDarcySeepage1D, runExcavationSupportDesignCheck, runFemEngineeringEvidenceSuite, runHydroMechanicalCoupling1D, runMohrCoulombMaterialPoint, runTerzaghiConsolidationTimeStepper, terzaghiAverageConsolidation, validateFemReviewerApprovalRecord, type FemConsolidationStep, type FemConsolidationTimeStepperInput, type FemConsolidationTimeStepperResult, type FemConvergencePolicy, type FemDesignCheck, type FemEngineeringBenchmarkCase, type FemEngineeringEvidenceReport, type FemEngineeringKernelFeature, type FemExcavationSupportDesignCheckInput, type FemExcavationSupportDesignCheckResult, type FemHydroMechanicalCouplingInput, type FemHydroMechanicalCouplingResult, type FemMohrCoulombMaterialPointInput, type FemMohrCoulombMaterialPointResult, type FemMohrCoulombStressStep, type FemReviewerApprovalRecord, type FemReviewerApprovalValidation, type FemSeepage1DInput, type FemSeepage1DResult, type FemSeepageNode, type FemSeepageTransientStep, type FemToleranceCheck, } from './engineering-evidence.js';
9
+ export { DEFAULT_FEM_CONVERGENCE_POLICY, evaluateFemTolerance, mapMohrCoulombToDruckerPragerTriaxialCompression, runDarcySeepage1D, runDruckerPragerMaterialPoint, runExcavationSupportDesignCheck, runFemEngineeringEvidenceSuite, runHydroMechanicalCoupling1D, runMohrCoulombMaterialPoint, runTerzaghiConsolidationTimeStepper, terzaghiAverageConsolidation, validateFemReviewerApprovalRecord, type FemConsolidationStep, type FemConsolidationTimeStepperInput, type FemConsolidationTimeStepperResult, type FemConvergencePolicy, type FemDesignCheck, type FemDruckerPragerMaterialPointInput, type FemDruckerPragerMaterialPointResult, type FemDruckerPragerParameterMapping, type FemDruckerPragerStressStep, type FemEngineeringBenchmarkCase, type FemEngineeringEvidenceReport, type FemEngineeringKernelFeature, type FemExcavationSupportDesignCheckInput, type FemExcavationSupportDesignCheckResult, type FemHydroMechanicalCouplingInput, type FemHydroMechanicalCouplingResult, type FemMohrCoulombMaterialPointInput, type FemMohrCoulombMaterialPointResult, type FemMohrCoulombStressStep, type FemPrincipalVector, type FemReviewerApprovalRecord, type FemReviewerApprovalValidation, type FemSeepage1DInput, type FemSeepage1DResult, type FemSeepageNode, type FemSeepageTransientStep, type FemToleranceCheck, } from './engineering-evidence.js';
9
10
  export { renderFemWebglHtml } from './webgl.js';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,kDAAkD,EAClD,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,2CAA2C,EAC3C,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gCAAgC,GACtC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,oCAAoC,EACpC,mCAAmC,EACnC,KAAK,4BAA4B,EACjC,KAAK,sCAAsC,EAC3C,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,iBAAiB,EACjB,+BAA+B,EAC/B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,mCAAmC,EACnC,4BAA4B,EAC5B,iCAAiC,EACjC,KAAK,oBAAoB,EACzB,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,EAC1C,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,kDAAkD,EAClD,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,2CAA2C,EAC3C,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,4CAA4C,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gCAAgC,GACtC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,oCAAoC,EACpC,mCAAmC,EACnC,KAAK,4BAA4B,EACjC,KAAK,sCAAsC,EAC3C,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,gDAAgD,EAChD,iBAAiB,EACjB,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,mCAAmC,EACnC,4BAA4B,EAC5B,iCAAiC,EACjC,KAAK,oBAAoB,EACzB,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,KAAK,gCAAgC,EACrC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,EAC1C,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
package/dist/fem/index.js CHANGED
@@ -1,10 +1,11 @@
1
1
  export * from './types.js';
2
2
  export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, buildStagedSettlementConsolidationDemoAnalysisCase, buildTunnelVolumeLossDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, runBuiltinStagedSettlementConsolidationDemo, runBuiltinTunnelVolumeLossDemo, } from './demo.js';
3
+ export { runBuiltinNonlinearConsolidationColumnSolver } from './nonlinear-column-solver.js';
3
4
  export { getFemCapability, listFemCapabilities, prepareFemAnalysisCaseDraft, } from './routing.js';
4
5
  export { buildFemDraftCandidateFromReadiness, buildFemDraftCandidatesFromGroundModel, buildFemDraftInputFromReadiness, mapGroundModelEvidenceRefs, stripPlaceholderFemValues, validateFemGroundModelDraftCandidate, validateFemWorkspaceToRunAcceptance, } from './ground-model-draft.js';
5
6
  export { validateFemAnalysisCase, validateFemResultManifest } from './validation.js';
6
7
  export { validateFemScenarioResult, validateFemScenarioSuite, } from './scenario-validation.js';
7
8
  export { assessFemProductionReadiness, } from './production-readiness.js';
8
- export { DEFAULT_FEM_CONVERGENCE_POLICY, evaluateFemTolerance, runDarcySeepage1D, runExcavationSupportDesignCheck, runFemEngineeringEvidenceSuite, runHydroMechanicalCoupling1D, runMohrCoulombMaterialPoint, runTerzaghiConsolidationTimeStepper, terzaghiAverageConsolidation, validateFemReviewerApprovalRecord, } from './engineering-evidence.js';
9
+ export { DEFAULT_FEM_CONVERGENCE_POLICY, evaluateFemTolerance, mapMohrCoulombToDruckerPragerTriaxialCompression, runDarcySeepage1D, runDruckerPragerMaterialPoint, runExcavationSupportDesignCheck, runFemEngineeringEvidenceSuite, runHydroMechanicalCoupling1D, runMohrCoulombMaterialPoint, runTerzaghiConsolidationTimeStepper, terzaghiAverageConsolidation, validateFemReviewerApprovalRecord, } from './engineering-evidence.js';
9
10
  export { renderFemWebglHtml } from './webgl.js';
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,kDAAkD,EAClD,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,2CAA2C,EAC3C,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,GAM5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,oCAAoC,EACpC,mCAAmC,GAMpC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GAQzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,GAI7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,iBAAiB,EACjB,+BAA+B,EAC/B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,mCAAmC,EACnC,4BAA4B,EAC5B,iCAAiC,GAuBlC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,kDAAkD,EAClD,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,2CAA2C,EAC3C,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,4CAA4C,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,GAM5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,oCAAoC,EACpC,mCAAmC,GAMpC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GAQzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,GAI7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,gDAAgD,EAChD,iBAAiB,EACjB,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,mCAAmC,EACnC,4BAA4B,EAC5B,iCAAiC,GA4BlC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type FemConvergencePolicy } from './engineering-evidence.js';
2
+ import type { FemAnalysisCase, FemResultManifest } from './types.js';
3
+ export declare function runBuiltinNonlinearConsolidationColumnSolver(caseFile: FemAnalysisCase, options?: {
4
+ policy?: FemConvergencePolicy;
5
+ }): FemResultManifest;
6
+ //# sourceMappingURL=nonlinear-column-solver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonlinear-column-solver.d.ts","sourceRoot":"","sources":["../../src/fem/nonlinear-column-solver.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,oBAAoB,EAG1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,eAAe,EAAoB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAqJvF,wBAAgB,4CAA4C,CAC1D,QAAQ,EAAE,eAAe,EACzB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,oBAAoB,CAAA;CAAO,GAC9C,iBAAiB,CAiJnB"}