@controllerai/cli 0.2.14 → 0.2.15

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 (46) hide show
  1. package/README.md +13 -4
  2. package/dist/commands/connection.js +98 -13
  3. package/dist/commands/connection.js.map +1 -1
  4. package/dist/commands/data.js +26 -15
  5. package/dist/commands/data.js.map +1 -1
  6. package/dist/commands/exec.js +284 -133
  7. package/dist/commands/exec.js.map +1 -1
  8. package/dist/commands/integration.js +170 -49
  9. package/dist/commands/integration.js.map +1 -1
  10. package/dist/commands/node.js +11 -287
  11. package/dist/commands/node.js.map +1 -1
  12. package/dist/commands/organize.js +182 -219
  13. package/dist/commands/organize.js.map +1 -1
  14. package/dist/commands/run.js +1 -1
  15. package/dist/commands/run.js.map +1 -1
  16. package/dist/commands/trigger.js +14 -8
  17. package/dist/commands/trigger.js.map +1 -1
  18. package/dist/commands/workflow.js +203 -61
  19. package/dist/commands/workflow.js.map +1 -1
  20. package/dist/index.js +5 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/nodeProps.js +1 -1
  23. package/dist/nodeProps.js.map +1 -1
  24. package/package.json +2 -2
  25. package/skills/controllerai-agents/SKILL.md +26 -18
  26. package/skills/controllerai-agents/references/instructions-and-versioning.md +2 -0
  27. package/skills/controllerai-ai-nodes/SKILL.md +9 -5
  28. package/skills/controllerai-ai-nodes/references/selection-and-testing.md +2 -0
  29. package/skills/controllerai-data/SKILL.md +17 -7
  30. package/skills/controllerai-data/references/data-rails.md +4 -2
  31. package/skills/controllerai-expressions/SKILL.md +17 -5
  32. package/skills/controllerai-expressions/references/dsl-and-recipes.md +5 -1
  33. package/skills/controllerai-flow-control/SKILL.md +11 -4
  34. package/skills/controllerai-flow-control/references/patterns.md +4 -0
  35. package/skills/controllerai-integration-actions/SKILL.md +20 -12
  36. package/skills/controllerai-node-config/SKILL.md +30 -9
  37. package/skills/controllerai-node-config/references/prop-and-readiness.md +9 -3
  38. package/skills/controllerai-runs/SKILL.md +20 -10
  39. package/skills/controllerai-runs/references/debugging.md +11 -7
  40. package/skills/controllerai-start/SKILL.md +29 -8
  41. package/skills/controllerai-start/references/mcp-tool-map.md +170 -0
  42. package/skills/controllerai-triggers/SKILL.md +13 -7
  43. package/skills/controllerai-triggers/references/lifecycle.md +5 -3
  44. package/skills/controllerai-workflows/SKILL.md +16 -10
  45. package/skills/controllerai-workflows/references/command-map.md +21 -6
  46. package/skills/manifest.json +79 -73
@@ -8,94 +8,215 @@ const parseLimit = (raw) => {
8
8
  }
9
9
  return limit;
10
10
  };
11
- const paginationRows = (pagination) => pagination?.nextCursor
12
- ? [
13
- ['more', 'yes'],
14
- ['next cursor', pagination.nextCursor],
15
- ]
16
- : [['more', 'no']];
11
+ const normalizeIntegration = (row) => ({
12
+ slug: row.slug,
13
+ name: row.name,
14
+ publishesActions: Number(row.actionsCount ?? 0) > 0,
15
+ publishesEvents: Number(row.eventsCount ?? 0) > 0,
16
+ });
17
+ const normalizedPropNames = (props) => (Array.isArray(props) ? props : [])
18
+ .filter(prop => !prop.hidden && typeof prop.name === 'string' && prop.name)
19
+ .map(prop => prop.name)
20
+ .slice(0, 15);
21
+ const normalizedAction = (action) => ({
22
+ nodeSlug: action.nodeSlug,
23
+ key: action.key,
24
+ name: action.name,
25
+ description: action.description ?? null,
26
+ propNames: normalizedPropNames(action.props),
27
+ authRequired: action.nodeAuthRequired === true,
28
+ usesMeteredUsage: action.nodeUsesMeteredUsage === true,
29
+ usagePricingDescription: action.usagePricingDescription ?? null,
30
+ });
31
+ const normalizedStaticProps = (props) => (Array.isArray(props) ? props : [])
32
+ .filter(prop => !prop.hidden)
33
+ .map(prop => ({
34
+ name: prop.name ?? '',
35
+ displayName: prop.displayName ?? prop.name ?? '',
36
+ description: prop.description ?? '',
37
+ inputType: prop.inputType ?? '',
38
+ required: prop.required === true,
39
+ ...(prop.defaultValue !== undefined ? { defaultValue: prop.defaultValue } : {}),
40
+ ...(prop.remoteOptions ? { remoteOptions: true } : {}),
41
+ ...(prop.reloadProps ? { reloadProps: true } : {}),
42
+ ...(prop.allowsExpressionMode ? { allowsExpressionMode: true } : {}),
43
+ ...(Array.isArray(prop.options)
44
+ ? {
45
+ options: prop.options.slice(0, 25),
46
+ ...(prop.options.length > 25 ? { moreOptionsCount: prop.options.length - 25 } : {}),
47
+ }
48
+ : {}),
49
+ }));
50
+ const searchKind = (opts) => {
51
+ if (opts.actions && opts.events) {
52
+ throw userError('Pass at most one of --actions or --events.', 'CONFLICTING_KIND');
53
+ }
54
+ return opts.actions ? 'actions' : opts.events ? 'events' : 'all';
55
+ };
17
56
  /**
18
- * Discover ready actions without creating or selecting a workflow. The REST
19
- * catalog is account-level; only the provider-backed integrations accepted by
20
- * direct agent grants are offered here, while the public command vocabulary
21
- * remains vendor-neutral.
57
+ * Integration discovery is account-level. Native registry nodes and provider
58
+ * integrations share the same ranked catalog route, so one read returns their
59
+ * union; the slug map is a defensive guard against duplicate catalog rows.
22
60
  */
23
61
  export const registerIntegration = (program) => {
24
62
  const integration = program
25
63
  .command('integration')
26
- .description('Discover ready integration actions that agents can use directly');
64
+ .description('Discover integrations and the actions they publish');
27
65
  integration
28
66
  .command('search')
29
- .argument('<query>', 'integration or capability to find')
30
- .option('--limit <n>', 'maximum catalog rows to inspect', '20')
31
- .option('--after <cursor>', 'continue from a returned catalog cursor')
32
- .description('Search integrations with ready actions; no workflow context is required')
67
+ .argument('<query>', 'integration, native node, or capability to find')
68
+ .option('--actions', 'only integrations that publish actions')
69
+ .option('--events', 'only integrations that publish trigger events')
70
+ .option('--limit <n>', 'maximum ranked integrations to return', '20')
71
+ .description('Search provider integrations and native registry nodes in one ranked list')
33
72
  .action(async (query, opts, command) => {
34
73
  const { api } = buildClient(command);
74
+ const kind = searchKind(opts);
35
75
  const page = await api.rest('/nodes/list', {
36
76
  method: 'POST',
37
77
  body: {
38
78
  query,
39
- hasActions: true,
40
79
  limit: parseLimit(opts.limit),
41
- ...(opts.after ? { after: opts.after } : {}),
80
+ ...(kind === 'actions' ? { hasActions: true } : {}),
81
+ ...(kind === 'events' ? { hasEvents: true } : {}),
42
82
  },
43
83
  });
44
- const rows = (page?.data ?? [])
45
- .filter(row => row.source === 'pipedream')
46
- .map(({ source: _source, ...row }) => row);
47
- const payload = { integrations: rows, pagination: page?.pagination ?? null };
84
+ const bySlug = new Map();
85
+ for (const row of page?.data ?? []) {
86
+ if (!row?.slug || bySlug.has(row.slug))
87
+ continue;
88
+ bySlug.set(row.slug, normalizeIntegration(row));
89
+ }
90
+ const items = [...bySlug.values()];
91
+ const payload = {
92
+ query,
93
+ kind,
94
+ items,
95
+ hasMore: page?.pagination?.hasMore === true,
96
+ };
48
97
  emit(payload, () => {
49
- printTable(['slug', 'name', 'actions', 'auth', 'metered', 'description'], rows.map(row => [
98
+ printTable(['slug', 'name', 'actions', 'events'], items.map(row => [
50
99
  row.slug,
51
100
  row.name,
52
- row.actionsCount ?? '-',
53
- row.authRequired ? 'yes' : 'no',
54
- row.usesMeteredUsage ? 'yes' : 'no',
55
- truncate(row.description ?? '', 72),
101
+ row.publishesActions ? 'yes' : 'no',
102
+ row.publishesEvents ? 'yes' : 'no',
56
103
  ]));
57
- if (!rows.length) {
58
- process.stderr.write('\nNo ready integrations in this page. Refine the query or continue with --after ' +
59
- 'when a next cursor is shown.\n');
104
+ if (!items.length)
105
+ process.stderr.write('\nNo integrations matched this query.\n');
106
+ if (payload.hasMore) {
107
+ process.stderr.write('\nMore ranked matches exist; narrow the query or raise --limit.\n');
60
108
  }
61
- process.stdout.write('\npagination\n');
62
- printKeyValues(paginationRows(page?.pagination));
63
109
  });
64
110
  });
65
111
  integration
66
112
  .command('actions')
67
- .argument('<integration>', 'exact integration slug returned by `cai integration search`')
68
- .option('--search <query>', 'filter actions by capability or name')
69
- .option('--limit <n>', 'maximum actions to return', '50')
70
- .option('--after <cursor>', 'continue from a returned action cursor')
71
- .description('List ready actions for one integration; no workflow context is required')
72
- .action(async (nodeSlug, opts, command) => {
113
+ .argument('[query]', 'action intent to rank across one or all integrations')
114
+ .option('--integration <slug>', 'restrict results to one exact integration slug')
115
+ .option('--limit <n>', 'maximum ranked actions to return', '50')
116
+ .description('List one integration’s actions or search exact action pairs across the catalog')
117
+ .action(async (query, opts, command) => {
73
118
  const { api } = buildClient(command);
119
+ const selectedIntegration = String(opts.integration ?? '').trim();
120
+ const selectedQuery = String(query ?? '').trim();
121
+ if (!selectedIntegration && !selectedQuery) {
122
+ throw userError('Pass --integration <slug>, an action query, or both.', 'MISSING_ACTION_FILTER');
123
+ }
74
124
  const page = await api.rest('/nodes/components/list', {
75
125
  method: 'POST',
76
126
  body: {
77
- nodeSlug,
78
127
  type: 'action',
128
+ includeProps: true,
79
129
  limit: parseLimit(opts.limit),
80
- ...(opts.search ? { query: opts.search } : {}),
81
- ...(opts.after ? { after: opts.after } : {}),
130
+ ...(selectedIntegration ? { nodeSlug: selectedIntegration } : {}),
131
+ ...(selectedQuery ? { query: selectedQuery } : {}),
82
132
  },
83
133
  });
84
- const rows = page?.data ?? [];
85
- const payload = { integration: nodeSlug, actions: rows, pagination: page?.pagination ?? null };
134
+ const byPair = new Map();
135
+ for (const row of page?.data ?? []) {
136
+ if (!row?.nodeSlug || !row?.key)
137
+ continue;
138
+ const pair = `${row.nodeSlug}\u0000${row.key}`;
139
+ if (!byPair.has(pair))
140
+ byPair.set(pair, normalizedAction(row));
141
+ }
142
+ const items = [...byPair.values()];
143
+ const payload = {
144
+ integration: selectedIntegration || null,
145
+ query: selectedQuery || null,
146
+ items,
147
+ hasMore: page?.pagination?.hasMore === true,
148
+ };
86
149
  emit(payload, () => {
87
- printTable(['key', 'action', 'auth', 'metered', 'pricing', 'description'], rows.map(row => [
150
+ printTable(['nodeSlug', 'key', 'action', 'auth', 'metered', 'pricing', 'description'], items.map(row => [
151
+ row.nodeSlug,
88
152
  row.key,
89
153
  row.name,
90
- row.nodeAuthRequired ? 'yes' : 'no',
91
- row.nodeUsesMeteredUsage ? 'yes' : 'no',
154
+ row.authRequired ? 'yes' : 'no',
155
+ row.usesMeteredUsage ? 'yes' : 'no',
92
156
  row.usagePricingDescription ?? '-',
93
157
  truncate(row.description ?? '', 72),
94
158
  ]));
95
- if (!rows.length)
96
- process.stderr.write('\nNo ready actions matched this integration.\n');
97
- process.stdout.write('\npagination\n');
98
- printKeyValues(paginationRows(page?.pagination));
159
+ if (!items.length)
160
+ process.stderr.write('\nNo integration actions matched.\n');
161
+ if (payload.hasMore) {
162
+ process.stderr.write('\nMore ranked actions exist; narrow the query or raise --limit.\n');
163
+ }
164
+ });
165
+ });
166
+ integration
167
+ .command('action')
168
+ .requiredOption('--integration <slug>', 'exact integration slug')
169
+ .requiredOption('--key <key>', 'exact action key paired with that integration')
170
+ .description('Read the full static prop schema of one action before adding or attaching it')
171
+ .action(async (opts, command) => {
172
+ const { api } = buildClient(command);
173
+ const raw = await api.rest('/nodes/component/get', {
174
+ method: 'POST',
175
+ body: { nodeSlug: opts.integration, key: opts.key },
176
+ });
177
+ const component = raw?.component ?? {};
178
+ const props = normalizedStaticProps(component.props);
179
+ const data = {
180
+ node: {
181
+ slug: raw?.node?.slug ?? opts.integration,
182
+ name: raw?.node?.name ?? opts.integration,
183
+ authRequired: raw?.node?.authRequired === true,
184
+ },
185
+ component: {
186
+ key: component.key ?? opts.key,
187
+ name: component.name ?? opts.key,
188
+ description: component.description ?? null,
189
+ type: component.type ?? null,
190
+ outputDataType: component.outputDataType ?? null,
191
+ },
192
+ props,
193
+ ...(props.length === 0
194
+ ? {
195
+ note: 'No static props are stored for this action. It may need no configuration, or ' +
196
+ 'dynamic props may appear only after it is added; inspect the live node props then.',
197
+ }
198
+ : {}),
199
+ };
200
+ emit(data, () => {
201
+ printKeyValues([
202
+ ['key', data.component.key],
203
+ ['name', data.component.name],
204
+ [
205
+ 'integration',
206
+ `${data.node.slug}${data.node.authRequired ? ' (auth required)' : ''}`,
207
+ ],
208
+ ['outputType', data.component.outputDataType ?? '(unresolved)'],
209
+ ['description', truncate(data.component.description ?? '', 70)],
210
+ ]);
211
+ process.stdout.write('\nprops\n');
212
+ printTable(['name', 'inputType', 'required', 'default', 'remoteOptions', 'reloadProps'], props.map(prop => [
213
+ prop.name,
214
+ prop.inputType,
215
+ prop.required ? 'yes' : '',
216
+ truncate(prop.defaultValue, 24),
217
+ prop.remoteOptions ? 'yes — pick after adding the node' : '',
218
+ prop.reloadProps ? 'yes — reveals dependent props after adding' : '',
219
+ ]));
99
220
  });
100
221
  });
101
222
  };
@@ -1 +1 @@
1
- {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/commands/integration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/commands/integration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAqDzE,MAAM,UAAU,GAAG,CAAC,GAAW,EAAU,EAAE;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACzB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;QAC1D,MAAM,SAAS,CAAC,yDAAyD,EAAE,WAAW,CAAC,CAAA;IACzF,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,CAAC;IACzD,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,IAAI,EAAE,GAAG,CAAC,IAAI;IACd,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC;IACnD,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC;CAClD,CAAC,CAAA;AAEF,MAAM,mBAAmB,GAAG,CAAC,KAAuC,EAAY,EAAE,CAChF,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC;KAC1E,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAc,CAAC;KAChC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAEjB,MAAM,gBAAgB,GAAG,CAAC,MAAqB,EAAE,EAAE,CAAC,CAAC;IACnD,QAAQ,EAAE,MAAM,CAAC,QAAQ;IACzB,GAAG,EAAE,MAAM,CAAC,GAAG;IACf,IAAI,EAAE,MAAM,CAAC,IAAI;IACjB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;IACvC,SAAS,EAAE,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC;IAC5C,YAAY,EAAE,MAAM,CAAC,gBAAgB,KAAK,IAAI;IAC9C,gBAAgB,EAAE,MAAM,CAAC,oBAAoB,KAAK,IAAI;IACtD,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,IAAI,IAAI;CAChE,CAAC,CAAA;AAEF,MAAM,qBAAqB,GAAG,CAAC,KAAuC,EAAE,EAAE,CACxE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;KAC5B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;IACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE;IAChD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;IACnC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;IAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI;IAChC,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,CAAC,CAAC;YACE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpF;QACH,CAAC,CAAC,EAAE,CAAC;CACR,CAAC,CAAC,CAAA;AAEP,MAAM,UAAU,GAAG,CAAC,IAA6C,EAAgC,EAAE;IACjG,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,SAAS,CAAC,4CAA4C,EAAE,kBAAkB,CAAC,CAAA;IACnF,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;AAClE,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAQ,EAAE;IAC5D,MAAM,WAAW,GAAG,OAAO;SACxB,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,oDAAoD,CAAC,CAAA;IAEpE,WAAW;SACR,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,SAAS,EAAE,iDAAiD,CAAC;SACtE,MAAM,CAAC,WAAW,EAAE,wCAAwC,CAAC;SAC7D,MAAM,CAAC,UAAU,EAAE,+CAA+C,CAAC;SACnE,MAAM,CAAC,aAAa,EAAE,uCAAuC,EAAE,IAAI,CAAC;SACpE,WAAW,CAAC,2EAA2E,CAAC;SACxF,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,IAAI,EAAE,OAAgB,EAAE,EAAE;QACtD,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAkC,aAAa,EAAE;YAC1E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,KAAK;gBACL,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC7B,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD;SACF,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmD,CAAA;QACzE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAQ;YAChD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG;YACd,KAAK;YACL,IAAI;YACJ,KAAK;YACL,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI;SAC5C,CAAA;QACD,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACjB,UAAU,CACR,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,EACrC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACf,GAAG,CAAC,IAAI;gBACR,GAAG,CAAC,IAAI;gBACR,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBACnC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;aACnC,CAAC,CACH,CAAA;YACD,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;YAClF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAA;YAC3F,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,WAAW;SACR,OAAO,CAAC,SAAS,CAAC;SAClB,QAAQ,CAAC,SAAS,EAAE,sDAAsD,CAAC;SAC3E,MAAM,CAAC,sBAAsB,EAAE,gDAAgD,CAAC;SAChF,MAAM,CAAC,aAAa,EAAE,kCAAkC,EAAE,IAAI,CAAC;SAC/D,WAAW,CAAC,gFAAgF,CAAC;SAC7F,MAAM,CAAC,KAAK,EAAE,KAAyB,EAAE,IAAI,EAAE,OAAgB,EAAE,EAAE;QAClE,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACjE,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QAChD,IAAI,CAAC,mBAAmB,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3C,MAAM,SAAS,CACb,sDAAsD,EACtD,uBAAuB,CACxB,CAAA;QACH,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAA6B,wBAAwB,EAAE;YAChF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC7B,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnD;SACF,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,IAAI,GAAG,EAA+C,CAAA;QACrE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,GAAG;gBAAE,SAAQ;YACzC,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,QAAQ,SAAS,GAAG,CAAC,GAAG,EAAE,CAAA;YAC9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;QAChE,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG;YACd,WAAW,EAAE,mBAAmB,IAAI,IAAI;YACxC,KAAK,EAAE,aAAa,IAAI,IAAI;YAC5B,KAAK;YACL,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI;SAC5C,CAAA;QACD,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACjB,UAAU,CACR,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,EAC1E,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACf,GAAG,CAAC,QAAQ;gBACZ,GAAG,CAAC,GAAG;gBACP,GAAG,CAAC,IAAI;gBACR,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBAC/B,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBACnC,GAAG,CAAC,uBAAuB,IAAI,GAAG;gBAClC,QAAQ,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,EAAE,EAAE,CAAC;aACpC,CAAC,CACH,CAAA;YACD,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;YAC9E,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAA;YAC3F,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,WAAW;SACR,OAAO,CAAC,QAAQ,CAAC;SACjB,cAAc,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;SAChE,cAAc,CAAC,aAAa,EAAE,+CAA+C,CAAC;SAC9E,WAAW,CAAC,8EAA8E,CAAC;SAC3F,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAgB,EAAE,EAAE;QACvC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAuB,sBAAsB,EAAE;YACvE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SACpD,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAK,EAAqD,CAAA;QAC1F,MAAM,KAAK,GAAG,qBAAqB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACpD,MAAM,IAAI,GAAG;YACX,IAAI,EAAE;gBACJ,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,WAAW;gBACzC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,WAAW;gBACzC,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI;aAC/C;YACD,SAAS,EAAE;gBACT,GAAG,EAAE,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG;gBAC9B,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG;gBAChC,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,IAAI;gBAC1C,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,IAAI;gBAC5B,cAAc,EAAE,SAAS,CAAC,cAAc,IAAI,IAAI;aACjD;YACD,KAAK;YACL,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBACpB,CAAC,CAAC;oBACE,IAAI,EACF,+EAA+E;wBAC/E,oFAAoF;iBACvF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAA;QACD,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;YACd,cAAc,CAAC;gBACb,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBAC3B,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC7B;oBACE,aAAa;oBACb,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE;iBACvE;gBACD,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,cAAc,CAAC;gBAC/D,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aAChE,CAAC,CAAA;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;YACjC,UAAU,CACR,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,CAAC,EAC5E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChB,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,SAAS;gBACd,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;gBAC1B,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC/B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,EAAE;gBAC5D,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE;aACrE,CAAC,CACH,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}