@davidsouther/jiffies 2026.24.4 → 2026.26.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.
@@ -32,5 +32,24 @@ export declare function update(element: Omit<Element, "update">, attrs: Attrs<El
32
32
  * Reconcile `element`'s mounted children against expected `children`, mutating the live DOM in place.
33
33
  */
34
34
  export declare function reconcileChildren(element: Node, children: (string | Node)[]): void;
35
+ /**
36
+ * A unit boundary the reconcile, hydration, and SSG passes treat as opaque: a
37
+ * registered custom element (FC), or any element carrying `data-fc` (FCC). Both
38
+ * own their own subtree, so a parent's reconcile must not descend into them.
39
+ */
40
+ export declare function isUnit(el: Element): boolean;
41
+ /**
42
+ * Walk `root` depth-first and return every unit (`isUnit`) in document order,
43
+ * descending INTO units so nested units are included. The server payload build
44
+ * and the client hydration scan must enumerate units in the same order, or a
45
+ * payload index will not line up.
46
+ */
47
+ export declare function scanAllUnits(root: ParentNode): Element[];
48
+ /** True if `el` has a unit ancestor (i.e. it is a nested unit). */
49
+ export declare function isNested(el: Element, units: Element[]): boolean;
50
+ /**
51
+ * Reconstruct a unit's props from its attributes, skipping the `data-fc` marker.
52
+ */
53
+ export declare function propsFromElement(el: Element): Record<string, unknown>;
35
54
  export declare function patchNode(kept: Element, fresh: Element): void;
36
55
  export {};
@@ -185,6 +185,56 @@ function findUnclaimedNodes(desired, element) {
185
185
  }
186
186
  return { mountedSet, unclaimed };
187
187
  }
188
+ /**
189
+ * A unit boundary the reconcile, hydration, and SSG passes treat as opaque: a
190
+ * registered custom element (FC), or any element carrying `data-fc` (FCC). Both
191
+ * own their own subtree, so a parent's reconcile must not descend into them.
192
+ */
193
+ export function isUnit(el) {
194
+ return customElements.get(el.localName) != null || el.hasAttribute("data-fc");
195
+ }
196
+ /**
197
+ * Walk `root` depth-first and return every unit (`isUnit`) in document order,
198
+ * descending INTO units so nested units are included. The server payload build
199
+ * and the client hydration scan must enumerate units in the same order, or a
200
+ * payload index will not line up.
201
+ */
202
+ export function scanAllUnits(root) {
203
+ const results = [];
204
+ const stack = [...root.children].reverse();
205
+ while (stack.length > 0) {
206
+ const el = stack.pop();
207
+ if (isUnit(el)) {
208
+ results.push(el);
209
+ }
210
+ for (let i = el.children.length - 1; i >= 0; i--) {
211
+ stack.push(el.children[i]);
212
+ }
213
+ }
214
+ return results;
215
+ }
216
+ /** True if `el` has a unit ancestor (i.e. it is a nested unit). */
217
+ export function isNested(el, units) {
218
+ let parent = el.parentElement;
219
+ while (parent !== null) {
220
+ if (units.includes(parent))
221
+ return true;
222
+ parent = parent.parentElement;
223
+ }
224
+ return false;
225
+ }
226
+ /**
227
+ * Reconstruct a unit's props from its attributes, skipping the `data-fc` marker.
228
+ */
229
+ export function propsFromElement(el) {
230
+ const props = {};
231
+ for (const attr of el.attributes) {
232
+ if (attr.name === "data-fc")
233
+ continue;
234
+ props[attr.name] = attr.value;
235
+ }
236
+ return props;
237
+ }
188
238
  export function patchNode(kept, fresh) {
189
239
  assert(kept.nodeName === fresh.nodeName, "patching nodes of different types");
190
240
  // Remove `kept` attributes that aren't on `fresh`, then add `fresh` attributes not on `kept`.
@@ -210,8 +260,8 @@ export function patchNode(kept, fresh) {
210
260
  for (const [type, handler] of freshEvents) {
211
261
  setListener(kept, keptEvents, type, handler);
212
262
  }
213
- // Custom elements rebuild their own subtrees
214
- if (customElements.get(kept.localName))
263
+ // Unit boundaries rebuild their own subtrees
264
+ if (isUnit(kept))
215
265
  return;
216
266
  reconcileChildren(kept, Array.from(fresh.childNodes));
217
267
  }
@@ -7,4 +7,56 @@ export interface FCComponent<Props extends object, State extends object> extends
7
7
  }
8
8
  export type RenderFn<Props extends object, State extends object> = (el: FCComponent<Props, State>, attrs: Attrs<Props>, children: DenormChildren[]) => Element | Element[];
9
9
  export type FCComponentCtor<Props extends object, State extends object> = (attrs?: Attrs<Props> | DenormChildren, ...children: DenormChildren[]) => FCComponent<Props, State>;
10
+ /**
11
+ * Update a Functional Component.
12
+ * Merges this call and element's current attrs, apply them onto the element, re-runs
13
+ * `render`, and reconciles that output with the element's children. All per-instance
14
+ * state ([State] and the inputs stash) lives on `el`, so a single `update`
15
+ * function serves every instance.
16
+ *
17
+ * The `render` callback returns children, not the element, as the element factory
18
+ * builds the parent.
19
+ */
20
+ export declare function applyUpdate<Props extends object, S extends object>(el: FCComponent<Props, S>, render: RenderFn<Props, S>, attrs?: Attrs<Props> | DenormChildren, children?: DenormChildren[]): void;
21
+ /**
22
+ * A Functional Component backed by a custom element.
23
+ */
10
24
  export declare function FC<Props extends object, State extends object = object>(name: string, component: RenderFn<Props, State>): FCComponentCtor<Props, State>;
25
+ /** Factory that builds an FC root in the correct namespace. */
26
+ export type BoundaryFactory = () => Element;
27
+ /** The shared, per-definition update each FCC element carries. */
28
+ type UpdateFn = FCComponent<object, object>["update"];
29
+ /** Look up the shared `update` registered for a `data-fc` name, if any. */
30
+ export declare function getFCC(name: string): UpdateFn | undefined;
31
+ /**
32
+ * Wire an FCC's shared `update` onto a real element. The element carries its own
33
+ * `[State]` and inputs (set lazily on the first `update()` call), so this only
34
+ * assigns the single definition-wide function. Shared by the FCC constructor and
35
+ * the hydration path, which passes the registry-resolved `update`.
36
+ */
37
+ export declare function attach<Props extends object, S extends object>(el: Element, update: FCComponent<Props, S>["update"]): FCComponent<Props, S>;
38
+ /**
39
+ * A containerless component (FCC) renders directly without an HTML custom-element
40
+ * host. Its boundary is a single real element (SVG or HTML) marked `data-fc`, so
41
+ * a component can render SVG-namespace shapes inside `<svg>`, where an HTML custom
42
+ * element is not valid content.
43
+ *
44
+ * FCC shares the `name` and `render` parameters with FC, and additionally takes a
45
+ * boundary factory that returns the FCC's root element. Attributes passed to an FCC
46
+ * will be set on this element. `render` returns the children of the FCC boundary
47
+ * root.
48
+ *
49
+ * The returned constructor builds the boundary, marks it, wires the shared
50
+ * `update()` onto it, and returns the element to include directly:
51
+ *
52
+ * ```ts
53
+ * const Gauge = FCC<{ value: number }>("gauge", g, (_el, attrs) => [
54
+ * circle({ r: 10 }),
55
+ * circle({ class: "needle", r: 2, cx: attrs.value }),
56
+ * ]);
57
+ * svg({ viewBox: "0 0 100 100" }, Gauge({ value: 5 }));
58
+ * // → <svg ...><g data-fc="gauge"><circle r="10"/><circle class="needle" r="2" cx="5"/></g></svg>
59
+ * ```
60
+ */
61
+ export declare function FCC<Props extends object, S extends object = object>(name: string, boundary: BoundaryFactory, render: RenderFn<Props, S>, _isCustom?: boolean): FCComponentCtor<Props, S>;
62
+ export {};
package/lib/esm/dom/fc.js CHANGED
@@ -1,32 +1,116 @@
1
1
  import { CLEAR, normalizeArguments, reconcileChildren, update, } from "./dom.js";
2
2
  export const State = Symbol();
3
+ // Per-instance update inputs
4
+ const Inputs = Symbol();
5
+ /**
6
+ * Update a Functional Component.
7
+ * Merges this call and element's current attrs, apply them onto the element, re-runs
8
+ * `render`, and reconciles that output with the element's children. All per-instance
9
+ * state ([State] and the inputs stash) lives on `el`, so a single `update`
10
+ * function serves every instance.
11
+ *
12
+ * The `render` callback returns children, not the element, as the element factory
13
+ * builds the parent.
14
+ */
15
+ export function applyUpdate(el, render, attrs, children = []) {
16
+ [attrs, children] = normalizeArguments(attrs, children);
17
+ const unit = el;
18
+ unit[State] ??= {};
19
+ unit[Inputs] ??= { attrs: {}, children: [] };
20
+ const inputs = unit[Inputs];
21
+ if (children[0] === CLEAR) {
22
+ inputs.children = [];
23
+ }
24
+ else if (children.length > 0) {
25
+ inputs.children = children;
26
+ }
27
+ inputs.attrs = { ...inputs.attrs, ...attrs };
28
+ // Apply attrs to the element itself (no children here), then re-run the
29
+ // component and reconcile its return value as the element's children.
30
+ update(el, inputs.attrs, []);
31
+ const rendered = [render(el, inputs.attrs, inputs.children)];
32
+ reconcileChildren(el, rendered.flat());
33
+ }
34
+ /**
35
+ * A Functional Component backed by a custom element.
36
+ */
3
37
  export function FC(name, component) {
4
- class FCImpl extends HTMLElement {
38
+ customElements.define(name,
39
+ // The shared `update` is carried on the prototype, not attached per
40
+ // instance, so a server-rendered element upgraded by the platform during
41
+ // hydration gains `update()` without the FCC constructor running.
42
+ class extends HTMLElement {
5
43
  [State] = {};
6
- #attrs = {};
7
- #children = [];
8
44
  update(attrs, ...children) {
9
- [attrs, children] = normalizeArguments(attrs, children);
10
- if (children[0] === CLEAR) {
11
- this.#children = [];
12
- }
13
- else if (children.length > 0) {
14
- this.#children = children;
15
- }
16
- this.#attrs = { ...this.#attrs, ...attrs };
17
- // Apply updates from the attrs to the dom node itself
18
- update(this, this.#attrs, []);
19
- // Re-run the component function using new element, attrs, and children.
20
- const rendered = [component(this, this.#attrs, this.#children)];
21
- reconcileChildren(this, rendered.flat());
45
+ applyUpdate(this, component, attrs, children);
22
46
  return this;
23
47
  }
48
+ });
49
+ return FCC(name, () => window.document.createElement(name), component, true);
50
+ }
51
+ // Module-level name -> update-function registry. Backs FCC where
52
+ // `customElements` backs FC: it lets a server-rendered `data-fc` element be
53
+ // re-wired during hydration with the same shared `update` its live instances
54
+ // use, when there is no custom-element upgrade to do it.
55
+ const registry = new Map();
56
+ /** Look up the shared `update` registered for a `data-fc` name, if any. */
57
+ export function getFCC(name) {
58
+ return registry.get(name);
59
+ }
60
+ /**
61
+ * Wire an FCC's shared `update` onto a real element. The element carries its own
62
+ * `[State]` and inputs (set lazily on the first `update()` call), so this only
63
+ * assigns the single definition-wide function. Shared by the FCC constructor and
64
+ * the hydration path, which passes the registry-resolved `update`.
65
+ */
66
+ export function attach(el, update) {
67
+ const component = el;
68
+ component.update = update;
69
+ return component;
70
+ }
71
+ /**
72
+ * A containerless component (FCC) renders directly without an HTML custom-element
73
+ * host. Its boundary is a single real element (SVG or HTML) marked `data-fc`, so
74
+ * a component can render SVG-namespace shapes inside `<svg>`, where an HTML custom
75
+ * element is not valid content.
76
+ *
77
+ * FCC shares the `name` and `render` parameters with FC, and additionally takes a
78
+ * boundary factory that returns the FCC's root element. Attributes passed to an FCC
79
+ * will be set on this element. `render` returns the children of the FCC boundary
80
+ * root.
81
+ *
82
+ * The returned constructor builds the boundary, marks it, wires the shared
83
+ * `update()` onto it, and returns the element to include directly:
84
+ *
85
+ * ```ts
86
+ * const Gauge = FCC<{ value: number }>("gauge", g, (_el, attrs) => [
87
+ * circle({ r: 10 }),
88
+ * circle({ class: "needle", r: 2, cx: attrs.value }),
89
+ * ]);
90
+ * svg({ viewBox: "0 0 100 100" }, Gauge({ value: 5 }));
91
+ * // → <svg ...><g data-fc="gauge"><circle r="10"/><circle class="needle" r="2" cx="5"/></g></svg>
92
+ * ```
93
+ */
94
+ export function FCC(name, boundary, render, _isCustom = false) {
95
+ function update(attrs, ...children) {
96
+ applyUpdate(this, render, attrs, children);
97
+ return this;
98
+ }
99
+ if (!_isCustom) {
100
+ registry.set(name, update);
24
101
  }
25
- customElements.define(name, FCImpl);
26
102
  const ctor = (attrs, ...children) => {
27
- const element = window.document.createElement(name);
28
- element.update(attrs, ...children);
29
- return element;
103
+ const element = boundary();
104
+ let component;
105
+ if (_isCustom) {
106
+ component = element;
107
+ }
108
+ else {
109
+ element.setAttribute("data-fc", name);
110
+ component = attach(element, update);
111
+ }
112
+ component.update(attrs, ...children);
113
+ return component;
30
114
  };
31
115
  return ctor;
32
116
  }
@@ -3,7 +3,7 @@
3
3
  * build pass so events fired before the client bundle loads are queued in
4
4
  * window.__hydrateQueue and replayed after hydration. No external references.
5
5
  */
6
- export declare const captureStubSource = "(function(){\n window.__hydrateQueue = window.__hydrateQueue || [];\n var queue = window.__hydrateQueue;\n var handler = function(event) {\n var path = event.composedPath();\n var unitEl = null;\n for (var i = 0; i < path.length; i++) {\n var node = path[i];\n if (node instanceof Element && customElements.get(node.localName)) {\n unitEl = node;\n break;\n }\n }\n if (!unitEl) return;\n var target = event.target;\n var targetPath = [];\n var cur = target;\n while (cur !== unitEl) {\n var parent = cur.parentNode;\n var siblings = Array.from(parent.childNodes);\n targetPath.unshift(siblings.indexOf(cur));\n cur = parent;\n }\n queue.push({ unitEl: unitEl, type: event.type, targetPath: targetPath, init: { bubbles: event.bubbles, cancelable: event.cancelable } });\n };\n var types = [\"click\",\"input\",\"change\",\"submit\",\"keydown\"];\n for (var t = 0; t < types.length; t++) {\n document.addEventListener(types[t], handler, true);\n }\n})()";
6
+ export declare const captureStubSource = "(function(){\n window.__hydrateQueue = window.__hydrateQueue || [];\n var queue = window.__hydrateQueue;\n var handler = function(event) {\n var path = event.composedPath();\n var unitEl = null;\n for (var i = 0; i < path.length; i++) {\n var node = path[i];\n if (node instanceof Element && (customElements.get(node.localName) || node.getAttribute(\"data-fc\"))) {\n unitEl = node;\n break;\n }\n }\n if (!unitEl) return;\n var target = event.target;\n var targetPath = [];\n var cur = target;\n while (cur !== unitEl) {\n var parent = cur.parentNode;\n var siblings = Array.from(parent.childNodes);\n targetPath.unshift(siblings.indexOf(cur));\n cur = parent;\n }\n queue.push({ unitEl: unitEl, type: event.type, targetPath: targetPath, init: { bubbles: event.bubbles, cancelable: event.cancelable } });\n };\n var types = [\"click\",\"input\",\"change\",\"submit\",\"keydown\"];\n for (var t = 0; t < types.length; t++) {\n document.addEventListener(types[t], handler, true);\n }\n})()";
7
7
  /**
8
8
  * Serialize `units` to a JSON string safe for embedding in an HTML script tag
9
9
  * (angle brackets and ampersands are Unicode-escaped).
@@ -15,11 +15,17 @@ export declare function buildPayload(units: Record<string, unknown>[]): string;
15
15
  */
16
16
  export declare function readPayload(): Record<string, unknown>[];
17
17
  /**
18
- * Scan `root` for registered custom elements and schedule each for hydration.
19
- * `customElements.whenDefined` resolves as a microtask even when the element
20
- * is already defined. The callback clears server-rendered children then runs
21
- * `el.update()`, which re-executes the element's render function and rebuilds
22
- * its subtree. `root` defaults to `window.document.body`.
18
+ * Scan `root` for units and schedule each for hydration. `customElements.whenDefined`
19
+ * resolves as a microtask even when the element is already defined. The callback
20
+ * clears server-rendered children then runs `el.update()`, which re-executes the
21
+ * element's render function and rebuilds its subtree. `root` defaults to
22
+ * `window.document.body`.
23
+ *
24
+ * Units are enumerated with `scanAllUnits` — the SAME descending, document-order
25
+ * walk the server used to build the `#__hydration` payload — so `payload[index]`
26
+ * lines up with each unit even past nested ones. A nested unit is skipped here:
27
+ * its parent's re-render rebuilds it from fresh props, so a direct payload read
28
+ * would be redundant (and the enumeration only descends to keep indices aligned).
23
29
  */
24
30
  export declare function start(root?: ParentNode): void;
25
31
  /**
@@ -1,5 +1,6 @@
1
1
  "use client"; // Hydrate runs entirely client side.
2
- import { reconcileChildren } from "./dom.js";
2
+ import { isNested, isUnit, propsFromElement, reconcileChildren, scanAllUnits, } from "./dom.js";
3
+ import { attach, getFCC } from "./fc.js";
3
4
  /**
4
5
  * Self-contained IIFE source for the capture stub. Embedded inline by the SSG
5
6
  * build pass so events fired before the client bundle loads are queued in
@@ -13,7 +14,7 @@ export const captureStubSource = `(function(){
13
14
  var unitEl = null;
14
15
  for (var i = 0; i < path.length; i++) {
15
16
  var node = path[i];
16
- if (node instanceof Element && customElements.get(node.localName)) {
17
+ if (node instanceof Element && (customElements.get(node.localName) || node.getAttribute("data-fc"))) {
17
18
  unitEl = node;
18
19
  break;
19
20
  }
@@ -66,7 +67,7 @@ function scanUnits(root) {
66
67
  const stack = [...root.children].reverse();
67
68
  while (stack.length > 0) {
68
69
  const el = stack.pop();
69
- if (customElements.get(el.localName)) {
70
+ if (isUnit(el)) {
70
71
  results.push(el);
71
72
  }
72
73
  else {
@@ -78,32 +79,67 @@ function scanUnits(root) {
78
79
  return results;
79
80
  }
80
81
  /**
81
- * Scan `root` for registered custom elements and schedule each for hydration.
82
- * `customElements.whenDefined` resolves as a microtask even when the element
83
- * is already defined. The callback clears server-rendered children then runs
84
- * `el.update()`, which re-executes the element's render function and rebuilds
85
- * its subtree. `root` defaults to `window.document.body`.
82
+ * Scan `root` for units and schedule each for hydration. `customElements.whenDefined`
83
+ * resolves as a microtask even when the element is already defined. The callback
84
+ * clears server-rendered children then runs `el.update()`, which re-executes the
85
+ * element's render function and rebuilds its subtree. `root` defaults to
86
+ * `window.document.body`.
87
+ *
88
+ * Units are enumerated with `scanAllUnits` — the SAME descending, document-order
89
+ * walk the server used to build the `#__hydration` payload — so `payload[index]`
90
+ * lines up with each unit even past nested ones. A nested unit is skipped here:
91
+ * its parent's re-render rebuilds it from fresh props, so a direct payload read
92
+ * would be redundant (and the enumeration only descends to keep indices aligned).
86
93
  */
87
94
  export function start(root) {
88
95
  const r = root ?? window.document.body;
89
- const units = scanUnits(r);
96
+ const units = scanAllUnits(r);
90
97
  const payload = readPayload();
91
98
  units.forEach((el, index) => {
92
- customElements.whenDefined(el.localName).then(() => {
93
- el.replaceChildren();
94
- el.update(payload[index]);
95
- drainQueue(el);
96
- });
99
+ if (isNested(el, units))
100
+ return;
101
+ // A data-fc boundary is never upgraded by the platform, so re-wire its
102
+ // behavior from the registry instead of waiting on customElements.
103
+ const fc = el.getAttribute("data-fc");
104
+ if (fc !== null) {
105
+ const update = getFCC(fc);
106
+ if (update) {
107
+ attach(el, update);
108
+ el.replaceChildren();
109
+ el.update(payload[index]);
110
+ drainQueue(el);
111
+ }
112
+ }
113
+ else {
114
+ customElements.whenDefined(el.localName).then(() => {
115
+ el.replaceChildren();
116
+ el.update(payload[index]);
117
+ drainQueue(el);
118
+ });
119
+ }
97
120
  });
98
121
  }
99
- // Hydrate custom elements inside `root` without clearing their server-rendered
100
- // children first. `el.update()` reconciles onto the existing DOM so attributes
101
- // and listeners are grafted in place. Recurses after each element hydrates so
102
- // parents are always processed before their nested custom elements.
122
+ // Hydrate units inside `root` without clearing their server-rendered children
123
+ // first. `el.update(props)` reconciles onto the existing DOM so attributes and
124
+ // listeners are grafted in place. Props are read back from the element's own
125
+ // attributes (`propsFromElement`) `hydrateRoot` reads no payload, and the
126
+ // reconcile pass has already synced the fresh tree's attributes onto the kept
127
+ // server node, so the attributes ARE the unit's props. Recurses after each
128
+ // element hydrates so parents are always processed before their nested units.
103
129
  function startHydrate(root) {
104
130
  for (const el of scanUnits(root)) {
131
+ const fc = el.getAttribute("data-fc");
132
+ if (fc !== null) {
133
+ const update = getFCC(fc);
134
+ if (update) {
135
+ attach(el, update);
136
+ el.update(propsFromElement(el));
137
+ startHydrate(el);
138
+ }
139
+ continue;
140
+ }
105
141
  customElements.whenDefined(el.localName).then(() => {
106
- el.update();
142
+ el.update(propsFromElement(el));
107
143
  startHydrate(el);
108
144
  });
109
145
  }
@@ -125,7 +161,7 @@ export function installCaptureStub() {
125
161
  const path = event.composedPath();
126
162
  let unitEl = null;
127
163
  for (const node of path) {
128
- if (node instanceof Element && customElements.get(node.localName)) {
164
+ if (node instanceof Element && isUnit(node)) {
129
165
  unitEl = node;
130
166
  break;
131
167
  }
@@ -1,64 +1,163 @@
1
1
  import { type DenormAttrs, type DenormChildren } from "./dom.ts";
2
- export declare const a: (attrs?: DenormAttrs<SVGAElement>, ...children: DenormChildren[]) => Element;
3
- export declare const animate: (attrs?: DenormAttrs<SVGAnimateElement>, ...children: DenormChildren[]) => Element;
4
- export declare const animateMotion: (attrs?: DenormAttrs<SVGAnimateMotionElement>, ...children: DenormChildren[]) => Element;
5
- export declare const animateTransform: (attrs?: DenormAttrs<SVGAnimateTransformElement>, ...children: DenormChildren[]) => Element;
6
- export declare const circle: (attrs?: DenormAttrs<SVGCircleElement>, ...children: DenormChildren[]) => Element;
7
- export declare const clipPath: (attrs?: DenormAttrs<SVGClipPathElement>, ...children: DenormChildren[]) => Element;
8
- export declare const defs: (attrs?: DenormAttrs<SVGDefsElement>, ...children: DenormChildren[]) => Element;
9
- export declare const desc: (attrs?: DenormAttrs<SVGDescElement>, ...children: DenormChildren[]) => Element;
10
- export declare const ellipse: (attrs?: DenormAttrs<SVGEllipseElement>, ...children: DenormChildren[]) => Element;
11
- export declare const feBlend: (attrs?: DenormAttrs<SVGFEBlendElement>, ...children: DenormChildren[]) => Element;
12
- export declare const feColorMatrix: (attrs?: DenormAttrs<SVGFEColorMatrixElement>, ...children: DenormChildren[]) => Element;
13
- export declare const feComponentTransfer: (attrs?: DenormAttrs<SVGFEComponentTransferElement>, ...children: DenormChildren[]) => Element;
14
- export declare const feComposite: (attrs?: DenormAttrs<SVGFECompositeElement>, ...children: DenormChildren[]) => Element;
15
- export declare const feConvolveMatrix: (attrs?: DenormAttrs<SVGFEConvolveMatrixElement>, ...children: DenormChildren[]) => Element;
16
- export declare const feDiffuseLighting: (attrs?: DenormAttrs<SVGFEDiffuseLightingElement>, ...children: DenormChildren[]) => Element;
17
- export declare const feDisplacementMap: (attrs?: DenormAttrs<SVGFEDisplacementMapElement>, ...children: DenormChildren[]) => Element;
18
- export declare const feDistantLight: (attrs?: DenormAttrs<SVGFEDistantLightElement>, ...children: DenormChildren[]) => Element;
19
- export declare const feDropShadow: (attrs?: DenormAttrs<SVGFEDropShadowElement>, ...children: DenormChildren[]) => Element;
20
- export declare const feFlood: (attrs?: DenormAttrs<SVGFEFloodElement>, ...children: DenormChildren[]) => Element;
21
- export declare const feFuncA: (attrs?: DenormAttrs<SVGFEFuncAElement>, ...children: DenormChildren[]) => Element;
22
- export declare const feFuncB: (attrs?: DenormAttrs<SVGFEFuncBElement>, ...children: DenormChildren[]) => Element;
23
- export declare const feFuncG: (attrs?: DenormAttrs<SVGFEFuncGElement>, ...children: DenormChildren[]) => Element;
24
- export declare const feFuncR: (attrs?: DenormAttrs<SVGFEFuncRElement>, ...children: DenormChildren[]) => Element;
25
- export declare const feGaussianBlur: (attrs?: DenormAttrs<SVGFEGaussianBlurElement>, ...children: DenormChildren[]) => Element;
26
- export declare const feImage: (attrs?: DenormAttrs<SVGFEImageElement>, ...children: DenormChildren[]) => Element;
27
- export declare const feMerge: (attrs?: DenormAttrs<SVGFEMergeElement>, ...children: DenormChildren[]) => Element;
28
- export declare const feMergeNode: (attrs?: DenormAttrs<SVGFEMergeNodeElement>, ...children: DenormChildren[]) => Element;
29
- export declare const feMorphology: (attrs?: DenormAttrs<SVGFEMorphologyElement>, ...children: DenormChildren[]) => Element;
30
- export declare const feOffset: (attrs?: DenormAttrs<SVGFEOffsetElement>, ...children: DenormChildren[]) => Element;
31
- export declare const fePointLight: (attrs?: DenormAttrs<SVGFEPointLightElement>, ...children: DenormChildren[]) => Element;
32
- export declare const feSpecularLighting: (attrs?: DenormAttrs<SVGFESpecularLightingElement>, ...children: DenormChildren[]) => Element;
33
- export declare const feSpotLight: (attrs?: DenormAttrs<SVGFESpotLightElement>, ...children: DenormChildren[]) => Element;
34
- export declare const feTile: (attrs?: DenormAttrs<SVGFETileElement>, ...children: DenormChildren[]) => Element;
35
- export declare const feTurbulence: (attrs?: DenormAttrs<SVGFETurbulenceElement>, ...children: DenormChildren[]) => Element;
36
- export declare const filter: (attrs?: DenormAttrs<SVGFilterElement>, ...children: DenormChildren[]) => Element;
37
- export declare const foreignObject: (attrs?: DenormAttrs<SVGForeignObjectElement>, ...children: DenormChildren[]) => Element;
38
- export declare const g: (attrs?: DenormAttrs<SVGGElement>, ...children: DenormChildren[]) => Element;
39
- export declare const image: (attrs?: DenormAttrs<SVGImageElement>, ...children: DenormChildren[]) => Element;
40
- export declare const line: (attrs?: DenormAttrs<SVGLineElement>, ...children: DenormChildren[]) => Element;
41
- export declare const linearGradient: (attrs?: DenormAttrs<SVGLinearGradientElement>, ...children: DenormChildren[]) => Element;
42
- export declare const marker: (attrs?: DenormAttrs<SVGMarkerElement>, ...children: DenormChildren[]) => Element;
43
- export declare const mask: (attrs?: DenormAttrs<SVGMaskElement>, ...children: DenormChildren[]) => Element;
44
- export declare const metadata: (attrs?: DenormAttrs<SVGMetadataElement>, ...children: DenormChildren[]) => Element;
45
- export declare const mpath: (attrs?: DenormAttrs<SVGMPathElement>, ...children: DenormChildren[]) => Element;
46
- export declare const path: (attrs?: DenormAttrs<SVGPathElement>, ...children: DenormChildren[]) => Element;
47
- export declare const pattern: (attrs?: DenormAttrs<SVGPatternElement>, ...children: DenormChildren[]) => Element;
48
- export declare const polygon: (attrs?: DenormAttrs<SVGPolygonElement>, ...children: DenormChildren[]) => Element;
49
- export declare const polyline: (attrs?: DenormAttrs<SVGPolylineElement>, ...children: DenormChildren[]) => Element;
50
- export declare const radialGradient: (attrs?: DenormAttrs<SVGRadialGradientElement>, ...children: DenormChildren[]) => Element;
51
- export declare const rect: (attrs?: DenormAttrs<SVGRectElement>, ...children: DenormChildren[]) => Element;
52
- export declare const script: (attrs?: DenormAttrs<SVGScriptElement>, ...children: DenormChildren[]) => Element;
53
- export declare const set: (attrs?: DenormAttrs<SVGSetElement>, ...children: DenormChildren[]) => Element;
54
- export declare const stop: (attrs?: DenormAttrs<SVGStopElement>, ...children: DenormChildren[]) => Element;
55
- export declare const style: (attrs?: DenormAttrs<SVGStyleElement>, ...children: DenormChildren[]) => Element;
56
- export declare const svg: (attrs?: DenormAttrs<SVGSVGElement>, ...children: DenormChildren[]) => Element;
57
- export declare const svgswitch: (attrs?: DenormAttrs<SVGSwitchElement>, ...children: DenormChildren[]) => Element;
58
- export declare const symbol: (attrs?: DenormAttrs<SVGSymbolElement>, ...children: DenormChildren[]) => Element;
59
- export declare const text: (attrs?: DenormAttrs<SVGTextElement>, ...children: DenormChildren[]) => Element;
60
- export declare const textPath: (attrs?: DenormAttrs<SVGTextPathElement>, ...children: DenormChildren[]) => Element;
61
- export declare const title: (attrs?: DenormAttrs<SVGTitleElement>, ...children: DenormChildren[]) => Element;
62
- export declare const tspan: (attrs?: DenormAttrs<SVGTSpanElement>, ...children: DenormChildren[]) => Element;
63
- export declare const use: (attrs?: DenormAttrs<SVGUseElement>, ...children: DenormChildren[]) => Element;
64
- export declare const view: (attrs?: DenormAttrs<SVGViewElement>, ...children: DenormChildren[]) => Element;
2
+ export type SVGPresentationAttrs = {
3
+ fill?: string;
4
+ "fill-opacity"?: string | number;
5
+ "fill-rule"?: "nonzero" | "evenodd" | "inherit";
6
+ stroke?: string;
7
+ "stroke-dasharray"?: string;
8
+ "stroke-dashoffset"?: string | number;
9
+ "stroke-linecap"?: "butt" | "round" | "square" | "inherit";
10
+ "stroke-linejoin"?: "miter" | "round" | "bevel" | "inherit";
11
+ "stroke-miterlimit"?: string | number;
12
+ "stroke-opacity"?: string | number;
13
+ "stroke-width"?: string | number;
14
+ opacity?: string | number;
15
+ "clip-path"?: string;
16
+ "clip-rule"?: "nonzero" | "evenodd" | "inherit";
17
+ color?: string;
18
+ "color-interpolation"?: "auto" | "sRGB" | "linearRGB" | "inherit";
19
+ "color-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit";
20
+ cursor?: string;
21
+ display?: string;
22
+ filter?: string;
23
+ "image-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit";
24
+ marker?: string;
25
+ "marker-end"?: string;
26
+ "marker-mid"?: string;
27
+ "marker-start"?: string;
28
+ mask?: string;
29
+ overflow?: "visible" | "hidden" | "scroll" | "auto";
30
+ "paint-order"?: string;
31
+ "pointer-events"?: string;
32
+ "shape-rendering"?: "auto" | "optimizeSpeed" | "crispEdges" | "geometricPrecision" | "inherit";
33
+ "text-rendering"?: "auto" | "optimizeSpeed" | "optimizeLegibility" | "geometricPrecision" | "inherit";
34
+ "transform-origin"?: string;
35
+ "vector-effect"?: "none" | "non-scaling-stroke" | "inherit";
36
+ visibility?: "visible" | "hidden" | "collapse" | "inherit";
37
+ };
38
+ export type SVGTextPresentationAttrs = SVGPresentationAttrs & {
39
+ "font-family"?: string;
40
+ "font-size"?: string | number;
41
+ "font-size-adjust"?: string | number;
42
+ "font-stretch"?: string;
43
+ "font-style"?: "normal" | "italic" | "oblique" | "inherit";
44
+ "font-variant"?: string;
45
+ "font-weight"?: string | number;
46
+ "text-anchor"?: "start" | "middle" | "end" | "inherit";
47
+ "text-decoration"?: string;
48
+ "letter-spacing"?: string | number;
49
+ "word-spacing"?: string | number;
50
+ "dominant-baseline"?: string;
51
+ "alignment-baseline"?: string;
52
+ "baseline-shift"?: string;
53
+ "writing-mode"?: string;
54
+ "unicode-bidi"?: string;
55
+ direction?: "ltr" | "rtl" | "inherit";
56
+ };
57
+ export type SVGStopAttrs = {
58
+ "stop-color"?: string;
59
+ "stop-opacity"?: string | number;
60
+ offset?: string | number;
61
+ };
62
+ export type SVGFloodAttrs = {
63
+ "flood-color"?: string;
64
+ "flood-opacity"?: string | number;
65
+ };
66
+ export type SVGLightingAttrs = {
67
+ "lighting-color"?: string;
68
+ };
69
+ export type SVGPathExtraAttrs = {
70
+ d?: string;
71
+ };
72
+ export type SVGAnimationTimingAttrs = {
73
+ attributeName?: string;
74
+ from?: string | number;
75
+ to?: string | number;
76
+ by?: string | number;
77
+ values?: string;
78
+ dur?: string;
79
+ begin?: string;
80
+ end?: string;
81
+ min?: string;
82
+ max?: string;
83
+ repeatCount?: string | number;
84
+ repeatDur?: string;
85
+ restart?: "always" | "whenNotActive" | "never";
86
+ fill?: "freeze" | "remove";
87
+ calcMode?: "discrete" | "linear" | "paced" | "spline";
88
+ keyTimes?: string;
89
+ keySplines?: string;
90
+ keyPoints?: string;
91
+ additive?: "replace" | "sum";
92
+ accumulate?: "none" | "sum";
93
+ type?: string;
94
+ path?: string;
95
+ };
96
+ export type SVGFilterPrimitiveInAttrs = {
97
+ in?: string;
98
+ in2?: string;
99
+ result?: string;
100
+ };
101
+ export declare const a: (attrs?: DenormAttrs<SVGAElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGAElement;
102
+ export declare const animate: (attrs?: DenormAttrs<SVGAnimateElement, SVGAnimationTimingAttrs>, ...children: DenormChildren[]) => SVGAnimateElement;
103
+ export declare const animateMotion: (attrs?: DenormAttrs<SVGAnimateMotionElement, SVGAnimationTimingAttrs>, ...children: DenormChildren[]) => SVGAnimateMotionElement;
104
+ export declare const animateTransform: (attrs?: DenormAttrs<SVGAnimateTransformElement, SVGAnimationTimingAttrs>, ...children: DenormChildren[]) => SVGAnimateTransformElement;
105
+ export declare const circle: (attrs?: DenormAttrs<SVGCircleElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGCircleElement;
106
+ export declare const clipPath: (attrs?: DenormAttrs<SVGClipPathElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGClipPathElement;
107
+ export declare const defs: (attrs?: DenormAttrs<SVGDefsElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGDefsElement;
108
+ export declare const desc: (attrs?: DenormAttrs<SVGDescElement, object>, ...children: DenormChildren[]) => SVGDescElement;
109
+ export declare const ellipse: (attrs?: DenormAttrs<SVGEllipseElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGEllipseElement;
110
+ export declare const feBlend: (attrs?: DenormAttrs<SVGFEBlendElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEBlendElement;
111
+ export declare const feColorMatrix: (attrs?: DenormAttrs<SVGFEColorMatrixElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEColorMatrixElement;
112
+ export declare const feComponentTransfer: (attrs?: DenormAttrs<SVGFEComponentTransferElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEComponentTransferElement;
113
+ export declare const feComposite: (attrs?: DenormAttrs<SVGFECompositeElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFECompositeElement;
114
+ export declare const feConvolveMatrix: (attrs?: DenormAttrs<SVGFEConvolveMatrixElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEConvolveMatrixElement;
115
+ export declare const feDiffuseLighting: (attrs?: DenormAttrs<SVGFEDiffuseLightingElement, SVGFilterPrimitiveInAttrs & SVGLightingAttrs>, ...children: DenormChildren[]) => SVGFEDiffuseLightingElement;
116
+ export declare const feDisplacementMap: (attrs?: DenormAttrs<SVGFEDisplacementMapElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEDisplacementMapElement;
117
+ export declare const feDistantLight: (attrs?: DenormAttrs<SVGFEDistantLightElement, object>, ...children: DenormChildren[]) => SVGFEDistantLightElement;
118
+ export declare const feDropShadow: (attrs?: DenormAttrs<SVGFEDropShadowElement, SVGFilterPrimitiveInAttrs & SVGFloodAttrs>, ...children: DenormChildren[]) => SVGFEDropShadowElement;
119
+ export declare const feFlood: (attrs?: DenormAttrs<SVGFEFloodElement, SVGFloodAttrs & SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEFloodElement;
120
+ export declare const feFuncA: (attrs?: DenormAttrs<SVGFEFuncAElement, object>, ...children: DenormChildren[]) => SVGFEFuncAElement;
121
+ export declare const feFuncB: (attrs?: DenormAttrs<SVGFEFuncBElement, object>, ...children: DenormChildren[]) => SVGFEFuncBElement;
122
+ export declare const feFuncG: (attrs?: DenormAttrs<SVGFEFuncGElement, object>, ...children: DenormChildren[]) => SVGFEFuncGElement;
123
+ export declare const feFuncR: (attrs?: DenormAttrs<SVGFEFuncRElement, object>, ...children: DenormChildren[]) => SVGFEFuncRElement;
124
+ export declare const feGaussianBlur: (attrs?: DenormAttrs<SVGFEGaussianBlurElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEGaussianBlurElement;
125
+ export declare const feImage: (attrs?: DenormAttrs<SVGFEImageElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEImageElement;
126
+ export declare const feMerge: (attrs?: DenormAttrs<SVGFEMergeElement, object>, ...children: DenormChildren[]) => SVGFEMergeElement;
127
+ export declare const feMergeNode: (attrs?: DenormAttrs<SVGFEMergeNodeElement, object>, ...children: DenormChildren[]) => SVGFEMergeNodeElement;
128
+ export declare const feMorphology: (attrs?: DenormAttrs<SVGFEMorphologyElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEMorphologyElement;
129
+ export declare const feOffset: (attrs?: DenormAttrs<SVGFEOffsetElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFEOffsetElement;
130
+ export declare const fePointLight: (attrs?: DenormAttrs<SVGFEPointLightElement, object>, ...children: DenormChildren[]) => SVGFEPointLightElement;
131
+ export declare const feSpecularLighting: (attrs?: DenormAttrs<SVGFESpecularLightingElement, SVGFilterPrimitiveInAttrs & SVGLightingAttrs>, ...children: DenormChildren[]) => SVGFESpecularLightingElement;
132
+ export declare const feSpotLight: (attrs?: DenormAttrs<SVGFESpotLightElement, object>, ...children: DenormChildren[]) => SVGFESpotLightElement;
133
+ export declare const feTile: (attrs?: DenormAttrs<SVGFETileElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFETileElement;
134
+ export declare const feTurbulence: (attrs?: DenormAttrs<SVGFETurbulenceElement, SVGFilterPrimitiveInAttrs>, ...children: DenormChildren[]) => SVGFETurbulenceElement;
135
+ export declare const filter: (attrs?: DenormAttrs<SVGFilterElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGFilterElement;
136
+ export declare const foreignObject: (attrs?: DenormAttrs<SVGForeignObjectElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGForeignObjectElement;
137
+ export declare const g: (attrs?: DenormAttrs<SVGGElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGGElement;
138
+ export declare const image: (attrs?: DenormAttrs<SVGImageElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGImageElement;
139
+ export declare const line: (attrs?: DenormAttrs<SVGLineElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGLineElement;
140
+ export declare const linearGradient: (attrs?: DenormAttrs<SVGLinearGradientElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGLinearGradientElement;
141
+ export declare const marker: (attrs?: DenormAttrs<SVGMarkerElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGMarkerElement;
142
+ export declare const mask: (attrs?: DenormAttrs<SVGMaskElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGMaskElement;
143
+ export declare const metadata: (attrs?: DenormAttrs<SVGMetadataElement, object>, ...children: DenormChildren[]) => SVGMetadataElement;
144
+ export declare const mpath: (attrs?: DenormAttrs<SVGMPathElement, object>, ...children: DenormChildren[]) => SVGMPathElement;
145
+ export declare const path: (attrs?: DenormAttrs<SVGPathElement, SVGPresentationAttrs & SVGPathExtraAttrs>, ...children: DenormChildren[]) => SVGPathElement;
146
+ export declare const pattern: (attrs?: DenormAttrs<SVGPatternElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGPatternElement;
147
+ export declare const polygon: (attrs?: DenormAttrs<SVGPolygonElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGPolygonElement;
148
+ export declare const polyline: (attrs?: DenormAttrs<SVGPolylineElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGPolylineElement;
149
+ export declare const radialGradient: (attrs?: DenormAttrs<SVGRadialGradientElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGRadialGradientElement;
150
+ export declare const rect: (attrs?: DenormAttrs<SVGRectElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGRectElement;
151
+ export declare const script: (attrs?: DenormAttrs<SVGScriptElement, object>, ...children: DenormChildren[]) => SVGScriptElement;
152
+ export declare const set: (attrs?: DenormAttrs<SVGSetElement, SVGAnimationTimingAttrs>, ...children: DenormChildren[]) => SVGSetElement;
153
+ export declare const stop: (attrs?: DenormAttrs<SVGStopElement, SVGStopAttrs>, ...children: DenormChildren[]) => SVGStopElement;
154
+ export declare const style: (attrs?: DenormAttrs<SVGStyleElement, object>, ...children: DenormChildren[]) => SVGStyleElement;
155
+ export declare const svg: (attrs?: DenormAttrs<SVGSVGElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGSVGElement;
156
+ export declare const svgswitch: (attrs?: DenormAttrs<SVGSwitchElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGSwitchElement;
157
+ export declare const symbol: (attrs?: DenormAttrs<SVGSymbolElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGSymbolElement;
158
+ export declare const text: (attrs?: DenormAttrs<SVGTextElement, SVGTextPresentationAttrs>, ...children: DenormChildren[]) => SVGTextElement;
159
+ export declare const textPath: (attrs?: DenormAttrs<SVGTextPathElement, SVGTextPresentationAttrs>, ...children: DenormChildren[]) => SVGTextPathElement;
160
+ export declare const title: (attrs?: DenormAttrs<SVGTitleElement, object>, ...children: DenormChildren[]) => SVGTitleElement;
161
+ export declare const tspan: (attrs?: DenormAttrs<SVGTSpanElement, SVGTextPresentationAttrs>, ...children: DenormChildren[]) => SVGTSpanElement;
162
+ export declare const use: (attrs?: DenormAttrs<SVGUseElement, SVGPresentationAttrs>, ...children: DenormChildren[]) => SVGUseElement;
163
+ export declare const view: (attrs?: DenormAttrs<SVGViewElement, object>, ...children: DenormChildren[]) => SVGViewElement;
@@ -1,47 +1,6 @@
1
+ import { isNested, propsFromElement, scanAllUnits } from "../dom/dom.js";
1
2
  import { buildPayload, captureStubSource } from "../dom/hydrate.js";
2
3
  import { renderToString } from "../dom/render.js";
3
- /**
4
- * Walk `root` depth-first and return every element whose localName is a
5
- * defined custom element, in document order including nested ones. Descends
6
- * into matched elements so the full set of custom elements is returned.
7
- */
8
- function scanAllUnits(root) {
9
- const results = [];
10
- const stack = [...root.children].reverse();
11
- while (stack.length > 0) {
12
- const el = stack.pop();
13
- if (customElements.get(el.localName)) {
14
- results.push(el);
15
- }
16
- // Always descend — nested custom elements are included in the full set.
17
- for (let i = el.children.length - 1; i >= 0; i--) {
18
- stack.push(el.children[i]);
19
- }
20
- }
21
- return results;
22
- }
23
- /**
24
- * Return true if el has a custom-element ancestor in the given units list.
25
- */
26
- function isNested(el, allUnits) {
27
- let parent = el.parentElement;
28
- while (parent !== null) {
29
- if (allUnits.includes(parent))
30
- return true;
31
- parent = parent.parentElement;
32
- }
33
- return false;
34
- }
35
- /**
36
- * Extract a Record<string,unknown> from an element's attribute list.
37
- */
38
- function attrsToProps(el) {
39
- const props = {};
40
- for (const attr of el.attributes) {
41
- props[attr.name] = attr.value;
42
- }
43
- return props;
44
- }
45
4
  export async function build({ pages, out, fs }) {
46
5
  for (const { route, module } of pages) {
47
6
  const body = await module.default();
@@ -51,7 +10,7 @@ export async function build({ pages, out, fs }) {
51
10
  const template = window.document.createElement("template");
52
11
  template.innerHTML = bodyStr;
53
12
  const allUnits = scanAllUnits(template.content);
54
- const props = allUnits.map(attrsToProps);
13
+ const props = allUnits.map(propsFromElement);
55
14
  if (props.length > 0) {
56
15
  const payload = buildPayload(props);
57
16
  headStr += `<script type="application/json" id="__hydration">${payload}</script>`;
@@ -0,0 +1 @@
1
+ {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.esnext.float16.d.ts","../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../src/assert.ts","../../src/awaitable.ts","../../src/case.ts","../../src/debounce.ts","../../src/range.ts","../../src/result.ts","../../src/diff.ts","../../src/diff.test.ts","../../src/display.ts","../../src/equal.ts","../../src/equal.test.ts","../../src/fs.ts","../../src/fs.test.ts","../../src/fs_node.ts","../../src/generator.ts","../../src/generator.test.ts","../../src/lock.ts","../../src/lock.test.ts","../../src/log.ts","../../src/log.feature.test.ts","../../src/log.test.ts","../../src/result.test.ts","../../src/safe.ts","../../node_modules/typescript/lib/typescript.d.ts","../../node_modules/ts-blank-space/out/index.d.ts","../../src/transpile.mjs","../../src/dom/types/css.ts","../../node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/@types/node/compatibility/index.d.ts","../../node_modules/@types/node/globals.typedarray.d.ts","../../node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../node_modules/@types/node/web-globals/domexception.d.ts","../../node_modules/@types/node/web-globals/events.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/file.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/filereader.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/web-globals/fetch.d.ts","../../node_modules/@types/node/web-globals/navigator.d.ts","../../node_modules/@types/node/web-globals/storage.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/inspector.generated.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/sqlite.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/parse5/dist/common/html.d.ts","../../node_modules/parse5/dist/common/token.d.ts","../../node_modules/parse5/dist/common/error-codes.d.ts","../../node_modules/parse5/dist/tokenizer/preprocessor.d.ts","../../node_modules/entities/dist/esm/generated/decode-data-html.d.ts","../../node_modules/entities/dist/esm/generated/decode-data-xml.d.ts","../../node_modules/entities/dist/esm/decode-codepoint.d.ts","../../node_modules/entities/dist/esm/decode.d.ts","../../node_modules/parse5/dist/tokenizer/index.d.ts","../../node_modules/parse5/dist/tree-adapters/interface.d.ts","../../node_modules/parse5/dist/parser/open-element-stack.d.ts","../../node_modules/parse5/dist/parser/formatting-element-list.d.ts","../../node_modules/parse5/dist/parser/index.d.ts","../../node_modules/parse5/dist/tree-adapters/default.d.ts","../../node_modules/parse5/dist/serializer/index.d.ts","../../node_modules/parse5/dist/common/foreign-content.d.ts","../../node_modules/parse5/dist/index.d.ts","../../node_modules/tough-cookie/dist/index.d.ts","../../node_modules/@types/jsdom/base.d.ts","../../node_modules/@types/jsdom/index.d.ts","../../src/dom/dom.ts","../../src/dom/html.ts","../../src/components/children.ts","../../src/components/accordion.ts","../../src/components/alert.ts","../../src/dom/fc.ts","../../src/components/button_bar.ts","../../src/components/card.ts","../../src/components/form.ts","../../src/components/link.ts","../../src/components/modal.ts","../../src/components/nav.ts","../../src/components/property.ts","../../src/components/tabs.ts","../../src/components/index.ts","../../src/components/components.feature.test.ts","../../src/components/components.test.ts","../../src/dom/css/constants.ts","../../src/dom/css/sizing.ts","../../src/components/inline_edit.ts","../../src/components/logger.ts","../../src/components/select.ts","../../src/components/virtual_scroll.ts","../../src/components/virtual_scroll.test.ts","../../src/dom/svg.ts","../../src/dom/dom.test.ts","../../src/dom/fc.test.ts","../../src/dom/hydrate.ts","../../src/dom/fcc.test.ts","../../src/dom/html.test.ts","../../src/dom/render.ts","../../src/ssg/ssg.ts","../../src/dom/hydrate.test.ts","../../src/dom/index.ts","../../src/observable/observable.ts","../../src/dom/observable.ts","../../src/dom/observable.test.ts","../../src/dom/provide.ts","../../src/dom/render.test.ts","../../src/dom/svg.test.ts","../../src/dom/xml.ts","../../src/dom/css/core.ts","../../src/dom/css/border.ts","../../src/dom/css/fstyle.ts","../../src/dom/types/html.ts","../../src/dom/form/form.ts","../../src/dom/form/form.app.ts","../../src/dom/form/form.test.ts","../../src/dom/navigation/index.ts","../../src/dom/navigation/interceptor.test.ts","../../src/dom/navigation/interceptor.unit.test.ts","../../src/dom/navigation/navigation.test.ts","../../src/dom/navigation/view-transitions.test.ts","../../src/dom/router/router.ts","../../src/dom/router/link.ts","../../src/dom/types/dom.ts","../../src/observable/event.ts","../../src/observable/observable.test.ts","../../src/server/http/response.ts","../../src/server/http/apps.ts","../../src/server/http/css.ts","../../src/server/http/sitemap.ts","../../src/server/http/static.ts","../../src/server/http/typescript.ts","../../src/server/http/index.ts","../../src/server/ws/frame.ts","../../src/server/ws/handshake.ts","../../src/server/ws/index.ts","../../src/server/live-reload.ts","../../src/server/live-reload.test.ts","../../src/server/main.test.ts","../../src/server/main.ts","../../src/server/http/sitemap.test.ts","../../src/server/http/typescript.test.ts","../../src/server/ws/frame.test.ts","../../src/server/ws/handshake.test.ts","../../src/server/ws/index.test.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/rollup/dist/rollup.d.ts","../../node_modules/@rollup/plugin-node-resolve/types/index.d.ts","../../src/ssg/bundle.ts","../../src/ssg/copy-public.ts","../../src/ssg/discover.ts","../../src/ssg/discover.feature.test.ts","../../src/ssg/rewrite.ts","../../src/ssg/main.ts","../../src/ssg/ssg.test.ts","../../node_modules/@types/dom-navigation/ts5.9/index.d.ts","../../node_modules/@types/resolve/index.d.ts","../../node_modules/@types/tough-cookie/index.d.ts"],"fileIdsList":[[115,163,180,181,312],[115,163,180,181],[115,163,174,180,181,209,213,230,231,233],[115,163,180,181,232],[115,160,161,163,180,181],[115,162,163,180,181],[163,180,181],[115,163,168,180,181,198],[115,163,164,169,174,180,181,183,195,206],[115,163,164,165,174,180,181,183],[110,111,112,115,163,180,181],[115,163,166,180,181,207],[115,163,167,168,175,180,181,184],[115,163,168,180,181,195,203],[115,163,169,171,174,180,181,183],[115,162,163,170,180,181],[115,163,171,172,180,181],[115,163,173,174,180,181],[115,162,163,174,180,181],[115,163,174,175,176,180,181,195,206],[115,163,174,175,176,180,181,190,195,198],[115,156,163,171,174,177,180,181,183,195,206],[115,163,174,175,177,178,180,181,183,195,203,206],[115,163,177,179,180,181,195,203,206],[113,114,115,116,117,118,119,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],[115,163,174,180,181],[115,163,180,181,182,206],[115,163,171,174,180,181,183,195],[115,163,180,181,184],[115,163,180,181,185],[115,162,163,180,181,186],[115,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212],[115,163,180,181,188],[115,163,180,181,189],[115,163,174,180,181,190,191],[115,163,180,181,190,192,207,209],[115,163,175,180,181],[115,163,174,180,181,195,196,198],[115,163,180,181,197,198],[115,163,180,181,195,196],[115,163,180,181,198],[115,163,180,181,199],[115,160,163,180,181,195,200,206],[115,163,174,180,181,201,202],[115,163,180,181,201,202],[115,163,168,180,181,183,195,203],[115,163,180,181,204],[115,163,180,181,183,205],[115,163,177,180,181,189,206],[115,163,168,180,181,207],[115,163,180,181,195,208],[115,163,180,181,182,209],[115,163,180,181,210],[115,156,163,180,181],[115,156,163,174,176,180,181,186,195,198,206,208,209,211],[115,163,180,181,195,212],[115,163,180,181,218,219,220],[115,163,180,181,215],[115,163,180,181,214,215],[115,163,180,181,214],[115,163,180,181,214,215,216,222,223,226,227,228,229],[115,163,180,181,215,223],[115,163,180,181,214,215,216,222,223,224,225],[115,163,180,181,214,223],[115,163,180,181,223,227],[115,163,180,181,215,216,217,221],[115,163,180,181,216],[115,163,180,181,214,215,223],[115,163,180,181,311,312],[106,115,163,180,181],[115,128,132,163,180,181,206],[115,128,163,180,181,195,206],[115,123,163,180,181],[115,125,128,163,180,181,203,206],[115,163,180,181,183,203],[115,163,180,181,213],[115,123,163,180,181,213],[115,125,128,163,180,181,183,206],[115,120,121,124,127,163,174,180,181,195,206],[115,128,135,163,180,181],[115,120,126,163,180,181],[115,128,149,150,163,180,181],[115,124,128,163,180,181,198,206,213],[115,149,163,180,181,213],[115,122,123,163,180,181,213],[115,128,163,180,181],[115,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,163,180,181],[115,128,143,163,180,181],[115,128,135,136,163,180,181],[115,126,128,136,137,163,180,181],[115,127,163,180,181],[115,120,123,128,163,180,181],[115,128,132,136,137,163,180,181],[115,132,163,180,181],[115,126,128,131,163,180,181,206],[115,120,125,128,135,163,180,181],[115,163,180,181,195],[115,123,128,149,163,180,181,211,213],[115,163,180,181,234,235,236],[115,163,180,181,234,235],[91,115,163,180,181,235,239],[115,163,180,181,234],[115,161,163,180,181,200,235,248],[115,163,180,181,237,238,241,242,243,244,245,246,247],[115,163,180,181,235,239,252],[91,101,115,163,180,181,235],[115,163,180,181,234,235,239],[115,161,163,180,181,200,235,239,256],[86,115,163,180,181,235,239],[89,115,161,163,180,181,200],[87,88,115,163,180,181],[109,115,163,180,181,251,275],[115,163,180,181,251],[85,109,115,163,180,181],[115,161,163,180,181,200,234,235,258],[83,109,115,163,180,181,232,233],[115,161,163,180,181,200,235,239],[115,161,163,180,181,200,234,235,239,258,261],[115,163,180,181,235,279],[115,161,163,180,181,200,279],[115,163,180,181,234,235,278],[115,161,163,180,181,200,235],[94,115,161,163,180,181,200,235,239,261,265],[115,163,180,181,234,239],[115,163,180,181,235,239],[115,163,180,181,261],[115,161,163,180,181,200,232,233,235,239,261,282],[115,161,163,180,181,200,232,233,282],[115,161,163,180,181,200,235,239,261,282],[115,161,163,180,181,200,234,235,268,269],[115,163,180,181,268],[88,115,163,180,181],[115,161,163,180,181,200,235,239,258,264],[115,163,180,181,235,287],[115,163,180,181,234,288],[115,161,163,180,181,200,234,258],[109,115,163,180,181],[92,115,161,163,180,181,200],[94,115,161,163,180,181,200],[83,115,163,180,181],[94,115,163,176,180,181,185],[97,115,161,163,180,181,200],[99,115,161,163,180,181,200],[101,115,161,163,180,181,200],[91,115,163,180,181],[91,115,163,180,181,268],[115,161,163,180,181,200,268],[83,91,101,115,163,180,181],[88,115,161,163,180,181,200],[101,115,163,180,181],[115,163,176,180,181,185,292,298],[101,115,163,177,180,181,183,185,292,293,294,295,296,297],[115,163,175,176,180,181,298],[115,161,163,175,177,180,181,184,185,200,295],[101,115,163,176,180,181,185,292,298],[115,161,163,175,177,180,181,184,185,200,297],[108,115,163,176,180,181,185,292,298],[115,161,163,176,180,181,184,185,200,302],[115,163,175,176,180,181,183,185,292,298,301],[115,161,163,164,180,181,185,187,200],[101,115,163,180,181,185,187,207,298],[115,161,163,180,181,200,299],[115,161,163,177,180,181,195,200,300],[115,163,168,177,180,181,195],[115,161,163,177,180,181,183,200,301],[115,163,177,180,181,195,299,300],[107,115,163,180,181,185,265,312,313],[115,163,176,180,181,185],[83,115,161,163,180,181,185,200,206,264,316],[115,163,176,180,181,185,265],[96,115,163,176,180,181,185,187,207,212,265,314,315,316,318],[94,115,161,163,180,181,200,235,239,265],[94,115,163,180,181,234,261,264],[107,115,163,180,181]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"75050a0308a3c92af9cbc00858097393fb52dcea2ff2d6c3b0a81f1f345dca0a","signature":"9a4a5be871680d98815c4b2a5c9b81cc87fe105bd0ce4173e658dfd0ceace3ab"},"8175d68354a805ca6dd8564a10ff937a48a8dcd18fca2d8fd74eb27b55e9be00",{"version":"1b34da3536d5f1b18ee6c36173839c58c222dd2313542efda615081eeb9aa9f2","signature":"1166696f6d7c6b6bf21d81a0920c6caca6377948505f77a806903aba41586f00"},{"version":"1f12e2eddd685a2bc9ce31b326e16991cb18f89a9d3ef61dea4fe5922ff46cb8","signature":"8910beb45752f65e53888a6615c1c025e0c47a9287bc41a3b3dcb5f610db901e"},{"version":"d0d9d65cb2b34879b7938e8f51a95c1e9745c8d3a86e64d4bc68566e8848fde4","signature":"c80cd6d23f15ec4e955cb5309270dc901046b294104271e090f96f36bf3be78f"},{"version":"a9f83e0ede548e205af4a813f582da1c4d0eb9506792ead41ea956764480a94a","signature":"98fda69d777eb6ec47bee9d4d66054be1eee1190b88c6fcd4d1747e27860afef"},{"version":"35cc94b11ffc54248eb2503435004c4f41c0634874a0bedfb07d88ae8ffb2a04","signature":"a9c8601578b2ea9382f9153552963ff7d871ebafc4668162dcc12a6dd3d2af74"},{"version":"fb49d0276a45eba66de22c8e6677be36efce176216fd8b4393e2399add1832cf","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f92660f80d3a9ad4305fec6f31e1cca8a38d504ddc1ccec874e7a277ad1781cf","signature":"1c4c3028fb01cc906e7d23506e2b46cf1655b933d19ea346e064faa33eeb2ef8"},{"version":"b3ee4d945382be7f416d71677f535b3da3ac0e64c0e6171e4511169baf36cc2b","signature":"e7e4e91a69c9768fdc40a45fae0119d50273b2318d8ec427f0842a2a6ff6f58b"},{"version":"0dea524c55fc7f30a64d636bc61ba6fbe169d4cee3d7cb906f4f68487e16dee2","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"39eaf8c42d99a593adbf11fe1a94757484766c3d9d0e43dd46e6612f5eaba696","signature":"fa203f7e622e5d2b18d2ee2f15fa373663ee6628b05b1e74d544d5652cd29e95"},{"version":"d17a2a3b0b9f6ea658401dc6b9bc1bedb77071053c2f5352b2f570cdd0e50f3c","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"2c7a51b3b024a94abd4a25be8e3e171877c18dfb64ee2056d681c1893b90930a","signature":"278ea122a14fa121523945a5354b1238c58886454e6e8b9714fcd0773bdca971"},{"version":"d9a8b057c8d8f2c56d8c66a478f2d91ea2490280eeefcb0c9866534b90142cfa","signature":"8c11ef055b90b792d0c680315579747d807bf4c39cf1ca04fb1e4b93d7f7f115"},{"version":"da3e7d0abeb0aa34977b1f76fe391fcfe099354c6a3f75432af3ba72a1239189","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"913641d4e309350a3bf78837eb02278e56fdf346602f50f76ac082bdd66d6e8a","signature":"57f3cf85192cbd3d29037b19b694eb3531b5560e33e8b33c0f53bd272b23fad9"},{"version":"ac30c74062bee7dcdd8d7981ad1ec264c1e4be536ec27b2cf2777ad2a913f410","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"45dcc37a111d4faa68c30230c72f70e1c1f71bec660da52c824586d6043f818d","signature":"27ffecc07401acadbe409fe3381087d0fba2078894f19a83efa703a2221116ba"},{"version":"63e903fdbd3d7b39a6c5f5c3635b15d06246203d53ce2bd0281e84e7f0f4d06e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"969ef67f0cbf938468b8e8db7724e0c60f488685a1ada36be3af8a1dbaf96ead","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"4d25171a81f59ef52b3e3256eb298fa5ec594c69644c6ab350f4504cd820ef07","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"1e40ba99de5e5137c3fb6534e4b9fe77f189ffd09e7ced8ba8e0b562fd63f60f","signature":"5daeef6015e6fab783a62d5e1e007070f41f97afc2fadef10fbe26f7489a3359"},{"version":"e134052a6b1ded61693b4037f615dc72f14e2881e79c1ddbff6c514c8a516b05","impliedFormat":1},{"version":"59c397b60d5a7de82181cd6e494025c47e36a1ddb5003f5f2b2534d312af0c0c","impliedFormat":99},{"version":"1d9f6fa49edb84034a3ff1d0d7d2be380ac1007966047e75d1f1855b7ccb9020","signature":"177af28a70bbab93e5eb1d6a4b79bd5fdc122824f8ec130273a17e2ab1f886dd","impliedFormat":99},{"version":"06dc743f9070b48f6958dc9e6fc0000424de804982906b7ba9e17083bb2574c9","signature":"1474e3a2149f94378f0962d5545304644ab344c9d178d730e06aef6ae8163d65"},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"58647d85d0f722a1ce9de50955df60a7489f0593bf1a7015521efe901c06d770","impliedFormat":1},{"version":"73b5fa37db36eeac90c4d752e39586f1b57187400c4f5280fd05f16437287a45","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"a6f137d651076822d4fe884287e68fd61785a0d3d1fdb250a5059b691fa897db","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"bceb58df66ab8fb00170df20cd813978c5ab84be1d285710c4eb005d8e9d8efb","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"80523c00b8544a2000ae0143e4a90a00b47f99823eb7926c1e03c494216fc363","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"746911b62b329587939560deb5c036aca48aece03147b021fa680223255d5183","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c8d3e5a18ba35629954e48c4cc8f11dc88224650067a172685c736b27a34a4dc","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"2b55d426ff2b9087485e52ac4bc7cfafe1dc420fc76dad926cd46526567c501a","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"358765d5ea8afd285d4fd1532e78b88273f18cb3f87403a9b16fef61ac9fdcfe","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1},{"version":"19990350fca066265b2c190c9b6cde1229f35002ea2d4df8c9e397e9942f6c89","impliedFormat":99},{"version":"8fb8fdda477cd7382477ffda92c2bb7d9f7ef583b1aa531eb6b2dc2f0a206c10","impliedFormat":99},{"version":"66995b0c991b5c5d42eff1d950733f85482c7419f7296ab8952e03718169e379","impliedFormat":99},{"version":"9863f888da357e35e013ca3465b794a490a198226bd8232c2f81fb44e16ff323","impliedFormat":99},{"version":"84bc2d80326a83ee4a6e7cba2fd480b86502660770c0e24da96535af597c9f1e","impliedFormat":99},{"version":"ea27768379b866ee3f5da2419650acdb01125479f7af73580a4bceb25b79e372","impliedFormat":99},{"version":"598931eeb4362542cae5845f95c5f0e45ac668925a40ce201e244d7fe808e965","impliedFormat":99},{"version":"da9ef88cde9f715756da642ad80c4cd87a987f465d325462d6bc2a0b11d202c8","impliedFormat":99},{"version":"b4c6184d78303b0816e779a48bef779b15aea4a66028eb819aac0abee8407dea","impliedFormat":99},{"version":"db085d2171d48938a99e851dafe0e486dce9859e5dfa73c21de5ed3d4d6fb0c5","impliedFormat":99},{"version":"62a3ad1ddd1f5974b3bf105680b3e09420f2230711d6520a521fab2be1a32838","impliedFormat":99},{"version":"a77be6fc44c876bc10c897107f84eaba10790913ebdcad40fcda7e47469b2160","impliedFormat":99},{"version":"06cf55b6da5cef54eaaf51cdc3d4e5ebf16adfdd9ebd20cec7fe719be9ced017","impliedFormat":99},{"version":"91f5dbcdb25d145a56cffe957ec665256827892d779ef108eb2f3864faff523b","impliedFormat":99},{"version":"052ba354bab8fb943e0bc05a0769f7b81d7c3b3c6cd0f5cfa53c7b2da2a525c5","impliedFormat":99},{"version":"927955a3de5857e0a1c575ced5a4245e74e6821d720ed213141347dd1870197f","impliedFormat":99},{"version":"fec804d54cd97dd77e956232fc37dc13f53e160d4bbeeb5489e86eeaa91f7ebd","impliedFormat":99},{"version":"ef5a2229cc377ddd1b8d3fb498b161d6d47ca2d8fa5857b9cfee5ab6b945b687","impliedFormat":99},{"version":"1e00db245ee0a8b165a7ed7eebc9b9666b3836fe61b742149392010eed018814","impliedFormat":1},{"version":"af11413ffc8c34a2a2475cb9d2982b4cc87a9317bf474474eedaacc4aaab4582","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a234faf1a5897cf645f47111e2ed12ff9ec255f8c14f9c240ba2501b75d14d3","signature":"d4badf6e5ba13ef172241f1fa069f3cddd27a98fa7fb7f2d4d43e7b68f164f15","affectsGlobalScope":true},{"version":"b43d18f49373ea1813d8b471581ea268ee7c5e064b77c4c92ae132c4baebbfaa","signature":"073f4acb6879360890becd484a48d59b2781eeb90ec684026d1be7932883379a"},{"version":"a625f6ebd9c889d73b3f0387b58b20a9134dbd1cdddb995063cc108f434d94d7","signature":"0bc93f3a562630329d928ae330c54bd08a074aa9cae8cd17b965edd457b979a8"},{"version":"5813e082d944dfa12755b79842da674ea6e0472b29633e0d67fff40c181907af","signature":"c4f516c63b03784beed76091b18f22d95f2cd4605dcfd0cfe11f39216578ebd6"},{"version":"8de894939a3115539e39a1685c4d9749b78f72fd19b58068b1497e42726061cb","signature":"54153284a5846ef33ee77484df716555ec453aaec249af50eb0e83dbb950f6bf"},{"version":"c5035a2240e25b7d9c1ddfecd706e34339b2d87ab8cd8e797e3d4f5a620a63d3","signature":"66d5d78241cbea189209fc69d72d25275665aa73037978c79dc1a1a8a91ad48e"},{"version":"d891ae44685d2ed85ca66bab3b0230f6dd37e5ef5bc0e2b27963aecca723fc94","signature":"26150ac03460b398a285ef24e592b48b211c6a14febd2f20a07910170322afe1"},{"version":"fd7bbc231008c780db7114040962dd0b611645caad7574e47c30944dd57bee05","signature":"f3933340d8783303aab6d496f6d790fd4f23a3a78c6b0cf5ac9268d100e238d1"},{"version":"f915624d4085d4d106ea34eb23116f34a50bf43e5643f50a966b3f33168485e1","signature":"8476bf9654a55f70510582da019b3f92e1656842a69656c123e2334dc4bc6a99"},{"version":"6aa9629a2ccc0a8449cdb90e8d8accdff90a0b2734d05051540c0e2ffa05750a","signature":"6af91ac25da2ad303814a29da116aa301b460f6b08b4952d67e085bd96f610e5"},{"version":"382ba90b9310fbc3b3a794336a455fb00815fd7f33dff78cc9164846425d5136","signature":"d535c6221e4878c3a92c9fcce4fa6d41059f3823367190561c5103e944644e43"},{"version":"836731e19e57eac6ec3aa98791707785bf2601479b71087d1970ef422a1aa834","signature":"f1661260b4428700c6916f624733e6ef5cbb6216b61a501b39e0756cb17216db"},{"version":"f6e4da59d48ecb364945247b34b2db0590e4cf8f92a63dc355f1da2303b03dfb","signature":"99b6eb3988874fd1bde542702636ce497f4132638350d82c8dbcce82f1b8e868"},{"version":"11ebf566f1123232cde702090298833b0a394ab1625297af592e931d62b2ff21","signature":"afeff69a9e0dec7f3e6272424eae31f9026a3ceeb41097861828033b7a74ec7b"},{"version":"375ee751c7f524ff7e93dda8b68bab49642e14ae5d7d71290197c2af4153e043","signature":"3dea06e94cd0c96a5191b2838ad2338faca536caaa9e09aed0e3caa0cb4ad18f"},{"version":"6af7d88e6242a40edabe99097f563aca8c4c618dfa75da67ca89aa0a6da0f31e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"eec3125f675bad43de550839f9054f6f5c7d8839dae5bc2c4db1b3cb29cc8362","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"a412c2527733835920aefb27b3b89a406845fca19e9b28dc69265036f4b9c796","signature":"ae4a1deb65a8dae8a38d6a6d0defed5ab253ad14121248f083cb16f4e801de86"},{"version":"19a2c8bc4812d51e96fbb91dc9e35d6be7cb1b813dc08dbf51ceee38a59a55f5","signature":"c3924aaca6d81588577d6f219b34c852c4b8120102ba8ff1be9c784bb2b85942"},{"version":"2912f8d38b06a69a423b29d810767419429636f249578677fd43a558621c8fd3","signature":"2f55ff36d145b4e9b8fcb09d4532db48eac461a34618bb740a4bbe0f1a975202"},{"version":"59286529fe7df00085b8c4f175686e120218f18a2fa999e86155d5aa1e7f4ca3","signature":"39e9ec4c2b6eaf4dc29973770ed1ab98294987dbe009cd9afaa933fa2d59cd27"},{"version":"3dbadd8fa5cae3faa30208731464d834fc43bc2998863d871c361d617d4b57a2","signature":"2149bd521d278206e2f19d407c3fabe76168094616faca3ae9cd32aa898b15c9"},{"version":"3ac3f5eaac0e867419cf009245767a4a1464739de05e8074ff1a32eda038012c","signature":"8119d1079ad2f0970bbef6252f8c195e86e0c36c5844a7192aa8492292411c86"},{"version":"678351037b118a5d3ac7b943a49c4e9b6efc99de23ddb394b1fee0274cfd290d","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7bd076d57999156d83cbed318ec1e8c65a9e01d92be871db76a6ee7795b6bdcb","signature":"97f6f4c303bd36cc7d5f8fab4d6772018ba840fa93b6326244d1acf1d63996df"},{"version":"e43fe9f6c2ece518d37ac8a1687a5e8b31df73d75fd67a7f2c228e6e5f8cdf04","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"294cd7556f617d4ca0ede45c310519d325e33b8ca24d0993ecde14e27cd1f48e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"4a4f2a9d1ab93964e0c43bf9f5511e1420b6191ac9bfc001f5bb3defc8ea9a04","signature":"1731bc6780c0b662c7b48d9247eb978ca94f77295e80de4c53b49a38056885cc"},{"version":"bfda1f78cad8e4679343ac86c82ac9736642329230e1ad7f225397ad9a82518f","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"c47bf187472f8cc395234e41abf00c299b4ea5348e2358163378cfbab4789bd0","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"dff620d69b4472ac830c94b968e073388132496388a139be1ec5b4e75708163b","signature":"32990c3a39ebe8db028e5836e45c9be86a7ff2e745e0369f012dff30d4b685ac"},{"version":"613e3434a31fee2c777ed79f8f13cdec3c2a7aee7cc0e93b3d86df094920880e","signature":"c6685a756ff099911eb592bf5ccdb1e70b6ff4dd41d261c401b0cdcb3572b697"},{"version":"c5029d726ae5ed5d705a5f04e608b121084acfc67416693bd11b4c8e9bc6389e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"68b9c64450d7ef66e80779849bf74b8726f9fe51cb27604f6713d87f6be43bf0",{"version":"cdf71a017ff8fdb6eb41775c7cb0a0d422f82327ac0245ef4daa8dd203a1628f","signature":"2aa63de3f1a6a9a83eefa682da30fe12c294c69373609b85c709c5efe8d00473"},{"version":"616fbd302ce247bc01a3d3d1431d69a3e9ede0e5eabbb005ade166df30aed6c8","signature":"be64ca3f48232b4b1979458434ea59b5d0b60faad8b445418f8c51551634f1b5"},{"version":"4bccaf13c5e3ddc25bee426c6be0a1686190481b69376dbfc12d526e86b608a1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"c56694ca060b4757000d151236e3e564ad194e986a7974d226d908871f41bbe7","signature":"8ecdd5e51d595b377fd38f823cfe55377aefc8488174245a70045d138a3f755f"},{"version":"4b4384f472b35a373a5f3eb9ef2416072ddce046317254752a80bc102e15ca3d","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"43687ac6f92e42873a418d46e953ac6892cba76517be9516e18b450690aed6b1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"65bd4212ecd58f12dad7359606a37f3133a84bd227f80bae437c6f8d6ea8a0d4","signature":"35ddb3737f44d680172ab064727225df06457b52a2fd7df487bf5e9f12e8b77e"},{"version":"7747ae6bdf53316ce83c0d501babb764efd795e2833ab7428206c6feb212713b","signature":"6cb89daa6924407c49cd70fe15d20ff4cad9035f283ab1f30cb846e70dd68d8f"},{"version":"abc81df5c80569486bf26f79655015e6462ff37567b38f18a51eaf6a7c2acc48","signature":"dff2df51fa8aa99de5f17bcccbf3d187b57ee109ac0dc14aa1eb29e7ca75069c"},{"version":"d8372d8fb3f3b2f46a7bf90766abdc2d22aa6241a05d94ff1de10ccdb720573e","signature":"9c2e4c055e2cf3ec29e255580f8947727f76b32dcdfb3e84c8b6da3bb2023cab"},{"version":"b062c06627e5497f5f663d97fb6cbaa5ea0f90ee13e27e6a599e6568892ab61b","signature":"1e5df85333c318a42d5dc1182dcf9d7dd1e31e822560ef8001d469ee9e8b04b3"},{"version":"5678c9e46dc73e3b0bcafebb8236c62c92e71558759c1f2e2ee58619e7c7bc9c","signature":"9636c0f44a18d21afaa06801a1ee2f4c8be2b9dd1716ae3bbcf40ad47be1ba6b"},{"version":"7e3c4b701787039f0af285b97281be1efbfd70019fc5e2f6786624ef10cd978e","signature":"7ddc765edfa0420999a079eb7df3fe76add77a26267764e0da1e8d72517ef2ea"},{"version":"ac15126b210a8def94959c83f1ee4ab5b8cc5c065d69f5e6c69c0c9b67092b7b","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"5397e7dcd96a901e150d9893be355145f767d3775d6aac81818216d4e61f34d7","signature":"65c2bbb13168e3e23478140aa54f770839223c3c473f9acf9cfc534c79a3051a"},{"version":"84e2a8809f36babc3a95dee9868ca840ec3b0a407d371c2508c06dd7e30f1bb1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"9fe25edbda141b4458611f3d9e2a2f0809e2ccf79dfccba9d3f58d1e9d26f109","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"df643a96779e38f979c7d3893be3a8e8bc5b1b7915f3e493d31f9dd3ca6729b4","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"df19cb106c507274033aa3f6a88e289edb82f10970b0b2221e69d10cd6a76bad","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"a0475f76600562a54c9f2375c98fc5cd9eec11e93d7b5468a75dd0cf12fec918","signature":"22bb0c0adbc8118b97658169c95d99efa81eb4d740e8510ef38b4675c5207fe8"},{"version":"ed0c740b9935fcbc2dafd04e39822b6e5135a48124f8b8a398a8b30ad520c81c","signature":"3ccda02e5750bdce0447dbf7e597a2eb16258dfa6c9c0c19572fd117f303dabb"},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"bc35c3416c458b39fab26aa0e41088482520c25743b04b5886bfbddbaf53255d","signature":"3b3835be5cec4f10afac1ab08c6ca29d936e266815c18add6416b42490c2ab60"},{"version":"b2435b0a45dd0dbd3eb7efbcdceda2b6c44f31f7fa19d46a566cd9418fdd67e8","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"f9b7ada2b59bbc1e05699151b89edcc4c32db22d8addbb341dd110e6fd04189a","signature":"4c39f9454455f8080a9b90a2299922bcf1eaffdc75d47ed4e4e8bf22bb222a9c"},{"version":"34dd0eb39b39c04e8c113d85f5d78d03d1eb9a25a0abb2ef1d97579b67c8cd0c","signature":"c9cb10a23430ff60f2713e99565d049b967d1a92e0aec9172df18f5ef0b557c4"},{"version":"f62462320746ef4f046970cc747f093a30b074434f3f19cb8462249a9390c899","signature":"c2b4712eaa37160174ba486a510ae4fa5fde9eb4413363f83add16a14687a281"},{"version":"5a04cec6c9e28df2a0584f02b1d5958880ffa828e1add1ec60b4b9248dc81fbe","signature":"315f8b6f95777ad5e0b811c8395f02e7a0f3c85d1fa313d931a32bd931d0164c"},{"version":"67409cbd3175ef4c1a7b042319c65aa3ce441ff5b7ea42553d131560c9aac21d","signature":"e7224a557e708e7a85fb429caf6edd3e880f0255f535a8ccdb273a84ed82edcb"},{"version":"cc809060330438b63a23a22f165f6ccee25294d942cbd0fe82e36e033ebfee04","signature":"80d68ea81cff722be83188eca96e3e5139c2e2bb4ff6968dba8e1cf3078e4ff7"},{"version":"9d9721df212fa423b1ad1f8fb54ee69a68d5f0080e0abaf883665f8414127638","signature":"98372b804a9135b6d791c3add57bceddde9b671f1ffce63da5e0ed04f9beec69"},{"version":"136ce18ea540fec868a17e57c9296102314d052bf100bd4ef85ad6bb14bc15a6","signature":"a2f69153d64011763cf73f2af66274e9105172d88a1bcf0a4b5b7087d229ae12"},{"version":"1d004806e93c72bcd3ddc39f3da21550eb367835b18735742b98ca031746f506","signature":"dd652d1f9daadcc22eb51c98b1d51d8c0a8c08be8df954e58d1e655998d16417"},{"version":"e1e6d74e46aba6a3a237892e995730e615e18512131b1e7e6d6ad62b52e4e836","signature":"5144143517f54424f44c2464c87c91b401de4a232980d0032983c69c7d197fcd"},{"version":"c73a19bbd61bc2d16521b8a7a2fb316341f75244725b7ab886022c7b692c3f48","signature":"776b9a728c706cdbc5b9eb17d5dafe2c343f1c9c069164c601e970279a595e0e"},{"version":"c117e4e9228d274fd6cd80b47594a732d153cd1bd536c9062d03265c014a37f5","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"98d2f0a15d5513c7ffef4d5489deacf6417e52bfd81c738dc9eb0ce976d381e6","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"14ecdc6e18d6b4c5cb1dff3ce79e93851cf02a25cfa007e40772137fe26acce3","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"68e7900d7512cbef725838e76ea9499facab104ce38a43f22ccb1a9527c00da8","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"83792b2fe60434fb80b8522d2b2b60f745b88677d5b20fa663e65a857abe5ec3","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"cbeb9e4ded53499c529f8149000ee3cde52e8668e6c4f97a38807b49f40eeea8","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"4e3e35668d48c5e4240e82454cfd1c24be7b7a34e7fd0fd8a64e5407039f88c9","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7d2c002b15f2f72707954f3df90adef8fc02bd86fe73d9c6fde604d6a2565b9d","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"751764bb94219b4ce8f5475dc35d3de2e432fea01a0c9610cd7f69ad05e398c6","impliedFormat":1},{"version":"ee70b8037ecdf0de6c04f35277f253663a536d7e38f1539d270e4e916d225a3f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1f80c9199cf76a9ccdabff0de44dd6936a11ec224ea2fba0e1b678c8edeca7ba","impliedFormat":1},{"version":"4d74edb96a327cd5086720b13896ef29c809aaf6ddc71590e26df9a07e73ecef","signature":"c3cf9267b691e015db81c6b775a1bafd5b087ceab88807cd5a84587457e33598"},{"version":"0c503acf10dd2ba045a36b15596364da547f8236cc1a4452d0b191b42ded6ccf","signature":"7512c3d280393ba0ff760a0ae04cf96e9d47f83eb6702260d00b2cab34702941"},{"version":"475c6119337479ef473cb2da68cf9624de1db025653317463e641785c299be9b","signature":"3af9881061dc0076ad39c82ed96515b763ea38778bab5d6bbd0fbee0e5e5cfd4"},{"version":"faa5d69ae91889eebc34fc19ed1709228d87e6693f93b3a6abbe3aa3418aecb1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7d44cd5ad7bb88d8a644331941c621706a936167da8f02cf045616ea6347281f","signature":"d1fde9b6554bdd88d78817eea41f442f8d07cc0005e179e374c33e4e0cbb9319"},{"version":"dda16dc5466e98f9b37d3007cba23e88d6c463a82a1c5a60192a557292c5770c","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"e793d54c567e9ac611e6070886616bd12fe12d56db4377dd3bc3f5544e924c18","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"656b72f11074b854453f3a82ce31b4e2c1a1cbd351c83bb3cc6c13fc723fbb87","affectsGlobalScope":true,"impliedFormat":1},{"version":"8baa5d0febc68db886c40bf341e5c90dc215a90cd64552e47e8184be6b7e3358","impliedFormat":1},{"version":"03c258e060b7da220973f84b89615e4e9850e9b5d30b3a8e4840b3e3268ae8eb","impliedFormat":1}],"root":[[83,105],108,109,[234,310],[314,320]],"options":{"allowImportingTsExtensions":true,"allowJs":true,"allowUnreachableCode":false,"allowUnusedLabels":false,"checkJs":true,"declaration":true,"emitDeclarationOnly":true,"erasableSyntaxOnly":true,"exactOptionalPropertyTypes":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"outDir":"./","skipLibCheck":true,"strict":true,"target":99},"referencedMap":[[313,1],[321,2],[311,2],[232,3],[233,4],[160,5],[161,5],[162,6],[115,7],[163,8],[164,9],[165,10],[110,2],[113,11],[111,2],[112,2],[166,12],[167,13],[168,14],[169,15],[170,16],[171,17],[172,17],[173,18],[174,19],[175,20],[176,21],[116,2],[114,2],[177,22],[178,23],[179,24],[213,25],[180,26],[181,2],[182,27],[183,28],[184,29],[185,30],[186,31],[187,32],[188,33],[189,34],[190,35],[191,35],[192,36],[193,2],[194,37],[195,38],[197,39],[196,40],[198,41],[199,42],[200,43],[201,44],[202,45],[203,46],[204,47],[205,48],[206,49],[207,50],[208,51],[209,52],[210,53],[117,2],[118,2],[119,2],[157,54],[158,2],[159,2],[211,55],[212,56],[322,2],[323,2],[220,2],[221,57],[218,2],[219,2],[216,58],[229,59],[214,2],[215,60],[230,61],[225,62],[226,63],[224,64],[228,65],[222,66],[217,67],[227,68],[223,59],[312,69],[231,2],[107,70],[81,2],[82,2],[13,2],[14,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[25,2],[26,2],[4,2],[27,2],[31,2],[28,2],[29,2],[30,2],[32,2],[33,2],[34,2],[5,2],[35,2],[36,2],[37,2],[38,2],[6,2],[42,2],[39,2],[40,2],[41,2],[43,2],[7,2],[44,2],[49,2],[50,2],[45,2],[46,2],[47,2],[48,2],[8,2],[54,2],[51,2],[52,2],[53,2],[55,2],[9,2],[56,2],[57,2],[58,2],[60,2],[59,2],[61,2],[62,2],[10,2],[63,2],[64,2],[65,2],[11,2],[66,2],[67,2],[68,2],[69,2],[70,2],[1,2],[71,2],[72,2],[12,2],[76,2],[74,2],[79,2],[78,2],[73,2],[77,2],[75,2],[80,2],[106,2],[135,71],[145,72],[134,71],[155,73],[126,74],[125,75],[154,76],[148,77],[153,78],[128,79],[142,80],[127,81],[151,82],[123,83],[122,76],[152,84],[124,85],[129,86],[130,2],[133,86],[120,2],[156,87],[146,88],[137,89],[138,90],[140,91],[136,92],[139,93],[149,76],[131,94],[132,95],[141,96],[121,97],[144,88],[143,86],[147,2],[150,98],[83,2],[84,2],[85,2],[237,99],[238,100],[240,101],[241,99],[236,102],[249,103],[250,103],[242,100],[248,104],[253,105],[243,100],[254,106],[244,100],[245,100],[246,99],[255,107],[247,100],[257,108],[256,109],[86,2],[90,110],[89,111],[91,2],[276,112],[251,2],[275,113],[277,114],[252,113],[259,115],[234,116],[260,117],[239,102],[262,118],[280,119],[281,120],[279,121],[263,122],[235,102],[266,123],[261,124],[267,125],[282,126],[283,127],[284,128],[285,129],[286,127],[270,130],[269,131],[271,132],[272,133],[264,102],[288,134],[287,135],[273,136],[258,102],[109,2],[289,2],[278,137],[274,2],[93,138],[92,2],[95,139],[94,140],[96,141],[98,142],[97,2],[100,143],[99,2],[102,144],[103,144],[101,145],[290,146],[291,147],[268,148],[87,2],[104,149],[88,2],[105,150],[293,151],[294,151],[298,152],[292,153],[306,154],[295,155],[296,151],[307,156],[297,157],[303,158],[302,159],[304,160],[305,161],[308,162],[299,2],[309,163],[300,164],[310,165],[301,166],[314,167],[315,168],[317,169],[316,170],[319,171],[318,2],[320,172],[265,173],[108,174]],"affectedFilesPendingEmit":[[83,16],[84,16],[85,16],[237,16],[238,16],[240,16],[241,16],[236,16],[249,16],[250,16],[242,16],[248,16],[253,16],[243,16],[254,16],[244,16],[245,16],[246,16],[255,16],[247,16],[257,16],[256,16],[86,16],[90,16],[89,16],[91,16],[276,16],[251,16],[275,16],[277,16],[252,16],[259,16],[234,16],[260,16],[239,16],[262,16],[280,16],[281,16],[279,16],[263,16],[235,16],[266,16],[261,16],[267,16],[282,16],[283,16],[284,16],[285,16],[286,16],[270,16],[269,16],[271,16],[272,16],[264,16],[288,16],[287,16],[273,16],[258,16],[109,16],[289,16],[278,16],[274,16],[93,16],[92,16],[95,16],[94,16],[96,16],[98,16],[97,16],[100,16],[99,16],[102,16],[103,16],[101,16],[290,16],[291,16],[268,16],[87,16],[104,16],[88,16],[105,16],[293,16],[294,16],[298,16],[292,16],[306,16],[295,16],[296,16],[307,16],[297,16],[303,16],[302,16],[304,16],[305,16],[308,16],[299,16],[309,16],[300,16],[310,16],[301,16],[314,16],[315,16],[317,16],[316,16],[319,16],[318,16],[320,16],[265,16],[108,16]],"version":"5.9.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@davidsouther/jiffies",
3
- "version": "2026.24.4",
3
+ "version": "2026.26.0",
4
4
  "private": false,
5
5
  "displayName": "JEFRi Jiffies",
6
6
  "type": "module",