@rydr/game-sdk 8.9.0 → 8.10.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.
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Overlay boxes — the DOM half of overlay mode.
3
+ *
4
+ * `session.overlay` is transport: it moves box declarations out and host answers in, and draws
5
+ * nothing. This module is what actually puts boxes on screen, measures them, drags them and keeps
6
+ * the host told where they are. Same division as `mountOptionMenu` in `@rydr/game-sdk/ui`, and it
7
+ * is deliberate — a game with its own renderer can use the transport directly and ignore this.
8
+ *
9
+ * It lives behind the `./overlay` subpath so the main entry stays free of DOM: a headless consumer
10
+ * (a test, a server-side tool) can import the protocol types without pulling a document in.
11
+ *
12
+ * WHAT THE GAME STILL OWNS: the content. Each box hands back a `body` element and this module never
13
+ * writes to it. That is the whole point of overlay mode — only the game knows what a workout target
14
+ * or a compliance band should look like.
15
+ *
16
+ * COORDINATES. A box's stored position is a FRACTION of the guest viewport, so it survives a
17
+ * resolution change; its size is CSS pixels, because content is laid out in pixels. Rectangles go
18
+ * out in CSS pixels relative to that same viewport, which is what the host's cursor hit test needs.
19
+ * That mapping assumes the guest fills the host window — true when the shell sizes the game frame
20
+ * to the viewport, and the shell is expected to verify it before entering overlay mode rather than
21
+ * shipping boxes that hit-test somewhere else.
22
+ */
23
+ import type { OverlayBoxPlacement, OverlayBoxRect, OverlayBoxSpec } from "../protocol/overlay.js";
24
+ /**
25
+ * The slice of the session this module needs.
26
+ *
27
+ * A structural type, not `PlatformSession`, for the same reason `OptionMenuSession` is: a showcase
28
+ * page or a test can pass a hand-written stub and see real boxes with no platform in the loop.
29
+ */
30
+ export interface OverlaySession {
31
+ overlay: {
32
+ readonly supported: boolean;
33
+ readonly active: boolean;
34
+ defineBoxes(boxes: OverlayBoxSpec[]): void;
35
+ publishRects(rects: OverlayBoxRect[]): void;
36
+ setDragging(dragging: boolean): void;
37
+ moveBox(id: string, x: number, y: number): void;
38
+ onStateChange(cb: (active: boolean) => void): () => void;
39
+ onLayout(cb: (placements: Record<string, OverlayBoxPlacement>) => void): () => void;
40
+ };
41
+ }
42
+ /** One live box. `body` is yours to render into; everything else is managed here. */
43
+ export interface OverlayBoxHandle {
44
+ readonly id: string;
45
+ /** Render the box's content in here. This module never touches its children. */
46
+ readonly body: HTMLElement;
47
+ /** Hide or show this box without redeclaring the set. */
48
+ setVisible(visible: boolean): void;
49
+ readonly visible: boolean;
50
+ }
51
+ export interface OverlayBoxesHandle {
52
+ readonly boxes: readonly OverlayBoxHandle[];
53
+ get(id: string): OverlayBoxHandle | undefined;
54
+ /** Replace the whole set. Boxes whose id survives keep their element, and their content. */
55
+ define(specs: OverlayBoxSpec[]): void;
56
+ /** Remove the layer and unsubscribe. Safe to call twice. */
57
+ dispose(): void;
58
+ }
59
+ export interface OverlayBoxesOptions {
60
+ /** Where to mount the layer. Default `document.body`. */
61
+ host?: HTMLElement;
62
+ /**
63
+ * Let the rider drag a box to reposition it. Default true.
64
+ *
65
+ * Pass false for a game that positions boxes itself; the host still hit-tests them, so they
66
+ * remain clickable, they just don't move.
67
+ */
68
+ draggable?: boolean;
69
+ }
70
+ export declare function mountOverlayBoxes(session: OverlaySession, specs: OverlayBoxSpec[], options?: OverlayBoxesOptions): OverlayBoxesHandle;
71
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/overlay/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAElG;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE;QACP,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;QAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QAC3C,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QAC5C,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;QACrC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAChD,aAAa,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;QACzD,QAAQ,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;KACrF,CAAC;CACH;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,yDAAyD;IACzD,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC5C,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC9C,4FAA4F;IAC5F,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACtC,4DAA4D;IAC5D,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAoCD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,GAAE,mBAAwB,GAChC,kBAAkB,CA0OpB"}
@@ -0,0 +1,242 @@
1
+ const STYLE_ID = "rydr-overlay-css";
2
+ /** Self-contained: this module does not pull in the `./ui` stylesheet, so it stays standalone. */
3
+ function injectCss() {
4
+ if (typeof document === "undefined" || document.getElementById(STYLE_ID))
5
+ return;
6
+ const style = document.createElement("style");
7
+ style.id = STYLE_ID;
8
+ style.textContent = `
9
+ .rydr-overlay-layer{position:fixed;inset:0;pointer-events:none;z-index:60}
10
+ .rydr-overlay-layer[hidden]{display:none}
11
+ /* Only the boxes take the pointer. The layer covers everything, so making IT interactive would
12
+ swallow every click the host meant to let through. */
13
+ .rydr-overlay-box{position:absolute;pointer-events:auto;box-sizing:border-box;
14
+ display:flex;align-items:stretch;justify-content:stretch}
15
+ .rydr-overlay-box[hidden]{display:none}
16
+ .rydr-overlay-box[data-draggable="true"]{cursor:grab}
17
+ .rydr-overlay-box[data-dragging="true"]{cursor:grabbing;user-select:none}
18
+ .rydr-overlay-body{flex:1;min-width:0;min-height:0}
19
+ `;
20
+ document.head.appendChild(style);
21
+ }
22
+ export function mountOverlayBoxes(session, specs, options = {}) {
23
+ injectCss();
24
+ const host = options.host ?? document.body;
25
+ const draggable = options.draggable !== false;
26
+ const layer = document.createElement("div");
27
+ layer.className = "rydr-overlay-layer";
28
+ // Hidden until the host says overlay mode is on, so declaring boxes early cannot leave them
29
+ // floating over the game's ordinary screen.
30
+ layer.hidden = !session.overlay.active;
31
+ host.appendChild(layer);
32
+ const boxes = new Map();
33
+ /** The rider's stored overrides, remembered so a later `define()` still honours them. */
34
+ let placements = {};
35
+ let disposed = false;
36
+ let rectFrame = 0;
37
+ /**
38
+ * The box a fraction is a fraction OF.
39
+ *
40
+ * The LAYER's own size, not the window's. In a game they are the same thing — the layer is
41
+ * `position: fixed; inset: 0` — but a showcase page that mounts the layer inside a panel would
42
+ * otherwise place boxes by the window and scatter them outside it. Measuring what we actually
43
+ * position within is both correct there and identical here.
44
+ *
45
+ * Published rectangles are unaffected: `getBoundingClientRect` is already viewport-relative,
46
+ * which is what the host's cursor hit test needs.
47
+ */
48
+ function viewport() {
49
+ const r = layer.getBoundingClientRect();
50
+ return { w: r.width || window.innerWidth || 1, h: r.height || window.innerHeight || 1 };
51
+ }
52
+ function place(box) {
53
+ const { w: vw, h: vh } = viewport();
54
+ box.el.style.left = `${Math.round(box.x * vw)}px`;
55
+ box.el.style.top = `${Math.round(box.y * vh)}px`;
56
+ box.el.style.width = `${box.w}px`;
57
+ box.el.style.height = `${box.h}px`;
58
+ box.el.hidden = !box.visible;
59
+ }
60
+ /**
61
+ * Tell the host where the boxes are — coalesced to one report per frame.
62
+ *
63
+ * Every move, resize and visibility change would otherwise post its own message, and a drag
64
+ * fires per pointer event.
65
+ */
66
+ function publish() {
67
+ if (disposed || rectFrame)
68
+ return;
69
+ rectFrame = requestAnimationFrame(() => {
70
+ rectFrame = 0;
71
+ if (disposed)
72
+ return;
73
+ const rects = [];
74
+ for (const box of boxes.values()) {
75
+ // An invisible box must not be grabbable: there is nothing on screen to aim at, and the
76
+ // host would hand over the mouse for a click the rider aimed at whatever is behind.
77
+ if (!box.visible)
78
+ continue;
79
+ const r = box.el.getBoundingClientRect();
80
+ rects.push({ id: box.spec.id, x: r.left, y: r.top, w: r.width, h: r.height });
81
+ }
82
+ session.overlay.publishRects(rects);
83
+ });
84
+ }
85
+ function effective(spec) {
86
+ return placements[spec.id] ?? {};
87
+ }
88
+ function applyPlacement(box) {
89
+ const p = effective(box.spec);
90
+ box.x = p.x ?? box.spec.x;
91
+ box.y = p.y ?? box.spec.y;
92
+ box.w = p.w ?? box.spec.width;
93
+ box.h = p.h ?? box.spec.height;
94
+ // The GAME's visibility wins when it says hidden: a rider override may only reveal a box the
95
+ // game is willing to show, never force one it has deliberately taken away.
96
+ box.visible = box.spec.visible && (p.visible ?? true);
97
+ place(box);
98
+ }
99
+ function attachDrag(box) {
100
+ if (!draggable)
101
+ return;
102
+ box.el.dataset["draggable"] = "true";
103
+ box.el.addEventListener("pointerdown", (event) => {
104
+ if (event.button !== 0)
105
+ return;
106
+ const start = box.el.getBoundingClientRect();
107
+ const grabX = event.clientX - start.left;
108
+ const grabY = event.clientY - start.top;
109
+ box.el.dataset["dragging"] = "true";
110
+ box.el.setPointerCapture(event.pointerId);
111
+ // The host holds the mouse for the whole gesture; without this it would take it back the
112
+ // moment the cursor left the box and the drag would end mid-flight.
113
+ session.overlay.setDragging(true);
114
+ event.preventDefault();
115
+ const move = (e) => {
116
+ const { w: vw, h: vh } = viewport();
117
+ // Clamped so a box cannot be dropped off-screen: there is no window frame to drag it back
118
+ // by, and the only recovery would be resetting the layout.
119
+ const left = Math.min(Math.max(e.clientX - grabX, 0), Math.max(vw - box.w, 0));
120
+ const top = Math.min(Math.max(e.clientY - grabY, 0), Math.max(vh - box.h, 0));
121
+ box.x = left / vw;
122
+ box.y = top / vh;
123
+ place(box);
124
+ publish();
125
+ };
126
+ const end = () => {
127
+ box.el.removeEventListener("pointermove", move);
128
+ box.el.removeEventListener("pointerup", end);
129
+ box.el.removeEventListener("pointercancel", end);
130
+ delete box.el.dataset["dragging"];
131
+ session.overlay.setDragging(false);
132
+ // Remembered locally as well as reported, so a later `define()` doesn't snap the box back
133
+ // to the game's default while the host's echo is still in flight.
134
+ placements = { ...placements, [box.spec.id]: { ...placements[box.spec.id], x: box.x, y: box.y } };
135
+ session.overlay.moveBox(box.spec.id, box.x, box.y);
136
+ publish();
137
+ };
138
+ box.el.addEventListener("pointermove", move);
139
+ box.el.addEventListener("pointerup", end);
140
+ box.el.addEventListener("pointercancel", end);
141
+ });
142
+ }
143
+ function create(spec) {
144
+ const el = document.createElement("div");
145
+ el.className = "rydr-overlay-box";
146
+ el.dataset["boxId"] = spec.id;
147
+ const body = document.createElement("div");
148
+ body.className = "rydr-overlay-body";
149
+ el.appendChild(body);
150
+ layer.appendChild(el);
151
+ const box = { spec, el, body, x: spec.x, y: spec.y, w: spec.width, h: spec.height, visible: spec.visible };
152
+ applyPlacement(box);
153
+ attachDrag(box);
154
+ return box;
155
+ }
156
+ function define(next) {
157
+ if (disposed)
158
+ return;
159
+ const seen = new Set();
160
+ for (const spec of next) {
161
+ seen.add(spec.id);
162
+ const existing = boxes.get(spec.id);
163
+ if (existing) {
164
+ // Reuse the element so the game's content survives a redeclaration — rebuilding would
165
+ // throw away whatever it had rendered and flicker on every set change.
166
+ existing.spec = spec;
167
+ applyPlacement(existing);
168
+ continue;
169
+ }
170
+ boxes.set(spec.id, create(spec));
171
+ }
172
+ for (const [id, box] of [...boxes]) {
173
+ if (seen.has(id))
174
+ continue;
175
+ box.el.remove();
176
+ boxes.delete(id);
177
+ }
178
+ session.overlay.defineBoxes(next);
179
+ publish();
180
+ }
181
+ const offState = session.overlay.onStateChange((active) => {
182
+ layer.hidden = !active;
183
+ // Republish on entering: rects measured while hidden are all zero, and the host would have
184
+ // nothing to hit-test against.
185
+ publish();
186
+ });
187
+ const offLayout = session.overlay.onLayout((next) => {
188
+ placements = next ?? {};
189
+ for (const box of boxes.values())
190
+ applyPlacement(box);
191
+ publish();
192
+ });
193
+ // A resolution or window change moves every box, because positions are fractions.
194
+ const onResize = () => {
195
+ for (const box of boxes.values())
196
+ place(box);
197
+ publish();
198
+ };
199
+ window.addEventListener("resize", onResize);
200
+ define(specs);
201
+ return {
202
+ get boxes() {
203
+ return [...boxes.values()].map(toHandle);
204
+ },
205
+ get: (id) => {
206
+ const box = boxes.get(id);
207
+ return box ? toHandle(box) : undefined;
208
+ },
209
+ define,
210
+ dispose: () => {
211
+ if (disposed)
212
+ return;
213
+ disposed = true;
214
+ if (rectFrame)
215
+ cancelAnimationFrame(rectFrame);
216
+ offState();
217
+ offLayout();
218
+ window.removeEventListener("resize", onResize);
219
+ layer.remove();
220
+ boxes.clear();
221
+ // Tell the host the boxes are gone, or it would keep hit-testing rectangles that are no
222
+ // longer on screen and hand the mouse to empty space.
223
+ session.overlay.publishRects([]);
224
+ session.overlay.defineBoxes([]);
225
+ },
226
+ };
227
+ function toHandle(box) {
228
+ return {
229
+ id: box.spec.id,
230
+ body: box.body,
231
+ get visible() {
232
+ return box.visible;
233
+ },
234
+ setVisible: (visible) => {
235
+ box.visible = visible && box.spec.visible;
236
+ place(box);
237
+ publish();
238
+ },
239
+ };
240
+ }
241
+ }
242
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/overlay/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/protocol/guards.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EACV,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAwDvB,+CAA+C;AAC/C,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CAI1D;AAED,0FAA0F;AAC1F,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,qBAAqB,CAE9E;AAED,8FAA8F;AAC9F,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,qBAAqB,CAE9E"}
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/protocol/guards.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EACV,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,eAAe,CAAC;AA0DvB,+CAA+C;AAC/C,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CAI1D;AAED,0FAA0F;AAC1F,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,qBAAqB,CAE9E;AAED,8FAA8F;AAC9F,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,qBAAqB,CAE9E"}
@@ -23,6 +23,8 @@ const PLATFORM_TO_GAME = {
23
23
  "rydr/audio.setMaster": true,
24
24
  "rydr/identity.update": true,
25
25
  "rydr/trainer.status": true,
26
+ "rydr/overlay.state": true,
27
+ "rydr/overlay.layout": true,
26
28
  "rydr/lifecycle.pause": true,
27
29
  "rydr/lifecycle.resume": true,
28
30
  "rydr/ping": true,
@@ -1 +1 @@
1
- {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/protocol/guards.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;GAUG;AACH,MAAM,gBAAgB,GAAgD;IACpE,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,eAAe,EAAE,IAAI;IACrB,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,sBAAsB,EAAE,IAAI;IAC5B,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,sBAAsB,EAAE,IAAI;IAC5B,uBAAuB,EAAE,IAAI;IAC7B,WAAW,EAAE,IAAI;IACjB,8BAA8B,EAAE,IAAI;IACpC,kCAAkC,EAAE,IAAI;IACxC,0BAA0B,EAAE,IAAI;IAChC,sBAAsB,EAAE,IAAI;IAC5B,4BAA4B,EAAE,IAAI;IAClC,+BAA+B,EAAE,IAAI;IACrC,4BAA4B,EAAE,IAAI;IAClC,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,uBAAuB,EAAE,IAAI;IAC7B,sBAAsB,EAAE,IAAI;IAC5B,2BAA2B,EAAE,IAAI;IACjC,0BAA0B,EAAE,IAAI;IAChC,oBAAoB,EAAE,IAAI;IAC1B,kBAAkB,EAAE,IAAI;IACxB,kBAAkB,EAAE,IAAI;IACxB,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,qBAAqB,EAAE,IAAI;IAC3B,iBAAiB,EAAE,IAAI;CACxB,CAAC;AACF,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAE3F,+CAA+C;AAC/C,MAAM,UAAU,aAAa,CAAC,CAAU;IACtC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAuC,CAAC;IAClD,OAAO,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACrF,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAChD,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAChD,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/protocol/guards.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;GAUG;AACH,MAAM,gBAAgB,GAAgD;IACpE,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,eAAe,EAAE,IAAI;IACrB,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,sBAAsB,EAAE,IAAI;IAC5B,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,oBAAoB,EAAE,IAAI;IAC1B,qBAAqB,EAAE,IAAI;IAC3B,sBAAsB,EAAE,IAAI;IAC5B,uBAAuB,EAAE,IAAI;IAC7B,WAAW,EAAE,IAAI;IACjB,8BAA8B,EAAE,IAAI;IACpC,kCAAkC,EAAE,IAAI;IACxC,0BAA0B,EAAE,IAAI;IAChC,sBAAsB,EAAE,IAAI;IAC5B,4BAA4B,EAAE,IAAI;IAClC,+BAA+B,EAAE,IAAI;IACrC,4BAA4B,EAAE,IAAI;IAClC,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,uBAAuB,EAAE,IAAI;IAC7B,sBAAsB,EAAE,IAAI;IAC5B,2BAA2B,EAAE,IAAI;IACjC,0BAA0B,EAAE,IAAI;IAChC,oBAAoB,EAAE,IAAI;IAC1B,kBAAkB,EAAE,IAAI;IACxB,kBAAkB,EAAE,IAAI;IACxB,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,IAAI;IACzB,qBAAqB,EAAE,IAAI;IAC3B,iBAAiB,EAAE,IAAI;CACxB,CAAC;AACF,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAE3F,+CAA+C;AAC/C,MAAM,UAAU,aAAa,CAAC,CAAU;IACtC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAuC,CAAC;IAClD,OAAO,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACrF,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAChD,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CAAC,CAAU;IAChD,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACjE,CAAC"}
@@ -6,6 +6,7 @@ export * from "./buttons.js";
6
6
  export * from "./glyphs.js";
7
7
  export * from "./haptics.js";
8
8
  export * from "./boards.js";
9
+ export * from "./overlay.js";
9
10
  export * from "./gamedata.js";
10
11
  export * from "./worlds.js";
11
12
  export * from "./characters.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
@@ -6,6 +6,7 @@ export * from "./buttons.js";
6
6
  export * from "./glyphs.js";
7
7
  export * from "./haptics.js";
8
8
  export * from "./boards.js";
9
+ export * from "./overlay.js";
9
10
  export * from "./gamedata.js";
10
11
  export * from "./worlds.js";
11
12
  export * from "./characters.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
@@ -16,6 +16,7 @@ import type { ButtonName, ButtonEdge, AxisName } from "./buttons.js";
16
16
  import type { GlyphSet } from "./glyphs.js";
17
17
  import type { HapticEffect } from "./haptics.js";
18
18
  import type { BoardDefinition, BoardEntry, ScoreSubmission, SubmitScoreResult, AdminSeedEntry, LeaderboardPage } from "./boards.js";
19
+ import type { OverlayBoxPlacement, OverlayBoxRect, OverlayBoxSpec } from "./overlay.js";
19
20
  import type { GameDataScope, GameDoc } from "./gamedata.js";
20
21
  import type { CoreWorld } from "./worlds.js";
21
22
  import type { CatalogCharacter, CharacterRig } from "./characters.js";
@@ -69,6 +70,44 @@ export interface TrainerSetErgModeMessage extends RydrTagged {
69
70
  type: "rydr/trainer.setErgMode";
70
71
  enabled: boolean;
71
72
  }
73
+ /**
74
+ * Ask to enter or leave overlay mode.
75
+ *
76
+ * A request, not a statement: the host answers with {@link OverlayStateMessage}, and may also send
77
+ * that unprompted when the RIDER leaves by some route of its own (a tray item, a global shortcut).
78
+ * Never assume this took effect.
79
+ */
80
+ export interface OverlaySetModeMessage extends RydrTagged {
81
+ type: "rydr/overlay.setMode";
82
+ enabled: boolean;
83
+ }
84
+ /** Declare the game's box set, replacing any previous one. */
85
+ export interface OverlayDefineBoxesMessage extends RydrTagged {
86
+ type: "rydr/overlay.defineBoxes";
87
+ boxes: OverlayBoxSpec[];
88
+ }
89
+ /** Publish where the boxes now are, so the host can hit-test the cursor against them. */
90
+ export interface OverlayRectsMessage extends RydrTagged {
91
+ type: "rydr/overlay.rects";
92
+ rects: OverlayBoxRect[];
93
+ }
94
+ /**
95
+ * A box drag started or ended.
96
+ *
97
+ * The host must keep giving the game the mouse for the whole drag, or the box would be dropped the
98
+ * instant the cursor outran it.
99
+ */
100
+ export interface OverlayDraggingMessage extends RydrTagged {
101
+ type: "rydr/overlay.dragging";
102
+ dragging: boolean;
103
+ }
104
+ /** A box was dropped. `x`/`y` are fractions of the usable screen area, for the host to remember. */
105
+ export interface OverlayMoveBoxMessage extends RydrTagged {
106
+ type: "rydr/overlay.moveBox";
107
+ id: string;
108
+ x: number;
109
+ y: number;
110
+ }
72
111
  /**
73
112
  * Request the rate at which the shell streams hardware to this game. `hz` is a ceiling, never an
74
113
  * upsampler: the shell averages the trainer's faster native samples down to `hz` (anti-aliased —
@@ -377,7 +416,7 @@ export interface RoomScheduleEventMessage extends RydrTagged {
377
416
  payload?: unknown;
378
417
  at?: number;
379
418
  }
380
- export type GameToPlatformMessage = HelloMessage | ReadyMessage | LoadProgressMessage | PongMessage | TrainerSetSimulationMessage | TrainerSetTargetPowerMessage | TrainerSetErgModeMessage | HwSetRateMessage | RouteChangedMessage | SetPowerBarMessage | SetActivityMessage | ExitRequestMessage | RequestHardwareModalMessage | GameErrorMessage | LeaderboardQueryMessage | LeaderboardRankQueryMessage | AdminBoardsMessage | RunSaveMessage | RunStartMessage | HapticsVibrateMessage | TrainerAdjustResistanceMessage | RiderAdjustFtpMessage | MenuToggleMessage | GameDataGetMessage | GameDataListMessage | GameDataSaveMessage | GameDataDeleteMessage | AssetUploadUrlMessage | VoiceoverGenerateMessage | MediaUploadUrlMessage | MediaSavedMessage | ReplaySaveMessage | ReplayGetMessage | RunGetMessage | WorldListMessage | WorldGetMessage | CharacterListMessage | CharacterGetMessage | RigGetMessage | RoomJoinMessage | RoomLeaveMessage | RoomSendMessage | RoomSetStateMessage | RoomScheduleEventMessage;
419
+ export type GameToPlatformMessage = HelloMessage | ReadyMessage | LoadProgressMessage | PongMessage | TrainerSetSimulationMessage | TrainerSetTargetPowerMessage | TrainerSetErgModeMessage | OverlaySetModeMessage | OverlayDefineBoxesMessage | OverlayRectsMessage | OverlayDraggingMessage | OverlayMoveBoxMessage | HwSetRateMessage | RouteChangedMessage | SetPowerBarMessage | SetActivityMessage | ExitRequestMessage | RequestHardwareModalMessage | GameErrorMessage | LeaderboardQueryMessage | LeaderboardRankQueryMessage | AdminBoardsMessage | RunSaveMessage | RunStartMessage | HapticsVibrateMessage | TrainerAdjustResistanceMessage | RiderAdjustFtpMessage | MenuToggleMessage | GameDataGetMessage | GameDataListMessage | GameDataSaveMessage | GameDataDeleteMessage | AssetUploadUrlMessage | VoiceoverGenerateMessage | MediaUploadUrlMessage | MediaSavedMessage | ReplaySaveMessage | ReplayGetMessage | RunGetMessage | WorldListMessage | WorldGetMessage | CharacterListMessage | CharacterGetMessage | RigGetMessage | RoomJoinMessage | RoomLeaveMessage | RoomSendMessage | RoomSetStateMessage | RoomScheduleEventMessage;
381
420
  /** Accepts the handshake: grants capabilities and hands over the scoped identity. */
382
421
  export interface WelcomeMessage extends RydrTagged {
383
422
  type: "rydr/welcome";
@@ -400,6 +439,17 @@ export interface WelcomeMessage extends RydrTagged {
400
439
  * right glyphs instead of waiting for the first `input.status`. Omitted ⇒
401
440
  * {@link DEFAULT_GLYPH_SET}. See {@link InputStatusMessage} for the update channel. */
402
441
  glyphSet?: GlyphSet;
442
+ /**
443
+ * Whether this host can put the game's boxes on top of everything else on the machine — see
444
+ * ./overlay.ts. False or absent in an ordinary browser tab, and true only when the host supports
445
+ * it AND the game's manifest declares an overlay mode.
446
+ *
447
+ * On `welcome` rather than a status message on purpose: it cannot change mid-session, and
448
+ * arriving with the handshake means the game's FIRST frame already knows, so nothing has to
449
+ * render twice. (`TrainerStatusMessage.ergSupported` is the counter-example — it can go stale,
450
+ * because there is no channel that re-pushes it.)
451
+ */
452
+ overlaySupported?: boolean;
403
453
  }
404
454
  /** Rejects the handshake (e.g. unknown game, unsupported protocol, denied capabilities). */
405
455
  export interface RejectMessage extends RydrTagged {
@@ -752,7 +802,28 @@ export interface RoomEventMessage extends RydrTagged {
752
802
  at: number;
753
803
  from: string;
754
804
  }
755
- export type PlatformToGameMessage = WelcomeMessage | RejectMessage | PowerMessage | CadenceMessage | HeartRateMessage | SpeedMessage | PowerBufferMessage | InputButtonMessage | InputAxisMessage | AudioSetMasterMessage | IdentityUpdateMessage | TrainerStatusMessage | InputStatusMessage | LifecyclePauseMessage | LifecycleResumeMessage | PingMessage | LeaderboardQueryResultMessage | LeaderboardRankQueryResultMessage | AdminBoardsResultMessage | GameDataResultMessage | AssetUploadUrlResultMessage | VoiceoverGenerateResultMessage | MediaUploadUrlResultMessage | ReplayResultMessage | RunGetResultMessage | RunStartResultMessage | RunSaveResultMessage | WorldListResultMessage | WorldGetResultMessage | CharacterListResultMessage | CharacterGetResultMessage | RigGetResultMessage | RoomOpenedMessage | RoomClosedMessage | RoomPresenceMessage | RoomStateMessage | RoomMessageMessage | RoomTelemetryMessage | RoomEventMessage;
805
+ /**
806
+ * Overlay mode was entered or left.
807
+ *
808
+ * Sent in answer to {@link OverlaySetModeMessage}, and ALSO unprompted when the rider leaves by a
809
+ * route the game cannot see. While the overlay is click-through the game's own menus are
810
+ * unreachable, so the host's tray or shortcut is the way out and this is how the game finds out.
811
+ */
812
+ export interface OverlayStateMessage extends RydrTagged {
813
+ type: "rydr/overlay.state";
814
+ active: boolean;
815
+ }
816
+ /**
817
+ * The rider's stored box placements, to apply over the game's declared defaults.
818
+ *
819
+ * Keyed by box id and sparse: a box with no entry has never been moved. Arrives on entering
820
+ * overlay mode and whenever the host has something new to say about it.
821
+ */
822
+ export interface OverlayLayoutMessage extends RydrTagged {
823
+ type: "rydr/overlay.layout";
824
+ placements: Record<string, OverlayBoxPlacement>;
825
+ }
826
+ export type PlatformToGameMessage = WelcomeMessage | RejectMessage | PowerMessage | CadenceMessage | HeartRateMessage | SpeedMessage | PowerBufferMessage | InputButtonMessage | InputAxisMessage | AudioSetMasterMessage | IdentityUpdateMessage | TrainerStatusMessage | OverlayStateMessage | OverlayLayoutMessage | InputStatusMessage | LifecyclePauseMessage | LifecycleResumeMessage | PingMessage | LeaderboardQueryResultMessage | LeaderboardRankQueryResultMessage | AdminBoardsResultMessage | GameDataResultMessage | AssetUploadUrlResultMessage | VoiceoverGenerateResultMessage | MediaUploadUrlResultMessage | ReplayResultMessage | RunGetResultMessage | RunStartResultMessage | RunSaveResultMessage | WorldListResultMessage | WorldGetResultMessage | CharacterListResultMessage | CharacterGetResultMessage | RigGetResultMessage | RoomOpenedMessage | RoomClosedMessage | RoomPresenceMessage | RoomStateMessage | RoomMessageMessage | RoomTelemetryMessage | RoomEventMessage;
756
827
  /** Any message in the protocol. */
757
828
  export type RydrMessage = GameToPlatformMessage | PlatformToGameMessage;
758
829
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/protocol/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/protocol/messages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACpI,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,2CAA2C;AAC3C,UAAU,UAAU;IAClB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACrB;AAED,iGAAiG;AACjG,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,CAAC,EAAE,MAAM,CAAC;CACX;AAMD,wEAAwE;AACxE,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED,iEAAiE;AACjE,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,2CAA2C;AAC3C,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,kEAAkE;AAClE,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC7D,IAAI,EAAE,4BAA4B,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,2DAA2D;AAC3D,MAAM,WAAW,4BAA6B,SAAQ,UAAU;IAC9D,IAAI,EAAE,6BAA6B,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,8BAA8B;AAC9B,MAAM,WAAW,wBAAyB,SAAQ,UAAU;IAC1D,IAAI,EAAE,yBAAyB,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;CAClB;AAOD;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,8DAA8D;AAC9D,MAAM,WAAW,yBAA0B,SAAQ,UAAU;IAC3D,IAAI,EAAE,0BAA0B,CAAC;IACjC,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,yFAAyF;AACzF,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAuB,SAAQ,UAAU;IACxD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,oGAAoG;AACpG,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACnB;AAED,mFAAmF;AACnF,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8FAA8F;AAC9F,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;4BAI4B;AAC5B,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3B;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,kEAAkE;AAClE,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC7D,IAAI,EAAE,8BAA8B,CAAC;CACtC;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,0GAA0G;AAC1G,MAAM,WAAW,uBAAwB,SAAQ,UAAU;IACzD,IAAI,EAAE,wBAAwB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC7D,IAAI,EAAE,4BAA4B,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,yGAAyG;IACzG,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,KAAK,GAAG,MAAM,GAAG,YAAY,GAAG,aAAa,CAAC;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAC3B,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,mGAAmG;AACnG,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wEAAwE;AACxE,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,+FAA+F;AAC/F,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;CACf;AAED,qEAAqE;AACrE,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;oFACoF;AACpF,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAyB,SAAQ,UAAU;IAC1D,IAAI,EAAE,yBAAyB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iGAAiG;IACjG,IAAI,EAAE,MAAM,CAAC;CACd;AAED;yEACyE;AACzE,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,wFAAwF;IACxF,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAC;IACV,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,4FAA4F;IAC5F,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,mHAAmH;AACnH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;6DAC6D;AAC7D,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,+FAA+F;AAC/F,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;iEACiE;AACjE,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,2GAA2G;AAC3G,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,mGAAmG;AACnG,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;0CAC0C;AAC1C,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd;sEACkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;mGAC+F;IAC/F,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAQD,oGAAoG;AACpG,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,0DAA0D;AAC1D,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf;AAED,6FAA6F;AAC7F,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;2FAC2F;AAC3F,MAAM,WAAW,wBAAyB,SAAQ,UAAU;IAC1D,IAAI,EAAE,yBAAyB,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,qBAAqB,GAC7B,YAAY,GACZ,YAAY,GACZ,mBAAmB,GACnB,WAAW,GACX,2BAA2B,GAC3B,4BAA4B,GAC5B,wBAAwB,GACxB,qBAAqB,GACrB,yBAAyB,GACzB,mBAAmB,GACnB,sBAAsB,GACtB,qBAAqB,GACrB,gBAAgB,GAChB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,2BAA2B,GAC3B,gBAAgB,GAChB,uBAAuB,GACvB,2BAA2B,GAC3B,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,qBAAqB,GACrB,8BAA8B,GAC9B,qBAAqB,GACrB,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,qBAAqB,GACrB,wBAAwB,GACxB,qBAAqB,GACrB,iBAAiB,GACjB,iBAAiB,GACjB,gBAAgB,GAChB,aAAa,GACb,gBAAgB,GAChB,eAAe,GACf,oBAAoB,GACpB,mBAAmB,GACnB,aAAa,GACb,eAAe,GACf,gBAAgB,GAChB,eAAe,GACf,mBAAmB,GACnB,wBAAwB,CAAC;AAM7B,qFAAqF;AACrF,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,IAAI,EAAE,cAAc,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,UAAU,EAAE,CAAC;IAClC,QAAQ,EAAE,cAAc,CAAC;IACzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;iGAC6F;IAC7F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;+EAC2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;4FAEwF;IACxF,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,4FAA4F;AAC5F,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,0BAA0B;AAC1B,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;CACX;AAED,8BAA8B;AAC9B,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;CACX;AAED,uBAAuB;AACvB,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;CACX;AAED,mCAAmC;AACnC,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;CACX;AAED,iFAAiF;AACjF,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,2CAA2C;AAC3C,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;CACtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,8BAA+B,SAAQ,UAAU;IAChE,IAAI,EAAE,+BAA+B,CAAC;IACtC,kDAAkD;IAClD,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,mEAAmE;IACnE,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,4EAA4E;AAC5E,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,uFAAuF;AACvF,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gGAAgG;IAChG,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,oEAAoE;AACpE,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;CAC9B;AAED,qCAAqC;AACrC,MAAM,WAAW,sBAAuB,SAAQ,UAAU;IACxD,IAAI,EAAE,uBAAuB,CAAC;CAC/B;AAED,iFAAiF;AACjF,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qEAAqE;AACrE,MAAM,WAAW,6BAA8B,SAAQ,UAAU;IAC/D,IAAI,EAAE,8BAA8B,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB;AAED;6DAC6D;AAC7D,MAAM,WAAW,iCAAkC,SAAQ,UAAU;IACnE,IAAI,EAAE,kCAAkC,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;uEACuE;AACvE,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uGAAuG;AACvG,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC7D,IAAI,EAAE,4BAA4B,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;yGACyG;AACzG,MAAM,WAAW,8BAA+B,SAAQ,UAAU;IAChE,IAAI,EAAE,+BAA+B,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uGAAuG;AACvG,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC7D,IAAI,EAAE,4BAA4B,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;oFACoF;AACpF,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,6FAA6F;IAC7F,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wGAAwG;AACxG,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;mGAEmG;AACnG,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;+FAC+F;AAC/F,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;gGACgG;AAChG,MAAM,WAAW,wBAAyB,SAAQ,UAAU;IAC1D,IAAI,EAAE,0BAA0B,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8DAA8D;AAC9D,MAAM,WAAW,sBAAuB,SAAQ,UAAU;IACxD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,+FAA+F;AAC/F,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACvD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,kEAAkE;AAClE,MAAM,WAAW,0BAA2B,SAAQ,UAAU;IAC5D,IAAI,EAAE,2BAA2B,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uGAAuG;AACvG,MAAM,WAAW,yBAA0B,SAAQ,UAAU;IAC3D,IAAI,EAAE,0BAA0B,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,8BAA8B;AAC9B,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qFAAqF;AACrF,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,8CAA8C;AAC9C,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,wDAAwD;AACxD,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED;yEACyE;AACzE,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;CACX;AAED;gGACgG;AAChG,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,IAAI,EAAE,oBAAoB,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAqB,SAAQ,UAAU;IACtD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,qBAAqB,GAC7B,cAAc,GACd,aAAa,GACb,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,kBAAkB,GAClB,kBAAkB,GAClB,gBAAgB,GAChB,qBAAqB,GACrB,qBAAqB,GACrB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,kBAAkB,GAClB,qBAAqB,GACrB,sBAAsB,GACtB,WAAW,GACX,6BAA6B,GAC7B,iCAAiC,GACjC,wBAAwB,GACxB,qBAAqB,GACrB,2BAA2B,GAC3B,8BAA8B,GAC9B,2BAA2B,GAC3B,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,oBAAoB,GACpB,sBAAsB,GACtB,qBAAqB,GACrB,0BAA0B,GAC1B,yBAAyB,GACzB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,gBAAgB,GAChB,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,CAAC;AAErB,mCAAmC;AACnC,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,qBAAqB,CAAC"}