@openmouse/protocol 0.7.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { VENDOR_ID } from "../vendors.js";
2
2
  import { RATES_1K, RATES_8K, RAZER_PRODUCTS } from "@openmouse/protocol/razer-devices";
3
3
  import { openRazerDevice } from "./hid-open.js";
4
- import { RAZER_BUTTON_CONTROLS, RAZER_BUTTON_CONTROL_LABEL, RAZER_LANDING_MAX, RAZER_LANDING_MIN, RAZER_LIFT_OFF_MAX, RAZER_LIFT_OFF_MIN, RAZER_READ, RAZER_TOGGLE_CONTROLS, RAZER_TOGGLE_CONTROL_INFO, RAZER_REPORT_ID, RAZER_STORAGE, RAZER_STATUS, RAZER_TRACKING_DISTANCES, RAZER_TRANSACTION_ID, RazerProtocolError, decodeBatteryPercent, decodeCharging, decodeDpi, decodeDpiStages, decodeExtendedPollingRate, decodeFirmwareVersion, decodeLegacyPollingRate, decodeLiftOff, decodeLowPowerThreshold, decodeRazerResponse, decodeSerial, decodeSleepTimeout, encodeRazerRequest, isRazerGetter, razerDecodeButtonMapping, razerDecodeToggleControl, razerReadButtonMappingCommand, razerReadToggleControlCommand, razerSetButtonMappingCommand, razerSetToggleControlCommand, razerReadDpiCommand, razerSetDpiCommand, razerSetExtendedPollingCommand, razerSetLegacyPollingCommand, razerMaxLanding, razerSetLiftOffCommand, razerSetTrackingDistanceCommand, razerEnableAsymmetricLiftOffCommand, razerEnableAsymmetricLiftOffCanonicalCommand, razerEnableSensorCalibrationCommand, razerSetLowPowerThresholdCommand, razerSetSleepTimeoutCommand, } from "@openmouse/protocol/razer";
4
+ import { RAZER_BUTTON_CONTROLS, RAZER_BUTTON_CONTROL_LABEL, RAZER_LANDING_MAX, RAZER_LANDING_MIN, RAZER_LIFT_OFF_MAX, RAZER_LIFT_OFF_MIN, RAZER_READ, RAZER_TOGGLE_CONTROLS, RAZER_TOGGLE_CONTROL_INFO, RAZER_REPORT_ID, RAZER_STORAGE, RAZER_STATUS, RAZER_TRACKING_DISTANCES, RAZER_TRANSACTION_ID, RazerProtocolError, decodeBatteryPercent, decodeCharging, decodeDpi, decodeDpiStages, decodeExtendedPollingRate, decodeFirmwareVersion, decodeLegacyPollingRate, decodeLiftOff, decodeLowPowerThreshold, decodeRazerResponse, decodeSerial, decodeSleepTimeout, encodeRazerRequest, isRazerGetter, razerDecodeButtonMapping, razerDecodeToggleControl, razerReadButtonMappingCommand, razerReadToggleControlCommand, razerSetButtonMappingCommand, razerSetToggleControlCommand, razerReadDpiCommand, razerReadDpiStagesCommand, razerSetDpiCommand, razerSetDpiStagesCommand, razerSetExtendedPollingCommand, razerSetLegacyPollingCommand, razerMaxLanding, razerSetLiftOffCommand, razerSetTrackingDistanceCommand, razerEnableAsymmetricLiftOffCommand, razerEnableAsymmetricLiftOffCanonicalCommand, razerEnableSensorCalibrationCommand, razerSetLowPowerThresholdCommand, razerSetSleepTimeoutCommand, } from "@openmouse/protocol/razer";
5
5
  // The sensor takes any whole DPI from here up to the model's ceiling, per axis.
6
6
  const DPI_MIN = 100;
7
7
  // The vendor software steps DPI stage values by 50, so the stage editor's
@@ -255,8 +255,9 @@ export class RazerHidClient {
255
255
  defaultDisplayName: this.profile()?.model,
256
256
  // The stage read answered on this connection, so the shared stage
257
257
  // editor is offered below. `countEditable: false` pins it to the
258
- // table's own row count, and the app disables every stage write on
259
- // drivers without the (unverified) `0x04`/`0x06` write.
258
+ // table's own row count; the write (`0x04`/`0x06`) is modelled on
259
+ // OpenRazer's kernel driver and made writable via
260
+ // `setDpiStageValue`/`setActiveDpiStage`.
260
261
  ...(stages
261
262
  ? {
262
263
  dpiStageEditor: {
@@ -296,9 +297,8 @@ export class RazerHidClient {
296
297
  }
297
298
  : null,
298
299
  razerButtonMappings: buttonMappings ?? undefined,
299
- // Read-only: the matching write (`0x04`/`0x06`) is deliberately never
300
- // sent — a wrong length there is the one realistic way to corrupt stored
301
- // settings — so the app renders the table without offering to change it.
300
+ // Writable through `setDpiStageValue`/`setActiveDpiStage`, which rewrite
301
+ // the whole table and confirm by reading it back.
302
302
  ...(stages ? { dpiStages: stages.stages, activeDpiStage: stages.active } : {}),
303
303
  firmware: [`Mouse ${decodeFirmwareVersion(firmware)}`],
304
304
  };
@@ -494,10 +494,9 @@ export class RazerHidClient {
494
494
  * Reads the stored DPI stage table (`0x04`/`0x86`) and which stage is
495
495
  * active, for the app's shared multi-stage editor.
496
496
  *
497
- * The read is verified on hardware, but the matching write (`0x04`/`0x06`)
498
- * is deliberately unverified — a wrong length there is the one realistic way
499
- * to corrupt stored settings — so the table is published read-only and no
500
- * stage write is ever offered.
497
+ * The read is verified on hardware; the matching write (`0x04`/`0x06`) is
498
+ * implemented in `setDpiStageValue`/`setActiveDpiStage` below, so the table
499
+ * is published writable when the mouse answers it.
501
500
  *
502
501
  * Returns null when the mouse does not answer or the reply decoded to no
503
502
  * usable values, mirroring `readLiftOff`'s degradation: a status read that
@@ -521,6 +520,64 @@ export class RazerHidClient {
521
520
  const active = Math.min(Math.max(decoded.active - 1, 0), stages.length - 1);
522
521
  return { stages, active };
523
522
  }
523
+ /**
524
+ * The stored stage table through the same store byte the setters write
525
+ * through (`dpiStorageByte()`), so a verify-read can never see the other
526
+ * store's stale copy. Kept apart from `readDpiStages` because that one keeps
527
+ * the verified `0x00` selector and filters out-of-range stages, while a
528
+ * rewrite must echo every stored stage unchanged rather than drop one.
529
+ */
530
+ async readDpiTable() {
531
+ const reply = await this.request(razerReadDpiStagesCommand(this.dpiStorageByte())).catch(() => null);
532
+ if (!reply)
533
+ return null;
534
+ return decodeDpiStages(reply);
535
+ }
536
+ async writeDpiTable(active, stages) {
537
+ await this.request(razerSetDpiStagesCommand(active, stages, this.dpiStorageByte()));
538
+ }
539
+ /**
540
+ * Replaces one DPI stage's resolution. The write carries the whole stage
541
+ * table, so the sibling stages are read back and echoed unchanged, and the
542
+ * change is confirmed by reading the table again. `stage` is zero-based, as
543
+ * the stage editor numbers its rows.
544
+ */
545
+ async setDpiStageValue(stage, dpi) {
546
+ const ceiling = this.maxDpi();
547
+ if (!Number.isInteger(dpi) || dpi < DPI_MIN || dpi > ceiling) {
548
+ throw new Error(`DPI must be a whole number between ${DPI_MIN} and ${ceiling.toLocaleString()}.`);
549
+ }
550
+ const table = await this.readDpiTable();
551
+ if (!table || table.stages.length === 0) {
552
+ throw new Error("The mouse did not report its DPI stages.");
553
+ }
554
+ if (!Number.isInteger(stage) || stage < 0 || stage >= table.stages.length) {
555
+ throw new Error(`DPI stage ${stage} is out of range 0-${table.stages.length - 1}.`);
556
+ }
557
+ const stages = table.stages.map((entry, index) => index === stage ? { x: dpi, y: dpi } : entry);
558
+ await this.writeDpiTable(table.active, stages);
559
+ const confirmed = await this.readDpiTable();
560
+ if (!confirmed || confirmed.stages[stage]?.x !== dpi) {
561
+ throw new Error(`The mouse kept ${confirmed?.stages[stage]?.x.toLocaleString() ?? "no"} DPI on stage ${stage + 1} instead of ${dpi.toLocaleString()}.`);
562
+ }
563
+ return dpi;
564
+ }
565
+ /** Moves the mouse onto another DPI stage, confirming with a read-back. */
566
+ async setActiveDpiStage(stage) {
567
+ const table = await this.readDpiTable();
568
+ if (!table || table.stages.length === 0) {
569
+ throw new Error("The mouse did not report its DPI stages.");
570
+ }
571
+ if (!Number.isInteger(stage) || stage < 0 || stage >= table.stages.length) {
572
+ throw new Error(`DPI stage ${stage} is out of range 0-${table.stages.length - 1}.`);
573
+ }
574
+ await this.writeDpiTable(stage + 1, table.stages);
575
+ const confirmed = await this.readDpiTable();
576
+ if (!confirmed || confirmed.active !== stage + 1) {
577
+ throw new Error(`The mouse stayed on DPI stage ${confirmed?.active ?? "an unknown one"} instead of ${stage + 1}.`);
578
+ }
579
+ return stage;
580
+ }
524
581
  /**
525
582
  * Reports whether the mouse is currently in asymmetric mode, or null when it
526
583
  * cannot be established.
@@ -1 +1 @@
1
- {"version":3,"file":"hid.js","sourceRoot":"","sources":["../../../src/drivers/razer/hid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hid.js","sourceRoot":"","sources":["../../../src/drivers/razer/hid.ts"],"names":[],"mappings":"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"}
@@ -142,9 +142,11 @@ export declare const RAZER_READ: {
142
142
  * Write commands confirmed against Viper V3 Pro firmware 1.12.
143
143
  *
144
144
  * Razer pairs each read with a write that clears the high bit of the command
145
- * id. Only commands verified on hardware belong here — in particular the DPI
146
- * stage table (`0x04`/`0x06`) is absent on purpose, because a wrong length
147
- * there is the one realistic way to corrupt stored settings.
145
+ * id. The DPI stage table write (`0x04`/`0x06`) mirrors the read's fixed
146
+ * 38-byte payload (`0x26`) byte for byte, exactly as OpenRazer's kernel
147
+ * driver sends it — a wrong length there is the one realistic way to corrupt
148
+ * stored settings, so the length is pinned to the read-back rather than
149
+ * computed from the stage count.
148
150
  */
149
151
  export declare const RAZER_WRITE: {
150
152
  readonly dpi: {
@@ -152,6 +154,11 @@ export declare const RAZER_WRITE: {
152
154
  readonly commandId: 5;
153
155
  readonly dataSize: 7;
154
156
  };
157
+ readonly dpiStages: {
158
+ readonly commandClass: 4;
159
+ readonly commandId: 6;
160
+ readonly dataSize: 38;
161
+ };
155
162
  readonly pollingRate: {
156
163
  readonly commandClass: 0;
157
164
  readonly commandId: 5;
@@ -216,6 +223,19 @@ export declare function razerSetDpiCommand(x: number, y: number, storageByte?: n
216
223
  * `RAZER_READ.dpi` cannot be used verbatim.
217
224
  */
218
225
  export declare function razerReadDpiCommand(storageByte?: number): RazerCommand;
226
+ /** The stored stage-table read, parameterized like `razerReadDpiCommand`. */
227
+ export declare function razerReadDpiStagesCommand(storageByte?: number): RazerCommand;
228
+ /** The fixed number of stage slots a Razer stage table carries. */
229
+ export declare const RAZER_MAX_DPI_STAGES = 5;
230
+ /**
231
+ * Rewrites the whole stored DPI stage table (`0x04`/`0x06`), mirroring the
232
+ * matching read's fixed `0x26` payload: `[storage, active, count, stage
233
+ * records...]` where each record is `[index, xHi, xLo, yHi, yLo, 0, 0]`, with
234
+ * unused slots left zero and the count byte telling the firmware to ignore
235
+ * them. `active` is one-based, matching how the mouse numbers its stages in
236
+ * both the DPI-stages read and `razerSetDpiCommand`.
237
+ */
238
+ export declare function razerSetDpiStagesCommand(active: number, stages: readonly RazerDpi[], storageByte?: number): RazerCommand;
219
239
  /** Seconds, big-endian, in the same encoding the matching read returns. */
220
240
  export declare function razerSetSleepTimeoutCommand(seconds: number): RazerCommand;
221
241
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/razer/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/razer/codec.ts"],"names":[],"mappings":"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"}
@@ -92,12 +92,15 @@ export const RAZER_READ = {
92
92
  * Write commands confirmed against Viper V3 Pro firmware 1.12.
93
93
  *
94
94
  * Razer pairs each read with a write that clears the high bit of the command
95
- * id. Only commands verified on hardware belong here — in particular the DPI
96
- * stage table (`0x04`/`0x06`) is absent on purpose, because a wrong length
97
- * there is the one realistic way to corrupt stored settings.
95
+ * id. The DPI stage table write (`0x04`/`0x06`) mirrors the read's fixed
96
+ * 38-byte payload (`0x26`) byte for byte, exactly as OpenRazer's kernel
97
+ * driver sends it — a wrong length there is the one realistic way to corrupt
98
+ * stored settings, so the length is pinned to the read-back rather than
99
+ * computed from the stage count.
98
100
  */
99
101
  export const RAZER_WRITE = {
100
102
  dpi: { commandClass: 0x04, commandId: 0x05, dataSize: 0x07 },
103
+ dpiStages: { commandClass: 0x04, commandId: 0x06, dataSize: 0x26 },
101
104
  pollingRate: { commandClass: 0x00, commandId: 0x05, dataSize: 0x01 },
102
105
  pollingRateExtended: { commandClass: 0x00, commandId: 0x40, dataSize: 0x02 },
103
106
  liftOff: { commandClass: 0x0b, commandId: 0x05, dataSize: 0x0a },
@@ -145,6 +148,48 @@ export function razerSetDpiCommand(x, y, storageByte = RAZER_STORAGE) {
145
148
  export function razerReadDpiCommand(storageByte = RAZER_STORAGE) {
146
149
  return { ...RAZER_READ.dpi, args: [storageByte] };
147
150
  }
151
+ /** The stored stage-table read, parameterized like `razerReadDpiCommand`. */
152
+ export function razerReadDpiStagesCommand(storageByte = RAZER_STORAGE) {
153
+ return { ...RAZER_READ.dpiStages, args: [storageByte] };
154
+ }
155
+ /** The fixed number of stage slots a Razer stage table carries. */
156
+ export const RAZER_MAX_DPI_STAGES = 5;
157
+ /**
158
+ * Rewrites the whole stored DPI stage table (`0x04`/`0x06`), mirroring the
159
+ * matching read's fixed `0x26` payload: `[storage, active, count, stage
160
+ * records...]` where each record is `[index, xHi, xLo, yHi, yLo, 0, 0]`, with
161
+ * unused slots left zero and the count byte telling the firmware to ignore
162
+ * them. `active` is one-based, matching how the mouse numbers its stages in
163
+ * both the DPI-stages read and `razerSetDpiCommand`.
164
+ */
165
+ export function razerSetDpiStagesCommand(active, stages, storageByte = RAZER_STORAGE) {
166
+ if (stages.length < 1 || stages.length > RAZER_MAX_DPI_STAGES) {
167
+ throw new RazerProtocolError(`A Razer mouse holds between 1 and ${RAZER_MAX_DPI_STAGES} DPI stages.`);
168
+ }
169
+ if (!Number.isInteger(active) || active < 1 || active > stages.length) {
170
+ throw new RazerProtocolError(`Active DPI stage must be between 1 and ${stages.length}.`);
171
+ }
172
+ for (const stage of stages) {
173
+ for (const axis of [stage.x, stage.y]) {
174
+ if (!Number.isInteger(axis) || axis < 0 || axis > 0xffff) {
175
+ throw new RazerProtocolError("DPI stage values must be whole numbers between 0 and 65535.");
176
+ }
177
+ }
178
+ }
179
+ const args = new Array(RAZER_READ.dpiStages.dataSize).fill(0);
180
+ args[0] = storageByte;
181
+ args[1] = active;
182
+ args[2] = stages.length;
183
+ stages.forEach((stage, index) => {
184
+ const offset = STAGE_OFFSET + index * STAGE_LENGTH;
185
+ args[offset] = index;
186
+ args[offset + 1] = (stage.x >> 8) & 0xff;
187
+ args[offset + 2] = stage.x & 0xff;
188
+ args[offset + 3] = (stage.y >> 8) & 0xff;
189
+ args[offset + 4] = stage.y & 0xff;
190
+ });
191
+ return { ...RAZER_WRITE.dpiStages, args };
192
+ }
148
193
  /** Seconds, big-endian, in the same encoding the matching read returns. */
149
194
  export function razerSetSleepTimeoutCommand(seconds) {
150
195
  return { ...RAZER_WRITE.sleepTimeout, args: [(seconds >> 8) & 0xff, seconds & 0xff] };
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/razer/codec.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAEtC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE5D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,IAAI;IACV,EAAE,EAAE,IAAI;IACR,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;CACT,CAAC;AAWX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAElC,oEAAoE;AACpE,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,uEAAuE;AACvE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACjE,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/D,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAChE,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACjE,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACrE,iBAAiB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC1E,GAAG,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE;IACnF,SAAS,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;IAChF,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACpE,mBAAmB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;IAC1F,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAChE;;;;;;;OAOG;IACH,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;CACvB,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC5D,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACpE,mBAAmB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC5E,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAChE,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtE,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACrE,iBAAiB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC1E;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,EAAE;QACb,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,2BAA2B;KAC3C;CAC4D,CAAC;AAEhE,MAAM,UAAU,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,cAAsB,aAAa;IAC1F,OAAO;QACL,GAAG,WAAW,CAAC,GAAG;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KACtF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,cAAsB,aAAa;IACrE,OAAO,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACpD,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO,EAAE,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,OAAe;IAC9D,OAAO,EAAE,GAAG,WAAW,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;AACzF,CAAC;AAED,SAAS,cAAc,CAAC,OAAe,EAAE,aAAqB;IAC5D,MAAM,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,IAAI,EAAE,CAAC;QAChE,MAAM,IAAI,kBAAkB,CAAC,GAAG,aAAa,0CAA0C,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,aAAqB;IAChE,OAAO,EAAE,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,8BAA8B,CAAC,aAAqB;IAClE,OAAO,EAAE,GAAG,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;AACnG,CAAC;AAWD,kFAAkF;AAClF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,IAAI;IACT,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,kBAAkB,EAAE,IAAI;IACxB,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,IAAI;CACgC,CAAC;AAIzD,4DAA4D;AAC5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAwD,CAAC;AAEnH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,GAAG,6BAA6B,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,6BAA6B,CAC3C,MAA2B,EAC3B,UAII,EAAE;IAEN,MAAM,IAAI,GAAa,CAAC,aAAa,EAAE,cAAc,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7E,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,UAAU,CAAC;QAChB,KAAK,kBAAkB;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5B,MAAM;QACR,KAAK,QAAQ;YACX,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,MAAM,kBAAkB,CAAC,CAAC;YAC9E,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,MAAM;QACR,KAAK,UAAU;YACb,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,MAAM,kBAAkB,CAAC,CAAC;YAC9E,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;YAC5E,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5F,MAAM;QACR,KAAK,kBAAkB;YACrB,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,MAAM,IAAI,kBAAkB,CAAC,kCAAkC,CAAC,CAAC;YACrF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,MAAM;QACR,KAAK,gBAAgB;YACnB,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM;gBAAE,MAAM,IAAI,kBAAkB,CAAC,mCAAmC,CAAC,CAAC;YACzG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACnG,MAAM;IACV,CAAC;IACD,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,MAAM;QACrB,IAAI;KACL,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,MAAM,CAAgB;IAC/B;;;OAGG;IACM,KAAK,CAAU;IAExB,YAAY,OAAe,EAAE,SAAwB,IAAI,EAAE,KAAK,GAAG,KAAK;QACtE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAAqB;IACjD,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAkB;IAC9C,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,IAAI,KAAK,GAAG,cAAc,EAAE,KAAK,GAAG,aAAa,EAAE,KAAK,IAAI,CAAC;QAAE,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9F,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAqB,EACrB,gBAAwB,oBAAoB;IAE5C,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACnD,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;IAC1B,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC7B,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IACjC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAC9B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5C,MAAM,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,OAAqB,EAAE,OAAe;IACtD,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC1E,OAAO,SAAS,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,GAAG,CAAC;AAC5F,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,mBAAmB,CAAC,MAAkB,EAAE,OAAqB;IAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QAC1C,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,MAAM,CAAC,MAAM,qBAAqB,mBAAmB,EAAE,CAAC,CAAC,CAAC;IACvH,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,sCAAsC,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,MAAM,KAAK,YAAY,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,gCAAgC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,MAAM,KAAK,YAAY,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,KAAK,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5H,CAAC;IACD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;QAC1E,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,qCAAqC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,GAAG,WAAW,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAgB;IACpD,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAgB;IAC3C,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,IAAI,KAAK,CAAC;YAAE,MAAM;QACtB,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAgB;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAgB;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgB;IAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAOD,MAAM,UAAU,SAAS,CAAC,IAAgB;IACxC,OAAO,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACtE,CAAC;AAQD,MAAM,UAAU,eAAe,CAAC,IAAgB;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,YAAY,GAAG,KAAK,GAAG,YAAY,CAAC;QACnD,IAAI,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM;QACrC,MAAM,CAAC,IAAI,CAAC;YACV,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAC7C,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;AACrC,CAAC;AAcD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,wBAAwB,GAAqC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAEpG,0EAA0E;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AACnC,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAEnC;;;;GAIG;AACH,MAAM,oBAAoB,GAAG;IAC3B,gBAAgB,EAAE,IAAI;IACtB,UAAU,EAAE,IAAI;CACR,CAAC;AASX;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAgB;IAC5C,OAAO;QACL,QAAQ,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;QACnD,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QACpB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;KACrB,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,+BAA+B,CAAC,QAA+B;IAC7E,MAAM,KAAK,GAAG,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,KAAK,GAAG,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,QAAQ,gDAAgD,CAAC,CAAC;IACzG,OAAO;QACL,GAAG,WAAW,CAAC,aAAa;QAC5B,IAAI,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,CAAC;KAClF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mCAAmC;IACjD,OAAO;QACL,GAAG,WAAW,CAAC,aAAa;QAC5B,IAAI,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC;KAC3E,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4CAA4C;IAC1D,OAAO;QACL,GAAG,WAAW,CAAC,aAAa;QAC5B,IAAI,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC;KAC3E,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mCAAmC;IACjD,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,OAAe;IACrE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,kBAAkB,IAAI,OAAO,GAAG,kBAAkB,EAAE,CAAC;QAC/F,MAAM,IAAI,kBAAkB,CAAC,2CAA2C,kBAAkB,QAAQ,kBAAkB,GAAG,CAAC,CAAC;IAC3H,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,iBAAiB,IAAI,OAAO,GAAG,iBAAiB,EAAE,CAAC;QAC7F,MAAM,IAAI,kBAAkB,CAAC,0CAA0C,iBAAiB,QAAQ,iBAAiB,GAAG,CAAC,CAAC;IACxH,CAAC;IACD,sEAAsE;IACtE,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,kBAAkB,CAAC,YAAY,OAAO,6BAA6B,OAAO,IAAI,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO;QACL,GAAG,WAAW,CAAC,OAAO;QACtB,IAAI,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAClG,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAgB;IACtD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,6CAA6C,CAAC,CAAC;IAC1F,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAgB;IACxD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,6CAA6C,CAAC,CAAC;IAC1F,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AAmBD,MAAM,CAAC,MAAM,qBAAqB,GAAkC,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEpH,MAAM,0BAA0B,GAAuC;IACrE,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;CACb,CAAC;AAEF,mFAAmF;AACnF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,CAAU,CAAC;AAG5H,wEAAwE;AACxE,wEAAwE;AACxE,6CAA6C;AAC7C,MAAM,CAAC,MAAM,0BAA0B,GAAmD;IACxF,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,aAAa;IACzB,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,gBAAgB;CACzB,CAAC;AAEF,MAAM,qBAAqB,GAA4D,MAAM,CAAC,WAAW,CACvG,qBAAqB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CACvF,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,wBAAwB,CAAC,OAA2B;IAC3D,IAAI,OAAO,KAAK,UAAU;QAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,kBAAkB,CAAC,IAAI,OAAO,iDAAiD,CAAC,CAAC;IACzG,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAgB;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,UAAU,CAAC;IACrC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,0BAA0B,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,CAAC;IAC3G,OAAO,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,6BAA6B,CAAC,OAA2B;IACvE,OAAO,EAAE,GAAG,UAAU,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;AAClG,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAuB,WAAW,CAAC;AAE3E,MAAM,UAAU,4BAA4B,CAAC,OAA2B,EAAE,OAA2B;IACnG,IAAI,OAAO,KAAK,2BAA2B,IAAI,OAAO,KAAK,0BAA0B,CAAC,2BAA2B,CAAC,EAAE,CAAC;QACnH,MAAM,IAAI,kBAAkB,CAC1B,GAAG,0BAA0B,CAAC,2BAA2B,CAAC,uEAAuE,CAClI,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAC7D,OAAO;QACL,GAAG,WAAW,CAAC,aAAa;QAC5B,IAAI,EAAE,CAAC,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAClG,CAAC;AACJ,CAAC;AA0BD,MAAM,CAAC,MAAM,qBAAqB,GAAkC,CAAC,UAAU,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;AAYpH,MAAM,CAAC,MAAM,yBAAyB,GAAuD;IAC3F,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;IACzG,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;IAC/G,iBAAiB,EAAE;QACjB,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,6BAA6B;QAC3C,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAChC;CACF,CAAC;AAEF,qFAAqF;AACrF,MAAM,UAAU,6BAA6B,CAAC,OAA2B;IACvE,OAAO,EAAE,GAAG,UAAU,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;AACvG,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAA2B,EAAE,IAAgB;IACpF,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,IAAI,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,UAAU,CAAC;IACvE,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;IACjE,IAAI,IAAI,KAAK,WAAW,IAAI,GAAG,KAAK,UAAU,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC,YAAY,CAAC;IACnG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,OAA2B,EAAE,KAAa;IACrF,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,IAAY,CAAC;IACjB,IAAI,GAAW,CAAC;IAChB,IAAI,KAAa,CAAC;IAClB,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QACvC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,kBAAkB,CAAC,GAAG,IAAI,CAAC,KAAK,mBAAmB,IAAI,CAAC,YAAY,kBAAkB,CAAC,CAAC;IACpG,CAAC;IACD,OAAO;QACL,GAAG,WAAW,CAAC,aAAa;QAC5B,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KACzE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/razer/codec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openmouse/protocol",
3
- "version": "0.7.0",
3
+ "version": "0.9.0",
4
4
  "description": "Gaming mouse protocol codecs and WebHID drivers used by OpenMouse.",
5
5
  "type": "module",
6
6
  "publishConfig": {