@nordsym/apiclaw 1.3.7 → 1.3.8

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 (189) hide show
  1. package/README.md +420 -200
  2. package/convex/_generated/api.d.ts +4 -0
  3. package/convex/agents.ts +403 -0
  4. package/convex/directCall.ts +80 -0
  5. package/convex/earnProgress.ts +753 -0
  6. package/convex/logs.ts +17 -0
  7. package/convex/providerKeys.ts +82 -2
  8. package/convex/schema.ts +71 -2
  9. package/convex/workspaces.ts +84 -2
  10. package/dist/adapters/base.d.ts +112 -0
  11. package/dist/adapters/base.d.ts.map +1 -0
  12. package/dist/adapters/base.js +247 -0
  13. package/dist/adapters/base.js.map +1 -0
  14. package/dist/adapters/claude-desktop.d.ts +12 -0
  15. package/dist/adapters/claude-desktop.d.ts.map +1 -0
  16. package/dist/adapters/claude-desktop.js +36 -0
  17. package/dist/adapters/claude-desktop.js.map +1 -0
  18. package/dist/adapters/cline.d.ts +20 -0
  19. package/dist/adapters/cline.d.ts.map +1 -0
  20. package/dist/adapters/cline.js +77 -0
  21. package/dist/adapters/cline.js.map +1 -0
  22. package/dist/adapters/continue.d.ts +26 -0
  23. package/dist/adapters/continue.d.ts.map +1 -0
  24. package/dist/adapters/continue.js +68 -0
  25. package/dist/adapters/continue.js.map +1 -0
  26. package/dist/adapters/cursor.d.ts +12 -0
  27. package/dist/adapters/cursor.d.ts.map +1 -0
  28. package/dist/adapters/cursor.js +38 -0
  29. package/dist/adapters/cursor.js.map +1 -0
  30. package/dist/adapters/custom.d.ts +47 -0
  31. package/dist/adapters/custom.d.ts.map +1 -0
  32. package/dist/adapters/custom.js +146 -0
  33. package/dist/adapters/custom.js.map +1 -0
  34. package/dist/adapters/detect.d.ts +69 -0
  35. package/dist/adapters/detect.d.ts.map +1 -0
  36. package/dist/adapters/detect.js +158 -0
  37. package/dist/adapters/detect.js.map +1 -0
  38. package/dist/adapters/index.d.ts +21 -0
  39. package/dist/adapters/index.d.ts.map +1 -0
  40. package/dist/adapters/index.js +23 -0
  41. package/dist/adapters/index.js.map +1 -0
  42. package/dist/adapters/windsurf.d.ts +12 -0
  43. package/dist/adapters/windsurf.d.ts.map +1 -0
  44. package/dist/adapters/windsurf.js +39 -0
  45. package/dist/adapters/windsurf.js.map +1 -0
  46. package/dist/bin.d.ts +9 -0
  47. package/dist/bin.d.ts.map +1 -0
  48. package/dist/bin.js +19 -0
  49. package/dist/bin.js.map +1 -0
  50. package/dist/cli/commands/doctor.d.ts +34 -0
  51. package/dist/cli/commands/doctor.d.ts.map +1 -0
  52. package/dist/cli/commands/doctor.js +312 -0
  53. package/dist/cli/commands/doctor.js.map +1 -0
  54. package/dist/cli/commands/index.d.ts +9 -0
  55. package/dist/cli/commands/index.d.ts.map +1 -0
  56. package/dist/cli/commands/index.js +9 -0
  57. package/dist/cli/commands/index.js.map +1 -0
  58. package/dist/cli/commands/restore.d.ts +50 -0
  59. package/dist/cli/commands/restore.d.ts.map +1 -0
  60. package/dist/cli/commands/restore.js +260 -0
  61. package/dist/cli/commands/restore.js.map +1 -0
  62. package/dist/cli/commands/setup.d.ts +19 -0
  63. package/dist/cli/commands/setup.d.ts.map +1 -0
  64. package/dist/cli/commands/setup.js +206 -0
  65. package/dist/cli/commands/setup.js.map +1 -0
  66. package/dist/cli/commands/uninstall.d.ts +37 -0
  67. package/dist/cli/commands/uninstall.d.ts.map +1 -0
  68. package/dist/cli/commands/uninstall.js +189 -0
  69. package/dist/cli/commands/uninstall.js.map +1 -0
  70. package/dist/cli/index.d.ts +7 -0
  71. package/dist/cli/index.d.ts.map +1 -0
  72. package/dist/cli/index.js +97 -0
  73. package/dist/cli/index.js.map +1 -0
  74. package/dist/discovery.d.ts +6 -2
  75. package/dist/discovery.d.ts.map +1 -1
  76. package/dist/discovery.js +296 -2
  77. package/dist/discovery.js.map +1 -1
  78. package/dist/enterprise/env.d.ts +56 -0
  79. package/dist/enterprise/env.d.ts.map +1 -0
  80. package/dist/enterprise/env.js +124 -0
  81. package/dist/enterprise/env.js.map +1 -0
  82. package/dist/enterprise/index.d.ts +7 -0
  83. package/dist/enterprise/index.d.ts.map +1 -0
  84. package/dist/enterprise/index.js +7 -0
  85. package/dist/enterprise/index.js.map +1 -0
  86. package/dist/enterprise/script-generator.d.ts +32 -0
  87. package/dist/enterprise/script-generator.d.ts.map +1 -0
  88. package/dist/enterprise/script-generator.js +461 -0
  89. package/dist/enterprise/script-generator.js.map +1 -0
  90. package/dist/execute.d.ts +21 -0
  91. package/dist/execute.d.ts.map +1 -1
  92. package/dist/execute.js +231 -0
  93. package/dist/execute.js.map +1 -1
  94. package/dist/index.js +79 -7
  95. package/dist/index.js.map +1 -1
  96. package/dist/stripe.d.ts +1 -1
  97. package/dist/stripe.js +1 -1
  98. package/dist/stripe.js.map +1 -1
  99. package/dist/types.d.ts +29 -0
  100. package/dist/types.d.ts.map +1 -1
  101. package/dist/ui/colors.d.ts +111 -0
  102. package/dist/ui/colors.d.ts.map +1 -0
  103. package/dist/ui/colors.js +185 -0
  104. package/dist/ui/colors.js.map +1 -0
  105. package/dist/ui/errors.d.ts +69 -0
  106. package/dist/ui/errors.d.ts.map +1 -0
  107. package/dist/ui/errors.js +334 -0
  108. package/dist/ui/errors.js.map +1 -0
  109. package/dist/ui/index.d.ts +10 -0
  110. package/dist/ui/index.d.ts.map +1 -0
  111. package/dist/ui/index.js +14 -0
  112. package/dist/ui/index.js.map +1 -0
  113. package/dist/ui/prompts.d.ts +88 -0
  114. package/dist/ui/prompts.d.ts.map +1 -0
  115. package/dist/ui/prompts.js +295 -0
  116. package/dist/ui/prompts.js.map +1 -0
  117. package/dist/ui/spinner.d.ts +112 -0
  118. package/dist/ui/spinner.d.ts.map +1 -0
  119. package/dist/ui/spinner.js +229 -0
  120. package/dist/ui/spinner.js.map +1 -0
  121. package/dist/utils/backup.d.ts +48 -0
  122. package/dist/utils/backup.d.ts.map +1 -0
  123. package/dist/utils/backup.js +182 -0
  124. package/dist/utils/backup.js.map +1 -0
  125. package/dist/utils/config.d.ts +80 -0
  126. package/dist/utils/config.d.ts.map +1 -0
  127. package/dist/utils/config.js +221 -0
  128. package/dist/utils/config.js.map +1 -0
  129. package/dist/utils/os.d.ts +45 -0
  130. package/dist/utils/os.d.ts.map +1 -0
  131. package/dist/utils/os.js +106 -0
  132. package/dist/utils/os.js.map +1 -0
  133. package/dist/utils/paths.d.ts +38 -0
  134. package/dist/utils/paths.d.ts.map +1 -0
  135. package/dist/utils/paths.js +160 -0
  136. package/dist/utils/paths.js.map +1 -0
  137. package/docs/PRD-BILLING.md +226 -0
  138. package/docs/PRD-EARN-SYSTEM.md +261 -0
  139. package/docs/PRD-MCP-AUTO-SETUP.md +623 -0
  140. package/docs/enterprise-deployment.md +728 -0
  141. package/landing/next.config.mjs +14 -0
  142. package/landing/public/stats.json +4 -2
  143. package/landing/scripts/generate-stats.js +12 -0
  144. package/landing/src/app/api/workspace-auth/magic-link/route.ts +6 -3
  145. package/landing/src/app/auth/verify/page.tsx +11 -4
  146. package/landing/src/app/docs/page.tsx +1 -1
  147. package/landing/src/app/join/page.tsx +49 -0
  148. package/landing/src/app/login/page.tsx +7 -1
  149. package/landing/src/app/page.tsx +13 -28
  150. package/landing/src/app/providers/register/page.tsx +1 -1
  151. package/landing/src/app/workspace/page.tsx +483 -710
  152. package/landing/src/components/CheckoutButton.tsx +1 -1
  153. package/landing/src/components/EarnCreditsTab.tsx +842 -0
  154. package/landing/src/lib/stats.json +3 -1
  155. package/package.json +9 -2
  156. package/src/adapters/base.ts +363 -0
  157. package/src/adapters/claude-desktop.ts +41 -0
  158. package/src/adapters/cline.ts +88 -0
  159. package/src/adapters/continue.ts +91 -0
  160. package/src/adapters/cursor.ts +43 -0
  161. package/src/adapters/custom.ts +188 -0
  162. package/src/adapters/detect.ts +202 -0
  163. package/src/adapters/index.ts +47 -0
  164. package/src/adapters/windsurf.ts +44 -0
  165. package/src/bin.ts +19 -0
  166. package/src/cli/commands/doctor.ts +367 -0
  167. package/src/cli/commands/index.ts +9 -0
  168. package/src/cli/commands/restore.ts +333 -0
  169. package/src/cli/commands/setup.ts +276 -0
  170. package/src/cli/commands/uninstall.ts +240 -0
  171. package/src/cli/index.ts +107 -0
  172. package/src/discovery.ts +328 -3
  173. package/src/enterprise/env.ts +156 -0
  174. package/src/enterprise/index.ts +7 -0
  175. package/src/enterprise/script-generator.ts +481 -0
  176. package/src/execute.ts +256 -0
  177. package/src/index.ts +85 -7
  178. package/src/stripe.ts +1 -1
  179. package/src/types.ts +32 -0
  180. package/src/ui/colors.ts +219 -0
  181. package/src/ui/errors.ts +394 -0
  182. package/src/ui/index.ts +17 -0
  183. package/src/ui/prompts.ts +390 -0
  184. package/src/ui/spinner.ts +325 -0
  185. package/src/utils/backup.ts +224 -0
  186. package/src/utils/config.ts +315 -0
  187. package/src/utils/os.ts +124 -0
  188. package/src/utils/paths.ts +203 -0
  189. package/landing/tsconfig.tsbuildinfo +0 -1
package/dist/execute.js CHANGED
@@ -4,6 +4,237 @@
4
4
  import { getCredentials } from './credentials.js';
5
5
  import { callProxy, PROXY_PROVIDERS } from './proxy.js';
6
6
  import { executeDynamicAction, hasDynamicConfig, listDynamicActions } from './execute-dynamic.js';
7
+ // Mock response generators for dry-run mode
8
+ const mockResponses = {
9
+ '46elks': {
10
+ send_sms: (params) => ({
11
+ id: 'mock_sms_' + Date.now(),
12
+ to: params.to,
13
+ from: params.from || 'APIClaw',
14
+ message: params.message,
15
+ status: 'delivered',
16
+ cost: 5200, // ~0.52 SEK in microöre
17
+ }),
18
+ },
19
+ twilio: {
20
+ send_sms: (params) => ({
21
+ sid: 'SMmock' + Date.now(),
22
+ to: params.to,
23
+ from: params.from || '+15017122661',
24
+ body: params.message,
25
+ status: 'queued',
26
+ }),
27
+ },
28
+ brave_search: {
29
+ search: (params) => ({
30
+ query: params.query,
31
+ results: [
32
+ { title: 'Mock Result 1', url: 'https://example.com/1', description: 'This is a mock search result for dry-run testing.' },
33
+ { title: 'Mock Result 2', url: 'https://example.com/2', description: 'Another mock result to simulate search.' },
34
+ ],
35
+ total: 2,
36
+ }),
37
+ },
38
+ resend: {
39
+ send_email: (params) => ({
40
+ id: 'mock_email_' + Date.now(),
41
+ to: params.to,
42
+ from: params.from || 'APIClaw <noreply@apiclaw.nordsym.com>',
43
+ subject: params.subject,
44
+ status: 'sent',
45
+ }),
46
+ },
47
+ openrouter: {
48
+ chat: (params) => ({
49
+ content: '[DRY-RUN] This is a mock response. In production, this would be generated by ' + (params.model || 'anthropic/claude-3-haiku'),
50
+ model: params.model || 'anthropic/claude-3-haiku',
51
+ usage: { prompt_tokens: 10, completion_tokens: 20, total_tokens: 30 },
52
+ }),
53
+ },
54
+ elevenlabs: {
55
+ text_to_speech: (params) => ({
56
+ audio_base64: 'W0RSWV9SVU5fTU9DS19BVURJT10=', // "[DRY_RUN_MOCK_AUDIO]" in base64
57
+ format: 'mp3',
58
+ text_length: params.text?.length || 0,
59
+ }),
60
+ },
61
+ replicate: {
62
+ run: (params) => ({
63
+ status: 'succeeded',
64
+ output: ['https://example.com/mock-image.png'],
65
+ model: params.model,
66
+ metrics: { predict_time: 2.5 },
67
+ }),
68
+ list_models: () => ({
69
+ models: [
70
+ { name: 'stability-ai/sdxl', description: 'Mock model listing' },
71
+ ],
72
+ message: 'DRY-RUN: Would list available models',
73
+ }),
74
+ },
75
+ firecrawl: {
76
+ scrape: (params) => ({
77
+ markdown: `# Mock Scrape of ${params.url}\n\nThis is a dry-run mock of scraped content.`,
78
+ metadata: { title: 'Mock Page', url: params.url },
79
+ }),
80
+ crawl: (params) => ({
81
+ id: 'crawl_mock_' + Date.now(),
82
+ status: 'started',
83
+ message: 'DRY-RUN: Crawl job would be started',
84
+ }),
85
+ map: (params) => ({
86
+ links: ['https://example.com/page1', 'https://example.com/page2'],
87
+ }),
88
+ },
89
+ github: {
90
+ search_repos: (params) => ({
91
+ total: 2,
92
+ repos: [
93
+ { name: 'mock/repo', description: 'Mock repository', stars: 100, url: 'https://github.com/mock/repo', language: 'TypeScript' },
94
+ ],
95
+ }),
96
+ get_repo: (params) => ({
97
+ name: `${params.owner}/${params.repo}`,
98
+ description: 'Mock repository details',
99
+ stars: 100,
100
+ forks: 10,
101
+ language: 'TypeScript',
102
+ url: `https://github.com/${params.owner}/${params.repo}`,
103
+ }),
104
+ list_issues: () => ({
105
+ issues: [{ number: 1, title: 'Mock Issue', state: 'open', user: 'mock-user' }],
106
+ }),
107
+ create_issue: (params) => ({
108
+ number: 1,
109
+ url: `https://github.com/${params.owner}/${params.repo}/issues/1`,
110
+ }),
111
+ get_file: (params) => ({
112
+ name: params.path.split('/').pop(),
113
+ path: params.path,
114
+ size: 100,
115
+ content: '// Mock file content for dry-run',
116
+ }),
117
+ },
118
+ e2b: {
119
+ run_code: (params) => ({
120
+ text: 'DRY-RUN: Code would execute: ' + (params.code?.substring(0, 50) || ''),
121
+ logs: { stdout: [], stderr: [] },
122
+ results: [],
123
+ }),
124
+ run_shell: (params) => ({
125
+ stdout: 'DRY-RUN: Would run: ' + params.command,
126
+ stderr: '',
127
+ exitCode: 0,
128
+ }),
129
+ },
130
+ };
131
+ // API endpoint info for dry-run
132
+ const apiEndpoints = {
133
+ '46elks': {
134
+ send_sms: { url: 'https://api.46elks.com/a1/sms', method: 'POST', estimatedCost: '~0.35-0.52 SEK' },
135
+ },
136
+ twilio: {
137
+ send_sms: { url: 'https://api.twilio.com/2010-04-01/Accounts/{accountSid}/Messages.json', method: 'POST', estimatedCost: '~$0.0079/SMS' },
138
+ },
139
+ brave_search: {
140
+ search: { url: 'https://api.search.brave.com/res/v1/web/search', method: 'GET' },
141
+ },
142
+ resend: {
143
+ send_email: { url: 'https://api.resend.com/emails', method: 'POST' },
144
+ },
145
+ openrouter: {
146
+ chat: { url: 'https://openrouter.ai/api/v1/chat/completions', method: 'POST', estimatedCost: 'varies by model' },
147
+ },
148
+ elevenlabs: {
149
+ text_to_speech: { url: 'https://api.elevenlabs.io/v1/text-to-speech/{voice_id}', method: 'POST', estimatedCost: '~$0.30/1000 chars' },
150
+ },
151
+ replicate: {
152
+ run: { url: 'https://api.replicate.com/v1/predictions', method: 'POST', estimatedCost: 'varies by model' },
153
+ list_models: { url: 'https://api.replicate.com/v1/models', method: 'GET' },
154
+ },
155
+ firecrawl: {
156
+ scrape: { url: 'https://api.firecrawl.dev/v1/scrape', method: 'POST' },
157
+ crawl: { url: 'https://api.firecrawl.dev/v1/crawl', method: 'POST' },
158
+ map: { url: 'https://api.firecrawl.dev/v1/map', method: 'POST' },
159
+ },
160
+ github: {
161
+ search_repos: { url: 'https://api.github.com/search/repositories', method: 'GET' },
162
+ get_repo: { url: 'https://api.github.com/repos/{owner}/{repo}', method: 'GET' },
163
+ list_issues: { url: 'https://api.github.com/repos/{owner}/{repo}/issues', method: 'GET' },
164
+ create_issue: { url: 'https://api.github.com/repos/{owner}/{repo}/issues', method: 'POST' },
165
+ get_file: { url: 'https://api.github.com/repos/{owner}/{repo}/contents/{path}', method: 'GET' },
166
+ },
167
+ e2b: {
168
+ run_code: { url: 'https://api.e2b.dev/v1/sandboxes', method: 'POST' },
169
+ run_shell: { url: 'https://api.e2b.dev/v1/sandboxes', method: 'POST' },
170
+ },
171
+ };
172
+ /**
173
+ * Generate a dry-run result showing what would be sent without making actual API calls
174
+ */
175
+ export function generateDryRun(providerId, action, params) {
176
+ const endpoint = apiEndpoints[providerId]?.[action] || { url: 'unknown', method: 'POST' };
177
+ const mockGen = mockResponses[providerId]?.[action];
178
+ const mockData = mockGen ? mockGen(params) : { message: 'Mock response for ' + action };
179
+ // Build what would be sent
180
+ const headers = {
181
+ 'Content-Type': 'application/json',
182
+ };
183
+ // Add auth header hints
184
+ if (['46elks', 'twilio'].includes(providerId)) {
185
+ headers['Authorization'] = 'Basic [base64(username:password)]';
186
+ }
187
+ else if (['brave_search'].includes(providerId)) {
188
+ headers['X-Subscription-Token'] = '[API_KEY]';
189
+ }
190
+ else if (['resend', 'openrouter', 'replicate', 'firecrawl'].includes(providerId)) {
191
+ headers['Authorization'] = 'Bearer [API_KEY]';
192
+ }
193
+ else if (providerId === 'elevenlabs') {
194
+ headers['xi-api-key'] = '[API_KEY]';
195
+ }
196
+ else if (providerId === 'github') {
197
+ headers['Authorization'] = 'Bearer [GITHUB_TOKEN]';
198
+ headers['User-Agent'] = 'APIClaw';
199
+ }
200
+ // Determine body based on method
201
+ let body = undefined;
202
+ if (endpoint.method === 'POST') {
203
+ if (providerId === '46elks') {
204
+ body = { from: params.from || 'APIClaw', to: params.to, message: params.message };
205
+ }
206
+ else if (providerId === 'twilio') {
207
+ body = { From: params.from, To: params.to, Body: params.message };
208
+ }
209
+ else {
210
+ body = params;
211
+ }
212
+ }
213
+ const notes = [
214
+ '⚠️ DRY-RUN MODE: No actual API call was made',
215
+ 'This shows what WOULD be sent if you remove dry_run: true',
216
+ ];
217
+ if (endpoint.estimatedCost) {
218
+ notes.push(`Estimated cost: ${endpoint.estimatedCost}`);
219
+ }
220
+ return {
221
+ dry_run: true,
222
+ provider: providerId,
223
+ action,
224
+ would_send: {
225
+ url: endpoint.url,
226
+ method: endpoint.method,
227
+ headers,
228
+ ...(body ? { body } : {}),
229
+ },
230
+ mock_response: {
231
+ success: true,
232
+ data: mockData,
233
+ ...(endpoint.estimatedCost ? { estimated_cost: endpoint.estimatedCost } : {}),
234
+ },
235
+ notes,
236
+ };
237
+ }
7
238
  // Helper to safely access properties
8
239
  function safeGet(obj, ...keys) {
9
240
  let current = obj;
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAWlG,qCAAqC;AACrC,SAAS,OAAO,CAAC,GAAY,EAAE,GAAG,IAAc;IAC9C,IAAI,OAAO,GAAY,GAAG,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;YAC7D,OAAO,GAAI,OAAmC,CAAC,GAAG,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,2BAA2B;AAC3B,MAAM,QAAQ,GAAwF;IAEpG,6BAA6B;IAC7B,QAAQ,EAAE;QACR,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC;YAEjD,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC;YACnH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEnF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,+BAA+B,EAAE;gBAC5D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,SAAS,IAAI,EAAE;oBAChC,cAAc,EAAE,mCAAmC;iBACpD;gBACD,IAAI,EAAE,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;aACjD,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,YAAY,EAAE,CAAC;YACrH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;gBACnD,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,0BAA0B;aACxE,CAAC;QACJ,CAAC;KACF;IAED,4BAA4B;IAC5B,MAAM,EAAE;QACN,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAErC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC;YACnH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnF,MAAM,UAAU,GAAG,IAAI,IAAI,KAAK,CAAC,WAAW,IAAI,cAAc,CAAC;YAE/D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,8CAA8C,KAAK,CAAC,QAAQ,gBAAgB,EAC5E;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,SAAS,IAAI,EAAE;oBAChC,cAAc,EAAE,mCAAmC;iBACpD;gBACD,IAAI,EAAE,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;aACvE,CACF,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,YAAY,EAAE,CAAC;YACrH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;aAC1D,CAAC;QACJ,CAAC;KACF;IAED,eAAe;IACf,YAAY,EAAE;QACZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC9B,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;YAEpC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;YAChH,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,gDAAgD,CAAC,CAAC;YACtE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACjC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;gBAC3C,OAAO,EAAE,EAAE,sBAAsB,EAAE,KAAK,CAAC,OAAO,EAAE;aACnD,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,eAAe,EAAE,CAAC;YAC5H,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAA0C,CAAC;YAChE,MAAM,UAAU,GAAI,OAAO,EAAE,OAA0C,IAAI,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;YAEJ,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE;aAChD,CAAC;QACJ,CAAC;KACF;IAED,iBAAiB;IACjB,MAAM,EAAE;QACN,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,uCAAuC,EAAE,GAAG,MAAM,CAAC;YAE3F,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC;YACnI,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,+BAA+B,EAAE;gBAC5D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;aACxD,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,cAAc,EAAE,CAAC;YACzH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;aACtB,CAAC;QACJ,CAAC;KACF;IAED,yBAAyB;IACzB,UAAU,EAAE;QACV,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC5B,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,0BAA0B,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;YAEnF,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,0CAA0C,EAAE,CAAC;YACvH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,+CAA+C,EAAE;gBAC5E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,6BAA6B;iBAC9C;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;aACtD,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,IAAI,CAAC,KAA4C,CAAC;gBACpE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAG,SAAS,EAAE,OAAkB,IAAI,aAAa,EAAE,CAAC;YAC5H,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqD,CAAC;YAC3E,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,WAAW,EAAE,OAA8C,CAAC;YAE5E,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,YAAY;gBACtB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,OAAO,EAAE,OAAO,EAAE,OAAO;oBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB;aACF,CAAC;QACJ,CAAC;KACF;IAED,8BAA8B;IAC9B,UAAU,EAAE;QACV,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACtC,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,sBAAsB,EAAE,QAAQ,GAAG,uBAAuB,EAAE,GAAG,MAAM,CAAC;YAE/F,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;YACrH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,+CAA+C,QAAQ,EAAE,EACzD;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,YAAY,EAAE,KAAK,CAAC,OAAO;oBAC3B,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;aACzC,CACF,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAA4B,CAAC;gBACjF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAG,KAAK,CAAC,MAAiB,IAAI,YAAY,EAAE,CAAC;YAC/H,CAAC;YAED,yBAAyB;YACzB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEtD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,YAAY;gBACtB,MAAM,EAAE,gBAAgB;gBACxB,IAAI,EAAE;oBACJ,YAAY,EAAE,MAAM;oBACpB,MAAM,EAAE,KAAK;oBACb,WAAW,EAAE,IAAI,CAAC,MAAM;iBACzB;aACF,CAAC;QACJ,CAAC;KACF;IAED,4DAA4D;IAC5D,SAAS,EAAE;QACT,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;YAEhC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,+DAA+D,EAAE,CAAC;YAC1I,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,0DAA0D,EAAE,CAAC;YACrI,CAAC;YAED,0CAA0C;YAC1C,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE9C,oBAAoB;YACpB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,0CAA0C,EAAE;gBACvE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,OAAO,EAAE,OAAO,IAAI,SAAS;oBAC7B,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACtC,KAAK;iBACN,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAA4B,CAAC;gBACjF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAG,KAAK,CAAC,MAAiB,IAAI,mBAAmB,EAAE,CAAC;YAC1H,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAEpE,uCAAuC;YACvC,IAAI,MAAM,GAAG,UAAU,CAAC;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBACtE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,KAAK,EAAE,CAAC;oBACnC,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,WAAW;wBACrB,MAAM,EAAE,KAAK;wBACb,IAAI,EAAE;4BACJ,MAAM,EAAE,SAAS;4BACjB,aAAa,EAAE,MAAM,CAAC,EAAE;4BACxB,OAAO,EAAE,8DAA8D;4BACvE,IAAI,EAAE,MAAM,CAAC,IAAI;yBAClB;qBACF,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBACxD,MAAM,YAAY,GAAG,MAAM,KAAK,CAAE,MAAM,CAAC,IAA+B,EAAE,GAAG,IAAI,4CAA4C,MAAM,CAAC,EAAE,EAAE,EAAE;oBACxI,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE;iBACxD,CAAC,CAAC;gBACH,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAA6B,CAAC;YAChE,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAG,MAAM,CAAC,KAAgB,IAAI,mBAAmB,EAAE,CAAC;YAC1H,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB;aACF,CAAC;QACJ,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qCAAqC,EAAE;gBAClE,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE;aACxD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;YAC1G,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE;oBACJ,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,OAAO,EAAE,yGAAyG;iBACnH;aACF,CAAC;QACJ,CAAC;KACF;IAED,wCAAwC;IACxC,SAAS,EAAE;QACT,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC;YAE/C,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC;YAC3G,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qCAAqC,EAAE;gBAClE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;aACvC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAG,IAAI,CAAC,KAAgB,IAAI,eAAe,EAAE,CAAC;YACvH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;QACJ,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;YAEnC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC;YAC1G,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,oCAAoC,EAAE;gBACjE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;aACrC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAG,IAAI,CAAC,KAAgB,IAAI,cAAc,EAAE,CAAC;YACrH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0DAA0D,EAAE;aAC9G,CAAC;QACJ,CAAC;QAED,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YAEvB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC;YACxG,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,kCAAkC,EAAE;gBAC/D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;oBAC1C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;aAC9B,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAG,IAAI,CAAC,KAAgB,IAAI,YAAY,EAAE,CAAC;YACjH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;aAC5B,CAAC;QACJ,CAAC;KACF;IAED,wBAAwB;IACxB,MAAM,EAAE;QACN,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;YAErD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;YAChH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gDAAgD,kBAAkB,CAAC,KAAK,CAAC,SAAS,IAAI,aAAa,KAAK,EAAE,EAAE;gBACvI,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE;oBACxC,QAAQ,EAAE,6BAA6B;oBACvC,YAAY,EAAE,SAAS;iBACxB;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,eAAe,EAAE,CAAC;YAC5H,CAAC;YAED,MAAM,KAAK,GAAI,IAAI,CAAC,KAAe,IAAI,EAAE,CAAC;YAC1C,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,cAAc;gBACtB,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI,CAAC,WAAW;oBACvB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACrC,IAAI,EAAE,CAAC,CAAC,SAAS;wBACjB,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,KAAK,EAAE,CAAC,CAAC,gBAAgB;wBACzB,GAAG,EAAE,CAAC,CAAC,QAAQ;wBACf,QAAQ,EAAE,CAAC,CAAC,QAAQ;qBACrB,CAAC,CAAC;iBACJ;aACF,CAAC;QACJ,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAE/B,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC;YACnH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,KAAK,IAAI,IAAI,EAAE,EAAE;gBAC5E,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE;oBACxC,QAAQ,EAAE,6BAA6B;oBACvC,YAAY,EAAE,SAAS;iBACxB;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,iBAAiB,EAAE,CAAC;YAC1H,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,IAAI,CAAC,SAAS;oBACpB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,KAAK,EAAE,IAAI,CAAC,gBAAgB;oBAC5B,KAAK,EAAE,IAAI,CAAC,WAAW;oBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,OAAO,EAAE,IAAI,CAAC,UAAU;oBACxB,OAAO,EAAE,IAAI,CAAC,UAAU;iBACzB;aACF,CAAC;QACJ,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;YAE3D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC;YACtH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,KAAK,IAAI,IAAI,iBAAiB,KAAK,aAAa,KAAK,EAAE,EAAE;gBACpH,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE;oBACxC,QAAQ,EAAE,6BAA6B;oBACvC,YAAY,EAAE,SAAS;iBACxB;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAe,CAAC;YAEhD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;YACpG,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE;oBACJ,MAAM,EAAG,IAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAChC,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK;wBACnB,GAAG,EAAE,CAAC,CAAC,QAAQ;wBACf,OAAO,EAAE,CAAC,CAAC,UAAU;qBACtB,CAAC,CAAC;iBACJ;aACF,CAAC;QACJ,CAAC;QAED,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;YAEjD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAC;YAC9H,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,KAAK,IAAI,IAAI,SAAS,EAAE;gBACnF,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE;oBACxC,QAAQ,EAAE,6BAA6B;oBACvC,YAAY,EAAE,SAAS;oBACvB,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;aACtC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,qBAAqB,EAAE,CAAC;YAClI,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,cAAc;gBACtB,IAAI,EAAE;oBACJ,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,GAAG,EAAE,IAAI,CAAC,QAAQ;iBACnB;aACF,CAAC;QACJ,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAErC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,4CAA4C,EAAE,CAAC;YACzH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,KAAK,IAAI,IAAI,aAAa,IAAI,EAAE,EAAE;gBAC7F,OAAO,EAAE;oBACP,eAAe,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE;oBACxC,QAAQ,EAAE,6BAA6B;oBACvC,YAAY,EAAE,SAAS;iBACxB;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAG,IAAI,CAAC,OAAkB,IAAI,iBAAiB,EAAE,CAAC;YAC1H,CAAC;YAED,wBAAwB;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAiB,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEtG,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO;iBACR;aACF,CAAC;QACJ,CAAC;KACF;IAED,mCAAmC;IACnC,iCAAiC;IACjC,GAAG,EAAE;QACH,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;YAE7C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;YACxG,CAAC;YAED,IAAI,CAAC;gBACH,sDAAsD;gBACtD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBAE1D,mDAAmD;gBACnD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC;gBAExC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEvC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAE9C,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,KAAK;wBACf,MAAM,EAAE,UAAU;wBAClB,IAAI,EAAE;4BACJ,IAAI,EAAE,SAAS,CAAC,IAAI;4BACpB,IAAI,EAAE,SAAS,CAAC,IAAI;4BACpB,OAAO,EAAE,SAAS,CAAC,OAAO;yBAC3B;qBACF,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,QAAQ,EAAE,KAAK;oBACf,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,uBAAuB;iBAChD,CAAC;YACJ,CAAC;QACH,CAAC;QAED,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACjC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAE3B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;YAC5G,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBAE1D,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC;gBAExC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEvC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAEnD,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,KAAK;wBACf,MAAM,EAAE,WAAW;wBACnB,IAAI,EAAE;4BACJ,MAAM,EAAE,MAAM,CAAC,MAAM;4BACrB,MAAM,EAAE,MAAM,CAAC,MAAM;4BACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;yBAC1B;qBACF,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,QAAQ,EAAE,KAAK;oBACf,MAAM,EAAE,WAAW;oBACnB,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,wBAAwB;iBACjD,CAAC;YACJ,CAAC;QACH,CAAC;KACF;CACF,CAAC;AAEF,8DAA8D;AAC9D,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkB;IAC9D,8BAA8B;IAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,+BAA+B;IAC/B,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,qBAAqB;IACnC,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,QAAQ;QACR,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAkB,EAClB,MAAc,EACd,MAA2B,EAC3B,MAAe,EACf,WAAoB;IAEpB,yDAAyD;IACzD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,2BAA2B;IAC3B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,yDAAyD;QACzD,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,UAAU;gBACpB,MAAM;gBACN,KAAK,EAAE,aAAa,UAAU,+DAA+D,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACzH,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,UAAU;YACpB,MAAM;YACN,KAAK,EAAE,aAAa,UAAU,+BAA+B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAChG,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,UAAU;YACpB,MAAM;YACN,KAAK,EAAE,WAAW,MAAM,uBAAuB,UAAU,gBAAgB,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACpH,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,MAAM,kBAAkB,GAAG,CAAC,WAAW,CAAC,CAAC;IAEzC,gFAAgF;IAChF,6GAA6G;IAC7G,IAAI,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACxI,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC;IAEvC,6DAA6D;IAC7D,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAChE,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,oCAAoC;QACpC,IAAI,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;gBACvE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,UAAU;oBACpB,MAAM;oBACN,IAAI,EAAE,WAAW;iBAClB,CAAC;YACJ,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,QAAQ,EAAE,UAAU;oBACpB,MAAM;oBACN,KAAK,EAAE,CAAC,CAAC,OAAO,IAAI,mBAAmB;iBACxC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,UAAU;YACpB,MAAM;YACN,KAAK,EAAE,iCAAiC,UAAU,uBAAuB,UAAU,MAAM;SAC1F,CAAC;IACJ,CAAC;IAED,UAAU;IACV,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,UAAU;YACpB,MAAM;YACN,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,eAAe;SACxC,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -16,7 +16,8 @@ import { discoverAPIs, getAPIDetails, getCategories, getAllAPIs } from './discov
16
16
  import { trackStartup, trackSearch } from './telemetry.js';
17
17
  import { addCredits, purchaseAPIAccess, getBalanceSummary } from './credits.js';
18
18
  import { hasRealCredentials } from './credentials.js';
19
- import { executeAPICall, getConnectedProviders } from './execute.js';
19
+ import { getConnectedProviders } from './execute.js';
20
+ import { executeMetered } from './metered.js';
20
21
  import { logAPICall } from './analytics.js';
21
22
  import { isOpenAPI, executeOpenAPI, listOpenAPIs } from './open-apis.js';
22
23
  import { requiresConfirmationAsync, createPendingAction, consumePendingAction, generatePreview, validateParams } from './confirmation.js';
@@ -74,6 +75,28 @@ async function validateSession() {
74
75
  return false;
75
76
  }
76
77
  }
78
+ /**
79
+ * Track earn progress after successful API call
80
+ * Handles firstDirectCall and apisUsed tracking
81
+ */
82
+ async function trackEarnProgress(workspaceId, provider, action) {
83
+ try {
84
+ // Track first direct call
85
+ await convex.mutation("earnProgress:markFirstDirectCall", {
86
+ workspaceId: workspaceId,
87
+ });
88
+ // Track unique API usage
89
+ const apiId = `${provider}:${action}`;
90
+ await convex.mutation("earnProgress:trackApiUsed", {
91
+ workspaceId: workspaceId,
92
+ apiId,
93
+ });
94
+ }
95
+ catch (e) {
96
+ // Non-critical - don't fail the API call if earn tracking fails
97
+ console.error('[APIClaw] Failed to track earn progress:', e);
98
+ }
99
+ }
77
100
  /**
78
101
  * Check if workspace is active and has usage remaining
79
102
  */
@@ -162,13 +185,18 @@ const tools = [
162
185
  },
163
186
  {
164
187
  name: 'get_api_details',
165
- description: 'Get detailed information about a specific API provider, including endpoints, pricing, and features.',
188
+ description: 'Get detailed information about a specific API provider, including endpoints, pricing, and features. Use compact=true to save ~60% tokens.',
166
189
  inputSchema: {
167
190
  type: 'object',
168
191
  properties: {
169
192
  api_id: {
170
193
  type: 'string',
171
194
  description: 'The API provider ID (e.g., "46elks", "resend", "openrouter")'
195
+ },
196
+ compact: {
197
+ type: 'boolean',
198
+ description: 'If true, returns minified spec (strips examples, keeps essential params). Saves ~60% context window.',
199
+ default: false
172
200
  }
173
201
  },
174
202
  required: ['api_id']
@@ -260,6 +288,10 @@ const tools = [
260
288
  confirm_token: {
261
289
  type: 'string',
262
290
  description: 'Confirmation token from a previous call. Required to execute actions that cost money after reviewing the preview.'
291
+ },
292
+ dry_run: {
293
+ type: 'boolean',
294
+ description: 'If true, shows what WOULD be sent without making actual API calls. Returns mock response and request details. Great for testing and debugging.'
263
295
  }
264
296
  },
265
297
  required: ['provider', 'action']
@@ -506,7 +538,8 @@ Docs: https://apiclaw.nordsym.com
506
538
  }
507
539
  case 'get_api_details': {
508
540
  const apiId = args?.api_id;
509
- const api = getAPIDetails(apiId);
541
+ const compact = args?.compact || false;
542
+ const api = getAPIDetails(apiId, { compact });
510
543
  if (!api) {
511
544
  return {
512
545
  content: [
@@ -515,12 +548,23 @@ Docs: https://apiclaw.nordsym.com
515
548
  text: JSON.stringify({
516
549
  status: 'error',
517
550
  message: `API not found: ${apiId}`,
518
- available_apis: getAllAPIs().map(a => a.id)
551
+ hint: 'Try discover_apis to search, or list_connected for direct-call APIs',
519
552
  }, null, 2)
520
553
  }
521
554
  ]
522
555
  };
523
556
  }
557
+ // Compact mode: minimal JSON, no pretty-print
558
+ if (compact) {
559
+ return {
560
+ content: [
561
+ {
562
+ type: 'text',
563
+ text: JSON.stringify({ status: 'ok', ...api })
564
+ }
565
+ ]
566
+ };
567
+ }
524
568
  return {
525
569
  content: [
526
570
  {
@@ -646,6 +690,18 @@ Docs: https://apiclaw.nordsym.com
646
690
  const action = args?.action;
647
691
  const params = args?.params || {};
648
692
  const confirmToken = args?.confirm_token;
693
+ const dryRun = args?.dry_run;
694
+ // Handle dry-run mode - no actual API calls, just show what would happen
695
+ if (dryRun) {
696
+ const { generateDryRun } = await import('./execute.js');
697
+ const dryRunResult = generateDryRun(provider, action, params);
698
+ return {
699
+ content: [{
700
+ type: 'text',
701
+ text: JSON.stringify(dryRunResult, null, 2)
702
+ }]
703
+ };
704
+ }
649
705
  // Check workspace access (skip for free/open APIs)
650
706
  const isFreeAPI = isOpenAPI(provider);
651
707
  if (!isFreeAPI) {
@@ -682,10 +738,15 @@ Docs: https://apiclaw.nordsym.com
682
738
  isError: true
683
739
  };
684
740
  }
685
- // Execute the confirmed action
741
+ // Execute the confirmed action with metered billing
686
742
  apiType = 'direct';
687
743
  const customerKey = args?.customer_key || getCustomerKey(pending.provider);
688
- result = await executeAPICall(pending.provider, pending.action, pending.params, DEFAULT_AGENT_ID, customerKey);
744
+ const stripeCustomerId = args?.stripe_customer_id || process.env.APICLAW_STRIPE_CUSTOMER_ID;
745
+ result = await executeMetered(pending.provider, pending.action, pending.params, {
746
+ customerId: stripeCustomerId,
747
+ customerKey,
748
+ userId: DEFAULT_AGENT_ID,
749
+ });
689
750
  // Log the confirmed API call
690
751
  logAPICall({
691
752
  timestamp: new Date().toISOString(),
@@ -697,6 +758,10 @@ Docs: https://apiclaw.nordsym.com
697
758
  latencyMs: Date.now() - startTime,
698
759
  error: result.error,
699
760
  });
761
+ // Track earn progress for confirmed actions
762
+ if (result.success && workspaceContext) {
763
+ await trackEarnProgress(workspaceContext.workspaceId, pending.provider, pending.action);
764
+ }
700
765
  return {
701
766
  content: [{
702
767
  type: 'text',
@@ -760,7 +825,12 @@ Docs: https://apiclaw.nordsym.com
760
825
  else {
761
826
  apiType = 'direct';
762
827
  const customerKey = args?.customer_key || getCustomerKey(provider);
763
- result = await executeAPICall(provider, action, params, DEFAULT_AGENT_ID, customerKey);
828
+ const stripeCustomerId = args?.stripe_customer_id || process.env.APICLAW_STRIPE_CUSTOMER_ID;
829
+ result = await executeMetered(provider, action, params, {
830
+ customerId: stripeCustomerId,
831
+ customerKey,
832
+ userId: DEFAULT_AGENT_ID,
833
+ });
764
834
  }
765
835
  // Log the API call for analytics
766
836
  logAPICall({
@@ -782,6 +852,8 @@ Docs: https://apiclaw.nordsym.com
782
852
  if (usageResult.success) {
783
853
  workspaceContext.usageRemaining = usageResult.remaining ?? -1;
784
854
  }
855
+ // Track earn progress (first direct call + unique APIs)
856
+ await trackEarnProgress(workspaceContext.workspaceId, provider, action);
785
857
  }
786
858
  catch (e) {
787
859
  console.error('[APIClaw] Failed to track usage:', e);