node-av 3.1.3 → 5.0.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.
Files changed (192) hide show
  1. package/README.md +88 -52
  2. package/binding.gyp +23 -11
  3. package/dist/api/audio-frame-buffer.d.ts +201 -0
  4. package/dist/api/audio-frame-buffer.js +275 -0
  5. package/dist/api/audio-frame-buffer.js.map +1 -0
  6. package/dist/api/bitstream-filter.d.ts +320 -78
  7. package/dist/api/bitstream-filter.js +684 -151
  8. package/dist/api/bitstream-filter.js.map +1 -1
  9. package/dist/api/constants.d.ts +44 -0
  10. package/dist/api/constants.js +45 -0
  11. package/dist/api/constants.js.map +1 -0
  12. package/dist/api/data/test_av1.ivf +0 -0
  13. package/dist/api/data/test_mjpeg.mjpeg +0 -0
  14. package/dist/api/data/test_vp8.ivf +0 -0
  15. package/dist/api/data/test_vp9.ivf +0 -0
  16. package/dist/api/decoder.d.ts +454 -77
  17. package/dist/api/decoder.js +1081 -271
  18. package/dist/api/decoder.js.map +1 -1
  19. package/dist/api/{media-input.d.ts → demuxer.d.ts} +295 -45
  20. package/dist/api/demuxer.js +1965 -0
  21. package/dist/api/demuxer.js.map +1 -0
  22. package/dist/api/encoder.d.ts +423 -132
  23. package/dist/api/encoder.js +1089 -240
  24. package/dist/api/encoder.js.map +1 -1
  25. package/dist/api/filter-complex.d.ts +769 -0
  26. package/dist/api/filter-complex.js +1596 -0
  27. package/dist/api/filter-complex.js.map +1 -0
  28. package/dist/api/filter-presets.d.ts +80 -5
  29. package/dist/api/filter-presets.js +117 -7
  30. package/dist/api/filter-presets.js.map +1 -1
  31. package/dist/api/filter.d.ts +561 -125
  32. package/dist/api/filter.js +1083 -274
  33. package/dist/api/filter.js.map +1 -1
  34. package/dist/api/{fmp4.d.ts → fmp4-stream.d.ts} +141 -140
  35. package/dist/api/fmp4-stream.js +539 -0
  36. package/dist/api/fmp4-stream.js.map +1 -0
  37. package/dist/api/hardware.d.ts +58 -6
  38. package/dist/api/hardware.js +127 -11
  39. package/dist/api/hardware.js.map +1 -1
  40. package/dist/api/index.d.ts +8 -4
  41. package/dist/api/index.js +17 -8
  42. package/dist/api/index.js.map +1 -1
  43. package/dist/api/io-stream.d.ts +6 -6
  44. package/dist/api/io-stream.js +5 -4
  45. package/dist/api/io-stream.js.map +1 -1
  46. package/dist/api/{media-output.d.ts → muxer.d.ts} +280 -66
  47. package/dist/api/muxer.js +1934 -0
  48. package/dist/api/muxer.js.map +1 -0
  49. package/dist/api/pipeline.d.ts +77 -29
  50. package/dist/api/pipeline.js +449 -439
  51. package/dist/api/pipeline.js.map +1 -1
  52. package/dist/api/rtp-stream.d.ts +312 -0
  53. package/dist/api/rtp-stream.js +630 -0
  54. package/dist/api/rtp-stream.js.map +1 -0
  55. package/dist/api/types.d.ts +533 -56
  56. package/dist/api/utilities/async-queue.d.ts +91 -0
  57. package/dist/api/utilities/async-queue.js +162 -0
  58. package/dist/api/utilities/async-queue.js.map +1 -0
  59. package/dist/api/utilities/audio-sample.d.ts +11 -1
  60. package/dist/api/utilities/audio-sample.js +10 -0
  61. package/dist/api/utilities/audio-sample.js.map +1 -1
  62. package/dist/api/utilities/channel-layout.d.ts +1 -0
  63. package/dist/api/utilities/channel-layout.js +1 -0
  64. package/dist/api/utilities/channel-layout.js.map +1 -1
  65. package/dist/api/utilities/image.d.ts +39 -1
  66. package/dist/api/utilities/image.js +38 -0
  67. package/dist/api/utilities/image.js.map +1 -1
  68. package/dist/api/utilities/index.d.ts +3 -0
  69. package/dist/api/utilities/index.js +6 -0
  70. package/dist/api/utilities/index.js.map +1 -1
  71. package/dist/api/utilities/media-type.d.ts +2 -1
  72. package/dist/api/utilities/media-type.js +1 -0
  73. package/dist/api/utilities/media-type.js.map +1 -1
  74. package/dist/api/utilities/pixel-format.d.ts +4 -1
  75. package/dist/api/utilities/pixel-format.js +3 -0
  76. package/dist/api/utilities/pixel-format.js.map +1 -1
  77. package/dist/api/utilities/sample-format.d.ts +6 -1
  78. package/dist/api/utilities/sample-format.js +5 -0
  79. package/dist/api/utilities/sample-format.js.map +1 -1
  80. package/dist/api/utilities/scheduler.d.ts +138 -0
  81. package/dist/api/utilities/scheduler.js +98 -0
  82. package/dist/api/utilities/scheduler.js.map +1 -0
  83. package/dist/api/utilities/streaming.d.ts +105 -15
  84. package/dist/api/utilities/streaming.js +201 -12
  85. package/dist/api/utilities/streaming.js.map +1 -1
  86. package/dist/api/utilities/timestamp.d.ts +15 -1
  87. package/dist/api/utilities/timestamp.js +14 -0
  88. package/dist/api/utilities/timestamp.js.map +1 -1
  89. package/dist/api/utilities/whisper-model.d.ts +310 -0
  90. package/dist/api/utilities/whisper-model.js +528 -0
  91. package/dist/api/utilities/whisper-model.js.map +1 -0
  92. package/dist/api/webrtc-stream.d.ts +288 -0
  93. package/dist/api/webrtc-stream.js +440 -0
  94. package/dist/api/webrtc-stream.js.map +1 -0
  95. package/dist/api/whisper.d.ts +324 -0
  96. package/dist/api/whisper.js +362 -0
  97. package/dist/api/whisper.js.map +1 -0
  98. package/dist/constants/constants.d.ts +54 -2
  99. package/dist/constants/constants.js +48 -1
  100. package/dist/constants/constants.js.map +1 -1
  101. package/dist/constants/encoders.d.ts +2 -1
  102. package/dist/constants/encoders.js +4 -3
  103. package/dist/constants/encoders.js.map +1 -1
  104. package/dist/constants/hardware.d.ts +26 -0
  105. package/dist/constants/hardware.js +27 -0
  106. package/dist/constants/hardware.js.map +1 -0
  107. package/dist/constants/index.d.ts +1 -0
  108. package/dist/constants/index.js +1 -0
  109. package/dist/constants/index.js.map +1 -1
  110. package/dist/ffmpeg/index.d.ts +3 -3
  111. package/dist/ffmpeg/index.js +3 -3
  112. package/dist/ffmpeg/utils.d.ts +27 -0
  113. package/dist/ffmpeg/utils.js +28 -16
  114. package/dist/ffmpeg/utils.js.map +1 -1
  115. package/dist/lib/binding.d.ts +22 -11
  116. package/dist/lib/binding.js.map +1 -1
  117. package/dist/lib/codec-context.d.ts +87 -0
  118. package/dist/lib/codec-context.js +125 -4
  119. package/dist/lib/codec-context.js.map +1 -1
  120. package/dist/lib/codec-parameters.d.ts +229 -1
  121. package/dist/lib/codec-parameters.js +264 -0
  122. package/dist/lib/codec-parameters.js.map +1 -1
  123. package/dist/lib/codec-parser.d.ts +23 -0
  124. package/dist/lib/codec-parser.js +25 -0
  125. package/dist/lib/codec-parser.js.map +1 -1
  126. package/dist/lib/codec.d.ts +26 -4
  127. package/dist/lib/codec.js +35 -0
  128. package/dist/lib/codec.js.map +1 -1
  129. package/dist/lib/dictionary.js +1 -0
  130. package/dist/lib/dictionary.js.map +1 -1
  131. package/dist/lib/error.js +1 -1
  132. package/dist/lib/error.js.map +1 -1
  133. package/dist/lib/fifo.d.ts +416 -0
  134. package/dist/lib/fifo.js +453 -0
  135. package/dist/lib/fifo.js.map +1 -0
  136. package/dist/lib/filter-context.d.ts +52 -11
  137. package/dist/lib/filter-context.js +56 -12
  138. package/dist/lib/filter-context.js.map +1 -1
  139. package/dist/lib/filter-graph.d.ts +9 -0
  140. package/dist/lib/filter-graph.js +13 -0
  141. package/dist/lib/filter-graph.js.map +1 -1
  142. package/dist/lib/filter.d.ts +21 -0
  143. package/dist/lib/filter.js +28 -0
  144. package/dist/lib/filter.js.map +1 -1
  145. package/dist/lib/format-context.d.ts +48 -14
  146. package/dist/lib/format-context.js +76 -7
  147. package/dist/lib/format-context.js.map +1 -1
  148. package/dist/lib/frame.d.ts +264 -1
  149. package/dist/lib/frame.js +351 -1
  150. package/dist/lib/frame.js.map +1 -1
  151. package/dist/lib/hardware-device-context.d.ts +3 -2
  152. package/dist/lib/hardware-device-context.js.map +1 -1
  153. package/dist/lib/index.d.ts +2 -0
  154. package/dist/lib/index.js +4 -0
  155. package/dist/lib/index.js.map +1 -1
  156. package/dist/lib/input-format.d.ts +21 -0
  157. package/dist/lib/input-format.js +42 -2
  158. package/dist/lib/input-format.js.map +1 -1
  159. package/dist/lib/native-types.d.ts +76 -27
  160. package/dist/lib/option.d.ts +25 -13
  161. package/dist/lib/option.js +28 -0
  162. package/dist/lib/option.js.map +1 -1
  163. package/dist/lib/output-format.d.ts +22 -1
  164. package/dist/lib/output-format.js +28 -0
  165. package/dist/lib/output-format.js.map +1 -1
  166. package/dist/lib/packet.d.ts +35 -0
  167. package/dist/lib/packet.js +52 -2
  168. package/dist/lib/packet.js.map +1 -1
  169. package/dist/lib/rational.d.ts +18 -0
  170. package/dist/lib/rational.js +19 -0
  171. package/dist/lib/rational.js.map +1 -1
  172. package/dist/lib/stream.d.ts +126 -0
  173. package/dist/lib/stream.js +188 -5
  174. package/dist/lib/stream.js.map +1 -1
  175. package/dist/lib/sync-queue.d.ts +179 -0
  176. package/dist/lib/sync-queue.js +197 -0
  177. package/dist/lib/sync-queue.js.map +1 -0
  178. package/dist/lib/types.d.ts +49 -1
  179. package/dist/lib/utilities.d.ts +281 -53
  180. package/dist/lib/utilities.js +298 -55
  181. package/dist/lib/utilities.js.map +1 -1
  182. package/install/check.js +2 -2
  183. package/package.json +37 -26
  184. package/dist/api/fmp4.js +0 -710
  185. package/dist/api/fmp4.js.map +0 -1
  186. package/dist/api/media-input.js +0 -1075
  187. package/dist/api/media-input.js.map +0 -1
  188. package/dist/api/media-output.js +0 -1040
  189. package/dist/api/media-output.js.map +0 -1
  190. package/dist/api/webrtc.d.ts +0 -664
  191. package/dist/api/webrtc.js +0 -1132
  192. package/dist/api/webrtc.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-complex.js","sourceRoot":"","sources":["../../src/api/filter-complex.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AVPixelFormat, AVSampleFormat } from '../constants/constants.js';
1
+ import type { AVPixelFormat, AVSampleFormat } from '../constants/index.js';
2
2
  import type { HardwareContext } from './hardware.js';
3
3
  /**
4
4
  * Hardware filter capabilities for different platforms.
@@ -533,21 +533,28 @@ export declare class FilterPreset {
533
533
  */
534
534
  asetnsamples(samples: number, padding?: boolean): FilterPreset;
535
535
  /**
536
- * Adds an aresample filter to change audio sample rate.
536
+ * Adds an aresample filter to change audio sample rate, format, and channel layout.
537
+ *
538
+ * Uses libswresample for high-quality audio resampling and format conversion.
539
+ * Can also perform timestamp compensation (stretch/squeeze/fill/trim).
537
540
  *
538
541
  * @param rate - Target sample rate in Hz
539
542
  *
543
+ * @param format - Optional target sample format (e.g., 's16', 'flt', 'fltp')
544
+ *
545
+ * @param channelLayout - Optional target channel layout (e.g., 'mono', 'stereo')
546
+ *
540
547
  * @returns This instance for chaining
541
548
  *
542
549
  * @example
543
550
  * ```typescript
544
- * chain.aresample(44100) // Convert to 44.1 kHz
545
- * chain.aresample(48000) // Convert to 48 kHz
551
+ * chain.aresample(44100) // Convert to 44.1 kHz only
552
+ * chain.aresample(48000, 's16', 'stereo') // Full conversion
546
553
  * ```
547
554
  *
548
555
  * @see {@link https://ffmpeg.org/ffmpeg-filters.html#aresample | FFmpeg aresample filter}
549
556
  */
550
- aresample(rate: number): FilterPreset;
557
+ aresample(rate: number, format?: AVSampleFormat | string, channelLayout?: string): FilterPreset;
551
558
  /**
552
559
  * Adds an atempo filter to change audio playback speed.
553
560
  * Factor must be between 0.5 and 2.0. For larger changes, chain multiple atempo filters.
@@ -1131,6 +1138,74 @@ export declare class FilterPreset {
1131
1138
  * @see {@link https://ffmpeg.org/ffmpeg-filters.html#atrim | FFmpeg atrim filter}
1132
1139
  */
1133
1140
  atrim(start: number, end?: number, duration?: number): FilterPreset;
1141
+ /**
1142
+ * Adds a whisper filter for audio transcription using whisper.cpp.
1143
+ * Transcribes audio and adds metadata to frames (lavfi.whisper.text, lavfi.whisper.duration).
1144
+ *
1145
+ * @param options - Whisper transcription options
1146
+ *
1147
+ * @param options.model - Path to whisper.cpp model file
1148
+ *
1149
+ * @param options.language - Language for transcription (default: 'auto')
1150
+ *
1151
+ * @param options.queue - Audio queue size in seconds (default: 3)
1152
+ *
1153
+ * @param options.useGpu - Use GPU for processing (default: true)
1154
+ *
1155
+ * @param options.gpuDevice - GPU device to use (default: 0)
1156
+ *
1157
+ * @param options.destination - Output destination for transcripts
1158
+ *
1159
+ * @param options.format - Output format: text|srt|json (default: 'text')
1160
+ *
1161
+ * @param options.vadModel - Path to VAD model file (optional)
1162
+ *
1163
+ * @param options.vadThreshold - VAD threshold 0.0-1.0 (default: 0.5)
1164
+ *
1165
+ * @param options.vadMinSpeechDuration - Minimum speech duration for VAD in seconds (default: 0.1)
1166
+ *
1167
+ * @param options.vadMinSilenceDuration - Minimum silence duration for VAD in seconds (default: 0.5)
1168
+ *
1169
+ * @returns This instance for chaining
1170
+ *
1171
+ * @example
1172
+ * ```typescript
1173
+ * // Basic transcription
1174
+ * chain.whisper({
1175
+ * model: '/path/to/ggml-base.bin'
1176
+ * });
1177
+ *
1178
+ * // With language and output
1179
+ * chain.whisper({
1180
+ * model: '/path/to/ggml-base.bin',
1181
+ * language: 'en',
1182
+ * destination: 'output.srt',
1183
+ * format: 'srt'
1184
+ * });
1185
+ *
1186
+ * // With VAD model
1187
+ * chain.whisper({
1188
+ * model: '/path/to/ggml-base.bin',
1189
+ * vadModel: '/path/to/ggml-silero-v5.1.2.bin',
1190
+ * vadThreshold: 0.5
1191
+ * });
1192
+ * ```
1193
+ *
1194
+ * @see {@link https://ffmpeg.org/ffmpeg-filters.html#whisper | FFmpeg whisper filter}
1195
+ */
1196
+ whisper(options: {
1197
+ model: string;
1198
+ language?: string;
1199
+ queue?: number;
1200
+ useGpu?: boolean;
1201
+ gpuDevice?: number;
1202
+ destination?: string;
1203
+ format?: 'text' | 'srt' | 'json';
1204
+ vadModel?: string;
1205
+ vadThreshold?: number;
1206
+ vadMinSpeechDuration?: number;
1207
+ vadMinSilenceDuration?: number;
1208
+ }): FilterPreset;
1134
1209
  /**
1135
1210
  * Adds a hwupload filter to upload frames to hardware.
1136
1211
  * Only applied if hardware acceleration is configured.
@@ -51,8 +51,7 @@ export class FilterPreset {
51
51
  if (!filter) {
52
52
  return false;
53
53
  }
54
- // Check if filter has hardware device flag
55
- return (filter.flags & AVFILTER_FLAG_HWDEVICE) !== 0;
54
+ return filter.hasFlags(AVFILTER_FLAG_HWDEVICE);
56
55
  }
57
56
  /**
58
57
  * Creates a new filter chain builder.
@@ -861,22 +860,37 @@ export class FilterPreset {
861
860
  return this;
862
861
  }
863
862
  /**
864
- * Adds an aresample filter to change audio sample rate.
863
+ * Adds an aresample filter to change audio sample rate, format, and channel layout.
864
+ *
865
+ * Uses libswresample for high-quality audio resampling and format conversion.
866
+ * Can also perform timestamp compensation (stretch/squeeze/fill/trim).
865
867
  *
866
868
  * @param rate - Target sample rate in Hz
867
869
  *
870
+ * @param format - Optional target sample format (e.g., 's16', 'flt', 'fltp')
871
+ *
872
+ * @param channelLayout - Optional target channel layout (e.g., 'mono', 'stereo')
873
+ *
868
874
  * @returns This instance for chaining
869
875
  *
870
876
  * @example
871
877
  * ```typescript
872
- * chain.aresample(44100) // Convert to 44.1 kHz
873
- * chain.aresample(48000) // Convert to 48 kHz
878
+ * chain.aresample(44100) // Convert to 44.1 kHz only
879
+ * chain.aresample(48000, 's16', 'stereo') // Full conversion
874
880
  * ```
875
881
  *
876
882
  * @see {@link https://ffmpeg.org/ffmpeg-filters.html#aresample | FFmpeg aresample filter}
877
883
  */
878
- aresample(rate) {
879
- this.add(`aresample=${rate}`);
884
+ aresample(rate, format, channelLayout) {
885
+ const params = [`${rate}`];
886
+ if (format !== undefined) {
887
+ const formatStr = typeof format === 'number' ? `${format}` : format;
888
+ params.push(`osf=${formatStr}`);
889
+ }
890
+ if (channelLayout !== undefined) {
891
+ params.push(`ochl=${channelLayout}`);
892
+ }
893
+ this.add(`aresample=${params.join(':')}`);
880
894
  return this;
881
895
  }
882
896
  /**
@@ -1730,6 +1744,102 @@ export class FilterPreset {
1730
1744
  this.add(filter);
1731
1745
  return this;
1732
1746
  }
1747
+ /**
1748
+ * Adds a whisper filter for audio transcription using whisper.cpp.
1749
+ * Transcribes audio and adds metadata to frames (lavfi.whisper.text, lavfi.whisper.duration).
1750
+ *
1751
+ * @param options - Whisper transcription options
1752
+ *
1753
+ * @param options.model - Path to whisper.cpp model file
1754
+ *
1755
+ * @param options.language - Language for transcription (default: 'auto')
1756
+ *
1757
+ * @param options.queue - Audio queue size in seconds (default: 3)
1758
+ *
1759
+ * @param options.useGpu - Use GPU for processing (default: true)
1760
+ *
1761
+ * @param options.gpuDevice - GPU device to use (default: 0)
1762
+ *
1763
+ * @param options.destination - Output destination for transcripts
1764
+ *
1765
+ * @param options.format - Output format: text|srt|json (default: 'text')
1766
+ *
1767
+ * @param options.vadModel - Path to VAD model file (optional)
1768
+ *
1769
+ * @param options.vadThreshold - VAD threshold 0.0-1.0 (default: 0.5)
1770
+ *
1771
+ * @param options.vadMinSpeechDuration - Minimum speech duration for VAD in seconds (default: 0.1)
1772
+ *
1773
+ * @param options.vadMinSilenceDuration - Minimum silence duration for VAD in seconds (default: 0.5)
1774
+ *
1775
+ * @returns This instance for chaining
1776
+ *
1777
+ * @example
1778
+ * ```typescript
1779
+ * // Basic transcription
1780
+ * chain.whisper({
1781
+ * model: '/path/to/ggml-base.bin'
1782
+ * });
1783
+ *
1784
+ * // With language and output
1785
+ * chain.whisper({
1786
+ * model: '/path/to/ggml-base.bin',
1787
+ * language: 'en',
1788
+ * destination: 'output.srt',
1789
+ * format: 'srt'
1790
+ * });
1791
+ *
1792
+ * // With VAD model
1793
+ * chain.whisper({
1794
+ * model: '/path/to/ggml-base.bin',
1795
+ * vadModel: '/path/to/ggml-silero-v5.1.2.bin',
1796
+ * vadThreshold: 0.5
1797
+ * });
1798
+ * ```
1799
+ *
1800
+ * @see {@link https://ffmpeg.org/ffmpeg-filters.html#whisper | FFmpeg whisper filter}
1801
+ */
1802
+ whisper(options) {
1803
+ // Normalize path for FFmpeg filter syntax:
1804
+ // 1. Convert backslashes to forward slashes (Windows compatibility)
1805
+ // 2. Escape colons with double backslash (for multi-level parsing: JS → C++ → FFmpeg)
1806
+ const normalizedModel = options.model.replace(/\\/g, '/').replace(/:/g, '\\\\:');
1807
+ const params = [`model=${normalizedModel}`];
1808
+ if (options.language !== undefined) {
1809
+ params.push(`language=${options.language}`);
1810
+ }
1811
+ if (options.queue !== undefined) {
1812
+ params.push(`queue=${options.queue}`);
1813
+ }
1814
+ if (options.useGpu !== undefined) {
1815
+ params.push(`use_gpu=${options.useGpu ? 1 : 0}`);
1816
+ }
1817
+ if (options.gpuDevice !== undefined) {
1818
+ params.push(`gpu_device=${options.gpuDevice}`);
1819
+ }
1820
+ if (options.destination !== undefined) {
1821
+ const normalizedDest = options.destination.replace(/\\/g, '/').replace(/:/g, '\\\\:');
1822
+ params.push(`destination=${normalizedDest}`);
1823
+ }
1824
+ if (options.format !== undefined) {
1825
+ params.push(`format=${options.format}`);
1826
+ }
1827
+ if (options.vadModel !== undefined) {
1828
+ const normalizedVadModel = options.vadModel.replace(/\\/g, '/').replace(/:/g, '\\\\:');
1829
+ params.push(`vad_model=${normalizedVadModel}`);
1830
+ }
1831
+ if (options.vadThreshold !== undefined) {
1832
+ params.push(`vad_threshold=${options.vadThreshold}`);
1833
+ }
1834
+ if (options.vadMinSpeechDuration !== undefined) {
1835
+ params.push(`vad_min_speech_duration=${options.vadMinSpeechDuration}`);
1836
+ }
1837
+ if (options.vadMinSilenceDuration !== undefined) {
1838
+ params.push(`vad_min_silence_duration=${options.vadMinSilenceDuration}`);
1839
+ }
1840
+ this.add(`whisper=${params.join(':')}`);
1841
+ return this;
1842
+ }
1733
1843
  /**
1734
1844
  * Adds a hwupload filter to upload frames to hardware.
1735
1845
  * Only applied if hardware acceleration is configured.
@@ -1 +1 @@
1
- {"version":3,"file":"filter-presets.js","sourceRoot":"","sources":["../../src/api/filter-presets.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAoC1E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,YAAY;IAIK;IAHpB,OAAO,GAAa,EAAE,CAAC;IACvB,OAAO,CAAgB;IAE/B,YAA4B,QAAiC;QAAjC,aAAQ,GAAR,QAAQ,CAAyB;QAC3D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,gBAAgB,CAAC,UAAkB;QACxC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC;QACf,CAAC;QAED,2CAA2C;QAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,MAAM,CAAC,KAAK,CAAC,QAAiC;QAC5C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,MAAe;QACpB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,SAAS,GAAG,GAAG;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;OASG;IACH,OAAO;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,KAAa,EAAE,MAAc,EAAE,OAA6B;QAChE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,kDAAkD;YAClD,IAAI,UAAkB,CAAC;YACvB,IAAI,MAAc,CAAC;YAEnB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,sBAAsB,EAAE,CAAC;gBACxD,UAAU,GAAG,aAAa,CAAC,CAAC,6BAA6B;gBACzD,MAAM,GAAG,GAAG,UAAU,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;YAC9C,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,6BAA6B,EAAE,CAAC;gBACtE,UAAU,GAAG,UAAU,CAAC,CAAC,6BAA6B;gBACtD,MAAM,GAAG,GAAG,UAAU,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;YAC9C,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;gBAC7D,UAAU,GAAG,SAAS,CAAC,CAAC,yDAAyD;gBACjF,MAAM,GAAG,GAAG,UAAU,MAAM,KAAK,MAAM,MAAM,EAAE,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,SAAS,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBACrD,MAAM,GAAG,GAAG,UAAU,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;YAC9C,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;YAC7B,MAAM,IAAI,GAAG,SAAS,KAAK,IAAI,MAAM,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACvD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,WAAW,CAAC,MAA8B;QACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kDAAkD;QAClD,IAAI,UAAkB,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,sBAAsB,EAAE,CAAC;YACxD,UAAU,GAAG,aAAa,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,6BAA6B,EAAE,CAAC;YACtE,UAAU,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;YAC7D,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,SAAS,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,WAAW,MAAM,EAAE,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,IAAI,CAAC,KAAa,EAAE,MAAc,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC;QAC9C,IAAI,IAAI,CAAC,QAAQ,EAAE,UAAU,KAAK,uBAAuB,EAAE,CAAC;YAC1D,IAAI,CAAC,GAAG,CAAC,mBAAmB,KAAK,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,IAAI,CAAC,OAAmC,KAAK,EAAE,MAAe;QAC5D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,MAAM,GAAkB,IAAI,CAAC;YAEjC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjC,KAAK,qBAAqB;oBACxB,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;oBACvE,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,MAAM,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;oBACzJ,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,MAAM,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;oBAC9J,MAAM;gBACR;oBACE,MAAM,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACnI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,MAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,MAAM,GAAkB,IAAI,CAAC;YAEjC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjC,KAAK,sBAAsB;oBACzB,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC;oBAC5E,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;oBACvE,MAAM;gBACR,KAAK,oBAAoB;oBACvB,sDAAsD;oBACtD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,MAAM,GAAG,kBAAkB,MAAM,EAAE,CAAC;oBACpC,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,6FAA6F;oBAC7F,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACxD,MAAM,GAAG,uBAAuB,QAAQ,EAAE,CAAC;oBAC3C,MAAM;gBACR,KAAK,qBAAqB;oBACxB,mDAAmD;oBACnD,MAAM,GAAG,IAAI,CAAC;oBACd,MAAM;gBACR;oBACE,MAAM,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/D,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,MAAe,EAAE,KAAc;QACnC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,MAAM,GAAkB,IAAI,CAAC;YAEjC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjC,KAAK,uBAAuB;oBAC1B,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBAChD,MAAM,MAAM,GAAa,EAAE,CAAC;wBAC5B,IAAI,MAAM,KAAK,SAAS;4BAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;wBAC1D,IAAI,KAAK,KAAK,SAAS;4BAAE,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;wBACvD,MAAM,GAAG,gBAAgB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC9C,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,cAAc,CAAC;oBAC1B,CAAC;oBACD,MAAM;YACV,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,IAAI,MAAM,KAAK,SAAS;oBAAE,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;gBAC1D,IAAI,KAAK,KAAK,SAAS;oBAAE,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,GAAW;QACb,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,WAA4C;QACjD,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mCAAmC;YACnC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC;gBACvF,OAAO,UAAU,UAAU,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,CAAC;YAC/G,IAAI,CAAC,GAAG,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,IAAI,CAAC,SAAoB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,uBAAuB,EAAE,CAAC;gBACzD,iCAAiC;gBACjC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;oBACtB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;gBAC7D,yCAAyC;gBACzC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;oBACtB,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACtC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,IAAqB,EAAE,MAAM,GAAG,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,sBAAsB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;gBAC7G,MAAM,MAAM,GAAG,GAAG,IAAI,SAAS,IAAI,CAAC,QAAQ,CAAC,cAAc,WAAW,MAAM,EAAE,CAAC;gBAC/E,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC,CAAC,iBAAiB,MAAM,EAAE,CAAC;YAC/H,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,GAAW,EAAE,OAAwC;QAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,iGAAiG;YACjG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,uBAAuB,EAAE,CAAC;gBACzD,IAAI,MAAM,GAAG,0BAA0B,GAAG,EAAE,CAAC;gBAE7C,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;yBACjC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;yBAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;oBACb,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACvB,CAAC;gBAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,6BAA6B,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAEnJ,IAAI,MAAM,GAAG,GAAG,UAAU,IAAI,GAAG,EAAE,CAAC;gBAEpC,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;yBACjC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;yBAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;oBACb,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACvB,CAAC;gBAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,GAAG,WAAW,GAAG,EAAE,CAAC;YAE9B,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;qBACjC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;qBAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;gBACb,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACvB,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,IAAkB,EAAE,KAAa,EAAE,QAAgB;QACtD,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,OAAO,KAAK,MAAM,QAAQ,EAAE,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,OAAgC;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,4CAA4C;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,sBAAsB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;YAErI,IAAI,MAAM,GAAG,GAAG,UAAU,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAEvC,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,MAAc;QACnB,IAAI,CAAC,GAAG,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,YAA+C,EAAE,UAAmB,EAAE,aAAsB;QAClG,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,YAAY,GAAG,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC;QACD,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1H,IAAI,MAAM,GAAG,uBAAuB,aAAa,EAAE,CAAC;QACpD,IAAI,UAAU;YAAE,MAAM,IAAI,iBAAiB,UAAU,EAAE,CAAC;QACxD,IAAI,aAAa;YAAE,MAAM,IAAI,oBAAoB,aAAa,EAAE,CAAC;QACjE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,YAAY,CAAC,OAAe,EAAE,OAAO,GAAG,IAAI;QAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,kBAAkB,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,IAAY;QACpB,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,MAAc;QACnB,IAAI,CAAC,GAAG,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,IAAkB,EAAE,KAAa,EAAE,QAAgB;QACvD,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,KAAK,MAAM,QAAQ,EAAE,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,WAA6C,SAAS;QACrE,IAAI,CAAC,GAAG,CAAC,eAAe,MAAM,aAAa,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,GAAG,CAAC,KAAsB,EAAE,MAAuB,EAAE,CAAU,EAAE,CAAU,EAAE,KAAK,GAAG,OAAO;QAC1F,IAAI,IAAI,CAAC,QAAQ,EAAE,UAAU,KAAK,uBAAuB,EAAE,CAAC;YAC1D,0DAA0D;YAC1D,IAAI,MAAM,GAAG,gBAAgB,KAAK,MAAM,MAAM,EAAE,CAAC;YACjD,IAAI,CAAC,KAAK,SAAS;gBAAE,MAAM,IAAI,UAAU,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,KAAK,SAAS;gBAAE,MAAM,IAAI,UAAU,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,cAAc,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,GAAG,OAAO,KAAK,IAAI,MAAM,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,SAAS;gBAAE,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,SAAS;gBAAE,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,CAAC,KAAa,EAAE,GAAY,EAAE,QAAiB;QACjD,IAAI,MAAM,GAAG,cAAc,KAAK,EAAE,CAAC;QACnC,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,GAAG,EAAE,CAAC;QAC/C,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,aAAa,QAAQ,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,UAAkB;QACvB,IAAI,CAAC,GAAG,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,UAAkB;QACxB,IAAI,CAAC,GAAG,CAAC,WAAW,UAAU,EAAE,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,IAAgE;QACxE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,kCAAkC;YAClC,IAAI,GAAW,CAAC;YAChB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,OAAO;wBACV,GAAG,GAAG,CAAC,CAAC;wBACR,MAAM;oBACR,KAAK,QAAQ;wBACX,GAAG,GAAG,CAAC,CAAC;wBACR,MAAM;oBACR,KAAK,YAAY;wBACf,GAAG,GAAG,CAAC,CAAC;wBACR,MAAM;oBACR,KAAK,aAAa;wBAChB,GAAG,GAAG,CAAC,CAAC;wBACR,MAAM;oBACR;wBACE,GAAG,GAAG,CAAC,CAAC;gBACZ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,GAAG,GAAG,IAAI,CAAC;YACb,CAAC;YAED,oEAAoE;YACpE,IAAI,MAAc,CAAC;YACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,qBAAqB,EAAE,CAAC;gBACvD,MAAM,GAAG,sBAAsB,GAAG,EAAE,CAAC,CAAC,uCAAuC;YAC/E,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,6BAA6B,EAAE,CAAC;gBACtE,MAAM,GAAG,oBAAoB,GAAG,EAAE,CAAC,CAAC,4BAA4B;YAClE,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;gBAC7D,mHAAmH;gBACnH,MAAM,GAAG,qBAAqB,GAAG,EAAE,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,aAAa,IAAI,CAAC,QAAQ,CAAC,cAAc,QAAQ,GAAG,EAAE,CAAC;YAClE,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,KAAsB;QAC3B,IAAI,CAAC,GAAG,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAsB;QAC3B,IAAI,CAAC,GAAG,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,IAAI,CAAC,aAAsB,EAAE,WAAoB;QAC/C,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAChD,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,IAAI,aAAa;YAAE,MAAM,IAAI,cAAc,aAAa,EAAE,CAAC;QAC3D,IAAI,WAAW;YAAE,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,YAAY,WAAW,EAAE,CAAC,CAAC,CAAC,YAAY,WAAW,EAAE,CAAC;QACjG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,OAAqC,OAAO,EAAE,OAA6B;QACrF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,MAAM,GAAkB,IAAI,CAAC;YAEjC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjC,KAAK,qBAAqB;oBACxB,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;oBACzD,MAAM;gBACR,KAAK,sBAAsB;oBACzB,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;oBACvE,MAAM;gBACR,KAAK,oBAAoB;oBACvB,gDAAgD;oBAChD,qDAAqD;oBACrD,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,CAAC;oBAClE,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;oBAC7D,MAAM;gBACR,KAAK,6BAA6B;oBAChC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBACzE,MAAM;gBACR;oBACE,MAAM,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBACnD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;oBACjC,CAAC;oBACD,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnC,CAAC;gBAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,GAAG,IAAI,CAAC;YAElB,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;gBACjC,CAAC;gBACD,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,UAAkB;QACvB,IAAI,CAAC,GAAG,CAAC,WAAW,UAAU,GAAG,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,UAAkB;QACxB,IAAI,CAAC,GAAG,CAAC,YAAY,UAAU,GAAG,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,GAAG,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,aAAsB;QACjC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,+BAA+B,aAAa,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,CAAC,OAAe,EAAE,MAAc,EAAE,MAAc,EAAE,IAAa;QACpE,IAAI,MAAM,GAAG,mBAAmB,OAAO,WAAW,MAAM,WAAW,MAAM,EAAE,CAAC;QAC5E,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,IAAY,EAAE,OAA4B;QACjD,IAAI,MAAM,GAAG,kBAAkB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;QACjF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,GAAG,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACpD,MAAM,IAAI,IAAI,GAAG,KAAK,KAAK,GAAG,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,OAAO,GAAG,CAAC;QACf,IAAI,CAAC,GAAG,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,GAAG,CAAC;QAChB,IAAI,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,MAAyB;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC9E,IAAI,CAAC,GAAG,CAAC,UAAU,QAAQ,EAAE,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,OAAe,EAAE,QAAgB,EAAE,MAAc,EAAE,MAAc;QACrE,IAAI,CAAC,GAAG,CAAC,SAAS,OAAO,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,SAAiB,EAAE,OAA6B;QACvD,IAAI,MAAM,GAAG,cAAc,SAAS,EAAE,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,SAAiB,EAAE,OAA6B;QACtD,IAAI,MAAM,GAAG,aAAa,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,SAAiB,EAAE,OAA6B;QACvD,IAAI,MAAM,GAAG,cAAc,SAAS,EAAE,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,SAAiB,EAAE,KAAa,EAAE,IAAY,EAAE,UAAmB;QAC3E,IAAI,MAAM,GAAG,eAAe,SAAS,EAAE,CAAC;QACxC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,eAAe,UAAU,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,IAAI,UAAU,KAAK,SAAS,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CAAC,OAA6B;QACtC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,GAAG,aAAa,CAAC;YAC3B,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;YACjC,CAAC;YACD,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,KAAa,EAAE,GAAY,EAAE,QAAiB;QAClD,IAAI,MAAM,GAAG,eAAe,KAAK,EAAE,CAAC;QACpC,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,GAAG,EAAE,CAAC;QAC/C,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,aAAa,QAAQ,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,qBAAqB,EAAE,CAAC;YACvD,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,MAAe;QACnB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,GAAG,CAAC,MAAiC,EAAE,OAAiB;QAC9D,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACK,UAAU;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,wCAAwC;YACxC,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;gBAChB,GAAG,EAAE,IAAI;gBACT,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;QAED,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACjC,KAAK,qBAAqB;gBACxB,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,4CAA4C;oBACzD,OAAO,EAAE,IAAI,EAAE,eAAe;oBAC9B,SAAS,EAAE,IAAI,EAAE,8BAA8B;oBAC/C,OAAO,EAAE,IAAI,EAAE,4BAA4B;oBAC3C,WAAW,EAAE,IAAI,EAAE,yBAAyB;oBAC5C,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,IAAI,EAAE,iBAAiB;oBAC7B,OAAO,EAAE,KAAK,EAAE,4CAA4C;oBAC5D,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,IAAI,EAAE,iBAAiB;oBAClC,UAAU,EAAE,IAAI,EAAE,kBAAkB;oBACpC,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ,KAAK,sBAAsB;gBACzB,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,cAAc;oBAC3B,OAAO,EAAE,IAAI,EAAE,gBAAgB;oBAC/B,SAAS,EAAE,IAAI,EAAE,kBAAkB;oBACnC,OAAO,EAAE,IAAI,EAAE,gBAAgB;oBAC/B,WAAW,EAAE,IAAI,EAAE,oBAAoB;oBACvC,OAAO,EAAE,IAAI,EAAE,gBAAgB;oBAC/B,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,IAAI,EAAE,kBAAkB;oBACjC,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,IAAI,EAAE,YAAY;oBACvB,KAAK,EAAE,IAAI,EAAE,2CAA2C;iBACzD,CAAC;YAEJ,KAAK,oBAAoB;gBACvB,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,uDAAuD;oBACpE,OAAO,EAAE,IAAI,EAAE,cAAc;oBAC7B,SAAS,EAAE,IAAI,EAAE,2BAA2B;oBAC5C,OAAO,EAAE,IAAI,EAAE,yBAAyB;oBACxC,WAAW,EAAE,IAAI,EAAE,6CAA6C;oBAChE,OAAO,EAAE,IAAI,EAAE,iCAAiC;oBAChD,IAAI,EAAE,IAAI,EAAE,gCAAgC;oBAC5C,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,IAAI,EAAE,gCAAgC;oBAC/C,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,IAAI,EAAE,8CAA8C;oBAChE,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,IAAI,EAAE,qCAAqC;iBACnD,CAAC;YAEJ,KAAK,uBAAuB;gBAC1B,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,sCAAsC;oBACnD,OAAO,EAAE,IAAI,EAAE,yCAAyC;oBACxD,SAAS,EAAE,IAAI,EAAE,6CAA6C;oBAC9D,OAAO,EAAE,IAAI,EAAE,qEAAqE;oBACpF,WAAW,EAAE,IAAI,EAAE,4CAA4C;oBAC/D,OAAO,EAAE,IAAI,EAAE,0CAA0C;oBACzD,IAAI,EAAE,IAAI,EAAE,iDAAiD;oBAC7D,IAAI,EAAE,IAAI,EAAE,mDAAmD;oBAC/D,OAAO,EAAE,IAAI,EAAE,qEAAqE;oBACpF,KAAK,EAAE,KAAK,EAAE,gBAAgB;oBAC9B,SAAS,EAAE,KAAK,EAAE,uEAAuE;oBACzF,UAAU,EAAE,IAAI,EAAE,qEAAqE;oBACvF,GAAG,EAAE,IAAI,EAAE,oEAAoE;oBAC/E,KAAK,EAAE,KAAK,EAAE,gBAAgB;iBAC/B,CAAC;YAEJ,KAAK,uBAAuB;gBAC1B,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,sDAAsD;oBACnE,OAAO,EAAE,IAAI,EAAE,4CAA4C;oBAC3D,SAAS,EAAE,IAAI,EAAE,mBAAmB;oBACpC,OAAO,EAAE,IAAI,EAAE,0CAA0C;oBACzD,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,IAAI,EAAE,iCAAiC;oBAC7C,OAAO,EAAE,IAAI,EAAE,iBAAiB;oBAChC,KAAK,EAAE,IAAI,EAAE,eAAe;oBAC5B,SAAS,EAAE,IAAI,EAAE,kBAAkB;oBACnC,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,IAAI,EAAE,aAAa;oBACxB,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ,KAAK,6BAA6B;gBAChC,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,kDAAkD;oBAC/D,OAAO,EAAE,IAAI,EAAE,oCAAoC;oBACnD,SAAS,EAAE,IAAI,EAAE,6CAA6C;oBAC9D,OAAO,EAAE,IAAI,EAAE,oCAAoC;oBACnD,WAAW,EAAE,IAAI,EAAE,qBAAqB;oBACxC,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ,KAAK,2BAA2B;gBAC9B,2EAA2E;gBAC3E,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ,KAAK,sBAAsB,EAAE,4CAA4C;gBACvE,4EAA4E;gBAC5E,2DAA2D;gBAC3D,OAAO;oBACL,KAAK,EAAE,IAAI,EAAE,2BAA2B;oBACxC,OAAO,EAAE,IAAI,EAAE,6BAA6B;oBAC5C,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ,uFAAuF;YACvF,KAAK,sBAAsB,CAAC,CAAC,4CAA4C;YACzE,KAAK,sBAAsB,CAAC,CAAC,sBAAsB;YACnD,KAAK,wBAAwB,CAAC,CAAC,sBAAsB;YACrD,KAAK,wBAAwB,CAAC,CAAC,kCAAkC;YACjE,KAAK,oBAAoB,EAAE,2CAA2C;gBACpE,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;YAEJ;gBACE,uCAAuC;gBACvC,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,KAAK;oBAClB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,KAAK;oBACjB,GAAG,EAAE,KAAK;oBACV,KAAK,EAAE,KAAK;iBACb,CAAC;QACN,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"filter-presets.js","sourceRoot":"","sources":["../../src/api/filter-presets.ts"],"names":[],"mappings":"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"}