@aircast-4g/mavlink 1.1.5 → 1.1.6

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,9 +1,16 @@
1
- interface MAVLinkMessage<Content = unknown> {
1
+ interface ParsedMAVLinkMessage$1 {
2
2
  timestamp: number;
3
3
  system_id: number;
4
4
  component_id: number;
5
- type: string;
6
- payload: Content;
5
+ message_id: number;
6
+ message_name: string;
7
+ sequence: number;
8
+ payload: Record<string, any>;
9
+ protocol_version: 1 | 2;
10
+ checksum: number;
11
+ crc_ok: boolean;
12
+ signature?: Uint8Array;
13
+ dialect?: string;
7
14
  }
8
15
 
9
16
  declare enum MAV_AUTOPILOTEnum {
@@ -280,10 +287,41 @@ interface MessageTypeMap {
280
287
  HEARTBEAT: MessageHeartbeat;
281
288
  PROTOCOL_VERSION: MessageProtocolVersion;
282
289
  }
283
- type AnyMessage = MAVLinkMessage<MessageHeartbeat> | MAVLinkMessage<MessageProtocolVersion>;
284
- declare function isHeartbeat(msg: MAVLinkMessage): msg is MAVLinkMessage<MessageHeartbeat>;
285
- declare function isProtocolVersion(msg: MAVLinkMessage): msg is MAVLinkMessage<MessageProtocolVersion>;
290
+ type AnyMessage = ParsedMAVLinkMessage$1;
291
+ declare function isHeartbeat(msg: ParsedMAVLinkMessage$1): msg is ParsedMAVLinkMessage$1 & {
292
+ payload: MessageHeartbeat;
293
+ };
294
+ declare function isProtocolVersion(msg: ParsedMAVLinkMessage$1): msg is ParsedMAVLinkMessage$1 & {
295
+ payload: MessageProtocolVersion;
296
+ };
286
297
 
298
+ interface ParsedMAVLinkMessage {
299
+ timestamp: number;
300
+ system_id: number;
301
+ component_id: number;
302
+ message_id: number;
303
+ message_name: string;
304
+ sequence: number;
305
+ payload: Record<string, any>;
306
+ protocol_version: 1 | 2;
307
+ checksum: number;
308
+ crc_ok: boolean;
309
+ signature?: Uint8Array;
310
+ dialect?: string;
311
+ }
312
+ interface MAVLinkFrame {
313
+ magic: number;
314
+ length: number;
315
+ incompatible_flags?: number;
316
+ compatible_flags?: number;
317
+ sequence: number;
318
+ system_id: number;
319
+ component_id: number;
320
+ message_id: number;
321
+ payload: Uint8Array;
322
+ checksum: number;
323
+ signature?: Uint8Array;
324
+ }
287
325
  interface MessageDefinition {
288
326
  id: number;
289
327
  name: string;
@@ -295,7 +333,33 @@ interface FieldDefinition {
295
333
  arrayLength?: number;
296
334
  extension?: boolean;
297
335
  }
298
- declare const STANDARD_MESSAGE_DEFINITIONS: MessageDefinition[];
336
+ declare abstract class DialectParser {
337
+ protected messageDefinitions: Map<number, MessageDefinition>;
338
+ protected dialectName: string;
339
+ private buffer;
340
+ constructor(dialectName: string);
341
+ abstract loadDefinitions(): Promise<void>;
342
+ parseBytes(data: Uint8Array): ParsedMAVLinkMessage[];
343
+ private tryParseFrame;
344
+ resetBuffer(): void;
345
+ decode(frame: MAVLinkFrame & {
346
+ crc_ok?: boolean;
347
+ protocol_version?: 1 | 2;
348
+ }): ParsedMAVLinkMessage;
349
+ private decodePayload;
350
+ private getDefaultValue;
351
+ private decodeField;
352
+ private decodeSingleValue;
353
+ getMessageDefinition(id: number): MessageDefinition | undefined;
354
+ getSupportedMessageIds(): number[];
355
+ getDialectName(): string;
356
+ supportsMessage(messageId: number): boolean;
357
+ }
358
+ declare class StandardParser extends DialectParser {
359
+ constructor();
360
+ loadDefinitions(): Promise<void>;
361
+ private loadDefinitionsSync;
362
+ }
299
363
 
300
- export { BOOLEnum, MAV_AUTOPILOTEnum, MAV_COMPONENTEnum, MAV_MODE_FLAGEnum, MAV_MODE_FLAG_DECODE_POSITIONEnum, MAV_STATEEnum, MAV_TYPEEnum, STANDARD_MESSAGE_DEFINITIONS, isHeartbeat, isProtocolVersion };
301
- export type { AnyMessage, BOOL, MAVLinkMessage, MAV_AUTOPILOT, MAV_COMPONENT, MAV_MODE_FLAG, MAV_MODE_FLAG_DECODE_POSITION, MAV_STATE, MAV_TYPE, MessageHeartbeat, MessageProtocolVersion, MessageTypeMap };
364
+ export { BOOLEnum, MAV_AUTOPILOTEnum, MAV_COMPONENTEnum, MAV_MODE_FLAGEnum, MAV_MODE_FLAG_DECODE_POSITIONEnum, MAV_STATEEnum, MAV_TYPEEnum, StandardParser, isHeartbeat, isProtocolVersion };
365
+ export type { AnyMessage, BOOL, MAV_AUTOPILOT, MAV_COMPONENT, MAV_MODE_FLAG, MAV_MODE_FLAG_DECODE_POSITION, MAV_STATE, MAV_TYPE, MessageHeartbeat, MessageProtocolVersion, MessageTypeMap, ParsedMAVLinkMessage$1 as ParsedMAVLinkMessage };
@@ -505,15 +505,286 @@ var BOOLEnum;
505
505
  // Auto-generated TypeScript message interfaces for standard dialect
506
506
  // Type guard functions
507
507
  function isHeartbeat(msg) {
508
- return msg.type === 'HEARTBEAT';
508
+ return msg.message_name === 'HEARTBEAT';
509
509
  }
510
510
  function isProtocolVersion(msg) {
511
- return msg.type === 'PROTOCOL_VERSION';
511
+ return msg.message_name === 'PROTOCOL_VERSION';
512
512
  }
513
513
 
514
- // Auto-generated decoder definitions for standard dialect
514
+ // Auto-generated decoder and parser for standard dialect
515
515
  // Generated from MAVLink XML definitions
516
- const STANDARD_MESSAGE_DEFINITIONS = [
516
+ // Base dialect parser class
517
+ class DialectParser {
518
+ constructor(dialectName) {
519
+ this.messageDefinitions = new Map();
520
+ this.buffer = new Uint8Array(0);
521
+ this.dialectName = dialectName;
522
+ }
523
+ parseBytes(data) {
524
+ const results = [];
525
+ if (!data || data.length === 0) {
526
+ return results;
527
+ }
528
+ // Append new data to buffer
529
+ const newBuffer = new Uint8Array(this.buffer.length + data.length);
530
+ newBuffer.set(this.buffer);
531
+ newBuffer.set(data, this.buffer.length);
532
+ this.buffer = newBuffer;
533
+ let offset = 0;
534
+ // Parse MAVLink frames from buffer
535
+ while (offset < this.buffer.length) {
536
+ const frameResult = this.tryParseFrame(this.buffer.slice(offset));
537
+ if (frameResult.frame) {
538
+ const message = this.decode(frameResult.frame);
539
+ results.push(message);
540
+ offset += frameResult.bytesConsumed;
541
+ }
542
+ else if (frameResult.bytesConsumed > 0) {
543
+ // Skip invalid bytes
544
+ offset += frameResult.bytesConsumed;
545
+ }
546
+ else {
547
+ // Not enough data for a complete frame
548
+ break;
549
+ }
550
+ }
551
+ // Keep remaining data in buffer
552
+ this.buffer = this.buffer.slice(offset);
553
+ return results;
554
+ }
555
+ tryParseFrame(data) {
556
+ if (data.length < 8) {
557
+ return { bytesConsumed: 0 };
558
+ }
559
+ let offset = 0;
560
+ // Find magic byte
561
+ while (offset < data.length && data[offset] !== 0xFE && data[offset] !== 0xFD) {
562
+ offset++;
563
+ }
564
+ if (offset === data.length) {
565
+ return { bytesConsumed: data.length };
566
+ }
567
+ const magic = data[offset];
568
+ const isV2 = magic === 0xFD;
569
+ if (data.length - offset < (isV2 ? 12 : 8)) {
570
+ return { bytesConsumed: offset };
571
+ }
572
+ let frameOffset = offset;
573
+ const frame = { magic };
574
+ frameOffset++;
575
+ frame.length = data[frameOffset++];
576
+ if (isV2) {
577
+ frame.incompatible_flags = data[frameOffset++];
578
+ frame.compatible_flags = data[frameOffset++];
579
+ }
580
+ frame.sequence = data[frameOffset++];
581
+ frame.system_id = data[frameOffset++];
582
+ frame.component_id = data[frameOffset++];
583
+ frame.message_id = data[frameOffset++];
584
+ if (isV2 && data.length - frameOffset >= 2) {
585
+ frame.message_id |= (data[frameOffset++] << 8);
586
+ frame.message_id |= (data[frameOffset++] << 16);
587
+ }
588
+ const totalLength = frameOffset - offset + frame.length + 2; // +2 for checksum
589
+ if (data.length - offset < totalLength) {
590
+ return { bytesConsumed: offset };
591
+ }
592
+ frame.payload = data.slice(frameOffset, frameOffset + frame.length);
593
+ frameOffset += frame.length;
594
+ frame.checksum = data[frameOffset] | (data[frameOffset + 1] << 8);
595
+ frameOffset += 2;
596
+ // Handle signature for v2
597
+ if (isV2 && frame.incompatible_flags && (frame.incompatible_flags & 0x01)) {
598
+ if (data.length - frameOffset >= 13) {
599
+ frame.signature = data.slice(frameOffset, frameOffset + 13);
600
+ frameOffset += 13;
601
+ }
602
+ }
603
+ frame.crc_ok = true; // Simplified - not doing CRC validation
604
+ frame.protocol_version = isV2 ? 2 : 1;
605
+ return { frame, bytesConsumed: frameOffset - offset };
606
+ }
607
+ resetBuffer() {
608
+ this.buffer = new Uint8Array(0);
609
+ }
610
+ decode(frame) {
611
+ const messageDef = this.messageDefinitions.get(frame.message_id);
612
+ const protocolVersion = frame.protocol_version || (frame.magic === 0xFD ? 2 : 1);
613
+ if (!messageDef) {
614
+ return {
615
+ timestamp: Date.now(),
616
+ system_id: frame.system_id,
617
+ component_id: frame.component_id,
618
+ message_id: frame.message_id,
619
+ message_name: `UNKNOWN_${frame.message_id}`,
620
+ sequence: frame.sequence,
621
+ payload: {
622
+ raw_payload: Array.from(frame.payload)
623
+ },
624
+ protocol_version: protocolVersion,
625
+ checksum: frame.checksum,
626
+ crc_ok: frame.crc_ok !== false,
627
+ signature: frame.signature,
628
+ dialect: this.dialectName
629
+ };
630
+ }
631
+ const payload = this.decodePayload(frame.payload, messageDef.fields);
632
+ return {
633
+ timestamp: Date.now(),
634
+ system_id: frame.system_id,
635
+ component_id: frame.component_id,
636
+ message_id: frame.message_id,
637
+ message_name: messageDef.name,
638
+ sequence: frame.sequence,
639
+ payload,
640
+ protocol_version: protocolVersion,
641
+ checksum: frame.checksum,
642
+ crc_ok: frame.crc_ok !== false,
643
+ signature: frame.signature,
644
+ dialect: this.dialectName
645
+ };
646
+ }
647
+ decodePayload(payload, fields) {
648
+ const result = {};
649
+ const view = new DataView(payload.buffer, payload.byteOffset, payload.byteLength);
650
+ let offset = 0;
651
+ for (const field of fields) {
652
+ if (offset >= payload.length) {
653
+ result[field.name] = this.getDefaultValue(field);
654
+ }
655
+ else {
656
+ const { value, bytesRead } = this.decodeField(view, offset, field);
657
+ result[field.name] = value;
658
+ offset += bytesRead;
659
+ }
660
+ }
661
+ return result;
662
+ }
663
+ getDefaultValue(field) {
664
+ const isArray = field.arrayLength !== undefined && field.arrayLength > 1;
665
+ if (isArray) {
666
+ return [];
667
+ }
668
+ switch (field.type) {
669
+ case 'uint8_t':
670
+ case 'int8_t':
671
+ case 'uint16_t':
672
+ case 'int16_t':
673
+ case 'uint32_t':
674
+ case 'int32_t':
675
+ case 'float':
676
+ case 'double':
677
+ return 0;
678
+ case 'uint64_t':
679
+ case 'int64_t':
680
+ return 0n;
681
+ case 'char':
682
+ return '\0';
683
+ default:
684
+ if (field.type.startsWith('char[') || field.type.includes('[]')) {
685
+ return '';
686
+ }
687
+ return 0;
688
+ }
689
+ }
690
+ decodeField(view, offset, field) {
691
+ const isArray = field.arrayLength !== undefined;
692
+ const arrayLength = field.arrayLength || 1;
693
+ if (isArray && arrayLength > 1) {
694
+ const values = [];
695
+ let totalBytes = 0;
696
+ // Strip array notation from type to avoid double processing
697
+ let baseType = field.type;
698
+ if (baseType.includes('[') && baseType.includes(']')) {
699
+ baseType = baseType.substring(0, baseType.indexOf('['));
700
+ }
701
+ for (let i = 0; i < arrayLength; i++) {
702
+ if (offset + totalBytes >= view.byteLength)
703
+ break;
704
+ const { value, bytesRead } = this.decodeSingleValue(view, offset + totalBytes, baseType);
705
+ values.push(value);
706
+ totalBytes += bytesRead;
707
+ }
708
+ return { value: values, bytesRead: totalBytes };
709
+ }
710
+ else {
711
+ return this.decodeSingleValue(view, offset, field.type);
712
+ }
713
+ }
714
+ decodeSingleValue(view, offset, type) {
715
+ try {
716
+ switch (type) {
717
+ case 'uint8_t':
718
+ return { value: view.getUint8(offset), bytesRead: 1 };
719
+ case 'int8_t':
720
+ return { value: view.getInt8(offset), bytesRead: 1 };
721
+ case 'uint16_t':
722
+ return { value: view.getUint16(offset, true), bytesRead: 2 };
723
+ case 'int16_t':
724
+ return { value: view.getInt16(offset, true), bytesRead: 2 };
725
+ case 'uint32_t':
726
+ return { value: view.getUint32(offset, true), bytesRead: 4 };
727
+ case 'int32_t':
728
+ return { value: view.getInt32(offset, true), bytesRead: 4 };
729
+ case 'uint64_t':
730
+ return { value: view.getBigUint64(offset, true), bytesRead: 8 };
731
+ case 'int64_t':
732
+ return { value: view.getBigInt64(offset, true), bytesRead: 8 };
733
+ case 'float':
734
+ return { value: view.getFloat32(offset, true), bytesRead: 4 };
735
+ case 'double':
736
+ return { value: view.getFloat64(offset, true), bytesRead: 8 };
737
+ case 'char': {
738
+ const charCode = view.getUint8(offset);
739
+ return { value: charCode === 0 ? '\0' : String.fromCharCode(charCode), bytesRead: 1 };
740
+ }
741
+ default:
742
+ if (type.startsWith('char[') && type.endsWith(']')) {
743
+ const length = parseInt(type.slice(5, -1));
744
+ const chars = [];
745
+ for (let i = 0; i < length && offset + i < view.byteLength; i++) {
746
+ const charCode = view.getUint8(offset + i);
747
+ if (charCode === 0)
748
+ break;
749
+ chars.push(String.fromCharCode(charCode));
750
+ }
751
+ return { value: chars.join(''), bytesRead: length };
752
+ }
753
+ else if (type.includes('[') && type.includes(']')) {
754
+ const baseType = type.substring(0, type.indexOf('['));
755
+ const arrayLength = parseInt(type.substring(type.indexOf('[') + 1, type.indexOf(']')));
756
+ const values = [];
757
+ let totalBytes = 0;
758
+ for (let i = 0; i < arrayLength; i++) {
759
+ if (offset + totalBytes >= view.byteLength)
760
+ break;
761
+ const { value, bytesRead } = this.decodeSingleValue(view, offset + totalBytes, baseType);
762
+ values.push(value);
763
+ totalBytes += bytesRead;
764
+ }
765
+ return { value: values, bytesRead: totalBytes };
766
+ }
767
+ return { value: view.getUint8(offset), bytesRead: 1 };
768
+ }
769
+ }
770
+ catch (error) {
771
+ return { value: 0, bytesRead: 1 };
772
+ }
773
+ }
774
+ getMessageDefinition(id) {
775
+ return this.messageDefinitions.get(id);
776
+ }
777
+ getSupportedMessageIds() {
778
+ return Array.from(this.messageDefinitions.keys()).sort((a, b) => a - b);
779
+ }
780
+ getDialectName() {
781
+ return this.dialectName;
782
+ }
783
+ supportsMessage(messageId) {
784
+ return this.messageDefinitions.has(messageId);
785
+ }
786
+ }
787
+ const MESSAGE_DEFINITIONS = [
517
788
  {
518
789
  id: 0,
519
790
  name: 'HEARTBEAT',
@@ -527,19 +798,19 @@ const STANDARD_MESSAGE_DEFINITIONS = [
527
798
  type: 'uint8_t',
528
799
  },
529
800
  {
530
- name: 'base_mode',
801
+ name: 'baseMode',
531
802
  type: 'uint8_t',
532
803
  },
533
804
  {
534
- name: 'custom_mode',
805
+ name: 'customMode',
535
806
  type: 'uint32_t',
536
807
  },
537
808
  {
538
- name: 'system_status',
809
+ name: 'systemStatus',
539
810
  type: 'uint8_t',
540
811
  },
541
812
  {
542
- name: 'mavlink_version',
813
+ name: 'mavlinkVersion',
543
814
  type: 'uint8_t_mavlink_version',
544
815
  },
545
816
  ]
@@ -553,26 +824,44 @@ const STANDARD_MESSAGE_DEFINITIONS = [
553
824
  type: 'uint16_t',
554
825
  },
555
826
  {
556
- name: 'min_version',
827
+ name: 'minVersion',
557
828
  type: 'uint16_t',
558
829
  },
559
830
  {
560
- name: 'max_version',
831
+ name: 'maxVersion',
561
832
  type: 'uint16_t',
562
833
  },
563
834
  {
564
- name: 'spec_version_hash',
565
- type: 'uint8_t',
835
+ name: 'specVersionHash',
836
+ type: 'uint8_t[8]',
566
837
  arrayLength: 8,
567
838
  },
568
839
  {
569
- name: 'library_version_hash',
570
- type: 'uint8_t',
840
+ name: 'libraryVersionHash',
841
+ type: 'uint8_t[8]',
571
842
  arrayLength: 8,
572
843
  },
573
844
  ]
574
845
  },
575
846
  ];
847
+ class StandardParser extends DialectParser {
848
+ constructor() {
849
+ super('standard');
850
+ this.loadDefinitionsSync();
851
+ }
852
+ async loadDefinitions() {
853
+ this.messageDefinitions.clear();
854
+ for (const def of MESSAGE_DEFINITIONS) {
855
+ this.messageDefinitions.set(def.id, def);
856
+ }
857
+ }
858
+ loadDefinitionsSync() {
859
+ this.messageDefinitions.clear();
860
+ for (const def of MESSAGE_DEFINITIONS) {
861
+ this.messageDefinitions.set(def.id, def);
862
+ }
863
+ }
864
+ }
576
865
 
577
- export { BOOLEnum, MAV_AUTOPILOTEnum, MAV_COMPONENTEnum, MAV_MODE_FLAGEnum, MAV_MODE_FLAG_DECODE_POSITIONEnum, MAV_STATEEnum, MAV_TYPEEnum, STANDARD_MESSAGE_DEFINITIONS, isHeartbeat, isProtocolVersion };
866
+ export { BOOLEnum, MAV_AUTOPILOTEnum, MAV_COMPONENTEnum, MAV_MODE_FLAGEnum, MAV_MODE_FLAG_DECODE_POSITIONEnum, MAV_STATEEnum, MAV_TYPEEnum, StandardParser, isHeartbeat, isProtocolVersion };
578
867
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/generated/dialects/standard/enums.ts","../../../src/generated/dialects/standard/messages.ts","../../../src/generated/dialects/standard/decoder.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,6BAAA,CAAA,GAAA,EAAA,CAAA,GAAA,6BAAgC;;AAEhC,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/generated/dialects/standard/enums.ts","../../../src/generated/dialects/standard/messages.ts","../../../src/generated/dialects/standard/decoder.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,6BAAA,CAAA,GAAA,EAAA,CAAA,GAAA,6BAAgC;;AAEhC,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,oBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,iBAAqB;;AAErB,IAAA,iBAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,kBAAsB;;AAEtB,IAAA,iBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,iBAAqB;;AAErB,IAAA,iBAAA,CAAA,iBAAA,CAAA,wBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,wBAA4B;;AAE5B,IAAA,iBAAA,CAAA,iBAAA,CAAA,wBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,wBAA4B;;AAE5B,IAAA,iBAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,mBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,uBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,uBAA2B;;AAE3B,IAAA,iBAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,mBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,qBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,qBAAyB;;AAEzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,sBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,sBAA0B;;AAE1B,IAAA,iBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,oBAAwB;;AAExB,IAAA,iBAAA,CAAA,iBAAA,CAAA,4BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,4BAAgC;;AAEhC,IAAA,iBAAA,CAAA,iBAAA,CAAA,8BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,8BAAkC;;AAElC,IAAA,iBAAA,CAAA,iBAAA,CAAA,+BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,+BAAmC;;AAEnC,IAAA,iBAAA,CAAA,iBAAA,CAAA,+BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,+BAAmC;;AAEnC,IAAA,iBAAA,CAAA,iBAAA,CAAA,+BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,+BAAmC;;AAEnC,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,gCAAA,CAAA,GAAA,GAAA,CAAA,GAAA,gCAAoC;;AAEpC,IAAA,iBAAA,CAAA,iBAAA,CAAA,sCAAA,CAAA,GAAA,GAAA,CAAA,GAAA,sCAA0C;;AAE1C,IAAA,iBAAA,CAAA,iBAAA,CAAA,6BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,6BAAiC;;AAEjC,IAAA,iBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,iBAAqB;;AAErB,IAAA,iBAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,mBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,mBAAuB;;AAEvB,IAAA,iBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,iBAAqB;;AAErB,IAAA,iBAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,kBAAsB;;AAEtB,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,wBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,wBAA4B;;AAE5B,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,yBAAA,CAAA,GAAA,GAAA,CAAA,GAAA,yBAA6B;;AAE7B,IAAA,iBAAA,CAAA,iBAAA,CAAA,4BAAA,CAAA,GAAA,GAAA,CAAA,GAAA,4BAAgC;AAClC,CAAC,EAjRW,iBAAiB,KAAjB,iBAAiB,GAAA,EAAA,CAAA,CAAA;AAsR7B;IACY;AAAZ,CAAA,UAAY,QAAQ,EAAA;;AAElB,IAAA,QAAA,CAAA,QAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAc;;AAEd,IAAA,QAAA,CAAA,QAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAa;AACf,CAAC,EALW,QAAQ,KAAR,QAAQ,GAAA,EAAA,CAAA,CAAA;;ACjgBpB;AAqDA;AACM,SAAU,WAAW,CAAC,GAAyB,EAAA;AACnD,IAAA,OAAO,GAAG,CAAC,YAAY,KAAK,WAAW;AACzC;AACM,SAAU,iBAAiB,CAAC,GAAyB,EAAA;AACzD,IAAA,OAAO,GAAG,CAAC,YAAY,KAAK,kBAAkB;AAChD;;AC3DA;AACA;AA6CA;AACA,MAAe,aAAa,CAAA;AAK1B,IAAA,WAAA,CAAY,WAAmB,EAAA;AAJrB,QAAA,IAAA,CAAA,kBAAkB,GAAmC,IAAI,GAAG,EAAE;AAEhE,QAAA,IAAA,CAAA,MAAM,GAAe,IAAI,UAAU,CAAC,CAAC,CAAC;AAG5C,QAAA,IAAI,CAAC,WAAW,GAAG,WAAW;IAChC;AAIA,IAAA,UAAU,CAAC,IAAgB,EAAA;QACzB,MAAM,OAAO,GAA2B,EAAE;QAE1C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,YAAA,OAAO,OAAO;QAChB;;AAGA,QAAA,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAClE,QAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;AACvC,QAAA,IAAI,CAAC,MAAM,GAAG,SAAS;QAEvB,IAAI,MAAM,GAAG,CAAC;;QAGd,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClC,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAEjE,YAAA,IAAI,WAAW,CAAC,KAAK,EAAE;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;AAC9C,gBAAA,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;AACrB,gBAAA,MAAM,IAAI,WAAW,CAAC,aAAa;YACrC;AAAO,iBAAA,IAAI,WAAW,CAAC,aAAa,GAAG,CAAC,EAAE;;AAExC,gBAAA,MAAM,IAAI,WAAW,CAAC,aAAa;YACrC;iBAAO;;gBAEL;YACF;QACF;;QAGA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;AACvC,QAAA,OAAO,OAAO;IAChB;AAEQ,IAAA,aAAa,CAAC,IAAgB,EAAA;AACpC,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;AACnB,YAAA,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE;QAC7B;QAEA,IAAI,MAAM,GAAG,CAAC;;QAGd,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;AAC7E,YAAA,MAAM,EAAE;QACV;AAEA,QAAA,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;AAC1B,YAAA,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE;QACvC;AAEA,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;AAC1B,QAAA,MAAM,IAAI,GAAG,KAAK,KAAK,IAAI;AAE3B,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE;AAC1C,YAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE;QAClC;QAEA,IAAI,WAAW,GAAG,MAAM;AACxB,QAAA,MAAM,KAAK,GAAQ,EAAE,KAAK,EAAE;AAE5B,QAAA,WAAW,EAAE;QACb,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAElC,IAAI,IAAI,EAAE;YACR,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC9C,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9C;QAEA,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEtC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,WAAW,IAAI,CAAC,EAAE;AAC1C,YAAA,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;AAC9C,YAAA,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QACjD;AAEA,QAAA,MAAM,WAAW,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,WAAW,EAAE;AACtC,YAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE;QAClC;AAEA,QAAA,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;AACnE,QAAA,WAAW,IAAI,KAAK,CAAC,MAAM;AAE3B,QAAA,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACjE,WAAW,IAAI,CAAC;;AAGhB,QAAA,IAAI,IAAI,IAAI,KAAK,CAAC,kBAAkB,KAAK,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAAE;YACzE,IAAI,IAAI,CAAC,MAAM,GAAG,WAAW,IAAI,EAAE,EAAE;AACnC,gBAAA,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,GAAG,EAAE,CAAC;gBAC3D,WAAW,IAAI,EAAE;YACnB;QACF;AAEA,QAAA,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;AACpB,QAAA,KAAK,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC;QAErC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,GAAG,MAAM,EAAE;IACvD;IAEA,WAAW,GAAA;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC;IACjC;AAEA,IAAA,MAAM,CAAC,KAAoE,EAAA;AACzE,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;QAEhE,MAAM,eAAe,GAAG,KAAK,CAAC,gBAAgB,KAAK,KAAK,CAAC,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAEhF,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;AACL,gBAAA,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,UAAU,EAAE,KAAK,CAAC,UAAU;AAC5B,gBAAA,YAAY,EAAE,CAAA,QAAA,EAAW,KAAK,CAAC,UAAU,CAAA,CAAE;gBAC3C,QAAQ,EAAE,KAAK,CAAC,QAAQ;AACxB,gBAAA,OAAO,EAAE;oBACP,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;AACtC,iBAAA;AACD,gBAAA,gBAAgB,EAAE,eAAe;gBACjC,QAAQ,EAAE,KAAK,CAAC,QAAQ;AACxB,gBAAA,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,KAAK;gBAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,IAAI,CAAC;aACf;QACH;AAEA,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;QAEpE,OAAO;AACL,YAAA,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,YAAY,EAAE,UAAU,CAAC,IAAI;YAC7B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO;AACP,YAAA,gBAAgB,EAAE,eAAe;YACjC,QAAQ,EAAE,KAAK,CAAC,QAAQ;AACxB,YAAA,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,KAAK;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,IAAI,CAAC;SACf;IACH;IAEQ,aAAa,CAAC,OAAmB,EAAE,MAAyB,EAAA;QAClE,MAAM,MAAM,GAAQ,EAAE;AACtB,QAAA,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC;QACjF,IAAI,MAAM,GAAG,CAAC;AAEd,QAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;AAC1B,YAAA,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE;AAC5B,gBAAA,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;YAClD;iBAAO;AACL,gBAAA,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC;AAClE,gBAAA,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK;gBAC1B,MAAM,IAAI,SAAS;YACrB;QACF;AAEA,QAAA,OAAO,MAAM;IACf;AAEQ,IAAA,eAAe,CAAC,KAAsB,EAAA;AAC5C,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC;QAExE,IAAI,OAAO,EAAE;AACX,YAAA,OAAO,EAAE;QACX;AAEA,QAAA,QAAQ,KAAK,CAAC,IAAI;AAChB,YAAA,KAAK,SAAS;AACd,YAAA,KAAK,QAAQ;AACb,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,SAAS;AACd,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,SAAS;AACd,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,CAAC;AACV,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,SAAS;AACZ,gBAAA,OAAO,EAAE;AACX,YAAA,KAAK,MAAM;AACT,gBAAA,OAAO,IAAI;AACb,YAAA;AACE,gBAAA,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC/D,oBAAA,OAAO,EAAE;gBACX;AACA,gBAAA,OAAO,CAAC;;IAEd;AAEQ,IAAA,WAAW,CAAC,IAAc,EAAE,MAAc,EAAE,KAAsB,EAAA;AACxE,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS;AAC/C,QAAA,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,CAAC;AAE1C,QAAA,IAAI,OAAO,IAAI,WAAW,GAAG,CAAC,EAAE;YAC9B,MAAM,MAAM,GAAU,EAAE;YACxB,IAAI,UAAU,GAAG,CAAC;;AAGlB,YAAA,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI;AACzB,YAAA,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACpD,gBAAA,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzD;AAEA,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;AACpC,gBAAA,IAAI,MAAM,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU;oBAAE;AAC5C,gBAAA,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC;AACxF,gBAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClB,UAAU,IAAI,SAAS;YACzB;YAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE;QACjD;aAAO;AACL,YAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;QACzD;IACF;AAEQ,IAAA,iBAAiB,CAAC,IAAc,EAAE,MAAc,EAAE,IAAY,EAAA;AACpE,QAAA,IAAI;YACF,QAAQ,IAAI;AACV,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AACvD,gBAAA,KAAK,QAAQ;AACX,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AACtD,gBAAA,KAAK,UAAU;AACb,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAC9D,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAC7D,gBAAA,KAAK,UAAU;AACb,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAC9D,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAC7D,gBAAA,KAAK,UAAU;AACb,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AACjE,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAChE,gBAAA,KAAK,OAAO;AACV,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;AAC/D,gBAAA,KAAK,QAAQ;AACX,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;gBAC/D,KAAK,MAAM,EAAE;oBACX,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACtC,OAAO,EAAE,KAAK,EAAE,QAAQ,KAAK,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;gBACvF;AACA,gBAAA;AACE,oBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAClD,wBAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1C,MAAM,KAAK,GAAa,EAAE;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE;4BAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;4BAC1C,IAAI,QAAQ,KAAK,CAAC;gCAAE;4BACpB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;wBAC3C;AACA,wBAAA,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE;oBACrD;AAAO,yBAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACnD,wBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wBACrD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;wBACtF,MAAM,MAAM,GAAU,EAAE;wBACxB,IAAI,UAAU,GAAG,CAAC;AAElB,wBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;AACpC,4BAAA,IAAI,MAAM,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU;gCAAE;AAC5C,4BAAA,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC;AACxF,4BAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;4BAClB,UAAU,IAAI,SAAS;wBACzB;wBAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE;oBACjD;AACA,oBAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;;QAE3D;QAAE,OAAO,KAAK,EAAE;YACd,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;QACnC;IACF;AAEA,IAAA,oBAAoB,CAAC,EAAU,EAAA;QAC7B,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IACxC;IAEA,sBAAsB,GAAA;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzE;IAEA,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW;IACzB;AAEA,IAAA,eAAe,CAAC,SAAiB,EAAA;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC;IAC/C;AACD;AAED,MAAM,mBAAmB,GAAwB;AAC/C,IAAA;AACE,QAAA,EAAE,EAAE,CAAC;AACL,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,MAAM,EAAE;AACN,YAAA;AACE,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,IAAI,EAAE,SAAS;AAChB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,IAAI,EAAE,SAAS;AAChB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,UAAU;AAChB,gBAAA,IAAI,EAAE,SAAS;AAChB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,IAAI,EAAE,UAAU;AACjB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,cAAc;AACpB,gBAAA,IAAI,EAAE,SAAS;AAChB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,gBAAgB;AACtB,gBAAA,IAAI,EAAE,yBAAyB;AAChC,aAAA;AACF;AACF,KAAA;AACD,IAAA;AACE,QAAA,EAAE,EAAE,GAAG;AACP,QAAA,IAAI,EAAE,kBAAkB;AACxB,QAAA,MAAM,EAAE;AACN,YAAA;AACE,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,IAAI,EAAE,UAAU;AACjB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,IAAI,EAAE,UAAU;AACjB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,IAAI,EAAE,UAAU;AACjB,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,WAAW,EAAE,CAAC;AACf,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,oBAAoB;AAC1B,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,WAAW,EAAE,CAAC;AACf,aAAA;AACF;AACF,KAAA;CACF;AAEK,MAAO,cAAe,SAAQ,aAAa,CAAA;AAC/C,IAAA,WAAA,GAAA;QACE,KAAK,CAAC,UAAU,CAAC;QACjB,IAAI,CAAC,mBAAmB,EAAE;IAC5B;AAEA,IAAA,MAAM,eAAe,GAAA;AACnB,QAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE;AAC/B,QAAA,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE;YACrC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC;QAC1C;IACF;IAEQ,mBAAmB,GAAA;AACzB,QAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE;AAC/B,QAAA,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE;YACrC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC;QAC1C;IACF;AACD;;;;"}