@clipwright/core 0.39.0 → 0.41.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 (267) hide show
  1. package/dist/account-actors.d.ts +94 -2
  2. package/dist/account-actors.js +151 -34
  3. package/dist/account-actors.js.map +1 -1
  4. package/dist/actor-bounds.d.ts +3 -3
  5. package/dist/actor-bounds.js +3 -3
  6. package/dist/actor-bounds.js.map +1 -1
  7. package/dist/actors.d.ts +24 -2
  8. package/dist/actors.js +30 -9
  9. package/dist/actors.js.map +1 -1
  10. package/dist/ad-pause-trim.d.ts +21 -0
  11. package/dist/ad-pause-trim.js +16 -0
  12. package/dist/ad-pause-trim.js.map +1 -0
  13. package/dist/aspect.d.ts +5 -0
  14. package/dist/aspect.js +7 -0
  15. package/dist/aspect.js.map +1 -1
  16. package/dist/assets.d.ts +2 -1
  17. package/dist/assets.js +10 -11
  18. package/dist/assets.js.map +1 -1
  19. package/dist/billing-terms.d.ts +8 -0
  20. package/dist/broll-policy.js +2 -3
  21. package/dist/broll-policy.js.map +1 -1
  22. package/dist/caption-geometry.js +10 -8
  23. package/dist/caption-geometry.js.map +1 -1
  24. package/dist/contract-dispositions.d.ts +1575 -100
  25. package/dist/contract-dispositions.js +100 -14
  26. package/dist/contract-dispositions.js.map +1 -1
  27. package/dist/contracts/v1/workflow-brief.d.ts +10764 -2790
  28. package/dist/contracts/v1/workflow-brief.js +19 -1
  29. package/dist/contracts/v1/workflow-brief.js.map +1 -1
  30. package/dist/contracts/v1/workflow-catalog.d.ts +11612 -3536
  31. package/dist/contracts/v1/workflow-client.d.ts +5429 -1187
  32. package/dist/contracts/v1/workflow-client.js +9 -5
  33. package/dist/contracts/v1/workflow-client.js.map +1 -1
  34. package/dist/contracts/v1/workflow-execution.d.ts +242 -0
  35. package/dist/contracts/v1/workflow-execution.js +2 -2
  36. package/dist/contracts/v1/workflow-execution.js.map +1 -1
  37. package/dist/contracts/v1/workflow-next.d.ts +225 -0
  38. package/dist/contracts/v1/workflow-next.js +21 -0
  39. package/dist/contracts/v1/workflow-next.js.map +1 -0
  40. package/dist/contracts/v1/workflow-plan.d.ts +18556 -6429
  41. package/dist/contracts/v1/workflow-plan.js +2 -1
  42. package/dist/contracts/v1/workflow-plan.js.map +1 -1
  43. package/dist/contracts/v1/workflow-primitives.d.ts +20 -1
  44. package/dist/contracts/v1/workflow-primitives.js +8 -2
  45. package/dist/contracts/v1/workflow-primitives.js.map +1 -1
  46. package/dist/contracts/v1/workflow-run-read.d.ts +50 -0
  47. package/dist/creator-profile.d.ts +1 -0
  48. package/dist/creator-profile.js +13 -7
  49. package/dist/creator-profile.js.map +1 -1
  50. package/dist/design.d.ts +921 -0
  51. package/dist/design.js +183 -0
  52. package/dist/design.js.map +1 -0
  53. package/dist/edit-candidate.d.ts +2 -0
  54. package/dist/edit-candidate.js +3 -0
  55. package/dist/edit-candidate.js.map +1 -1
  56. package/dist/edit-faceless.js +2 -1
  57. package/dist/edit-faceless.js.map +1 -1
  58. package/dist/endpoint-notes.js +19 -0
  59. package/dist/endpoint-notes.js.map +1 -1
  60. package/dist/endpoints.js +21 -4
  61. package/dist/endpoints.js.map +1 -1
  62. package/dist/errors.d.ts +1 -1
  63. package/dist/errors.js +7 -0
  64. package/dist/errors.js.map +1 -1
  65. package/dist/face-billing.d.ts +39 -0
  66. package/dist/face-billing.js +11 -1
  67. package/dist/face-billing.js.map +1 -1
  68. package/dist/faceless-action-shots.d.ts +31 -0
  69. package/dist/faceless-action-shots.js +51 -0
  70. package/dist/faceless-action-shots.js.map +1 -0
  71. package/dist/faceless-media-record.d.ts +56 -0
  72. package/dist/faceless-media-record.js +6 -2
  73. package/dist/faceless-media-record.js.map +1 -1
  74. package/dist/faceless-price.d.ts +22 -0
  75. package/dist/faceless-price.js +27 -3
  76. package/dist/faceless-price.js.map +1 -1
  77. package/dist/faceless-public-plan.d.ts +10 -1
  78. package/dist/faceless-public-plan.js +4 -0
  79. package/dist/faceless-public-plan.js.map +1 -1
  80. package/dist/faceless-public.d.ts +5583 -184
  81. package/dist/faceless-public.js +114 -16
  82. package/dist/faceless-public.js.map +1 -1
  83. package/dist/feedback.js +1 -1
  84. package/dist/feedback.js.map +1 -1
  85. package/dist/generations-output.js +1 -1
  86. package/dist/generations-output.js.map +1 -1
  87. package/dist/generations.d.ts +1 -1
  88. package/dist/generations.js +2 -2
  89. package/dist/index.d.ts +10 -0
  90. package/dist/index.js +11 -0
  91. package/dist/index.js.map +1 -1
  92. package/dist/live-shot-kinds.d.ts +22 -0
  93. package/dist/live-shot-kinds.js +17 -0
  94. package/dist/live-shot-kinds.js.map +1 -0
  95. package/dist/long-form-profile.d.ts +1 -1
  96. package/dist/long-form-profile.js +1 -1
  97. package/dist/mcp-ugc-descriptions.d.ts +32 -0
  98. package/dist/mcp-ugc-descriptions.js +112 -0
  99. package/dist/mcp-ugc-descriptions.js.map +1 -0
  100. package/dist/motion-styles.d.ts +54 -0
  101. package/dist/motion-styles.js +67 -0
  102. package/dist/motion-styles.js.map +1 -0
  103. package/dist/moves.d.ts +222 -0
  104. package/dist/moves.js +81 -0
  105. package/dist/moves.js.map +1 -0
  106. package/dist/music.d.ts +18 -0
  107. package/dist/music.js +29 -0
  108. package/dist/music.js.map +1 -0
  109. package/dist/openapi.d.ts +3 -1
  110. package/dist/openapi.js +32 -5
  111. package/dist/openapi.js.map +1 -1
  112. package/dist/parts-pricing.d.ts +14 -3
  113. package/dist/parts-pricing.js +23 -5
  114. package/dist/parts-pricing.js.map +1 -1
  115. package/dist/prices.d.ts +6 -1
  116. package/dist/prices.js +56 -17
  117. package/dist/prices.js.map +1 -1
  118. package/dist/reference-analysis.d.ts +134 -0
  119. package/dist/reference-analysis.js +45 -33
  120. package/dist/reference-analysis.js.map +1 -1
  121. package/dist/reference-display.js +3 -0
  122. package/dist/reference-display.js.map +1 -1
  123. package/dist/reference-kinds.d.ts +3 -2
  124. package/dist/reference-kinds.js +2 -1
  125. package/dist/reference-kinds.js.map +1 -1
  126. package/dist/reference-profile.d.ts +437 -0
  127. package/dist/reference-profile.js +46 -5
  128. package/dist/reference-profile.js.map +1 -1
  129. package/dist/reference-staging.d.ts +54 -2
  130. package/dist/reference-staging.js +28 -5
  131. package/dist/reference-staging.js.map +1 -1
  132. package/dist/reference-text-spans.d.ts +26 -0
  133. package/dist/reference-text-spans.js +76 -0
  134. package/dist/reference-text-spans.js.map +1 -0
  135. package/dist/resolved-timeline.d.ts +173 -0
  136. package/dist/resolved-timeline.js +16 -5
  137. package/dist/resolved-timeline.js.map +1 -1
  138. package/dist/run-media.d.ts +5 -0
  139. package/dist/run-media.js +17 -0
  140. package/dist/run-media.js.map +1 -0
  141. package/dist/run-static-warnings.js +12 -3
  142. package/dist/run-static-warnings.js.map +1 -1
  143. package/dist/runs.d.ts +49 -0
  144. package/dist/runs.js +5 -0
  145. package/dist/runs.js.map +1 -1
  146. package/dist/scene-graph.d.ts +547 -0
  147. package/dist/scene-graph.js +296 -0
  148. package/dist/scene-graph.js.map +1 -0
  149. package/dist/scene-place.d.ts +2 -0
  150. package/dist/scene-place.js +6 -0
  151. package/dist/scene-place.js.map +1 -1
  152. package/dist/semantic-inserts.d.ts +2 -1
  153. package/dist/semantic-inserts.js +4 -4
  154. package/dist/semantic-inserts.js.map +1 -1
  155. package/dist/skills.d.ts +11743 -5428
  156. package/dist/skills.js +248 -59
  157. package/dist/skills.js.map +1 -1
  158. package/dist/templates/chart.d.ts +35 -0
  159. package/dist/templates/chart.js +38 -0
  160. package/dist/templates/chart.js.map +1 -0
  161. package/dist/templates/chat-window.d.ts +58 -0
  162. package/dist/templates/chat-window.js +57 -0
  163. package/dist/templates/chat-window.js.map +1 -0
  164. package/dist/templates/compare.d.ts +10 -2
  165. package/dist/templates/compare.js +13 -9
  166. package/dist/templates/compare.js.map +1 -1
  167. package/dist/templates/hand-title.d.ts +32 -0
  168. package/dist/templates/hand-title.js +47 -0
  169. package/dist/templates/hand-title.js.map +1 -0
  170. package/dist/templates/index.d.ts +33 -7
  171. package/dist/templates/index.js +95 -51
  172. package/dist/templates/index.js.map +1 -1
  173. package/dist/templates/lower-third.d.ts +11 -0
  174. package/dist/templates/lower-third.js +8 -3
  175. package/dist/templates/lower-third.js.map +1 -1
  176. package/dist/templates/notification.d.ts +24 -2
  177. package/dist/templates/notification.js +21 -12
  178. package/dist/templates/notification.js.map +1 -1
  179. package/dist/templates/phone-screen.d.ts +37 -0
  180. package/dist/templates/phone-screen.js +41 -0
  181. package/dist/templates/phone-screen.js.map +1 -0
  182. package/dist/templates/pointer-chips.d.ts +40 -0
  183. package/dist/templates/pointer-chips.js +53 -0
  184. package/dist/templates/pointer-chips.js.map +1 -0
  185. package/dist/templates/quote.d.ts +2 -2
  186. package/dist/templates/quote.js +5 -5
  187. package/dist/templates/quote.js.map +1 -1
  188. package/dist/templates/race.d.ts +32 -0
  189. package/dist/templates/race.js +43 -0
  190. package/dist/templates/race.js.map +1 -0
  191. package/dist/templates/size.d.ts +20 -0
  192. package/dist/templates/size.js +14 -0
  193. package/dist/templates/size.js.map +1 -1
  194. package/dist/templates/slot.js +1 -1
  195. package/dist/templates/slot.js.map +1 -1
  196. package/dist/templates/sounds.d.ts +221 -4
  197. package/dist/templates/sounds.js +40 -10
  198. package/dist/templates/sounds.js.map +1 -1
  199. package/dist/templates/terminal.d.ts +46 -0
  200. package/dist/templates/terminal.js +46 -0
  201. package/dist/templates/terminal.js.map +1 -0
  202. package/dist/templates/video-grid.d.ts +52 -0
  203. package/dist/templates/video-grid.js +50 -0
  204. package/dist/templates/video-grid.js.map +1 -0
  205. package/dist/templates/word-fill.d.ts +22 -0
  206. package/dist/templates/word-fill.js +29 -0
  207. package/dist/templates/word-fill.js.map +1 -0
  208. package/dist/templates/word-title.d.ts +24 -0
  209. package/dist/templates/word-title.js +33 -0
  210. package/dist/templates/word-title.js.map +1 -0
  211. package/dist/trend-search.d.ts +336 -0
  212. package/dist/trend-search.js +307 -0
  213. package/dist/trend-search.js.map +1 -0
  214. package/dist/ugc-call.d.ts +4 -4
  215. package/dist/ugc-call.js +4 -4
  216. package/dist/ugc-call.js.map +1 -1
  217. package/dist/ugc-framing.d.ts +3 -2
  218. package/dist/ugc-framing.js +4 -3
  219. package/dist/ugc-framing.js.map +1 -1
  220. package/dist/ugc-interview.d.ts +3 -3
  221. package/dist/ugc-interview.js +3 -3
  222. package/dist/ugc-interview.js.map +1 -1
  223. package/dist/ugc-layers.d.ts +43 -7
  224. package/dist/ugc-layers.js +43 -11
  225. package/dist/ugc-layers.js.map +1 -1
  226. package/dist/ugc-scenes.d.ts +40 -0
  227. package/dist/ugc-scenes.js +35 -0
  228. package/dist/ugc-scenes.js.map +1 -0
  229. package/dist/uploads.d.ts +1 -1
  230. package/dist/uploads.js +9 -9
  231. package/dist/uploads.js.map +1 -1
  232. package/dist/voice-admission.d.ts +4767 -836
  233. package/dist/voice-catalog-data.d.ts +1 -0
  234. package/dist/voice-catalog.d.ts +2 -0
  235. package/dist/voice-catalog.generated.json +286 -0
  236. package/dist/voice-catalog.js +1 -0
  237. package/dist/voice-catalog.js.map +1 -1
  238. package/dist/voice-pace.generated.json +65 -0
  239. package/dist/voices.d.ts +1 -0
  240. package/dist/voices.js +2 -1
  241. package/dist/voices.js.map +1 -1
  242. package/dist/workflows/index.d.ts +2 -0
  243. package/dist/workflows/index.js +1 -0
  244. package/dist/workflows/index.js.map +1 -1
  245. package/dist/workflows/methods/faceless-explainer.d.ts +2275 -188
  246. package/dist/workflows/methods/kinetic-launch.d.ts +2275 -188
  247. package/dist/workflows/methods/product-image-story.d.ts +2275 -188
  248. package/dist/workflows/methods/reference-remake.d.ts +2275 -188
  249. package/dist/workflows/methods/shared.d.ts +2275 -188
  250. package/dist/workflows/methods/ugc-faq-answer.d.ts +2275 -188
  251. package/dist/workflows/methods/ugc-product-intro.d.ts +2275 -188
  252. package/dist/workflows/methods/website-proof-demo.d.ts +2275 -188
  253. package/dist/workflows/motion-director.d.ts +59 -0
  254. package/dist/workflows/motion-director.js +118 -0
  255. package/dist/workflows/motion-director.js.map +1 -0
  256. package/dist/workflows/reference-remake.d.ts +1172 -2
  257. package/dist/workflows/reference-remake.js +940 -115
  258. package/dist/workflows/reference-remake.js.map +1 -1
  259. package/dist/workflows/remake-chooser.d.ts +16 -0
  260. package/dist/workflows/remake-chooser.js +10 -0
  261. package/dist/workflows/remake-chooser.js.map +1 -0
  262. package/dist/workflows/remake-motion.d.ts +100 -0
  263. package/dist/workflows/remake-motion.js +237 -0
  264. package/dist/workflows/remake-motion.js.map +1 -0
  265. package/dist/workflows/validate.js +1 -1
  266. package/dist/workflows/validate.js.map +1 -1
  267. package/package.json +5 -1
@@ -17,8 +17,12 @@ export const REFERENCE_CAMERAS = ["static", "punch_in", "zoom_out", "shake", "ot
17
17
  export const REFERENCE_TRANSITIONS = ["none", "cut", "wipe", "flash", "zoom", "other"];
18
18
  export const REFERENCE_SOUND_KINDS = [...TEMPLATE_SOUND_BEATS, "music", "recorded_audio", "other"];
19
19
  export const REFERENCE_PRESENTER_BEHAVIOURS = ["speaking", "listening", "reacting", "absent"];
20
+ /** The presenter's shot size on a beat (#1175 S7): close (head and shoulders), medium (waist-up), wide (knees up or the room), full (head to feet). */
21
+ export const REFERENCE_SHOT_SIZES = ["close", "medium", "wide", "full"];
20
22
  export const REFERENCE_CAPTION_POSITIONS = ["top", "middle", "lower", "bottom"];
21
23
  export const MAX_REFERENCE_SUMMARY_CHARS = 200;
24
+ /** What a profile may hold in those fields: an analysis writes at most the cut above, a profile written to this schema up to this. */
25
+ export const REFERENCE_PROFILE_SUMMARY_MAX_CHARS = 1000;
22
26
  export const MAX_REFERENCE_LABEL_CHARS = 120;
23
27
  /** The transcribed words of a 120 s reference stay well under this (Ana, 69 s: 147 words). */
24
28
  export const MAX_REFERENCE_TRANSCRIPT_WORDS = 1000;
@@ -27,6 +31,12 @@ export const REFERENCE_HOOK_SECONDS = 3;
27
31
  export const REFERENCE_HOOK_MAX_SECONDS = 6;
28
32
  /** What a graphic does at a state change, in a closed set. The reference's words live in transcript, hook, spoken_summary and label_hint. */
29
33
  export const REFERENCE_STATE_CHANGES = ["appears", "disappears", "toggles_on", "toggles_off", "checked", "value_changes", "highlighted", "other"];
34
+ /** What a graphic we cannot draw shows, a camera move outside REFERENCE_CAMERAS and a transition outside REFERENCE_TRANSITIONS, by name (#1064). */
35
+ export const REFERENCE_GRAPHIC_DEVICES = ["footage", "photo", "collage", "3d_object", "map", "chart", "icon", "emoji", "sticker", "arrow", "meme", "highlight",
36
+ "text_effect", "particles", "confetti", "sparkles", "light_leak", "glitch", "flash", "other"];
37
+ export const REFERENCE_CAMERA_DEVICES = ["shake", "whip_pan", "pan", "tilt", "zoom_in", "zoom_out", "rotate", "handheld", "dolly", "speed_ramp", "other"];
38
+ export const REFERENCE_TRANSITION_DEVICES = ["whip", "slide", "push", "light_leak", "glitch", "blur", "spin", "dissolve", "zoom", "flash", "wipe", "shape_mask",
39
+ "match_cut", "other"];
30
40
  const customIssue = "custom";
31
41
  const frac = z.number().min(0).max(1);
32
42
  const seconds = z.number().min(0);
@@ -39,6 +49,8 @@ const referenceGraphic = z.strictObject({
39
49
  position: z.enum(REFERENCE_POSITIONS),
40
50
  state_changes: z.array(z.strictObject({ at_frac: frac.describe("Share of the beat."), change: z.enum(REFERENCE_STATE_CHANGES) })).max(12),
41
51
  label_hint: text(MAX_REFERENCE_LABEL_CHARS).describe("What it shows, read off the screen, such as \"Blue banner 'DEVELOP THE STORY'\"; empty when it gave none."),
52
+ /** Optional since #1064. */
53
+ device: z.enum(REFERENCE_GRAPHIC_DEVICES).optional().describe("What a particles or unmapped graphic shows, such as a 3D object, a sticker or sparkles."),
42
54
  });
43
55
  /** Who speaks, where they look and what their hands do (#978): closed lists, each claim with the seconds of the frames that show it. */
44
56
  export const REFERENCE_SPEAKER_ROLES = ["presenter", "interviewer", "guest", "narrator", "other"];
@@ -68,7 +80,7 @@ export const referenceSpeaker = z.strictObject({
68
80
  frames_s: claimFrames.describe("Seconds of frames where this speaker talks."),
69
81
  });
70
82
  export const referenceSegment = z.strictObject({
71
- start_s: seconds, end_s: seconds, text: text(MAX_REFERENCE_SUMMARY_CHARS),
83
+ start_s: seconds, end_s: seconds, text: text(REFERENCE_PROFILE_SUMMARY_MAX_CHARS),
72
84
  speaker: z.string().min(1).max(40).describe("A speakers[].id in a full analysis; the transcription's label in a data one."),
73
85
  mouth: z.strictObject({
74
86
  vision: z.enum(REFERENCE_MOUTHS).nullable().describe("The presenter's mouth as seen in the picture while these words play."),
@@ -81,12 +93,19 @@ const referenceBeat = z.strictObject({
81
93
  start_frac: frac, end_frac: frac,
82
94
  start_s: seconds.describe("Seconds of the reference, kept as evidence only."), end_s: seconds,
83
95
  role: z.enum(REFERENCE_BEAT_ROLES),
84
- spoken_summary: text(MAX_REFERENCE_SUMMARY_CHARS).describe("The words spoken in the beat, cut at 200 characters; empty when none were heard."),
96
+ spoken_summary: text(REFERENCE_PROFILE_SUMMARY_MAX_CHARS).describe("The words spoken in the beat, cut at 200 characters; empty when none were heard."),
85
97
  graphics: z.array(referenceGraphic).max(8),
86
98
  camera: z.enum(REFERENCE_CAMERAS),
87
99
  transition_in: z.enum(REFERENCE_TRANSITIONS),
100
+ /** Optional since #1064, as is transition_device. */
101
+ camera_device: z.enum(REFERENCE_CAMERA_DEVICES).optional().describe("The camera move by name when camera is other, such as a whip pan or a slow zoom in."),
102
+ transition_device: z.enum(REFERENCE_TRANSITION_DEVICES).optional()
103
+ .describe("The transition by name when transition_in is other, such as a whip, a glitch or a light leak."),
88
104
  sounds: z.array(z.strictObject({ at_frac: frac, kind: z.enum(REFERENCE_SOUND_KINDS) })).max(12),
89
105
  presenter_behaviour: z.enum(REFERENCE_PRESENTER_BEHAVIOURS),
106
+ /** Optional since #1175 S7: a beat read before it, or one the model gave no size from the list, has none, and the remake keeps the profile's framing. */
107
+ shot_size: z.enum(REFERENCE_SHOT_SIZES).optional()
108
+ .describe("The presenter's shot size for most of the beat: close (head and shoulders), medium (waist-up), wide (knees up), full (head to feet)."),
90
109
  /** Optional since #979: the frames that show the beat, as seconds of the analysis's one-a-second frames. */
91
110
  key_frame_s: frameSecond.optional().describe("The second whose frame shows the beat, nearest its middle."),
92
111
  frames_s: z.array(claimSecond).max(MAX_BEAT_FRAMES).optional().describe("The seconds of the frames inside the beat, at most 12, evenly spread."),
@@ -106,7 +125,7 @@ export const referenceWord = z.strictObject({ text: z.string().min(1).max(64), s
106
125
  export const referenceLanguage = z.string().regex(/^[a-z]{2,3}$/).nullable()
107
126
  .describe("The spoken language the transcription detected, an ISO 639 code such as eng or ara; null when it named none.");
108
127
  export const referenceHook = z.strictObject({
109
- text: text(MAX_REFERENCE_SUMMARY_CHARS).describe(`The words that start in the first ${REFERENCE_HOOK_SECONDS} s, through the end of their sentence `
128
+ text: text(REFERENCE_PROFILE_SUMMARY_MAX_CHARS).describe(`The words that start in the first ${REFERENCE_HOOK_SECONDS} s, through the end of their sentence `
110
129
  + `(no word starting past ${REFERENCE_HOOK_MAX_SECONDS} s); empty when none do.`),
111
130
  end_s: seconds.describe("Where the hook's last word ends, else where its window does."),
112
131
  caption: text(MAX_REFERENCE_LABEL_CHARS).optional().describe("The first on-screen caption line read inside the hook's window."),
@@ -116,7 +135,7 @@ const profileHead = {
116
135
  source: z.strictObject({ digest: z.string().regex(/^sha256:[0-9a-f]{64}$/), duration_s: z.number().positive(), width: z.number().int().positive(),
117
136
  height: z.number().int().positive(), url: z.string().url().max(2048).optional() }),
118
137
  format: z.enum(REFERENCE_FORMATS),
119
- beats: z.array(referenceBeat).min(1).max(40),
138
+ beats: z.array(referenceBeat).min(1).max(120),
120
139
  captions: z.strictObject({ present: z.boolean(), words_per_caption_max: z.number().int().min(1).max(12), position: z.enum(REFERENCE_CAPTION_POSITIONS),
121
140
  emphasis_style: z.enum([...CAPTION_EMPHASIS_LOOKS, "none"]), hidden_under_graphics: z.boolean(),
122
141
  /** Optional since #973 S5: a profile without it parses, and the remake infers a layer under the captions from position. */
@@ -132,7 +151,8 @@ const profileTail = {
132
151
  voice: referenceVoice.optional(),
133
152
  /** Optional since #884 S5d; absent reads as close. */
134
153
  presenter_framing: z.enum(PRESENTER_FRAMINGS).optional()
135
- .describe("wide: the top of the presenter's head is below ~35% of the frame height, with visible room above; close otherwise."),
154
+ .describe("full: the presenter from head to feet; wide: the top of the presenter's head is below ~35% of the frame height, with visible " +
155
+ "room above; close otherwise."),
136
156
  /** Optional since #884 S5d; absent reads as false. */
137
157
  presenter_mic: z.boolean().optional()
138
158
  .describe("true when the presenter holds a small handheld or clip-on microphone in their hand while speaking (not clipped to clothing)."),
@@ -313,6 +333,27 @@ export function mapAnalyserSourceKind(text, description = "") {
313
333
  const plain = description.replace(QUOTED, " ").toLowerCase();
314
334
  return DESCRIBED.find(([, pattern]) => pattern.test(plain))?.[0] ?? "other";
315
335
  }
336
+ /** A graphic device read from the analyser's description when it gave no name: the first pattern that fits, the specific before the general
337
+ * (DfFtkhuiPAd: 'Three stacked horizontal clips' is a collage, '3D rotating Earth globe' a 3D object). */
338
+ const DEVICE_DESCRIBED = [
339
+ ["glitch", /\bglitch/], ["light_leak", /\blight leaks?\b|\blens flares?\b/], ["confetti", /\bconfetti\b/], ["sparkles", /\bsparkl|\bglitter|\bstars?\b/],
340
+ ["particles", /\bparticles?\b|\bdust\b|\bbokeh\b|\bsnow\b/], ["emoji", /\bemojis?\b/], ["sticker", /\bstickers?\b/], ["arrow", /\barrows?\b/],
341
+ ["meme", /\bmemes?\b/], ["map", /\bmaps?\b/], ["chart", /\bcharts?\b|\bgraphs?\b/], ["3d_object", /\b3d\b|\bglobe\b|\brotating\b|\bspinning\b/],
342
+ ["collage", /\bstack(ed|s)?\b|\bcollage\b|\bgrid of\b|\bmosaic\b/], ["footage", /\bclips?\b|\bfootage\b|\bvideos?\b|\bb-?roll\b/],
343
+ ["photo", /\bphotos?\b|\bpictures?\b|\bimages?\b/], ["icon", /\bicons?\b/], ["highlight", /\bhighlight|\bcircled\b|\bunderlin/],
344
+ ["text_effect", /\b(animated|kinetic) (text|title|words)\b|\btext effect/], ["flash", /\bflash/],
345
+ ];
346
+ const DEVICE_LISTS = { graphic: REFERENCE_GRAPHIC_DEVICES, camera: REFERENCE_CAMERA_DEVICES, transition: REFERENCE_TRANSITION_DEVICES };
347
+ /** The analyser's name for a device on its own closed list; for a graphic, else the device its description names, else other (#1064). */
348
+ export function mapAnalyserDevice(list, name, description = "") {
349
+ const said = name.trim().toLowerCase().replace(/[\s-]+/g, "_");
350
+ if (said !== "other" && DEVICE_LISTS[list].includes(said))
351
+ return said;
352
+ if (list !== "graphic")
353
+ return said === "other" ? "other" : undefined;
354
+ const plain = description.replace(QUOTED, " ").toLowerCase();
355
+ return (DEVICE_DESCRIBED.find(([, pattern]) => pattern.test(plain))?.[0] ?? "other");
356
+ }
316
357
  /** Our kind for an analyser's graphic: product UI and screenshots fill the frame as an insert, or sit over the presenter; what we cannot draw
317
358
  * carries its substitute. */
318
359
  export function mapAnalyserGraphic(kind, position) {
@@ -1 +1 @@
1
- {"version":3,"file":"reference-profile.js","sourceRoot":"","sources":["../src/reference-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAuF,MAAM,sBAAsB,CAAC;AAC5K,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,sBAAsB,EAAuD,MAAM,sBAAsB,CAAC;AAEvK,uIAAuI;AAEvI,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,uBAAuB,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAClG,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK;IAC9I,OAAO,CAAU,CAAC;AACpB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW;IAC/I,cAAc,EAAE,OAAO,CAAU,CAAC;AAEpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAC/F,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,oBAAoB,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAU,CAAC;AAC5G,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AACvG,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACzF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,8FAA8F;AAC9F,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,CAAC;AACnD,oGAAoG;AACpG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAC5C,6IAA6I;AAC7I,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,CAAU,CAAC;AAG3J,MAAM,WAAW,GAAG,QAAiB,CAAC;AACtC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAClC,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACjG,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IACzI,UAAU,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,2GAA2G,CAAC;CAClK,CAAC,CAAC;AAEH,wIAAwI;AACxI,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAU,CAAC;AAC3G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAU,CAAC;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAU,CAAC;AACrF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAU,CAAC;AAC5H,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,sBAAsB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM;IACvJ,OAAO,EAAE,WAAW,EAAE,OAAO,CAAU,CAAC;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAClC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAC/D,wHAAwH;AACxH,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAC/D,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IACxG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iGAAiG,CAAC;IAClI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;QAChI,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oFAAoF,CAAC;KACxH,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IAC7F,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,6CAA6C,CAAC;CAC9E,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,2BAA2B,CAAC;IACzE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;IAC3H,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;QAC5H,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,yFAAyF,CAAC;QAC9I,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;KAC/G,CAAC,CAAC,QAAQ,EAAE;IACb,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAC;AAGH,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IACnC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;IAChC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,kDAAkD,CAAC,EAAE,KAAK,EAAE,OAAO;IAC7F,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;IAClC,cAAc,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC,QAAQ,CAAC,kFAAkF,CAAC;IAC9I,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACjC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/F,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC;IAC3D,4GAA4G;IAC5G,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IAC1G,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IAChJ,sFAAsF;IACtF,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;SACrC,QAAQ,CAAC,gHAAgH,CAAC;IAC7H,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE;SACjG,QAAQ,CAAC,0FAA0F,CAAC;IACvG,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE;SAC3F,QAAQ,CAAC,8IAA8I,CAAC;IAC3J,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7I,QAAQ,CAAC,2FAA2F,CAAC;CACzG,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;IAC7G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC,EAAE,CAAC,CAAC;AAC/I,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;KACzE,QAAQ,CAAC,8GAA8G,CAAC,CAAC;AAC5H,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,IAAI,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC,QAAQ,CAAC,qCAAqC,sBAAsB,wCAAwC;UAChJ,0BAA0B,0BAA0B,0BAA0B,CAAC;IACnF,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACvF,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAChI,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QAC/I,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACpF,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC;QACpJ,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,sBAAsB,EAAE,MAAM,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE;QAC/F,2HAA2H;QAC3H,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC,EAAE,CAAC;IAC7F,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACzF,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;IAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;CACrI,CAAC;AACF,MAAM,gBAAgB,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC,EAAE,CAAC;AACpK,MAAM,WAAW,GAAG;IAClB,gFAAgF;IAChF,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChC,sDAAsD;IACtD,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;SACrD,QAAQ,CAAC,oHAAoH,CAAC;IACjI,sDAAsD;IACtD,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SAClC,QAAQ,CAAC,8HAA8H,CAAC;IAC3I,kHAAkH;IAClH,OAAO,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACpC,gFAAgF;IAChF,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;IAC9I,2BAA2B;IAC3B,mBAAmB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACjD,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE;IAC9B,6HAA6H;IAC7H,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE;IAC1E,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IAC/I,2BAA2B;IAC3B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;SACrJ,GAAG,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;SACvC,QAAQ,CAAC,0HAA0H;QAClI,+CAA+C,CAAC;CACrD,CAAC;AAEF,SAAS,YAAY,CAAC,OAAoB,EAAE,GAAoB;IAC9D,MAAM,KAAK,GAAE,CAAC,IAAyB,EAAE,OAAe,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAChH,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;IAC3C,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,6BAA6B,CAAC,CAAC;aAC/F,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0BAA0B,QAAQ,IAAI,CAAC,CAAC;QAC9G,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAW,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,sDAAsD,CAAC,CAAC;IACvK,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ;QAAE,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,0BAA0B,QAAQ,IAAI,CAAC,CAAC;IACpH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC3C,IAAI,OAAO,CAAC,QAAS,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,uBAAuB,CAAC,CAAC;QACrI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,2BAA2B,QAAQ,WAAW,CAAC,CAAC;IACxI,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC3C,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,GAAG,QAAQ;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0CAA0C,CAAC,CAAC;QACjJ,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,qBAAqB,CAAC,CAAC;QAClI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,2BAA2B,QAAQ,WAAW,CAAC,CAAC;IACxI,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAAE,KAAK,CAAC,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACjJ,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,sCAAsC,CAAC,CAAC;aAC7G,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,sCAAsC,CAAC,CAAC;QAC9G,IAAI,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0BAA0B,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QACtI,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE;YAChI,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC,IAAI,QAAQ;gBAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,wBAAwB,QAAQ,WAAW,CAAC,CAAC;QACjH,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC;QACrH,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpJ,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,0DAA0D,CAAC,CAAC;QACnJ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,EAAE,CAAC;gBACjI,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,+DAA+D,CAAC,CAAC;YAClI,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,aAAa,OAAO,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;IACpI,CAAC,CAAC,CAAC;AACL,CAAC;AACD,wIAAwI;AACxI,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAC;AACxE,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAC/D,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AAE/J,uIAAuI;AACvI,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AAExJ,0EAA0E;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtI,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAElI,wIAAwI;AACxI,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,GAAW,EAAE,QAAgB;IACzE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACjG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,0IAA0I;AAC1I,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,kHAAkH;AAClH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7H,OAAO,GAAG,GAAG,IAAI,IAAI,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,qIAAqI;AACrI,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,QAAgB;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAClG,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,8HAA8H;AAC9H,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,GAAW,EAAE,QAAgB,EAAE,GAAG,GAAG,eAAe;IAClG,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjJ,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnJ,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IAClC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC;AACnH,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,wBAAwB,CAAC,OAAyD;IAChG,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;QACrD,OAAO,kBAAkB,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,gCAAgC,KAAK,CAAC,oBAAoB,GAAG,CAAC;IACvJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,MAAM,GAAmD;IAC7D,GAAG,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAClE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW;IAClH,+HAA+H;IAC/H,0HAA0H;IAC1H,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM;CAC/E,CAAC;AACF,MAAM,WAAW,GAAqC;IACpD,SAAS,EAAE,iEAAiE;CAC7E,CAAC;AACF;iCACiC;AACjC,MAAM,SAAS,GAA+E;IAC5F,CAAC,aAAa,EAAE,8DAA8D,CAAC;IAC/E,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,YAAY,EAAE,yCAAyC,CAAC;IACzD,CAAC,cAAc,EAAE,2CAA2C,CAAC;IAC7D,CAAC,QAAQ,EAAE,2CAA2C,CAAC;CACxD,CAAC;AACF,uHAAuH;AACvH,MAAM,MAAM,GAAG,gEAAgE,CAAC;AAEhF,uHAAuH;AACvH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpC,IAAK,uBAA6C,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAyB,CAAC;IACjG,IAAI,yEAAyE,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3G,IAAI,yDAAyD,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACxF,IAAI,wCAAwC,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC;IAC3E,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACxD,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC/D,IAAI,0CAA0C,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC;IAC7E,IAAI,qDAAqD,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,eAAe,CAAC;IAC1F,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iHAAiH;AACjH,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,WAAW,GAAG,EAAE;IAClE,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,KAAK,OAAO,IAAK,sBAA4C,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAwB,CAAC;IAChH,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7D,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;AAC9E,CAAC;AAED;6BAC6B;AAC7B,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,QAA4B;IAC3E,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,cAAc;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;IAC9J,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC,CAAC,CAAC,UAAU,CAAC;IACtE,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,UAAU;QAChD,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC,IAAI,8CAA8C,EAAE;QAC1K,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"reference-profile.js","sourceRoot":"","sources":["../src/reference-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAuF,MAAM,sBAAsB,CAAC;AAC5K,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,sBAAsB,EAAuD,MAAM,sBAAsB,CAAC;AAEvK,uIAAuI;AAEvI,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,uBAAuB,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAClG,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK;IAC9I,OAAO,CAAU,CAAC;AACpB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW;IAC/I,cAAc,EAAE,OAAO,CAAU,CAAC;AAEpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAC/F,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,oBAAoB,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAU,CAAC;AAC5G,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AACvG,uJAAuJ;AACvJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAEjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACzF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,sIAAsI;AACtI,MAAM,CAAC,MAAM,mCAAmC,GAAG,IAAI,CAAC;AACxD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,8FAA8F;AAC9F,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,CAAC;AACnD,oGAAoG;AACpG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAC5C,6IAA6I;AAC7I,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,CAAU,CAAC;AAE3J,oJAAoJ;AACpJ,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW;IAC5J,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AACzG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAU,CAAC;AACnK,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY;IAC7J,WAAW,EAAE,OAAO,CAAU,CAAC;AAGjC,MAAM,WAAW,GAAG,QAAiB,CAAC;AACtC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAClC,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACjG,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IACzI,UAAU,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,2GAA2G,CAAC;IACjK,4BAA4B;IAC5B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yFAAyF,CAAC;CACzJ,CAAC,CAAC;AAEH,wIAAwI;AACxI,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAU,CAAC;AAC3G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAU,CAAC;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAU,CAAC;AACrF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAU,CAAC;AAC5H,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,sBAAsB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM;IACvJ,OAAO,EAAE,WAAW,EAAE,OAAO,CAAU,CAAC;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAClC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAC/D,wHAAwH;AACxH,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAC/D,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IACxG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iGAAiG,CAAC;IAClI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;QAChI,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oFAAoF,CAAC;KACxH,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IAC7F,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,6CAA6C,CAAC;CAC9E,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,mCAAmC,CAAC;IACjF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;IAC3H,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;QAC5H,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,yFAAyF,CAAC;QAC9I,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;KAC/G,CAAC,CAAC,QAAQ,EAAE;IACb,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAC;AAGH,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IACnC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;IAChC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,kDAAkD,CAAC,EAAE,KAAK,EAAE,OAAO;IAC7F,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;IAClC,cAAc,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC,QAAQ,CAAC,kFAAkF,CAAC;IACtJ,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACjC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC5C,qDAAqD;IACrD,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qFAAqF,CAAC;IAC1J,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE;SAC/D,QAAQ,CAAC,+FAA+F,CAAC;IAC5G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/F,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC;IAC3D,yJAAyJ;IACzJ,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE;SAC/C,QAAQ,CAAC,sIAAsI,CAAC;IACnJ,4GAA4G;IAC5G,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IAC1G,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IAChJ,sFAAsF;IACtF,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;SACrC,QAAQ,CAAC,gHAAgH,CAAC;IAC7H,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE;SACjG,QAAQ,CAAC,0FAA0F,CAAC;IACvG,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE;SAC3F,QAAQ,CAAC,8IAA8I,CAAC;IAC3J,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7I,QAAQ,CAAC,2FAA2F,CAAC;CACzG,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;IAC7G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC,EAAE,CAAC,CAAC;AAC/I,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;KACzE,QAAQ,CAAC,8GAA8G,CAAC,CAAC;AAC5H,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,IAAI,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,sBAAsB,wCAAwC;UACxJ,0BAA0B,0BAA0B,0BAA0B,CAAC;IACnF,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACvF,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAChI,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QAC/I,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACpF,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7C,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC;QACpJ,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,sBAAsB,EAAE,MAAM,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE;QAC/F,2HAA2H;QAC3H,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC,EAAE,CAAC;IAC7F,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACzF,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;IAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;CACrI,CAAC;AACF,MAAM,gBAAgB,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC,EAAE,CAAC;AACpK,MAAM,WAAW,GAAG;IAClB,gFAAgF;IAChF,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChC,sDAAsD;IACtD,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;SACrD,QAAQ,CAAC,+HAA+H;QACvI,8BAA8B,CAAC;IACnC,sDAAsD;IACtD,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SAClC,QAAQ,CAAC,8HAA8H,CAAC;IAC3I,kHAAkH;IAClH,OAAO,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACpC,gFAAgF;IAChF,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;IAC9I,2BAA2B;IAC3B,mBAAmB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACjD,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE;IAC9B,6HAA6H;IAC7H,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE;IAC1E,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IAC/I,2BAA2B;IAC3B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;SACrJ,GAAG,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;SACvC,QAAQ,CAAC,0HAA0H;QAClI,+CAA+C,CAAC;CACrD,CAAC;AAEF,SAAS,YAAY,CAAC,OAAoB,EAAE,GAAoB;IAC9D,MAAM,KAAK,GAAE,CAAC,IAAyB,EAAE,OAAe,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAChH,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;IAC3C,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,6BAA6B,CAAC,CAAC;aAC/F,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0BAA0B,QAAQ,IAAI,CAAC,CAAC;QAC9G,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAW,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,sDAAsD,CAAC,CAAC;IACvK,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ;QAAE,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,0BAA0B,QAAQ,IAAI,CAAC,CAAC;IACpH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC3C,IAAI,OAAO,CAAC,QAAS,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,uBAAuB,CAAC,CAAC;QACrI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,2BAA2B,QAAQ,WAAW,CAAC,CAAC;IACxI,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC3C,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,GAAG,QAAQ;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0CAA0C,CAAC,CAAC;QACjJ,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,qBAAqB,CAAC,CAAC;QAClI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,2BAA2B,QAAQ,WAAW,CAAC,CAAC;IACxI,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAAE,KAAK,CAAC,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACjJ,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,sCAAsC,CAAC,CAAC;aAC7G,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,sCAAsC,CAAC,CAAC;QAC9G,IAAI,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,0BAA0B,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QACtI,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE;YAChI,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC,IAAI,QAAQ;gBAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,wBAAwB,QAAQ,WAAW,CAAC,CAAC;QACjH,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC;QACrH,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpJ,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,0DAA0D,CAAC,CAAC;QACnJ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,EAAE,CAAC;gBACjI,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,+DAA+D,CAAC,CAAC;YAClI,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM;YAAE,KAAK,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,aAAa,OAAO,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;IACpI,CAAC,CAAC,CAAC;AACL,CAAC;AACD,wIAAwI;AACxI,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAC;AACxE,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAC/D,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AAE/J,uIAAuI;AACvI,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AAExJ,0EAA0E;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtI,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAElI,wIAAwI;AACxI,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,GAAW,EAAE,QAAgB;IACzE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACjG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,0IAA0I;AAC1I,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,kHAAkH;AAClH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7H,OAAO,GAAG,GAAG,IAAI,IAAI,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,qIAAqI;AACrI,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,QAAgB;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAClG,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,8HAA8H;AAC9H,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,GAAW,EAAE,QAAgB,EAAE,GAAG,GAAG,eAAe;IAClG,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjJ,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnJ,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IAClC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC;AACnH,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,wBAAwB,CAAC,OAAyD;IAChG,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;QACrD,OAAO,kBAAkB,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,gCAAgC,KAAK,CAAC,oBAAoB,GAAG,CAAC;IACvJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,MAAM,GAAmD;IAC7D,GAAG,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAClE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW;IAClH,+HAA+H;IAC/H,0HAA0H;IAC1H,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM;CAC/E,CAAC;AACF,MAAM,WAAW,GAAqC;IACpD,SAAS,EAAE,iEAAiE;CAC7E,CAAC;AACF;iCACiC;AACjC,MAAM,SAAS,GAA+E;IAC5F,CAAC,aAAa,EAAE,8DAA8D,CAAC;IAC/E,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,YAAY,EAAE,yCAAyC,CAAC;IACzD,CAAC,cAAc,EAAE,2CAA2C,CAAC;IAC7D,CAAC,QAAQ,EAAE,2CAA2C,CAAC;CACxD,CAAC;AACF,uHAAuH;AACvH,MAAM,MAAM,GAAG,gEAAgE,CAAC;AAEhF,uHAAuH;AACvH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpC,IAAK,uBAA6C,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAyB,CAAC;IACjG,IAAI,yEAAyE,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3G,IAAI,yDAAyD,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACxF,IAAI,wCAAwC,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC;IAC3E,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACxD,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC/D,IAAI,0CAA0C,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC;IAC7E,IAAI,qDAAqD,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,eAAe,CAAC;IAC1F,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iHAAiH;AACjH,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,WAAW,GAAG,EAAE;IAClE,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,KAAK,OAAO,IAAK,sBAA4C,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAwB,CAAC;IAChH,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7D,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;AAC9E,CAAC;AAED;2GAC2G;AAC3G,MAAM,gBAAgB,GAA2D;IAC/E,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,mCAAmC,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,+BAA+B,CAAC;IACxJ,CAAC,WAAW,EAAE,4CAA4C,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC7I,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,CAAC,EAAE,CAAC,WAAW,EAAE,4CAA4C,CAAC;IAC/I,CAAC,SAAS,EAAE,qDAAqD,CAAC,EAAE,CAAC,SAAS,EAAE,gDAAgD,CAAC;IACjI,CAAC,OAAO,EAAE,uCAAuC,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,oCAAoC,CAAC;IAC/H,CAAC,aAAa,EAAE,yDAAyD,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;CACjG,CAAC;AACF,MAAM,YAAY,GAAG,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,wBAAwB,EAAE,UAAU,EAAE,4BAA4B,EAAW,CAAC;AAEjJ,yIAAyI;AACzI,MAAM,UAAU,iBAAiB,CAAsC,IAAO,EAAE,IAAY,EAAE,WAAW,GAAG,EAAE;IAC5G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC/D,IAAI,IAAI,KAAK,OAAO,IAAK,YAAY,CAAC,IAAI,CAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAwC,CAAC;IAClI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAA2C,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7D,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAqC,CAAC;AAC3H,CAAC;AAED;6BAC6B;AAC7B,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,QAA4B;IAC3E,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,cAAc;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;IAC9J,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC,CAAC,CAAC,UAAU,CAAC;IACtE,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,UAAU;QAChD,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC,IAAI,8CAA8C,EAAE;QAC1K,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACrB,CAAC"}
@@ -16,6 +16,8 @@ export declare const STAGING_HEAD_ROLLS: readonly ["left", "right", "upright"];
16
16
  export declare const STAGING_EXPRESSIONS: readonly ["neutral", "smile", "surprised", "thinking", "other"];
17
17
  export declare const STAGING_HANDS: readonly ["at_chest", "gesturing", "out_of_frame", "other"];
18
18
  export declare const STAGING_FREEZE_ENDS: readonly ["cut", "flash", "unfreeze", "end"];
19
+ /** none: the step lands on a brighter shot with no light laid over it. */
20
+ export declare const STAGING_FLASH_TINTS: readonly ["white", "warm", "cool", "none"];
19
21
  export declare const stagingRect: z.ZodObject<{
20
22
  left: z.ZodNumber;
21
23
  top: z.ZodNumber;
@@ -43,11 +45,14 @@ export declare const stagingElement: z.ZodObject<{
43
45
  banner: "banner";
44
46
  before_after_split: "before_after_split";
45
47
  callout: "callout";
48
+ chart: "chart";
49
+ chat_window: "chat_window";
46
50
  checklist: "checklist";
47
51
  comment_box: "comment_box";
48
52
  compare: "compare";
49
53
  concept_card: "concept_card";
50
54
  end_card: "end_card";
55
+ hand_title: "hand_title";
51
56
  insert_media: "insert_media";
52
57
  layout_split: "layout_split";
53
58
  logo_card: "logo_card";
@@ -57,18 +62,26 @@ export declare const stagingElement: z.ZodObject<{
57
62
  overlay_media: "overlay_media";
58
63
  particles: "particles";
59
64
  phone_call: "phone_call";
65
+ phone_screen: "phone_screen";
66
+ pointer_chips: "pointer_chips";
60
67
  price_card: "price_card";
61
68
  product_ui: "product_ui";
62
69
  progress: "progress";
63
70
  quote: "quote";
71
+ race: "race";
64
72
  rating: "rating";
73
+ scene: "scene";
65
74
  screenshot: "screenshot";
66
75
  split_screen: "split_screen";
67
76
  stat: "stat";
68
77
  tag: "tag";
78
+ terminal: "terminal";
69
79
  title_card: "title_card";
70
80
  toggle_checklist: "toggle_checklist";
71
81
  unmapped: "unmapped";
82
+ video_grid: "video_grid";
83
+ word_fill: "word_fill";
84
+ word_title: "word_title";
72
85
  }>;
73
86
  rect_hold: z.ZodOptional<z.ZodObject<{
74
87
  left: z.ZodNumber;
@@ -298,6 +311,20 @@ export declare const stagingFreeze: z.ZodObject<{
298
311
  }>;
299
312
  }, z.core.$strict>;
300
313
  export type StagingFreeze = z.infer<typeof stagingFreeze>;
314
+ export declare const stagingFlash: z.ZodObject<{
315
+ id: z.ZodString;
316
+ t_s: z.ZodNumber;
317
+ length_s: z.ZodNumber;
318
+ strength: z.ZodNumber;
319
+ tint: z.ZodEnum<{
320
+ cool: "cool";
321
+ none: "none";
322
+ warm: "warm";
323
+ white: "white";
324
+ }>;
325
+ color: z.ZodOptional<z.ZodString>;
326
+ }, z.core.$strict>;
327
+ export type StagingFlash = z.infer<typeof stagingFlash>;
301
328
  /** Elements one staging holds, measured or kept with only the vision pass's box and times (#930 S2). */
302
329
  export declare const MAX_STAGING_ELEMENTS = 40;
303
330
  export declare const referenceStaging: z.ZodObject<{
@@ -315,11 +342,14 @@ export declare const referenceStaging: z.ZodObject<{
315
342
  banner: "banner";
316
343
  before_after_split: "before_after_split";
317
344
  callout: "callout";
345
+ chart: "chart";
346
+ chat_window: "chat_window";
318
347
  checklist: "checklist";
319
348
  comment_box: "comment_box";
320
349
  compare: "compare";
321
350
  concept_card: "concept_card";
322
351
  end_card: "end_card";
352
+ hand_title: "hand_title";
323
353
  insert_media: "insert_media";
324
354
  layout_split: "layout_split";
325
355
  logo_card: "logo_card";
@@ -329,18 +359,26 @@ export declare const referenceStaging: z.ZodObject<{
329
359
  overlay_media: "overlay_media";
330
360
  particles: "particles";
331
361
  phone_call: "phone_call";
362
+ phone_screen: "phone_screen";
363
+ pointer_chips: "pointer_chips";
332
364
  price_card: "price_card";
333
365
  product_ui: "product_ui";
334
366
  progress: "progress";
335
367
  quote: "quote";
368
+ race: "race";
336
369
  rating: "rating";
370
+ scene: "scene";
337
371
  screenshot: "screenshot";
338
372
  split_screen: "split_screen";
339
373
  stat: "stat";
340
374
  tag: "tag";
375
+ terminal: "terminal";
341
376
  title_card: "title_card";
342
377
  toggle_checklist: "toggle_checklist";
343
378
  unmapped: "unmapped";
379
+ video_grid: "video_grid";
380
+ word_fill: "word_fill";
381
+ word_title: "word_title";
344
382
  }>;
345
383
  rect_hold: z.ZodOptional<z.ZodObject<{
346
384
  left: z.ZodNumber;
@@ -568,6 +606,19 @@ export declare const referenceStaging: z.ZodObject<{
568
606
  unfreeze: "unfreeze";
569
607
  }>;
570
608
  }, z.core.$strict>>;
609
+ flashes: z.ZodOptional<z.ZodArray<z.ZodObject<{
610
+ id: z.ZodString;
611
+ t_s: z.ZodNumber;
612
+ length_s: z.ZodNumber;
613
+ strength: z.ZodNumber;
614
+ tint: z.ZodEnum<{
615
+ cool: "cool";
616
+ none: "none";
617
+ warm: "warm";
618
+ white: "white";
619
+ }>;
620
+ color: z.ZodOptional<z.ZodString>;
621
+ }, z.core.$strict>>>;
571
622
  }, z.core.$strict>;
572
623
  export type ReferenceStaging = z.infer<typeof referenceStaging>;
573
624
  /** Cross-field checks a profile runs on its staging: the beats and graphics it names exist, its anchors exist, and its times are ordered. */
@@ -579,7 +630,8 @@ export declare function stagingIssues(staging: ReferenceStaging, beats: readonly
579
630
  }[];
580
631
  /** A frame rect in face units: origin the face box's centre, unit its height in pixels (Q2: our actor does not sit where theirs does). */
581
632
  export declare function faceRelativeRect(rect: StagingRect, face: StagingRect, width: number, height: number): z.infer<typeof stagingFaceRect>;
582
- /** Samples thinned to change points: one is kept when an edge moved more than `tolerance` since the last kept, and the last always stays. */
633
+ /** Samples thinned to change points: one is kept when an edge moved more than `tolerance` since the last kept, and the last always stays. A
634
+ * `pinned` sample (an entry or exit, at its even rate) always stays; past `max`, only the others are spread down (#1051 S4). */
583
635
  export declare function thinStagingRects<T extends {
584
636
  rect: StagingRect;
585
- }>(samples: readonly T[], tolerance?: number, max?: number): T[];
637
+ }>(samples: readonly T[], tolerance?: number, max?: number, pinned?: (sample: T) => boolean): T[];
@@ -20,6 +20,8 @@ export const STAGING_HEAD_ROLLS = ["left", "right", "upright"];
20
20
  export const STAGING_EXPRESSIONS = ["neutral", "smile", "surprised", "thinking", "other"];
21
21
  export const STAGING_HANDS = ["at_chest", "gesturing", "out_of_frame", "other"];
22
22
  export const STAGING_FREEZE_ENDS = ["cut", "flash", "unfreeze", "end"];
23
+ /** none: the step lands on a brighter shot with no light laid over it. */
24
+ export const STAGING_FLASH_TINTS = ["white", "warm", "cool", "none"];
23
25
  const frac = z.number().min(0).max(1);
24
26
  const seconds = z.number().min(0);
25
27
  const anchorId = z.string().regex(new RegExp(`^(${STAGING_ANCHOR_KINDS.join("|")})#\\d+$`));
@@ -72,6 +74,14 @@ export const stagingFreeze = z.strictObject({
72
74
  frame_motion: z.strictObject({ scale_end: z.number().positive().max(4), centre_shift: z.tuple([z.number(), z.number()]) }).optional(),
73
75
  ends_with: z.enum(STAGING_FREEZE_ENDS),
74
76
  });
77
+ export const stagingFlash = z.strictObject({
78
+ id: z.string().regex(/^flash#\d+$/).describe("The flash anchor it measures."),
79
+ t_s: seconds.describe("When the light starts."),
80
+ length_s: seconds.describe("How long the picture stays lit; 0 when no light is laid over it."),
81
+ strength: frac.describe("How far the peak goes toward white, from 0 to 1."),
82
+ tint: z.enum(STAGING_FLASH_TINTS).describe("The light's colour family; none when the step only lands on a brighter shot."),
83
+ color: z.string().regex(/^#[0-9A-F]{6}$/).optional().describe("The light's colour."),
84
+ });
75
85
  /** Elements one staging holds, measured or kept with only the vision pass's box and times (#930 S2). */
76
86
  export const MAX_STAGING_ELEMENTS = 40;
77
87
  export const referenceStaging = z.strictObject({
@@ -80,6 +90,8 @@ export const referenceStaging = z.strictObject({
80
90
  anchors: z.array(z.strictObject({ id: anchorId, t_s: seconds })).max(80),
81
91
  elements: z.array(stagingElement).max(MAX_STAGING_ELEMENTS),
82
92
  freezes: z.array(stagingFreeze).max(8),
93
+ /** Optional since #1051 S4: a staging without it parses, and its flash anchors then carry only their times. */
94
+ flashes: z.array(stagingFlash).max(80).optional().describe("Each flash anchor's light: when it starts, how long and how bright it is, and its colour."),
83
95
  });
84
96
  /** Cross-field checks a profile runs on its staging: the beats and graphics it names exist, its anchors exist, and its times are ordered. */
85
97
  export function stagingIssues(staging, beats, duration) {
@@ -121,6 +133,14 @@ export function stagingIssues(staging, beats, duration) {
121
133
  element.rects?.forEach((sample, at) => { if (sample.t_s > duration)
122
134
  out.push({ path: [...path, "rects", at, "t_s"], message: `lies past the source's ${duration} s` }); });
123
135
  });
136
+ staging.flashes?.forEach((flash, index) => {
137
+ if (!ids.has(flash.id))
138
+ out.push({ path: ["flashes", index, "id"], message: `${flash.id} is not in staging.anchors` });
139
+ if (staging.flashes.findIndex(other => other.id === flash.id) < index)
140
+ out.push({ path: ["flashes", index, "id"], message: `${flash.id} is measured twice` });
141
+ if (flash.t_s + flash.length_s > duration + 0.05)
142
+ out.push({ path: ["flashes", index, "length_s"], message: `lies past the source's ${duration} s` });
143
+ });
124
144
  staging.freezes.forEach((freeze, index) => {
125
145
  refs(["freezes", index, "anchors"], freeze.anchors);
126
146
  if (freeze.end_s <= freeze.start_s)
@@ -137,18 +157,21 @@ export function faceRelativeRect(rect, face, width, height) {
137
157
  return { left: round((rect.left * width - cx) / unit), top: round((rect.top * height - cy) / unit), width: round((rect.width * width) / unit),
138
158
  height: round((rect.height * height) / unit) };
139
159
  }
140
- /** Samples thinned to change points: one is kept when an edge moved more than `tolerance` since the last kept, and the last always stays. */
141
- export function thinStagingRects(samples, tolerance = 0.003, max = 60) {
160
+ /** Samples thinned to change points: one is kept when an edge moved more than `tolerance` since the last kept, and the last always stays. A
161
+ * `pinned` sample (an entry or exit, at its even rate) always stays; past `max`, only the others are spread down (#1051 S4). */
162
+ export function thinStagingRects(samples, tolerance = 0.003, max = 60, pinned = () => false) {
142
163
  const kept = [];
143
164
  samples.forEach((sample, index) => {
144
165
  const last = kept.at(-1);
145
166
  const moved = !last || ["left", "top", "width", "height"].some(edge => Math.abs(sample.rect[edge] - last.rect[edge]) > tolerance);
146
- if (moved || index === samples.length - 1)
167
+ if (moved || index === samples.length - 1 || pinned(sample))
147
168
  kept.push(sample);
148
169
  });
149
170
  if (kept.length <= max)
150
171
  return kept;
151
- const step = (kept.length - 1) / (max - 1);
152
- return Array.from({ length: max }, (_, index) => kept[Math.round(index * step)]);
172
+ const fixed = kept.filter(pinned).slice(0, max), rest = kept.filter(sample => !pinned(sample)), room = max - fixed.length;
173
+ const step = room > 1 ? (rest.length - 1) / (room - 1) : 0;
174
+ const spread = new Set(room <= 0 ? [] : Array.from({ length: Math.min(room, rest.length) }, (_, index) => rest[Math.round(index * step)]));
175
+ return kept.filter(sample => fixed.includes(sample) || spread.has(sample));
153
176
  }
154
177
  //# sourceMappingURL=reference-staging.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reference-staging.js","sourceRoot":"","sources":["../src/reference-staging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reference-staging.js","sourceRoot":"","sources":["../src/reference-staging.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { ReferenceProfileInput } from "./reference-profile.js";
2
+ import type { StagingRect } from "./reference-staging.js";
3
+ /** What the reference's text says about a span: free of text, free once the boxes are masked, or unusable. */
4
+ export type ReferenceSpanVerdict = {
5
+ kind: "clean";
6
+ start_s: number;
7
+ end_s: number;
8
+ } | {
9
+ kind: "masked";
10
+ start_s: number;
11
+ end_s: number;
12
+ boxes: StagingRect[];
13
+ } | {
14
+ kind: "refused";
15
+ reason: string;
16
+ };
17
+ export type ReferenceTextProfile = Pick<ReferenceProfileInput, "source" | "beats" | "captions" | "transcript" | "segments" | "speakers" | "staging">;
18
+ /** A caption stays up a little after its last word is spoken. */
19
+ export declare const CAPTION_HOLD_S = 0.4;
20
+ export declare const MASK_PADDING = 0.02;
21
+ /** The part of `want` a reference clip may use: the span itself when no text shows, else the longest text-free stretch of at least
22
+ * `minSeconds`, else the span with every text box masked, else a refusal naming the text that has no box. */
23
+ export declare function cleanReferenceSpan(profile: ReferenceTextProfile, want: {
24
+ start_s: number;
25
+ end_s: number;
26
+ }, minSeconds: number): ReferenceSpanVerdict;
@@ -0,0 +1,76 @@
1
+ /** A caption stays up a little after its last word is spoken. */
2
+ export const CAPTION_HOLD_S = 0.4;
3
+ export const MASK_PADDING = 0.02;
4
+ /** Where a caption block of each position sits when no box was measured: a full-width band. */
5
+ const CAPTION_BANDS = {
6
+ top: [0.05, 0.3], middle: [0.35, 0.65], lower: [0.55, 0.85], bottom: [0.7, 0.95],
7
+ };
8
+ const ms = (value) => Math.round(value * 1000) / 1000;
9
+ const unit = (value) => Math.round(Math.min(1, Math.max(0, value)) * 10_000) / 10_000;
10
+ function union(boxes) {
11
+ if (!boxes.length)
12
+ return undefined;
13
+ const left = Math.min(...boxes.map(box => box.left)), top = Math.min(...boxes.map(box => box.top));
14
+ return { left, top, width: Math.max(...boxes.map(box => box.left + box.width)) - left, height: Math.max(...boxes.map(box => box.top + box.height)) - top };
15
+ }
16
+ /** Every stretch of the reference that shows text or a graphic, with its box when one was measured. */
17
+ function referenceTexts(profile) {
18
+ const duration = profile.source.duration_s, texts = [];
19
+ if (profile.captions.present) {
20
+ const [top, bottom] = CAPTION_BANDS[profile.captions.position];
21
+ const box = profile.captions.box ?? union(profile.speakers?.flatMap(speaker => speaker.caption?.box ?? []) ?? [])
22
+ ?? { left: 0, top, width: 1, height: bottom - top };
23
+ // Without word times the captions may be anywhere in the reel.
24
+ const said = profile.transcript?.length ? profile.transcript : profile.segments?.length ? profile.segments : [{ start_s: 0, end_s: duration }];
25
+ for (const word of said)
26
+ texts.push({ start: word.start_s, end: word.end_s + CAPTION_HOLD_S, box, what: "a caption" });
27
+ }
28
+ const elements = profile.staging?.elements ?? [];
29
+ for (const element of elements) {
30
+ const beat = profile.beats[element.beat_index];
31
+ texts.push({ start: element.entry?.first_visible_s ?? beat?.start_s ?? 0, end: element.exit?.last_visible_s ?? beat?.end_s ?? duration,
32
+ ...(element.rect_hold ? { box: element.rect_hold } : {}), what: `a ${element.kind.replaceAll("_", " ")}` });
33
+ }
34
+ profile.beats.forEach((beat, index) => {
35
+ beat.graphics.forEach((graphic, at) => {
36
+ if (!elements.some(element => element.beat_index === index && element.graphic_index === at)) {
37
+ texts.push({ start: beat.start_s, end: beat.end_s, what: `a ${graphic.kind.replaceAll("_", " ")}` });
38
+ }
39
+ });
40
+ });
41
+ return texts;
42
+ }
43
+ /** The part of `want` a reference clip may use: the span itself when no text shows, else the longest text-free stretch of at least
44
+ * `minSeconds`, else the span with every text box masked, else a refusal naming the text that has no box. */
45
+ export function cleanReferenceSpan(profile, want, minSeconds) {
46
+ const start = Math.max(0, want.start_s), end = Math.min(profile.source.duration_s, want.end_s);
47
+ if (!Number.isFinite(start) || !Number.isFinite(end) || !(minSeconds > 0) || end - start < minSeconds) {
48
+ return { kind: "refused", reason: `the span ${want.start_s}–${want.end_s} s holds less than ${minSeconds} s of the reference` };
49
+ }
50
+ const texts = referenceTexts(profile).filter(text => text.start < end && start < text.end);
51
+ if (!texts.length)
52
+ return { kind: "clean", start_s: ms(start), end_s: ms(end) };
53
+ let cursor = start, free = { start, end: start };
54
+ for (const text of [...texts].sort((a, b) => a.start - b.start)) {
55
+ if (text.start - cursor > free.end - free.start)
56
+ free = { start: cursor, end: text.start };
57
+ cursor = Math.max(cursor, text.end);
58
+ }
59
+ if (end - cursor > free.end - free.start)
60
+ free = { start: cursor, end };
61
+ if (free.end - free.start >= minSeconds)
62
+ return { kind: "clean", start_s: ms(free.start), end_s: ms(free.end) };
63
+ const bare = texts.find(text => !text.box);
64
+ if (bare) {
65
+ return { kind: "refused", reason: `${bare.what} at ${ms(Math.max(start, bare.start))}–${ms(Math.min(end, bare.end))} s has no box to mask, ` +
66
+ `and no ${minSeconds} s of the span is free of text` };
67
+ }
68
+ const boxes = new Map();
69
+ for (const { box } of texts) {
70
+ const left = unit(box.left - MASK_PADDING), top = unit(box.top - MASK_PADDING);
71
+ const padded = { left, top, width: unit(unit(box.left + box.width + MASK_PADDING) - left), height: unit(unit(box.top + box.height + MASK_PADDING) - top) };
72
+ boxes.set(JSON.stringify(padded), padded);
73
+ }
74
+ return { kind: "masked", start_s: ms(start), end_s: ms(end), boxes: [...boxes.values()] };
75
+ }
76
+ //# sourceMappingURL=reference-text-spans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference-text-spans.js","sourceRoot":"","sources":["../src/reference-text-spans.ts"],"names":[],"mappings":"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"}