@turntrout/subfont 1.8.2 → 1.9.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.
package/CLAUDE.md CHANGED
@@ -48,7 +48,7 @@ pnpm run check-coverage # Verify coverage thresholds
48
48
  - Tests have a 5-minute timeout (configured in `.mocharc.yml`)
49
49
  - Tests use `httpception` for HTTP mocking and `unexpected` for assertions
50
50
  - Some tests require puppeteer browser binaries (installed via `pnpm install`)
51
- - Coverage thresholds: branches 70%, lines 80%, functions 75%, statements 80%
51
+ - Coverage thresholds: branches 75%, lines 82%, functions 78%, statements 82%
52
52
  - Coverage excludes: `lib/cli.js`, `lib/fontConverterWorker.js`, `lib/fontTracerWorker.js`
53
53
 
54
54
  ## Conventions
@@ -1 +1 @@
1
- {"version":3,"file":"codepointMaps.d.ts","sourceRoot":"","sources":["../src/codepointMaps.ts"],"names":[],"mappings":"AA8FA,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAwBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAUrD"}
1
+ {"version":3,"file":"codepointMaps.d.ts","sourceRoot":"","sources":["../src/codepointMaps.ts"],"names":[],"mappings":"AAwGA,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAwBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAUrD"}
@@ -34,6 +34,7 @@ const EMOJI_RANGES = [
34
34
  const SCRIPT_RANGES = [
35
35
  { min: 0x0370, max: 0x03ff, tag: 'grek' }, // Greek and Coptic
36
36
  { min: 0x0400, max: 0x052f, tag: 'cyrl' }, // Cyrillic + Supplement
37
+ { min: 0x0530, max: 0x058f, tag: 'armn' }, // Armenian
37
38
  { min: 0x0590, max: 0x05ff, tag: 'hebr' }, // Hebrew
38
39
  { min: 0x0600, max: 0x06ff, tag: 'arab' }, // Arabic
39
40
  { min: 0x0750, max: 0x077f, tag: 'arab' }, // Arabic Supplement
@@ -45,8 +46,17 @@ const SCRIPT_RANGES = [
45
46
  { min: 0x0c00, max: 0x0c7f, tag: 'telu' }, // Telugu
46
47
  { min: 0x0c80, max: 0x0cff, tag: 'knda' }, // Kannada
47
48
  { min: 0x0d00, max: 0x0d7f, tag: 'mlym' }, // Malayalam
49
+ { min: 0x0d80, max: 0x0dff, tag: 'sinh' }, // Sinhala
50
+ { min: 0x0e00, max: 0x0e7f, tag: 'thai' }, // Thai
51
+ { min: 0x0e80, max: 0x0eff, tag: 'lao ' }, // Lao
52
+ { min: 0x0f00, max: 0x0fff, tag: 'tibt' }, // Tibetan
53
+ { min: 0x1000, max: 0x109f, tag: 'mymr' }, // Myanmar
54
+ { min: 0x10a0, max: 0x10ff, tag: 'geor' }, // Georgian
48
55
  { min: 0x1100, max: 0x11ff, tag: 'hang' }, // Hangul Jamo
56
+ { min: 0x1200, max: 0x137f, tag: 'ethi' }, // Ethiopic
57
+ { min: 0x1780, max: 0x17ff, tag: 'khmr' }, // Khmer
49
58
  { min: 0x1f00, max: 0x1fff, tag: 'grek' }, // Greek Extended
59
+ { min: 0x2d00, max: 0x2d2f, tag: 'geor' }, // Georgian Supplement
50
60
  { min: 0x2de0, max: 0x2dff, tag: 'cyrl' }, // Cyrillic Extended-A
51
61
  { min: 0x3040, max: 0x30ff, tag: 'kana' }, // Hiragana / Katakana
52
62
  { min: 0x3130, max: 0x318f, tag: 'hang' }, // Hangul Compatibility Jamo
@@ -1 +1 @@
1
- {"version":3,"file":"codepointMaps.js","sourceRoot":"","sources":["../src/codepointMaps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codepointMaps.js","sourceRoot":"","sources":["../src/codepointMaps.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export declare function convert(buffer: Buffer | Uint8Array, targetFormat: string, sourceFormat?: string): Promise<Buffer>;
2
+ export declare function destroy(): Promise<void>;
2
3
  //# sourceMappingURL=fontConverter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fontConverter.d.ts","sourceRoot":"","sources":["../src/fontConverter.ts"],"names":[],"mappings":"AAYA,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,GAAG,UAAU,EAC3B,YAAY,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAwCjB"}
1
+ {"version":3,"file":"fontConverter.d.ts","sourceRoot":"","sources":["../src/fontConverter.ts"],"names":[],"mappings":"AA8IA,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,GAAG,UAAU,EAC3B,YAAY,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAI7C"}
@@ -1,44 +1,130 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.convert = convert;
4
+ exports.destroy = destroy;
4
5
  const pathModule = require("path");
6
+ const os = require("os");
5
7
  const worker_threads_1 = require("worker_threads");
6
8
  const workerPath = pathModule.join(__dirname, 'fontConverterWorker.js');
7
9
  const CONVERT_TIMEOUT_MS = 120_000;
8
- function convert(buffer, targetFormat, sourceFormat) {
10
+ const POOL_SIZE = Math.max(1, Math.min(os.cpus().length, 8));
11
+ const _pool = [];
12
+ const _waiters = [];
13
+ function createEntry() {
14
+ const worker = new worker_threads_1.Worker(workerPath);
15
+ worker.unref();
16
+ return { worker, busy: false };
17
+ }
18
+ function acquire() {
19
+ const idle = _pool.find((e) => !e.busy);
20
+ if (idle) {
21
+ idle.busy = true;
22
+ return idle;
23
+ }
24
+ if (_pool.length < POOL_SIZE) {
25
+ const entry = createEntry();
26
+ entry.busy = true;
27
+ _pool.push(entry);
28
+ return entry;
29
+ }
30
+ return null;
31
+ }
32
+ function release(entry) {
33
+ entry.busy = false;
34
+ if (_waiters.length > 0) {
35
+ entry.busy = true;
36
+ const waiter = _waiters.shift();
37
+ waiter(entry);
38
+ }
39
+ }
40
+ function replaceEntry(entry) {
41
+ const idx = _pool.indexOf(entry);
42
+ if (idx === -1)
43
+ return;
44
+ const replacement = createEntry();
45
+ _pool[idx] = replacement;
46
+ if (_waiters.length > 0) {
47
+ replacement.busy = true;
48
+ const waiter = _waiters.shift();
49
+ waiter(replacement);
50
+ }
51
+ }
52
+ function doConvert(entry, buffer, targetFormat, sourceFormat) {
9
53
  return new Promise((resolve, reject) => {
10
54
  let settled = false;
11
- const worker = new worker_threads_1.Worker(workerPath);
55
+ const { worker } = entry;
12
56
  const timer = setTimeout(() => {
13
- if (!settled) {
14
- settled = true;
15
- worker.terminate();
16
- reject(new Error(`Font conversion to ${targetFormat} timed out after ${CONVERT_TIMEOUT_MS}ms`));
17
- }
57
+ if (settled)
58
+ return;
59
+ settled = true;
60
+ cleanup();
61
+ worker.terminate();
62
+ replaceEntry(entry);
63
+ reject(new Error(`Font conversion to ${targetFormat} timed out after ${CONVERT_TIMEOUT_MS}ms`));
18
64
  }, CONVERT_TIMEOUT_MS);
19
65
  timer.unref();
20
- worker.on('message', (msg) => {
66
+ const cleanup = () => {
67
+ clearTimeout(timer);
68
+ worker.off('message', onMessage);
69
+ worker.off('error', onError);
70
+ worker.off('exit', onExit);
71
+ };
72
+ const onMessage = (msg) => {
21
73
  if (settled)
22
74
  return;
23
75
  settled = true;
24
- clearTimeout(timer);
25
- worker.terminate();
76
+ cleanup();
77
+ release(entry);
26
78
  if (msg.type === 'result' && msg.buffer) {
27
79
  resolve(Buffer.from(msg.buffer));
28
80
  }
29
81
  else {
30
82
  reject(new Error(msg.error || `Font conversion to ${targetFormat} failed`));
31
83
  }
32
- });
33
- worker.on('error', (err) => {
84
+ };
85
+ const onError = (err) => {
34
86
  if (settled)
35
87
  return;
36
88
  settled = true;
37
- clearTimeout(timer);
89
+ cleanup();
38
90
  worker.terminate();
91
+ replaceEntry(entry);
39
92
  reject(err);
40
- });
41
- worker.postMessage({ buffer, targetFormat, sourceFormat });
93
+ };
94
+ const onExit = (code) => {
95
+ if (settled)
96
+ return;
97
+ settled = true;
98
+ cleanup();
99
+ replaceEntry(entry);
100
+ reject(new Error(`Font converter worker exited unexpectedly with code ${code}`));
101
+ };
102
+ worker.on('message', onMessage);
103
+ worker.on('error', onError);
104
+ worker.on('exit', onExit);
105
+ try {
106
+ worker.postMessage({ buffer, targetFormat, sourceFormat });
107
+ }
108
+ catch (err) {
109
+ settled = true;
110
+ cleanup();
111
+ release(entry);
112
+ reject(err);
113
+ }
42
114
  });
43
115
  }
116
+ function convert(buffer, targetFormat, sourceFormat) {
117
+ const entry = acquire();
118
+ if (entry) {
119
+ return doConvert(entry, buffer, targetFormat, sourceFormat);
120
+ }
121
+ return new Promise((resolve) => {
122
+ _waiters.push(resolve);
123
+ }).then((e) => doConvert(e, buffer, targetFormat, sourceFormat));
124
+ }
125
+ async function destroy() {
126
+ _waiters.length = 0;
127
+ await Promise.all(_pool.map((e) => e.worker.terminate()));
128
+ _pool.length = 0;
129
+ }
44
130
  //# sourceMappingURL=fontConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fontConverter.js","sourceRoot":"","sources":["../src/fontConverter.ts"],"names":[],"mappings":";;AAYA,0BA4CC;AAxDD,mCAAoC;AACpC,mDAAwC;AAExC,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;AACxE,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAQnC,SAAgB,OAAO,CACrB,MAA2B,EAC3B,YAAoB,EACpB,YAAqB;IAErB,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,uBAAM,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,CACJ,IAAI,KAAK,CACP,sBAAsB,YAAY,oBAAoB,kBAAkB,IAAI,CAC7E,CACF,CAAC;YACJ,CAAC;QACH,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC;QAEd,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAkB,EAAE,EAAE;YAC1C,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACxC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,MAAM,CACJ,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,sBAAsB,YAAY,SAAS,CAAC,CACpE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"fontConverter.js","sourceRoot":"","sources":["../src/fontConverter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subsetFontWithGlyphs.d.ts","sourceRoot":"","sources":["../src/subsetFontWithGlyphs.ts"],"names":[],"mappings":"AAwEA,KAAK,kBAAkB,GACnB,MAAM,GACN;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,UAAU,2BAA2B;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAKnD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAGvB,aAAa,CAAC,EAAE,OAAO,CAAC;IAIxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAK1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAmUD,UAAU,sBAAsB;IAC9B,CACE,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;wBA4FgC,sBAAsB;AAAvD,kBAAwD"}
1
+ {"version":3,"file":"subsetFontWithGlyphs.d.ts","sourceRoot":"","sources":["../src/subsetFontWithGlyphs.ts"],"names":[],"mappings":"AAwEA,KAAK,kBAAkB,GACnB,MAAM,GACN;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,UAAU,2BAA2B;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAKnD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAGvB,aAAa,CAAC,EAAE,OAAO,CAAC;IAIxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAK1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAmUD,UAAU,sBAAsB;IAC9B,CACE,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;wBAwFgC,sBAAsB;AAAvD,kBAAwD"}
@@ -283,7 +283,7 @@ function extractSubsetFont(exports, subset) {
283
283
  exports.hb_blob_destroy(result);
284
284
  return subsetFont;
285
285
  }
286
- async function subsetFontWithGlyphs(originalFont, text, { targetFormat, glyphIds, variationAxes, featureTags, dropMathTable = false, dropColorTables = false, scriptTags, } = {}) {
286
+ async function subsetFontWithGlyphs(originalFont, text, { targetFormat = 'woff2', glyphIds, variationAxes, featureTags, dropMathTable = false, dropColorTables = false, scriptTags, } = {}) {
287
287
  // Reuse cached sfnt conversion when available (same buffer may have
288
288
  // been converted by getFontInfo or collectFeatureGlyphIds already).
289
289
  // sfntCache routes woff2 decompression through the worker pool.
@@ -1 +1 @@
1
- {"version":3,"file":"subsetFontWithGlyphs.js","sourceRoot":"","sources":["../src/subsetFontWithGlyphs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subsetFontWithGlyphs.js","sourceRoot":"","sources":["../src/subsetFontWithGlyphs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subsetFonts.d.ts","sourceRoot":"","sources":["../src/subsetFonts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,UAAU,EAIX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAmB,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAmgBjE,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,KAAK,kBAAkB,GAAG,MAAM,CAC9B,MAAM,EACN,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CACxD,CAAC;AAEF,UAAU,iBAAiB;IACzB,QAAQ,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;IAC7E,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED,iBAAe,WAAW,CACxB,UAAU,EAAE,UAAU,EACtB,EACE,OAAmB,EACnB,UAAuB,EACvB,aAAqB,EACrB,SAAiB,EACjB,WAAW,EACX,QAAyB,EACzB,QAAQ,EACR,OAAO,EACP,OAAwB,EACxB,IAAI,EACJ,UAAkB,EAClB,KAAa,EACb,WAAW,EACX,UAAe,EACf,QAAe,GAChB,GAAE,kBAAuB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAu0B5B;AAED,SAAS,WAAW,CAAC"}
1
+ {"version":3,"file":"subsetFonts.d.ts","sourceRoot":"","sources":["../src/subsetFonts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,UAAU,EAIX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAmB,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAywBjE,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,KAAK,kBAAkB,GAAG,MAAM,CAC9B,MAAM,EACN,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CACxD,CAAC;AAEF,UAAU,iBAAiB;IACzB,QAAQ,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;IAC7E,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED,iBAAe,WAAW,CACxB,UAAU,EAAE,UAAU,EACtB,EACE,OAAmB,EACnB,UAAuB,EACvB,aAAqB,EACrB,SAAiB,EACjB,WAAW,EACX,QAAyB,EACzB,QAAQ,EACR,OAAO,EACP,OAAwB,EACxB,IAAI,EACJ,UAAkB,EAClB,KAAa,EACb,WAAW,EACX,UAAe,EACf,QAAe,GAChB,GAAE,kBAAuB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CA2jB5B;AAED,SAAS,WAAW,CAAC"}
@@ -362,76 +362,24 @@ function buildFontInfoReport(htmlOrSvgAssetTextsWithProps) {
362
362
  fontUsages: fontUsages.map((fontUsage) => (({ subsets, hasFontFeatureSettings, fontFeatureTags, ...rest }) => rest)(fontUsage)),
363
363
  }));
364
364
  }
365
- async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subfont/', omitFallbacks = false, inlineCss = false, fontDisplay, hrefType = 'rootRelative', onlyInfo, dynamic, console = global.console, text, sourceMaps = false, debug = false, concurrency, chromeArgs = [], cacheDir = null, } = {}) {
366
- if (fontDisplay && !validFontDisplayValues.includes(fontDisplay)) {
367
- fontDisplay = undefined;
368
- }
369
- // Pre-warm the WASM pool: start compiling harfbuzz WASM while
370
- // collectTextsByPage traces fonts. Compilation (~50-200ms) overlaps
371
- // with tracing work rather than appearing on the critical path.
372
- subsetFontWithGlyphs.warmup().catch((err) => {
373
- if (debug) {
374
- console.warn('WASM warmup failed (will retry on first subset call):', err);
375
- }
376
- });
377
- const subsetUrl = urltools.ensureTrailingSlash(assetGraph.root + subsetPath);
378
- const timings = {};
379
- const trackPhase = (0, progress_1.makePhaseTracker)(console, debug);
380
- const applySourceMapsPhase = trackPhase('applySourceMaps');
381
- if (sourceMaps) {
382
- await assetGraph.applySourceMaps({ type: 'Css' });
383
- }
384
- timings.applySourceMaps = applySourceMapsPhase.end();
385
- const googlePopulatePhase = trackPhase('populate (google fonts)');
386
- const hasGoogleFonts = await populateGoogleFontsIfPresent(assetGraph);
387
- timings['populate (google fonts)'] = googlePopulatePhase.end(hasGoogleFonts ? null : 'skipped, no Google Fonts found');
388
- const htmlOrSvgAssets = assetGraph.findAssets({
389
- $or: [
390
- {
391
- type: 'Html',
392
- isInline: false,
393
- },
394
- {
395
- type: 'Svg',
396
- },
397
- ],
398
- });
399
- const collectPhase = trackPhase(`collectTextsByPage (${htmlOrSvgAssets.length} pages)`);
400
- const { htmlOrSvgAssetTextsWithProps, fontFaceDeclarationsByHtmlOrSvgAsset, subTimings, } = await collectTextsByPage(assetGraph, htmlOrSvgAssets, {
401
- text,
402
- console,
403
- dynamic,
404
- debug,
405
- concurrency,
406
- chromeArgs,
407
- });
408
- timings.collectTextsByPage = collectPhase.end();
409
- timings.collectTextsByPageDetails = subTimings;
410
- const omitFallbacksPhase = trackPhase('omitFallbacks processing');
411
- const potentiallyOrphanedAssets = new Set();
412
- if (omitFallbacks) {
413
- removeOriginalFontFaceRules(htmlOrSvgAssets, fontFaceDeclarationsByHtmlOrSvgAsset, potentiallyOrphanedAssets);
414
- }
415
- timings['omitFallbacks processing'] = omitFallbacksPhase.end();
416
- const codepointPhase = trackPhase('codepoint generation');
365
+ // Compute codepoint sets (original, used, unused, page) for every fontUsage
366
+ // and attach them to the fontUsage objects. Also applies fontDisplay if set.
367
+ async function computeCodepoints(assetGraph, htmlOrSvgAssetTextsWithProps, fontDisplay) {
417
368
  if (fontDisplay) {
418
- for (const htmlOrSvgAssetTextWithProps of htmlOrSvgAssetTextsWithProps) {
419
- for (const fontUsage of htmlOrSvgAssetTextWithProps.fontUsages) {
369
+ for (const { fontUsages } of htmlOrSvgAssetTextsWithProps) {
370
+ for (const fontUsage of fontUsages) {
420
371
  fontUsage.props['font-display'] = fontDisplay;
421
372
  }
422
373
  }
423
374
  }
424
- // Pre-compute the global codepoints (original, used, unused) once per fontUrl
425
- // since fontUsage.text is the same global union on every page.
426
- // Pre-index all loaded assets by URL for O(1) lookups instead of O(n) scans.
427
375
  const loadedAssetsByUrl = new Map();
428
376
  for (const asset of assetGraph.findAssets({ isLoaded: true })) {
429
377
  if (asset.url)
430
378
  loadedAssetsByUrl.set(asset.url, asset);
431
379
  }
432
380
  const codepointFontAssetByUrl = new Map();
433
- for (const htmlOrSvgAssetTextWithProps of htmlOrSvgAssetTextsWithProps) {
434
- for (const fontUsage of htmlOrSvgAssetTextWithProps.fontUsages) {
381
+ for (const { fontUsages } of htmlOrSvgAssetTextsWithProps) {
382
+ for (const fontUsage of fontUsages) {
435
383
  if (fontUsage.fontUrl &&
436
384
  !codepointFontAssetByUrl.has(fontUsage.fontUrl)) {
437
385
  const originalFont = loadedAssetsByUrl.get(fontUsage.fontUrl);
@@ -453,11 +401,10 @@ async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subf
453
401
  }
454
402
  }
455
403
  const fontInfoResults = new Map(await Promise.all([...fontInfoPromises].map(async ([key, promise]) => [key, await promise])));
456
- // Build global codepoints synchronously from pre-fetched results
457
404
  const globalCodepointsByFontUrl = new Map();
458
405
  const codepointsCache = new Map();
459
- for (const htmlOrSvgAssetTextWithProps of htmlOrSvgAssetTextsWithProps) {
460
- for (const fontUsage of htmlOrSvgAssetTextWithProps.fontUsages) {
406
+ for (const { fontUsages } of htmlOrSvgAssetTextsWithProps) {
407
+ for (const fontUsage of fontUsages) {
461
408
  let cached = globalCodepointsByFontUrl.get(fontUsage.fontUrl);
462
409
  if (!cached) {
463
410
  cached = { originalCodepoints: null };
@@ -475,8 +422,6 @@ async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subf
475
422
  globalCodepointsByFontUrl.set(fontUsage.fontUrl, cached);
476
423
  }
477
424
  if (cached.originalCodepoints) {
478
- // Cache getCodepoints result by pageText string to avoid
479
- // recomputing for pages with identical text per font
480
425
  const pageText = fontUsage.pageText ?? '';
481
426
  let pageCodepoints = codepointsCache.get(pageText);
482
427
  if (!pageCodepoints) {
@@ -500,13 +445,177 @@ async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subf
500
445
  }
501
446
  }
502
447
  }
448
+ }
449
+ // Inject __subset font-family names into CSS declarations and SVG attributes
450
+ // so the browser picks up the subset fonts instead of the originals.
451
+ function injectSubsetFontFamilies(assetGraph, htmlOrSvgAssetTextsWithProps, omitFallbacks) {
452
+ const webfontNameMap = Object.create(null);
453
+ for (const { fontUsages } of htmlOrSvgAssetTextsWithProps) {
454
+ for (const { subsets, fontFamilies, props } of fontUsages) {
455
+ if (subsets) {
456
+ for (const fontFamily of fontFamilies) {
457
+ webfontNameMap[fontFamily.toLowerCase()] =
458
+ `${props['font-family']}__subset`;
459
+ }
460
+ }
461
+ }
462
+ }
463
+ let customPropertyDefinitions;
464
+ const cssAssetsDirtiedByCustomProps = new Set();
465
+ for (const svgAsset of assetGraph.findAssets({ type: 'Svg' })) {
466
+ if (!svgAsset.isLoaded)
467
+ continue;
468
+ let changesMade = false;
469
+ for (const element of Array.from(svgAsset.parseTree.querySelectorAll('[font-family]'))) {
470
+ const fontFamilies = cssListHelpers.splitByCommas(element.getAttribute('font-family'));
471
+ for (let i = 0; i < fontFamilies.length; i += 1) {
472
+ const subsetFontFamily = webfontNameMap[cssFontParser.parseFontFamily(fontFamilies[i])[0].toLowerCase()];
473
+ if (subsetFontFamily && !fontFamilies.includes(subsetFontFamily)) {
474
+ fontFamilies.splice(i, omitFallbacks ? 1 : 0, (0, fontFaceHelpers_1.maybeCssQuote)(subsetFontFamily));
475
+ i += 1;
476
+ element.setAttribute('font-family', fontFamilies.join(', '));
477
+ changesMade = true;
478
+ }
479
+ }
480
+ }
481
+ if (changesMade) {
482
+ svgAsset.markDirty();
483
+ }
484
+ }
485
+ const cssAssets = assetGraph.findAssets({ type: 'Css', isLoaded: true });
486
+ const parseTreeToAsset = new Map();
487
+ for (const cssAsset of cssAssets) {
488
+ parseTreeToAsset.set(cssAsset.parseTree, cssAsset);
489
+ }
490
+ for (const cssAsset of cssAssets) {
491
+ let changesMade = false;
492
+ cssAsset.eachRuleInParseTree((cssRule) => {
493
+ if (cssRule.parent.type !== 'rule' || cssRule.type !== 'decl')
494
+ return;
495
+ const propName = cssRule.prop.toLowerCase();
496
+ if ((propName === 'font' || propName === 'font-family') &&
497
+ cssRule.value.includes('var(')) {
498
+ if (!customPropertyDefinitions) {
499
+ customPropertyDefinitions = findCustomPropertyDefinitions(cssAssets);
500
+ }
501
+ for (const customPropertyName of extractReferencedCustomPropertyNames(cssRule.value)) {
502
+ for (const relatedCssRule of [
503
+ cssRule,
504
+ ...(customPropertyDefinitions[customPropertyName] || []),
505
+ ]) {
506
+ const modifiedValue = injectSubsetDefinitions(relatedCssRule.value, webfontNameMap, omitFallbacks);
507
+ if (modifiedValue !== relatedCssRule.value) {
508
+ relatedCssRule.value = modifiedValue;
509
+ const ownerAsset = parseTreeToAsset.get(relatedCssRule.root());
510
+ if (ownerAsset) {
511
+ cssAssetsDirtiedByCustomProps.add(ownerAsset);
512
+ }
513
+ }
514
+ }
515
+ }
516
+ }
517
+ else if (propName === 'font-family') {
518
+ const fontFamilies = cssListHelpers.splitByCommas(cssRule.value);
519
+ for (let i = 0; i < fontFamilies.length; i += 1) {
520
+ const subsetFontFamily = webfontNameMap[cssFontParser.parseFontFamily(fontFamilies[i])[0].toLowerCase()];
521
+ if (subsetFontFamily && !fontFamilies.includes(subsetFontFamily)) {
522
+ fontFamilies.splice(i, omitFallbacks ? 1 : 0, (0, fontFaceHelpers_1.maybeCssQuote)(subsetFontFamily));
523
+ i += 1;
524
+ cssRule.value = fontFamilies.join(', ');
525
+ changesMade = true;
526
+ }
527
+ }
528
+ }
529
+ else if (propName === 'font') {
530
+ const fontProperties = cssFontParser.parseFont(cssRule.value);
531
+ const fontFamilies = fontProperties && fontProperties['font-family'].map(unquote);
532
+ if (!fontFamilies)
533
+ return;
534
+ const subsetFontFamily = webfontNameMap[fontFamilies[0].toLowerCase()];
535
+ if (!subsetFontFamily || fontFamilies.includes(subsetFontFamily))
536
+ return;
537
+ if (omitFallbacks) {
538
+ fontFamilies.shift();
539
+ }
540
+ fontFamilies.unshift(subsetFontFamily);
541
+ const stylePrefix = fontProperties['font-style']
542
+ ? `${fontProperties['font-style']} `
543
+ : '';
544
+ const weightPrefix = fontProperties['font-weight']
545
+ ? `${fontProperties['font-weight']} `
546
+ : '';
547
+ const lineHeightSuffix = fontProperties['line-height']
548
+ ? `/${fontProperties['line-height']}`
549
+ : '';
550
+ cssRule.value = `${stylePrefix}${weightPrefix}${fontProperties['font-size']}${lineHeightSuffix} ${fontFamilies.map(fontFaceHelpers_1.maybeCssQuote).join(', ')}`;
551
+ changesMade = true;
552
+ }
553
+ });
554
+ if (changesMade) {
555
+ cssAsset.markDirty();
556
+ }
557
+ }
558
+ for (const dirtiedAsset of cssAssetsDirtiedByCustomProps) {
559
+ dirtiedAsset.markDirty();
560
+ }
561
+ }
562
+ async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subfont/', omitFallbacks = false, inlineCss = false, fontDisplay, hrefType = 'rootRelative', onlyInfo, dynamic, console = global.console, text, sourceMaps = false, debug = false, concurrency, chromeArgs = [], cacheDir = null, } = {}) {
563
+ if (fontDisplay && !validFontDisplayValues.includes(fontDisplay)) {
564
+ fontDisplay = undefined;
565
+ }
566
+ // Pre-warm the WASM pool: start compiling harfbuzz WASM while
567
+ // collectTextsByPage traces fonts. Compilation (~50-200ms) overlaps
568
+ // with tracing work rather than appearing on the critical path.
569
+ subsetFontWithGlyphs.warmup().catch((err) => {
570
+ if (debug) {
571
+ console.warn('WASM warmup failed (will retry on first subset call):', err);
572
+ }
573
+ });
574
+ const subsetUrl = urltools.ensureTrailingSlash(assetGraph.root + subsetPath);
575
+ const timings = {};
576
+ const trackPhase = (0, progress_1.makePhaseTracker)(console, debug);
577
+ const applySourceMapsPhase = trackPhase('applySourceMaps');
578
+ if (sourceMaps) {
579
+ await assetGraph.applySourceMaps({ type: 'Css' });
580
+ }
581
+ timings.applySourceMaps = applySourceMapsPhase.end();
582
+ const googlePopulatePhase = trackPhase('populate (google fonts)');
583
+ const hasGoogleFonts = await populateGoogleFontsIfPresent(assetGraph);
584
+ timings['populate (google fonts)'] = googlePopulatePhase.end(hasGoogleFonts ? null : 'skipped, no Google Fonts found');
585
+ const htmlOrSvgAssets = assetGraph.findAssets({
586
+ $or: [
587
+ {
588
+ type: 'Html',
589
+ isInline: false,
590
+ },
591
+ {
592
+ type: 'Svg',
593
+ },
594
+ ],
595
+ });
596
+ const collectPhase = trackPhase(`collectTextsByPage (${htmlOrSvgAssets.length} pages)`);
597
+ const { htmlOrSvgAssetTextsWithProps, fontFaceDeclarationsByHtmlOrSvgAsset, subTimings, } = await collectTextsByPage(assetGraph, htmlOrSvgAssets, {
598
+ text,
599
+ console,
600
+ dynamic,
601
+ debug,
602
+ concurrency,
603
+ chromeArgs,
604
+ });
605
+ timings.collectTextsByPage = collectPhase.end();
606
+ timings.collectTextsByPageDetails = subTimings;
607
+ const omitFallbacksPhase = trackPhase('omitFallbacks processing');
608
+ const potentiallyOrphanedAssets = new Set();
609
+ if (omitFallbacks) {
610
+ removeOriginalFontFaceRules(htmlOrSvgAssets, fontFaceDeclarationsByHtmlOrSvgAsset, potentiallyOrphanedAssets);
611
+ }
612
+ timings['omitFallbacks processing'] = omitFallbacksPhase.end();
613
+ const codepointPhase = trackPhase('codepoint generation');
614
+ await computeCodepoints(assetGraph, htmlOrSvgAssetTextsWithProps, fontDisplay);
503
615
  timings['codepoint generation'] = codepointPhase.end();
504
616
  if (onlyInfo) {
505
617
  return {
506
- fontInfo: htmlOrSvgAssetTextsWithProps.map(({ fontUsages, htmlOrSvgAsset }) => ({
507
- assetFileName: htmlOrSvgAsset.nonInlineAncestor.urlOrDescription,
508
- fontUsages: fontUsages.map((fontUsage) => (({ hasFontFeatureSettings, fontFeatureTags, ...rest }) => rest)(fontUsage)),
509
- })),
618
+ fontInfo: buildFontInfoReport(htmlOrSvgAssetTextsWithProps),
510
619
  timings,
511
620
  };
512
621
  }
@@ -853,124 +962,7 @@ async function subsetFonts(assetGraph, { formats = ['woff2'], subsetPath = 'subf
853
962
  }
854
963
  timings['Google Fonts + cleanup'] = googleCleanupPhase.end();
855
964
  const injectPhase = trackPhase('inject subset font-family into CSS/SVG');
856
- // Use subsets in font-family:
857
- const webfontNameMap = Object.create(null);
858
- for (const { fontUsages } of htmlOrSvgAssetTextsWithProps) {
859
- for (const { subsets, fontFamilies, props } of fontUsages) {
860
- if (subsets) {
861
- for (const fontFamily of fontFamilies) {
862
- webfontNameMap[fontFamily.toLowerCase()] =
863
- `${props['font-family']}__subset`;
864
- }
865
- }
866
- }
867
- }
868
- let customPropertyDefinitions;
869
- const cssAssetsDirtiedByCustomProps = new Set();
870
- // Inject subset font name before original webfont in SVG font-family attributes
871
- const svgAssets = assetGraph.findAssets({ type: 'Svg' });
872
- for (const svgAsset of svgAssets) {
873
- if (!svgAsset.isLoaded)
874
- continue;
875
- let changesMade = false;
876
- for (const element of Array.from(svgAsset.parseTree.querySelectorAll('[font-family]'))) {
877
- const fontFamilies = cssListHelpers.splitByCommas(element.getAttribute('font-family'));
878
- for (let i = 0; i < fontFamilies.length; i += 1) {
879
- const subsetFontFamily = webfontNameMap[cssFontParser.parseFontFamily(fontFamilies[i])[0].toLowerCase()];
880
- if (subsetFontFamily && !fontFamilies.includes(subsetFontFamily)) {
881
- fontFamilies.splice(i, omitFallbacks ? 1 : 0, (0, fontFaceHelpers_1.maybeCssQuote)(subsetFontFamily));
882
- i += 1;
883
- element.setAttribute('font-family', fontFamilies.join(', '));
884
- changesMade = true;
885
- }
886
- }
887
- }
888
- if (changesMade) {
889
- svgAsset.markDirty();
890
- }
891
- }
892
- // Inject subset font name before original webfont in CSS
893
- const cssAssets = assetGraph.findAssets({
894
- type: 'Css',
895
- isLoaded: true,
896
- });
897
- const parseTreeToAsset = new Map();
898
- for (const cssAsset of cssAssets) {
899
- parseTreeToAsset.set(cssAsset.parseTree, cssAsset);
900
- }
901
- for (const cssAsset of cssAssets) {
902
- let changesMade = false;
903
- cssAsset.eachRuleInParseTree((cssRule) => {
904
- if (cssRule.parent.type !== 'rule' || cssRule.type !== 'decl')
905
- return;
906
- const propName = cssRule.prop.toLowerCase();
907
- if ((propName === 'font' || propName === 'font-family') &&
908
- cssRule.value.includes('var(')) {
909
- if (!customPropertyDefinitions) {
910
- customPropertyDefinitions = findCustomPropertyDefinitions(cssAssets);
911
- }
912
- for (const customPropertyName of extractReferencedCustomPropertyNames(cssRule.value)) {
913
- for (const relatedCssRule of [
914
- cssRule,
915
- ...(customPropertyDefinitions[customPropertyName] || []),
916
- ]) {
917
- const modifiedValue = injectSubsetDefinitions(relatedCssRule.value, webfontNameMap, omitFallbacks // replaceOriginal
918
- );
919
- if (modifiedValue !== relatedCssRule.value) {
920
- relatedCssRule.value = modifiedValue;
921
- const ownerAsset = parseTreeToAsset.get(relatedCssRule.root());
922
- if (ownerAsset) {
923
- cssAssetsDirtiedByCustomProps.add(ownerAsset);
924
- }
925
- }
926
- }
927
- }
928
- }
929
- else if (propName === 'font-family') {
930
- const fontFamilies = cssListHelpers.splitByCommas(cssRule.value);
931
- for (let i = 0; i < fontFamilies.length; i += 1) {
932
- const subsetFontFamily = webfontNameMap[cssFontParser.parseFontFamily(fontFamilies[i])[0].toLowerCase()];
933
- if (subsetFontFamily && !fontFamilies.includes(subsetFontFamily)) {
934
- fontFamilies.splice(i, omitFallbacks ? 1 : 0, (0, fontFaceHelpers_1.maybeCssQuote)(subsetFontFamily));
935
- i += 1;
936
- cssRule.value = fontFamilies.join(', ');
937
- changesMade = true;
938
- }
939
- }
940
- }
941
- else if (propName === 'font') {
942
- const fontProperties = cssFontParser.parseFont(cssRule.value);
943
- const fontFamilies = fontProperties && fontProperties['font-family'].map(unquote);
944
- if (!fontFamilies)
945
- return;
946
- const subsetFontFamily = webfontNameMap[fontFamilies[0].toLowerCase()];
947
- if (!subsetFontFamily || fontFamilies.includes(subsetFontFamily))
948
- return;
949
- // Rebuild the font shorthand with the subset family prepended
950
- if (omitFallbacks) {
951
- fontFamilies.shift();
952
- }
953
- fontFamilies.unshift(subsetFontFamily);
954
- const stylePrefix = fontProperties['font-style']
955
- ? `${fontProperties['font-style']} `
956
- : '';
957
- const weightPrefix = fontProperties['font-weight']
958
- ? `${fontProperties['font-weight']} `
959
- : '';
960
- const lineHeightSuffix = fontProperties['line-height']
961
- ? `/${fontProperties['line-height']}`
962
- : '';
963
- cssRule.value = `${stylePrefix}${weightPrefix}${fontProperties['font-size']}${lineHeightSuffix} ${fontFamilies.map(fontFaceHelpers_1.maybeCssQuote).join(', ')}`;
964
- changesMade = true;
965
- }
966
- });
967
- if (changesMade) {
968
- cssAsset.markDirty();
969
- }
970
- }
971
- for (const dirtiedAsset of cssAssetsDirtiedByCustomProps) {
972
- dirtiedAsset.markDirty();
973
- }
965
+ injectSubsetFontFamilies(assetGraph, htmlOrSvgAssetTextsWithProps, omitFallbacks);
974
966
  timings['inject subset font-family'] = injectPhase.end();
975
967
  const orphanCleanupPhase = trackPhase('source maps + orphan cleanup');
976
968
  if (sourceMaps) {
@@ -1 +1 @@
1
- {"version":3,"file":"subsetFonts.js","sourceRoot":"","sources":["../src/subsetFonts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AACrC,uDAAyC;AASzC,2CAAqD;AACrD,4DAA6D;AAE7D,iFAAkF;AAClF,+FAAgG;AAChG,qEAAsE;AACtE,yCAA8C;AAC9C,+DAAiD;AACjD,iEAAmD;AACnD,qCAAsC;AACtC,2EAA4E;AAC5E,+CAAgD;AAChD,6CAA8C;AAC9C,2DAA4D;AAE5D,iEAAkE;AAClE,uDAU2B;AAC3B,mDAAwD;AACxD,yDAA4D;AAC5D,+DAAgE;AAChE,mEAAoE;AAEpE,MAAM,sBAAsB,GAAG,8CAA8C,CAAC;AAY9E,SAAS,UAAU,CAAC,KAAY,EAAE,UAAsB;IACtD,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAS,CAAC;IACpC,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,CAAC,SAAS,KAAK,CAAC,KAAY;QAC1B,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEtB,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACvD,IAAI,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEV,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAC1B,4BAAkD;IAElD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,4BAA4B,EAAE,CAAC;QAChD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,EAAE,CAAC,OAAO;gBAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAED,SAAS,kCAAkC,CACzC,cAAqB,EACrB,gBAA0B,EAC1B,QAAgB;IAEhB,oCAAoC;IACpC,oCAAoC;IACpC,MAAM,IAAI,GAAG,qBAAqB,CAChC,cAAc,CAAC,UAAU,CAAC,SAAS,CACjC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EACvB,cAAc,CAAC,GAAG,EAClB,EAAE,QAAQ,EAAE,CACb,CACF,CAAC;IACF,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK;QAC5C,CAAC,CAAC,eAAe,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI;QAClE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,uBAAuB,GAAG,cAAc,CAAC,WAAW,CACxD;QACE,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,QAAQ;QAClB,EAAE,EAAE;YACF,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE;;;yBAGW,IAAI;;cAEf,eAAe;;;SAGpB;SACF;KACF,EACD,YAAY,CACb,CAAC;IAEF,8CAA8C;IAC9C,MAAM,wBAAwB,GAAG,cAAc,CAAC,WAAW,CACzD;QACE,IAAI,EAAE,cAAc;QACpB,EAAE,EAAE;YACF,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,EAAE;SACT;KACF,EACD,YAAY,CACb,CAAC;IAEF,wBAAwB,CAAC,EAAE,CAAC,WAAW,CACrC;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,gBAAgB,CAAC,KAAK;QAC7B,EAAE,EAAE,gBAAgB,CAAC,EAAE;QACvB,QAAQ;KACT,EACD,MAAM,CACP,CAAC;IAEF,wBAAwB,CAAC,MAAM,EAAE,CAAC;IAClC,uBAAuB,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACpC,cAAc,CAAC,SAAS,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,iBAAiB,GAA2B;IAChD,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,QAAQ;CAChB,CAAC;AAEF,KAAK,UAAU,mCAAmC,CAChD,UAAsB,EACtB,mBAA0B,EAC1B,OAAiB,EACjB,QAAgB,EAChB,SAAiB;IAEjB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,aAAa,CAAC;QACpD,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,gBAAgB;KACvB,CAAC,EAAE,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,mBAAmB,GAAG,cAAc,CAAC,IAAI,CAAC;QAChD,mBAAmB,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAChD,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,KAAK,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,CAAC;QACH,qCAAqC;QACrC,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACrB,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CACrD,CACF,CAAC;QACF,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAC/B,SAAS,EACT,GAAG,cAAc,CAAC,EAAE,CAAC,QAAQ,IAAI,IAAA,+BAAa,EAAC,MAAM,CAAC,GACpD,iBAAiB,CAAC,MAAM,CAC1B,EAAE,CACH,CAAC;YACF,MAAM,SAAS,GACb,UAAU,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBACjC,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC;oBACzB,GAAG;oBACH,MAAM;iBACP,CAAC,CAAC,CAAC;YACN,YAAY,CAAC,IAAI,CACf,OAAO,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE;gBACpD,QAAQ;aACT,CAAC,aAAa,MAAM,IAAI,CAC1B,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,UAAU,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjD,KAAK,CAAC,IAAI,CACR,oBAAoB,YAAY,CAC9B,CAAC,MAAM,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAC3D,GAAG,CACL,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC;QACxC,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,UAAU,CAAC,UAAU,CACxB,SAAS,EACT,YAAY,IAAA,+BAAa,EAAC,IAAI,CAAC,MAAM,CACtC;QACD,IAAI;KACL,CAAC,CAAC;IACH,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,sBAAsB,GAAG;IAC7B,MAAM;IACN,OAAO;IACP,MAAM;IACN,UAAU;IACV,UAAU;CACX,CAAC;AAeF,yEAAyE;AACzE,4EAA4E;AAC5E,KAAK,UAAU,yBAAyB,CAAC,EACvC,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,SAAS,EACT,uBAAuB,EACvB,QAAQ,EACR,mBAAmB,GACW;IAC9B,IAAI,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACtD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QAC7B,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,GAAG,SAAS,iBAAiB;QAClC,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;IAEH,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;IAExB,KAAK,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,QAAQ,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;QACrE,MAAM,SAAS,GAAG,YAAY,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YACxB,2DAA2D;YAC3D,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACjC,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACtC,IACE,OAAO,CAAC,MAAM,KAAK,CAAC;YACpB,SAAS;YACT,SAAS,CAAC,OAAO;YACjB,CAAC,CAAC,SAAS,IAAI,QAAQ,KAAK,CAAC,CAAC;YAC9B,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,EAC9C,CAAC;YACD,iLAAiL;YACjL,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAEjE,MAAM,SAAS,GAAG,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,CAAC;aAC3D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAC5D;aACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAe,CAAC,CAAC;QAExC,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC;aACpC,KAAK,CAAC,KAAK,CAAC;aACZ,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,0BAA0B,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;aACxE,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,MAAM,cAAc,GAAG,GAAG,OAAO,CAC/B,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/C;aACE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;aACxB,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,IAAI,kBAAkB,GACpD,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EACpC,EAAE,CAAC;QAEH,MAAM,YAAY,GAAG,GAAG,cAAc,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAC9D,CAAC,EACD,EAAE,CACH,IAAI,SAAS,EAAE,CAAC;QAEjB,6FAA6F;QAC7F,2DAA2D;QAC3D,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,SAAS,GAAG,YAAY,CAAC;YAC9C,MAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,CAAC;gBAC9C,GAAG,EAAE,YAAY;aAClB,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,IAAI,iBAAiB,EAAE,CAAC;gBACtB,YAAY,CAAC,EAAE,GAAG,iBAAiB,CAAC;gBACpC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,GAAG,GAAG,SAAS,GAAG,YAAY,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACnC,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,SAAS,SAAS,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;IAC5E,MAAM,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,gBAAgB,EAAE,CAAC;QACrB,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACjC,QAAQ,GAAG,gBAAgB,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,GAAG,GAAG,WAAW,CAAC;IAC7B,CAAC;IACD,mBAAmB,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACjD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAWD,sEAAsE;AACtE,yEAAyE;AACzE,SAAS,qBAAqB,CAAC,EAC7B,QAAQ,EACR,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,EACR,cAAc,GACY;IAC1B,IAAI,cAAc,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,cAAc,CAAC;IAE1D,kEAAkE;IAClE,wCAAwC;IACxC,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QACtD,IAAI,YAAY,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAEjD,MAAM,SAAS,GAAG,YAAY,CAAC,EAAE,CAAC;QAClC,IACE,SAAS,CAAC,WAAW,KAAK,YAAY;YACtC,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAC1C,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAC9C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CACtC,CAAC;QACF,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CACjE,WAAW,EACX,EAAE,CACH,CAAC;QACF,IACE,CAAC,UAAU,CAAC,IAAI,CACd,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC,OAAO,CACtE,EACD,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,eAAe,GAAG,cAAc,CAAC,WAAW,CAChD;YACE,IAAI,EAAE,iBAAiB;YACvB,QAAQ;YACR,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,MAAM;SACX,EACD,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,EACzC,cAAc,CACf,CAAC;QACF,cAAc,GAAG,cAAc,IAAI,eAAe,CAAC;IACrD,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,qEAAqE;AACrE,wEAAwE;AACxE,uEAAuE;AACvE,+BAA+B;AAC/B,KAAK,UAAU,4BAA4B,CACzC,UAAsB;IAEtB,MAAM,cAAc,GAClB,UAAU,CAAC,aAAa,CAAC;QACvB,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE;KAChD,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAChB,IAAI,CAAC,cAAc;QAAE,OAAO,KAAK,CAAC;IAElC,MAAM,UAAU,CAAC,QAAQ,CAAC;QACxB,eAAe,EAAE;YACf,GAAG,EAAE;gBACH,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE,EAAE;gBACnD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE;iBAClD;aACF;SACF;KACF,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uEAAuE;AACvE,yEAAyE;AACzE,4DAA4D;AAC5D,SAAS,2BAA2B,CAClC,eAAwB,EACxB,oCAGC,EACD,yBAAqC;IAErC,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;QAC7C,MAAM,+BAA+B,GACnC,oCAAoC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,+BAA+B;YAAE,SAAS;QAC/C,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,+BAA+B,EAAE,CAAC;YAC5D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC3C,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC7B,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtD,CAAC;gBACD,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;QACD,cAAc,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,6EAA6E;AAC7E,2EAA2E;AAC3E,KAAK,UAAU,oBAAoB,CACjC,UAAsB,EACtB,QAAgB;IAEhB,MAAM,UAAU,CAAC,mBAAmB,CAAC,SAAS,EAAE;QAC9C,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE;YACjB,MAAM,EAAE,CAAC,SAAqB,EAAE,EAAE,CAChC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,qBAAqB,CAAC;SACxE;KACF,CAAC,CAAC;IACH,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,EAAE,iBAAiB;KACxB,CAAC,EAAE,CAAC;QACH,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC/B,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE;KAC1C,CAAC,EAAE,CAAC;QACH,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,0EAA0E;AAC1E,qDAAqD;AACrD,SAAS,oBAAoB,CAC3B,UAAsB,EACtB,yBAAqC;IAErC,KAAK,MAAM,KAAK,IAAI,yBAAyB,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,yEAAyE;AACzE,8CAA8C;AAC9C,SAAS,mBAAmB,CAC1B,4BAAkD;IAElD,OAAO,4BAA4B,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3E,aAAa,EAAE,cAAc,CAAC,iBAAiB,CAAC,gBAAgB;QAChE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACvC,CAAC,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CACvE,SAAS,CACV,CACF;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AA8BD,KAAK,UAAU,WAAW,CACxB,UAAsB,EACtB,EACE,OAAO,GAAG,CAAC,OAAO,CAAC,EACnB,UAAU,GAAG,UAAU,EACvB,aAAa,GAAG,KAAK,EACrB,SAAS,GAAG,KAAK,EACjB,WAAW,EACX,QAAQ,GAAG,cAAc,EACzB,QAAQ,EACR,OAAO,EACP,OAAO,GAAG,MAAM,CAAC,OAAO,EACxB,IAAI,EACJ,UAAU,GAAG,KAAK,EAClB,KAAK,GAAG,KAAK,EACb,WAAW,EACX,UAAU,GAAG,EAAE,EACf,QAAQ,GAAG,IAAI,MACO,EAAE;IAE1B,IAAI,WAAW,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACjE,WAAW,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,8DAA8D;IAC9D,oEAAoE;IACpE,gEAAgE;IAChE,oBAAoB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1C,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CACV,uDAAuD,EACvD,GAAG,CACJ,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,QAAQ,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;IAE7E,MAAM,OAAO,GAAuB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,IAAA,2BAAgB,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAEpD,MAAM,oBAAoB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC3D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,UAAU,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,CAAC,eAAe,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC;IAErD,MAAM,mBAAmB,GAAG,UAAU,CAAC,yBAAyB,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,MAAM,4BAA4B,CAAC,UAAU,CAAC,CAAC;IACtE,OAAO,CAAC,yBAAyB,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAC1D,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC,CACzD,CAAC;IAEF,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC;QAC5C,GAAG,EAAE;YACH;gBACE,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,KAAK;aACZ;SACF;KACF,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,UAAU,CAC7B,uBAAuB,eAAe,CAAC,MAAM,SAAS,CACvD,CAAC;IACF,MAAM,EACJ,4BAA4B,EAC5B,oCAAoC,EACpC,UAAU,GACX,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,eAAe,EAAE;QACxD,IAAI;QACJ,OAAO;QACP,OAAO;QACP,KAAK;QACL,WAAW;QACX,UAAU;KACX,CAAC,CAAC;IACH,OAAO,CAAC,kBAAkB,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC;IAChD,OAAO,CAAC,yBAAyB,GAAG,UAAU,CAAC;IAE/C,MAAM,kBAAkB,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAC;IAClE,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAS,CAAC;IACnD,IAAI,aAAa,EAAE,CAAC;QAClB,2BAA2B,CACzB,eAAe,EACf,oCAAoC,EACpC,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,0BAA0B,CAAC,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC;IAE/D,MAAM,cAAc,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAE1D,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,2BAA2B,IAAI,4BAAoD,EAAE,CAAC;YAC/F,KAAK,MAAM,SAAS,IAAI,2BAA2B,CAAC,UAAU,EAAE,CAAC;gBAC/D,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,+DAA+D;IAC/D,6EAA6E;IAC7E,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAiB,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,IAAI,KAAK,CAAC,GAAG;YAAE,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAiB,CAAC;IACzD,KAAK,MAAM,2BAA2B,IAAI,4BAAoD,EAAE,CAAC;QAC/F,KAAK,MAAM,SAAS,IAAI,2BAA2B,CAAC,UAAU,EAAE,CAAC;YAC/D,IACE,SAAS,CAAC,OAAO;gBACjB,CAAC,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,EAC/C,CAAC;gBACD,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC9D,IAAI,YAAY,EAAE,CAAC;oBACjB,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAMD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA6B,CAAC;IAC9D,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,uBAAuB,EAAE,CAAC;QAC3D,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACvB,gBAAgB,CAAC,GAAG,CAClB,OAAO;YACP,gDAAgD;YAChD,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,MAAe,EAAE,EAAE;gBACtD,UAAU,CAAC,IAAI,CAAC,IAAA,4BAAmB,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;gBACxD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,gBAAgB,CAAC,CAAC,GAAG,CACvB,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,OAAO,CAAuB,CACrE,CACF,CACF,CAAC;IAEF,iEAAiE;IACjE,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAOtC,CAAC;IACJ,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoB,CAAC;IACpD,KAAK,MAAM,2BAA2B,IAAI,4BAAoD,EAAE,CAAC;QAC/F,KAAK,MAAM,SAAS,IAAI,2BAA2B,CAAC,UAAU,EAAE,CAAC;YAC/D,IAAI,MAAM,GAAG,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO;oBAChC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;oBACxC,CAAC,CAAC,SAAS,CAAC;gBACd,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,kBAAkB,GAAa,QAAQ,CAAC,YAAY,CAAC;oBAC3D,MAAM,cAAc,GAAG,IAAA,+BAAa,EAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBACrD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC;oBAClD,MAAM,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;oBAC/C,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;oBACvC,MAAM,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CACjC,CAAC;gBACJ,CAAC;gBACD,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,yDAAyD;gBACzD,qDAAqD;gBACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC1C,IAAI,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,cAAc,GAAG,IAAA,+BAAa,EAAC,QAAQ,CAAC,CAAC;oBACzC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAChD,CAAC;gBACD,SAAS,CAAC,UAAU,GAAG;oBACrB,QAAQ,EAAE,MAAM,CAAC,kBAAkB;oBACnC,IAAI,EAAE,MAAM,CAAC,cAAc,IAAI,EAAE;oBACjC,MAAM,EAAE,MAAM,CAAC,gBAAgB,IAAI,EAAE;oBACrC,IAAI,EAAE,cAAc;iBACrB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,UAAU,GAAG;oBACrB,QAAQ,EAAE,EAAE;oBACZ,IAAI,EAAE,EAAE;oBACR,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,EAAE;iBACT,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,sBAAsB,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;IAEvD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,QAAQ,EAAG,4BAAqD,CAAC,GAAG,CAClE,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,aAAa,EAAE,cAAc,CAAC,iBAAiB,CAAC,gBAAgB;gBAChE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACvC,CAAC,CAAC,EAAE,sBAAsB,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAC9D,SAAS,CACV,CACF;aACF,CAAC,CACH;YACD,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAC1D,MAAM,EAAE,kCAAkC,EAAE,GAAG,IAAA,qCAAqB,EAClE,4BAA4B,EAC5B,sCAAoB,EACpB,uCAAqB,CACtB,CAAC;IACF,OAAO,CAAC,sBAAsB,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;IAEvD,oBAAoB;IACpB,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,cAAc,GAAG,mBAAmB,CAAC,4BAA4B,CAAC,CAAC;QACzE,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CACT,gBAAgB,cAAc,oBAAoB,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CACvF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAC;IACzD,MAAM,IAAA,yCAAsB,EAC1B,UAAU,EACV,4BAA4B,EAC5B,OAAO,EACP,kCAAkC,EAClC,QAAQ,EACR,OAAO,EACP,KAAK,CACN,CAAC;IACF,OAAO,CAAC,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEnD,MAAM,eAAe,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAC7D,MAAM,sBAAsB,CAAC,4BAA4B,EAAE,UAAU,CAAC,CAAC;IACvE,OAAO,CAAC,sBAAsB,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;IAEvD,kBAAkB;IAElB,iEAAiE;IACjE,8EAA8E;IAC9E,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAClD,MAAM,KAAK,GAAG,4BAAoD,CAAC;IACnE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,OAAO;gBAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,uBAAuB,CAAC,IAAI,KAAK,CAAC;gBAAE,MAAM;YAC9C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;YACvC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;gBACrC,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,OAAO;oBAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,uBAAuB,EAAE,CAAC;gBAC9C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/B,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,sEAAsE;IACtE,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAiB,CAAC;IAErD,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,0EAA0E;IAC1E,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAGnC,CAAC;IAEJ,qEAAqE;IACrE,qEAAqE;IACrE,sEAAsE;IACtE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAqB,CAAC;IACtD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAqB,CAAC;IACzD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAqB,CAAC;IACxD,MAAM,cAAc,GAA2C;QAC7D,SAAS,EAAE,gBAAgB;QAC3B,QAAQ,EAAE,gBAAgB;QAC1B,YAAY,EAAE,mBAAmB;QACjC,gBAAgB,EAAE,kBAAkB;QACpC,eAAe,EAAE,kBAAkB;KACpC,CAAC;IACF,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;KAC3C,CAAC,EAAE,CAAC;QACH,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1C,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAC5B,wBAAwB,4BAA4B,CAAC,MAAM,SAAS,CACrE,CAAC;IACF,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,KAAK,MAAM,EACT,cAAc,EACd,UAAU,EACV,+BAA+B,GAChC,IAAI,4BAA4B,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC7D,IAAI,cAAc,GAAyB,SAAS,CAAC,CAAC,CAAC,CAAC;QAExD,wEAAwE;QACxE,8DAA8D;QAC9D,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACtD,KAAK,MAAM,YAAY,IAAI,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC;gBAChE,EAAE,EAAE,CAAC;gBACL,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBACtE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,cAAc,GAAG,YAAY,CAAC;oBAC9B,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CACxC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CACjC,CAAC;QACF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACtD,MAAM,qBAAqB,GAAG,UAAU,CAAC,MAAM,CAC7C,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CACnD,CAAC;QAEF,yEAAyE;QACzE,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CACnC,CAAC;QACF,KAAK,MAAM,QAAQ,IAAI,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC;gBAAE,SAAS;YAE7D,IAAI,QAAQ,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACzC,MAAM,GAAG,GAAG,IAAI,KAAK,CACnB,YAAY,QAAQ,CAAC,IAAI,CAAC,SAAS,mJAAmJ,CACpK,CAAC;gBACrB,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC1B,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;YACD,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,CAAC;QAED,MAAM,8BAA8B,GAAG,qBAAqB,CAAC,MAAM,CACjE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CACjC,CAAC;QAEF,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,8BAA8B;YAC9B,KAAK,MAAM,SAAS,IAAI,8BAA8B,EAAE,CAAC;gBACvD,2FAA2F;gBAC3F,MAAM,eAAe,GAAa,cAAc,CAAC,WAAW,CAC1D;oBACE,IAAI,EAAE,iBAAiB;oBACvB,QAAQ;oBACR,EAAE,EAAE,SAAS,CAAC,OAAO;oBACrB,EAAE,EAAE,MAAM;iBACX,EACD,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,EACzC,cAAc,CACf,CAAC;gBACF,cAAc,GAAG,cAAc,IAAI,eAAe,CAAC;YACrD,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,SAAS;QACX,CAAC;QACD,uBAAuB,IAAI,gBAAgB,CAAC,MAAM,CAAC;QAEnD,IAAI,YAAY,GAAG,kBAAkB,CAAC,GAAG,CACvC,+BAAyC,CAC1C,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,YAAY,GAAG;gBACb,MAAM,EAAE,IAAA,wCAAsB,EAAC,gBAAgB,CAAC;gBAChD,MAAM,EAAE,IAAA,6CAA2B,EACjC,UAAU,EACV,+BAA+B,CAChC;aACF,CAAC;YACF,kBAAkB,CAAC,GAAG,CACpB,+BAAyC,EACzC,YAAY,CACb,CAAC;QACJ,CAAC;QACD,IAAI,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC;QACxC,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;QAC9C,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;YACjC,yHAAyH;YACzH,aAAa,IAAI,iBAAiB,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC;YAC/C,UAAU;YACV,aAAa;YACb,gBAAgB;YAChB,OAAO;YACP,SAAS;YACT,QAAQ;YACR,SAAS;YACT,uBAAuB;YACvB,QAAQ,EAAE,4BAA4B,CAAC,MAAM;YAC7C,mBAAmB;SACpB,CAAC,CAAC;QAEH,cAAc,GAAG,qBAAqB,CAAC;YACrC,QAAQ;YACR,UAAU;YACV,cAAc;YACd,SAAS;YACT,QAAQ;YACR,cAAc;SACf,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAC5C;YACE,IAAI,EAAE,GAAG,cAAc,CAAC,IAAI,OAAO;YACnC,QAAQ,EACN,SAAS,IAAI,cAAc,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YAClE,EAAE,EAAE,QAAQ;SACb,EACD,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,EACzC,cAAc,CACf,CAAC;QACF,cAAc,GAAG,cAAc,IAAI,WAAW,CAAC;QAE/C,IAAI,CAAC,aAAa,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAAC;YACrD,sIAAsI;YACtI,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,CACzC;gBACE,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE;oBACF,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,iBAAiB;iBACxB;aACF,EACD,OAAO,EACP,WAAW,CACZ,CAAC,EAAE,CAAC;YACL,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAClD,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,qBAAqB,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEnD,IAAI,uBAAuB,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,iBAAiB,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAY,CAAC;IAE9C,6FAA6F;IAC7F,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAY,CAAC;IAC9C,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAiB,CAAC;IACvD,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;QAC7C,MAAM,+BAA+B,GACnC,oCAAoC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,+BAA+B;YAAE,SAAS;QAC/C,MAAM,gCAAgC,GAAG,IAAI,GAAG,EAA2B,CAAC;QAC5E,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,+BAA+B,EAAE,CAAC;YAC5D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IACG,QAAQ,CAAC,IAAsC,CAAC,QAAQ;oBACvD,sBAAsB,IAAI,4CAA4C;oBACxE,gCAAgC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EACnD,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAChC,gCAAgC,CAAC,GAAG,CAClC,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CACpC,CAAC,aAAuB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAClE,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IACE,gCAAgC,CAAC,IAAI,KAAK,CAAC;YAC3C,aAAa;YACb,cAAc,CAAC,IAAI,KAAK,MAAM,EAC9B,CAAC;YACD,SAAS;QACX,CAAC;QAED,kEAAkE;QAClE,iEAAiE;QACjE,8DAA8D;QAC9D,mCAAmC;QACnC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,gCAAgC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3D,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,QAAQ,GAA4B,IAAI,CAAC,MAAM,CAAC;YACpD,OAAO,QAAQ,EAAE,CAAC;gBAChB,IACE,QAAQ,CAAC,IAAI,KAAK,QAAQ;oBAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,OAAO,EACxC,CAAC;oBACD,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;oBACjC,MAAM;gBACR,CAAC;gBACD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAChE,YAAY;iBACT,GAAG,CAAC,QAAQ,CAAE;iBACd,IAAI,CACH,IAAA,4CAA0B,EACxB,IAAI,EACJ,gCAAgC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CACjD,CACF,CAAC;QACN,CAAC;QACD,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC;YAC1C,IAAI,KAAK,EAAE,CAAC;gBACV,eAAe,IAAI,UAAU,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,eAAe,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;gBAC7B,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,eAAe;aACtB,CAAC,CAAC;YACH,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAClD,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC/B,CAAC;YACD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,QAAQ,CAAC,GAAG,GAAG,GAAG,SAAS,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;YAC1E,qBAAqB,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QAED,wHAAwH;QACxH,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC;YACnD,IAAI,EAAE,WAAW;YACjB,EAAE,EAAE,QAAQ;SACb,CAAC,CAAC;QAEH,kCAAkC,CAChC,cAAc,EACd,iBAAiB,EACjB,QAAQ,CACT,CAAC;QACF,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,wBAAwB,CAAC,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC;IAE5D,MAAM,mBAAmB,GAAG,UAAU,CAAC,4BAA4B,CAAC,CAAC;IAErE,mFAAmF;IACnF,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAS,CAAC;IAC7C,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC/B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC;QACD,QAAQ,CAAC,MAAM,EAAE,CAAC;QAClB,QAAQ,CAAC,SAAS,EAAE,CAAC;QACrB,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;QAC3C,IAAI,IAAA,iCAAe,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,gBAAgB,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC1D,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC5B,CAAC;YACD,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,4BAA4B,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC;IAElE,MAAM,kBAAkB,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAEhE,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,qBAAqB,GAAY,cAAc;QACnD,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;YACpB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE;SACxC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC1D,KAAK,MAAM,oBAAoB,IAAI,qBAAqB,EAAE,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAS,CAAC,CAAC,mDAAmD;QACvF,KAAK,MAAM,4BAA4B,IAAI,oBAAoB,CAAC,iBAAiB,EAAE,CAAC;YAClF,IAAI,WAAoB,CAAC;YAEzB,IAAI,4BAA4B,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACtD,6EAA6E;gBAC7E,WAAW,GAAG,UAAU,CAAC,4BAA4B,CAAC,EAAE,EAAE;oBACxD,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;oBAC9B,QAAQ,EAAE,KAAK;oBACf,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAC;YACL,CAAC;iBAAM,IACL,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EACtE,CAAC;gBACD,WAAW,GAAG,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,EAAE,CAAC;YACnB,CAAC;YACD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,IAAI,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,SAAS;gBACxC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC1B,iBAAiB,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAEpD,IAAI,aAAa;oBAAE,SAAS;gBAE5B,IAAI,6BAA6B,GAAG,wBAAwB,CAAC,GAAG,CAC9D,4BAA4B,CAAC,EAAE,CAAC,GAAG,CACpC,CAAC;gBACF,IAAI,CAAC,6BAA6B,EAAE,CAAC;oBACnC,6BAA6B;wBAC3B,MAAM,mCAAmC,CACvC,UAAU,EACV,4BAA4B,CAAC,EAAE,EAC/B,OAAO,EACP,QAAQ,EACR,SAAS,CACV,CAAC;oBACJ,MAAM,6BAA6B,CAAC,MAAM,EAAE,CAAC;oBAC7C,wBAAwB,CAAC,GAAG,CAC1B,4BAA4B,CAAC,EAAE,CAAC,GAAG,EACnC,6BAA6B,CAC9B,CAAC;gBACJ,CAAC;gBACD,MAAM,0BAA0B,GAAG,UAAU,CAAC,WAAW,CACvD;oBACE,IAAI,EAAE,GAAG,UAAU,CAAC,IAAI,OAAO;oBAC/B,EAAE,EAAE,6BAA6B;oBACjC,QAAQ;iBACT,EACD,YAAY,CACb,CAAC;gBACF,iBAAiB,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBAClD,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC/B,kCAAkC,CAChC,UAAU,EACV,0BAA0B,EAC1B,QAAQ,CACT,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,oBAAoB,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAED,mIAAmI;IACnI,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,wBAAwB,CAAC,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC;IAE7D,MAAM,WAAW,GAAG,UAAU,CAAC,wCAAwC,CAAC,CAAC;IAEzE,8BAA8B;IAE9B,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE3C,KAAK,MAAM,EAAE,UAAU,EAAE,IAAI,4BAA4B,EAAE,CAAC;QAC1D,KAAK,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,UAAU,EAAE,CAAC;YAC1D,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;oBACtC,cAAc,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;wBACtC,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,yBAES,CAAC;IACd,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAS,CAAC;IACvD,gFAAgF;IAChF,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,SAAS;QACjC,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,IAAI,CAC9B,QAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,eAAe,CAAC,CACrD,EAAE,CAAC;YACF,MAAM,YAAY,GAAG,cAAc,CAAC,aAAa,CAC/C,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CACpC,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChD,MAAM,gBAAgB,GACpB,cAAc,CACZ,aAAa,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAChE,CAAC;gBACJ,IAAI,gBAAgB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACjE,YAAY,CAAC,MAAM,CACjB,CAAC,EACD,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrB,IAAA,+BAAa,EAAC,gBAAgB,CAAC,CAChC,CAAC;oBACF,CAAC,IAAI,CAAC,CAAC;oBACP,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC7D,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC;QACtC,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA6B,CAAC;IAC9D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,QAAQ,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE;YACvC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO;YAEtE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,IACE,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,aAAa,CAAC;gBACnD,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC9B,CAAC;gBACD,IAAI,CAAC,yBAAyB,EAAE,CAAC;oBAC/B,yBAAyB,GAAG,6BAA6B,CAAC,SAAS,CAAC,CAAC;gBACvE,CAAC;gBACD,KAAK,MAAM,kBAAkB,IAAI,oCAAoC,CACnE,OAAO,CAAC,KAAK,CACd,EAAE,CAAC;oBACF,KAAK,MAAM,cAAc,IAAI;wBAC3B,OAAO;wBACP,GAAG,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;qBACzD,EAAE,CAAC;wBACF,MAAM,aAAa,GAAG,uBAAuB,CAC3C,cAAc,CAAC,KAAK,EACpB,cAAc,EACd,aAAa,CAAC,kBAAkB;yBACjC,CAAC;wBACF,IAAI,aAAa,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;4BAC3C,cAAc,CAAC,KAAK,GAAG,aAAa,CAAC;4BACrC,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC/D,IAAI,UAAU,EAAE,CAAC;gCACf,6BAA6B,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;4BAChD,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gBACtC,MAAM,YAAY,GAAG,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChD,MAAM,gBAAgB,GACpB,cAAc,CACZ,aAAa,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAChE,CAAC;oBACJ,IAAI,gBAAgB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBACjE,YAAY,CAAC,MAAM,CACjB,CAAC,EACD,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrB,IAAA,+BAAa,EAAC,gBAAgB,CAAC,CAChC,CAAC;wBACF,CAAC,IAAI,CAAC,CAAC;wBACP,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACxC,WAAW,GAAG,IAAI,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9D,MAAM,YAAY,GAChB,cAAc,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/D,IAAI,CAAC,YAAY;oBAAE,OAAO;gBAE1B,MAAM,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBACvE,IAAI,CAAC,gBAAgB,IAAI,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBAC9D,OAAO;gBAET,8DAA8D;gBAC9D,IAAI,aAAa,EAAE,CAAC;oBAClB,YAAY,CAAC,KAAK,EAAE,CAAC;gBACvB,CAAC;gBACD,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBACvC,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC;oBAC9C,CAAC,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG;oBACpC,CAAC,CAAC,EAAE,CAAC;gBACP,MAAM,YAAY,GAAG,cAAc,CAAC,aAAa,CAAC;oBAChD,CAAC,CAAC,GAAG,cAAc,CAAC,aAAa,CAAC,GAAG;oBACrC,CAAC,CAAC,EAAE,CAAC;gBACP,MAAM,gBAAgB,GAAG,cAAc,CAAC,aAAa,CAAC;oBACpD,CAAC,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,EAAE;oBACrC,CAAC,CAAC,EAAE,CAAC;gBACP,OAAO,CAAC,KAAK,GAAG,GAAG,WAAW,GAAG,YAAY,GAC3C,cAAc,CAAC,WAAW,CAC5B,GAAG,gBAAgB,IAAI,YAAY,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpE,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,6BAA6B,EAAE,CAAC;QACzD,YAAY,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,CAAC,2BAA2B,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEzD,MAAM,kBAAkB,GAAG,UAAU,CAAC,8BAA8B,CAAC,CAAC;IACtE,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,oBAAoB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,oBAAoB,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;IAC5D,OAAO,CAAC,8BAA8B,CAAC,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC;IAEnE,OAAO;QACL,QAAQ,EAAE,mBAAmB,CAAC,4BAA4B,CAAC;QAC3D,OAAO;KACR,CAAC;AACJ,CAAC;AAED,iBAAS,WAAW,CAAC"}
1
+ {"version":3,"file":"subsetFonts.js","sourceRoot":"","sources":["../src/subsetFonts.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ type FontBuffer = Buffer | Uint8Array;
4
4
  interface AssetTextWithProps {
5
5
  fontUsages: FontUsage[];
6
6
  }
7
- type ExtraSubsetCacheOptions = Record<string, boolean | string[]>;
7
+ type ExtraSubsetCacheOptions = Record<string, boolean | string[] | undefined>;
8
8
  declare function subsetCacheKey(fontBuffer: FontBuffer, text: string, targetFormat: string, variationAxes: VariationAxes, featureGlyphIds: number[] | undefined, extraOptions?: ExtraSubsetCacheOptions | undefined): string;
9
9
  declare class SubsetDiskCache {
10
10
  private _cacheDir;
@@ -1 +1 @@
1
- {"version":3,"file":"subsetGeneration.d.ts","sourceRoot":"","sources":["../src/subsetGeneration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAe/D,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtC,UAAU,kBAAkB;IAC1B,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AAwBD,KAAK,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;AAElE,iBAAS,cAAc,CACrB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,EACrC,YAAY,GAAE,uBAAuB,GAAG,SAAqB,GAC5D,MAAM,CAWR;AAED,cAAM,eAAe;IACnB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,YAAY,CAAU;gBAElB,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS;YAOnD,UAAU;IAkBlB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS7C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA0BtD;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,aAAa,GAAG,IAAW,GACzC,MAAM,CAOR;AAED,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,UAAU,EACtB,4BAA4B,EAAE,kBAAkB,EAAE,EAClD,OAAO,EAAE,MAAM,EAAE,EACjB,kCAAkC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EACzE,QAAQ,GAAE,MAAM,GAAG,IAAW,EAC9B,OAAO,GAAE,OAAO,GAAG,IAAW,EAC9B,KAAK,UAAQ,GACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAkQ7B;AAGD,OAAO,EACL,cAAc,IAAI,eAAe,EACjC,eAAe,IAAI,gBAAgB,GACpC,CAAC"}
1
+ {"version":3,"file":"subsetGeneration.d.ts","sourceRoot":"","sources":["../src/subsetGeneration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAe/D,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtC,UAAU,kBAAkB;IAC1B,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AA2BD,KAAK,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;AAE9E,iBAAS,cAAc,CACrB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,EACrC,YAAY,GAAE,uBAAuB,GAAG,SAAqB,GAC5D,MAAM,CAWR;AAED,cAAM,eAAe;IACnB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,YAAY,CAAU;gBAElB,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS;YAOnD,UAAU;IAkBlB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS7C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA0BtD;AAID,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,aAAa,GAAG,IAAW,GACzC,MAAM,CAOR;AAED,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,UAAU,EACtB,4BAA4B,EAAE,kBAAkB,EAAE,EAClD,OAAO,EAAE,MAAM,EAAE,EACjB,kCAAkC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EACzE,QAAQ,GAAE,MAAM,GAAG,IAAW,EAC9B,OAAO,GAAE,OAAO,GAAG,IAAW,EAC9B,KAAK,UAAQ,GACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAqQ7B;AAGD,OAAO,EACL,cAAc,IAAI,eAAe,EACjC,eAAe,IAAI,gBAAgB,GACpC,CAAC"}
@@ -47,7 +47,7 @@ const subsetFontWithGlyphs = require("./subsetFontWithGlyphs");
47
47
  const codepointMaps_1 = require("./codepointMaps");
48
48
  // Bump when subsetting behaviour changes to invalidate stale disk-cache
49
49
  // entries (e.g. after adding hinting removal or table stripping).
50
- const SUBSET_CACHE_VERSION = '4';
50
+ const SUBSET_CACHE_VERSION = '6';
51
51
  // Cache the SHA-256 hash state after feeding SUBSET_CACHE_VERSION + fontBuffer.
52
52
  // For a font with 2 target formats this halves the hashing work on large buffers.
53
53
  // Uses WeakMap so entries are garbage-collected when the buffer is released.
@@ -142,6 +142,8 @@ class SubsetDiskCache {
142
142
  }
143
143
  }
144
144
  exports._SubsetDiskCache = SubsetDiskCache;
145
+ // featureTags is not included because fontUrl uniquely determines the canonical
146
+ // fontUsage (and thus its featureTags) within a single getSubsetsForFontUsage call.
145
147
  function getSubsetPromiseId(fontUsage, format, variationAxes = null) {
146
148
  return [
147
149
  fontUsage.text,
@@ -226,15 +228,6 @@ async function getSubsetsForFontUsage(assetGraph, htmlOrSvgAssetTextsWithProps,
226
228
  assetGraph.warn((0, shared_1.wrapAssetGraphError)(rawErr, fontAssetsByUrl.get(fontUrl)));
227
229
  }
228
230
  }
229
- // Per-fontUsage decisions — same across all target formats.
230
- // False positives (keeping a table the page doesn't need) cost a few
231
- // hundred bytes; false negatives (dropping a needed table) break
232
- // rendering, so the heuristics err on the side of keeping.
233
- const extraOptions = {
234
- dropMathTable: !(0, codepointMaps_1.pageNeedsMathTable)(text),
235
- dropColorTables: !(0, codepointMaps_1.pageNeedsColorTables)(text),
236
- scriptTags: (0, codepointMaps_1.scriptsForText)(text),
237
- };
238
231
  // Targeted feature retention when we can fully enumerate the
239
232
  // CSS-requested feature tags. If the page declares feature settings
240
233
  // but the tags couldn't be extracted (e.g. resolution through CSS
@@ -245,6 +238,18 @@ async function getSubsetsForFontUsage(assetGraph, htmlOrSvgAssetTextsWithProps,
245
238
  : fontUsage.fontFeatureTags
246
239
  ? [...fontUsage.fontFeatureTags]
247
240
  : [];
241
+ // Per-fontUsage decisions — same across all target formats.
242
+ // False positives (keeping a table the page doesn't need) cost a few
243
+ // hundred bytes; false negatives (dropping a needed table) break
244
+ // rendering, so the heuristics err on the side of keeping.
245
+ // featureTags is included so different CSS feature-settings don't
246
+ // collide in the disk cache.
247
+ const extraOptions = {
248
+ dropMathTable: !(0, codepointMaps_1.pageNeedsMathTable)(text),
249
+ dropColorTables: !(0, codepointMaps_1.pageNeedsColorTables)(text),
250
+ scriptTags: (0, codepointMaps_1.scriptsForText)(text),
251
+ featureTags,
252
+ };
248
253
  for (const targetFormat of formats) {
249
254
  const promiseId = getSubsetPromiseId(fontUsage, targetFormat, subsetInfo.variationAxes);
250
255
  if (!subsetPromiseMap.has(promiseId)) {
@@ -264,7 +269,6 @@ async function getSubsetsForFontUsage(assetGraph, htmlOrSvgAssetTextsWithProps,
264
269
  targetFormat,
265
270
  glyphIds: featureGlyphIds,
266
271
  variationAxes: subsetInfo.variationAxes,
267
- featureTags,
268
272
  ...extraOptions,
269
273
  });
270
274
  subsetPromiseMap.set(promiseId, subsetCall
@@ -1 +1 @@
1
- {"version":3,"file":"subsetGeneration.js","sourceRoot":"","sources":["../src/subsetGeneration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subsetGeneration.js","sourceRoot":"","sources":["../src/subsetGeneration.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@turntrout/subfont",
3
- "version": "1.8.2",
3
+ "version": "1.9.0",
4
4
  "description": "Automatically subset web fonts to only the characters used on your pages. Fork of Munter/subfont with modern defaults.",
5
5
  "engines": {
6
6
  "node": ">=18.0.0"