popeye-cli 1.4.3 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"execution-mode.d.ts","sourceRoot":"","sources":["../../src/workflow/execution-mode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-mode.d.ts","sourceRoot":"","sources":["../../src/workflow/execution-mode.ts"],"names":[],"mappings":"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"}
@@ -94,6 +94,7 @@ const DEFAULT_MAX_RETRIES = 3;
94
94
  async function generateProjectReadme(projectDir, state) {
95
95
  try {
96
96
  const readmePath = path.join(projectDir, 'README.md');
97
+ const workspace = isWorkspace(state.language);
97
98
  // Extract features from completed milestones
98
99
  const features = state.milestones
99
100
  .filter(m => m.status === 'complete')
@@ -102,119 +103,417 @@ async function generateProjectReadme(projectDir, state) {
102
103
  description: m.description,
103
104
  tasks: m.tasks.filter(t => t.status === 'complete').map(t => t.name),
104
105
  }));
105
- // Determine run commands based on language
106
- const isTypeScript = state.language === 'typescript';
107
- const installCmd = isTypeScript ? 'npm install' : 'pip install -r requirements.txt';
108
- const devCmd = isTypeScript ? 'npm run dev' : 'python src/main.py';
109
- const testCmd = isTypeScript ? 'npm test' : 'pytest tests/ -v';
110
- const buildCmd = isTypeScript ? 'npm run build' : 'python -m py_compile src/**/*.py';
111
- // Build README content
112
- const readmeContent = `# ${state.name}
106
+ // Load workspace.json for workspace projects
107
+ let wsConfig = null;
108
+ if (workspace) {
109
+ try {
110
+ const wsContent = await fs.readFile(path.join(projectDir, '.popeye', 'workspace.json'), 'utf-8');
111
+ wsConfig = JSON.parse(wsContent);
112
+ }
113
+ catch {
114
+ // workspace.json not available, use defaults
115
+ }
116
+ }
117
+ const description = state.specification
118
+ ? extractDescriptionFromSpec(state.specification)
119
+ : 'A project generated by Popeye CLI.';
120
+ const sections = [];
121
+ // Title and description
122
+ sections.push(`# ${state.name}\n\n${description}`);
123
+ // Features
124
+ const featuresContent = features.map(f => `### ${f.name}
125
+ ${f.description || ''}
126
+ ${f.tasks.length > 0 ? f.tasks.map(t => `- ${t}`).join('\n') : ''}`).join('\n\n');
127
+ sections.push(`## Features\n\n${featuresContent}`);
128
+ // Prerequisites
129
+ sections.push(`## Prerequisites\n\n${generatePrerequisites(state.language)}`);
130
+ // Installation
131
+ sections.push(`## Installation\n\n${generateInstallation(state.name, state.language)}`);
132
+ // Environment Setup
133
+ sections.push(`## Environment Setup
134
+
135
+ 1. Copy the example environment file:
136
+ \`\`\`bash
137
+ cp .env.example .env
138
+ \`\`\`
113
139
 
114
- ${state.specification ? extractDescriptionFromSpec(state.specification) : 'A project generated by Popeye CLI.'}
140
+ 2. Edit \`.env\` and fill in the required values.`);
141
+ // Running the Application
142
+ sections.push(`## Running the Application\n\n${generateRunSection(state.language, wsConfig)}`);
143
+ // Project Structure
144
+ sections.push(`## Project Structure\n\n${generateStructureSection(state.name, state.language)}`);
145
+ // Deployment - per-app for workspace projects
146
+ if (workspace) {
147
+ sections.push(`## Deployment\n\n${generateDeploymentSection(state.name, state.language, wsConfig)}`);
148
+ }
149
+ // Development footer
150
+ sections.push(`## Development
115
151
 
116
- ## Features
152
+ This project was generated using [Popeye CLI](https://github.com/your-org/popeye-cli), an autonomous code generation tool.
117
153
 
118
- ${features.map(f => `### ${f.name}
119
- ${f.description || ''}
120
- ${f.tasks.length > 0 ? f.tasks.map(t => `- ${t}`).join('\n') : ''}`).join('\n\n')}
154
+ ### Development Plan
155
+
156
+ See [docs/PLAN.md](docs/PLAN.md) for the complete development plan used to build this project.
157
+
158
+ ### Workflow Log
159
+
160
+ See [docs/WORKFLOW_LOG.md](docs/WORKFLOW_LOG.md) for detailed execution logs.
161
+
162
+ ## License
163
+
164
+ MIT`);
165
+ const readmeContent = sections.join('\n\n') + '\n';
166
+ await fs.writeFile(readmePath, readmeContent, 'utf-8');
167
+ return { success: true, path: readmePath };
168
+ }
169
+ catch (error) {
170
+ return {
171
+ success: false,
172
+ error: error instanceof Error ? error.message : 'Failed to generate README',
173
+ };
174
+ }
175
+ }
176
+ /**
177
+ * Generate prerequisites section based on language
178
+ */
179
+ function generatePrerequisites(language) {
180
+ if (language === 'python') {
181
+ return `- Python 3.9 or higher
182
+ - pip (Python package manager)`;
183
+ }
184
+ if (language === 'typescript' || language === 'website') {
185
+ return `- Node.js 18.0 or higher
186
+ - npm 8.0 or higher`;
187
+ }
188
+ // Workspace projects (fullstack, all) need both
189
+ return `- Node.js 18.0 or higher
190
+ - npm 8.0 or higher
191
+ - Python 3.9 or higher
192
+ - pip (Python package manager)
193
+ - Docker and Docker Compose (recommended for local development)`;
194
+ }
195
+ /**
196
+ * Generate installation section based on language
197
+ */
198
+ function generateInstallation(name, language) {
199
+ const lines = [`\`\`\`bash`, `cd ${name}`, ''];
200
+ if (isWorkspace(language)) {
201
+ lines.push('# Install all workspace dependencies');
202
+ lines.push('npm install');
203
+ lines.push('');
204
+ lines.push('# Install backend Python dependencies');
205
+ lines.push('cd apps/backend && pip install -r requirements.txt && cd ../..');
206
+ if (language === 'all') {
207
+ lines.push('');
208
+ lines.push('# Install website dependencies (if not covered by workspace)');
209
+ lines.push('cd apps/website && npm install && cd ../..');
210
+ }
211
+ }
212
+ else if (language === 'python') {
213
+ lines.push('pip install -r requirements.txt');
214
+ }
215
+ else {
216
+ lines.push('npm install');
217
+ }
218
+ lines.push('```');
219
+ return lines.join('\n');
220
+ }
221
+ /**
222
+ * Generate run commands section based on language
223
+ */
224
+ function generateRunSection(language, wsConfig) {
225
+ if (language === 'python') {
226
+ return `### Development Mode
121
227
 
122
- ## Prerequisites
228
+ \`\`\`bash
229
+ python src/main.py
230
+ \`\`\`
123
231
 
124
- ${isTypeScript ? `- Node.js 18.0 or higher
125
- - npm 8.0 or higher` : `- Python 3.9 or higher
126
- - pip (Python package manager)`}
232
+ ### Running Tests
127
233
 
128
- ## Installation
234
+ \`\`\`bash
235
+ pytest tests/ -v
236
+ \`\`\`
237
+
238
+ ### Build for Production
129
239
 
130
240
  \`\`\`bash
131
- # Clone the repository (if applicable)
132
- cd ${state.name}
241
+ python -m py_compile src/**/*.py
242
+ \`\`\``;
243
+ }
244
+ if (language === 'typescript') {
245
+ return `### Development Mode
133
246
 
134
- # Install dependencies
135
- ${installCmd}
247
+ \`\`\`bash
248
+ npm run dev
136
249
  \`\`\`
137
250
 
138
- ## Environment Setup
251
+ ### Running Tests
139
252
 
140
- 1. Copy the example environment file:
141
- \`\`\`bash
142
- cp .env.example .env
143
- \`\`\`
253
+ \`\`\`bash
254
+ npm test
255
+ \`\`\`
256
+
257
+ ### Build for Production
144
258
 
145
- 2. Edit \`.env\` and fill in the required values.
259
+ \`\`\`bash
260
+ npm run build
261
+ \`\`\`
146
262
 
147
- ## Running the Application
263
+ ### Start Production Server
148
264
 
149
- ### Development Mode
265
+ \`\`\`bash
266
+ npm start
267
+ \`\`\``;
268
+ }
269
+ if (language === 'website') {
270
+ return `### Development Mode
150
271
 
151
272
  \`\`\`bash
152
- ${devCmd}
273
+ npm run dev
153
274
  \`\`\`
154
275
 
155
276
  ### Running Tests
156
277
 
157
278
  \`\`\`bash
158
- ${testCmd}
279
+ npm test
159
280
  \`\`\`
160
281
 
161
282
  ### Build for Production
162
283
 
163
284
  \`\`\`bash
164
- ${buildCmd}
285
+ npm run build
165
286
  \`\`\`
166
287
 
167
- ${isTypeScript ? `### Start Production Server
288
+ ### Preview Production Build
168
289
 
169
290
  \`\`\`bash
170
- npm start
291
+ npm run start
292
+ \`\`\``;
293
+ }
294
+ // Workspace projects (fullstack, all)
295
+ const apps = wsConfig?.apps;
296
+ const lines = [];
297
+ lines.push(`### Run Everything (Docker Compose)
298
+
299
+ \`\`\`bash
300
+ docker-compose up
171
301
  \`\`\`
172
- ` : ''}
173
- ## Project Structure
174
302
 
303
+ ### Run Individual Apps`);
304
+ // Frontend
305
+ const fePath = apps?.frontend?.path || 'apps/frontend';
306
+ lines.push(`
307
+ #### Frontend (React/Vite)
308
+
309
+ \`\`\`bash
310
+ cd ${fePath}
311
+ npm run dev # Development server
312
+ npm run build # Production build
313
+ npm test # Run tests
314
+ \`\`\``);
315
+ // Backend
316
+ const bePath = apps?.backend?.path || 'apps/backend';
317
+ lines.push(`
318
+ #### Backend (Python/FastAPI)
319
+
320
+ \`\`\`bash
321
+ cd ${bePath}
322
+ uvicorn src.backend.main:app --reload --port 8000 # Development server
323
+ pip install -e . # Build/install
324
+ pytest tests/ -v # Run tests
325
+ \`\`\``);
326
+ // Website (for 'all' projects)
327
+ if (language === 'all') {
328
+ const webPath = apps?.website?.path || 'apps/website';
329
+ lines.push(`
330
+ #### Website (Next.js)
331
+
332
+ \`\`\`bash
333
+ cd ${webPath}
334
+ npm run dev # Development server (port 3001)
335
+ npm run build # Production build
336
+ npm test # Run tests
337
+ \`\`\``);
338
+ }
339
+ // All-at-once commands
340
+ lines.push(`
341
+ ### Run All Tests
342
+
343
+ \`\`\`bash
344
+ npm run test:all
175
345
  \`\`\`
176
- ${state.name}/
346
+
347
+ ### Build All
348
+
349
+ \`\`\`bash
350
+ npm run build:all
351
+ \`\`\``);
352
+ return lines.join('\n');
353
+ }
354
+ /**
355
+ * Generate project structure section based on language
356
+ */
357
+ function generateStructureSection(name, language) {
358
+ if (language === 'python') {
359
+ return `\`\`\`
360
+ ${name}/
177
361
  ├── src/ # Source code
178
- ${isTypeScript ? `│ └── index.ts # Main entry point` : `│ ├── __init__.py
179
- │ └── main.py # Main entry point`}
362
+ ├── __init__.py
363
+ │ └── main.py # Main entry point
180
364
  ├── tests/ # Test files
181
365
  ├── docs/ # Documentation
182
366
  │ ├── PLAN.md # Development plan
183
367
  │ └── WORKFLOW_LOG.md # Execution log
184
- ${isTypeScript ? `├── package.json # Dependencies and scripts
185
- ├── tsconfig.json # TypeScript configuration` : `├── requirements.txt # Python dependencies
186
- ├── pyproject.toml # Project configuration`}
368
+ ├── requirements.txt # Python dependencies
369
+ ├── pyproject.toml # Project configuration
187
370
  ├── .env.example # Environment template
188
371
  ├── .gitignore
189
372
  ├── Dockerfile
190
373
  └── README.md
191
- \`\`\`
374
+ \`\`\``;
375
+ }
376
+ if (language === 'typescript') {
377
+ return `\`\`\`
378
+ ${name}/
379
+ ├── src/ # Source code
380
+ │ └── index.ts # Main entry point
381
+ ├── tests/ # Test files
382
+ ├── docs/ # Documentation
383
+ │ ├── PLAN.md # Development plan
384
+ │ └── WORKFLOW_LOG.md # Execution log
385
+ ├── package.json # Dependencies and scripts
386
+ ├── tsconfig.json # TypeScript configuration
387
+ ├── .env.example # Environment template
388
+ ├── .gitignore
389
+ ├── Dockerfile
390
+ └── README.md
391
+ \`\`\``;
392
+ }
393
+ if (language === 'website') {
394
+ return `\`\`\`
395
+ ${name}/
396
+ ├── app/ # Next.js app directory
397
+ │ ├── layout.tsx # Root layout
398
+ │ └── page.tsx # Home page
399
+ ├── components/ # React components
400
+ ├── public/ # Static assets
401
+ ├── docs/ # Documentation
402
+ │ ├── PLAN.md # Development plan
403
+ │ └── WORKFLOW_LOG.md # Execution log
404
+ ├── package.json # Dependencies and scripts
405
+ ├── next.config.js # Next.js configuration
406
+ ├── tsconfig.json # TypeScript configuration
407
+ ├── .env.example # Environment template
408
+ ├── .gitignore
409
+ ├── Dockerfile
410
+ └── README.md
411
+ \`\`\``;
412
+ }
413
+ // Workspace (fullstack / all)
414
+ const websiteTree = language === 'all' ? `│ ├── website/ # Next.js marketing/landing site
415
+ │ │ ├── app/
416
+ │ │ ├── components/
417
+ │ │ ├── package.json
418
+ │ │ └── Dockerfile
419
+ ` : '';
420
+ const packagesTree = language === 'all' ? `├── packages/ # Shared packages
421
+ │ ├── design-tokens/ # Shared design tokens
422
+ │ ├── ui/ # Shared UI components
423
+ │ └── contracts/ # API contracts (OpenAPI)
424
+ ` : '';
425
+ return `\`\`\`
426
+ ${name}/
427
+ ├── apps/
428
+ │ ├── frontend/ # React/Vite frontend
429
+ │ │ ├── src/
430
+ │ │ ├── package.json
431
+ │ │ └── Dockerfile
432
+ │ ├── backend/ # Python/FastAPI backend
433
+ │ │ ├── src/
434
+ │ │ ├── tests/
435
+ │ │ ├── requirements.txt
436
+ │ │ └── Dockerfile
437
+ ${websiteTree}${packagesTree}├── docs/ # Documentation
438
+ │ ├── PLAN.md # Development plan
439
+ │ └── WORKFLOW_LOG.md # Execution log
440
+ ├── .popeye/ # Popeye configuration
441
+ │ └── workspace.json # Workspace configuration
442
+ ├── docker-compose.yml # Local development stack
443
+ ├── package.json # Root workspace config
444
+ ├── .env.example # Environment template
445
+ ├── .gitignore
446
+ └── README.md
447
+ \`\`\``;
448
+ }
449
+ /**
450
+ * Generate deployment section for workspace projects
451
+ */
452
+ function generateDeploymentSection(name, language, wsConfig) {
453
+ const apps = wsConfig?.apps;
454
+ const feImage = apps?.frontend?.docker?.imageName || `${name}-frontend`;
455
+ const beImage = apps?.backend?.docker?.imageName || `${name}-backend`;
456
+ const lines = [];
457
+ lines.push(`Each app can be built and deployed independently as a Docker container.
192
458
 
193
- ## Development
459
+ ### Build Docker Images
194
460
 
195
- This project was generated using [Popeye CLI](https://github.com/your-org/popeye-cli), an autonomous code generation tool.
461
+ \`\`\`bash
462
+ # Frontend
463
+ docker build -t ${feImage} -f apps/frontend/Dockerfile apps/frontend
196
464
 
197
- ### Development Plan
465
+ # Backend
466
+ docker build -t ${beImage} -f apps/backend/Dockerfile apps/backend`);
467
+ if (language === 'all') {
468
+ const webImage = apps?.website?.docker?.imageName || `${name}-website`;
469
+ lines.push(`
470
+ # Website
471
+ docker build -t ${webImage} -f apps/website/Dockerfile apps/website`);
472
+ }
473
+ lines.push('```');
474
+ lines.push(`
475
+ ### Deploy with Docker Compose
198
476
 
199
- See [docs/PLAN.md](docs/PLAN.md) for the complete development plan used to build this project.
477
+ \`\`\`bash
478
+ # Start all services
479
+ docker-compose up -d
200
480
 
201
- ### Workflow Log
481
+ # View logs
482
+ docker-compose logs -f
202
483
 
203
- See [docs/WORKFLOW_LOG.md](docs/WORKFLOW_LOG.md) for detailed execution logs.
484
+ # Stop all services
485
+ docker-compose down
486
+ \`\`\``);
487
+ lines.push(`
488
+ ### Individual App Deployment
204
489
 
205
- ## License
490
+ #### Frontend (Static Site)
491
+ The frontend builds to static files that can be served by any CDN or static hosting:
492
+ \`\`\`bash
493
+ cd apps/frontend
494
+ npm run build
495
+ # Deploy the dist/ folder to your hosting provider (Vercel, Netlify, S3, etc.)
496
+ \`\`\`
206
497
 
207
- MIT
208
- `;
209
- await fs.writeFile(readmePath, readmeContent, 'utf-8');
210
- return { success: true, path: readmePath };
211
- }
212
- catch (error) {
213
- return {
214
- success: false,
215
- error: error instanceof Error ? error.message : 'Failed to generate README',
216
- };
498
+ #### Backend (API Server)
499
+ The backend runs as a Python ASGI server:
500
+ \`\`\`bash
501
+ cd apps/backend
502
+ pip install -r requirements.txt
503
+ uvicorn src.backend.main:app --host 0.0.0.0 --port 8000
504
+ \`\`\``);
505
+ if (language === 'all') {
506
+ lines.push(`
507
+ #### Website (Next.js SSR/SSG)
508
+ The website can be deployed as a Node.js server or exported as static files:
509
+ \`\`\`bash
510
+ cd apps/website
511
+ npm run build
512
+ npm start # Run as Node.js server
513
+ # Or deploy to Vercel/Netlify for automatic SSR support
514
+ \`\`\``);
217
515
  }
516
+ return lines.join('\n');
218
517
  }
219
518
  /**
220
519
  * Extract a brief description from the specification
@@ -1 +1 @@
1
- {"version":3,"file":"execution-mode.js","sourceRoot":"","sources":["../../src/workflow/execution-mode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,UAAU,IAAI,gBAAgB,EAA4B,MAAM,uBAAuB,CAAC;AAC/G,OAAO,EACL,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,GAEf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAA+B,MAAM,gBAAgB,CAAC;AAClH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,yBAAyB;IACzB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAEhC,qCAAqC;IACrC,MAAM,QAAQ,GAAG,+CAA+C,CAAC;IACjE,qCAAqC;IACrC,MAAM,QAAQ,GAAG,iDAAiD,CAAC;IAEnE,KAAK,MAAM,OAAO,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/B,2CAA2C;YAC3C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACxC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC5C,MAAM,QAAQ,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;QACpF,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACtD,gDAAgD;QAChD,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QACpF,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,SAAmB;IAEnB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC5C,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEpC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,KAAK,CAAC;QACzB,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,KAAK,uBAAuB,OAAO,CAAC,MAAM,IAAI,KAAK,oBAAoB,CAAC;IAElG,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC;AA4CD;;GAEG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;;;;;;GAOG;AACH,KAAK,UAAU,qBAAqB,CAClC,UAAkB,EAClB,KAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAEtD,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC;aACpC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACT,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACrE,CAAC,CAAC,CAAC;QAEN,2CAA2C;QAC3C,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC;QACrD,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iCAAiC,CAAC;QACpF,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC;QACnE,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC/D,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kCAAkC,CAAC;QAErF,uBAAuB;QACvB,MAAM,aAAa,GAAG,KAAK,KAAK,CAAC,IAAI;;EAEvC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,oCAAoC;;;;EAI5G,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI;EAC/B,CAAC,CAAC,WAAW,IAAI,EAAE;EACnB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;;;;EAI/E,YAAY,CAAC,CAAC,CAAC;oBACG,CAAC,CAAC,CAAC;+BACQ;;;;;;KAM1B,KAAK,CAAC,IAAI;;;EAGb,UAAU;;;;;;;;;;;;;;;;;EAiBV,MAAM;;;;;;EAMN,OAAO;;;;;;EAMP,QAAQ;;;EAGR,YAAY,CAAC,CAAC,CAAC;;;;;CAKhB,CAAC,CAAC,CAAC,EAAE;;;;EAIJ,KAAK,CAAC,IAAI;;EAEV,YAAY,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC;8CACrB;;;;;EAK5C,YAAY,CAAC,CAAC,CAAC;sDACqC,CAAC,CAAC,CAAC;mDACN;;;;;;;;;;;;;;;;;;;;;;CAsBlD,CAAC;QAEE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAEvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B;SAC5E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CAAC,IAAY;IAC9C,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAC;IACpH,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAE1D,IAAI,cAAc,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAChC,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9C,CAAC;IAED,OAAO,cAAc,IAAI,oCAAoC,CAAC;AAChE,CAAC;AAED,+FAA+F;AAC/F,qDAAqD;AAErD;;;;;;;GAOG;AACH,SAAS,gBAAgB,CACvB,KAAmB,EACnB,SAAoB,EACpB,KAAW,EACX,eAAwB;IAExB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,yCAAyC;IACzC,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,kCAAkC;IAClC,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;IAC9E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACnD,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAU,EACV,OAAe,EACf,UAAkB,EAClB,UAAsC;IAEtC,MAAM,MAAM,GAAG;;EAEf,IAAI,CAAC,IAAI;;;EAGT,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI;;EAE7B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,yBAAyB,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE;;;;;;CAMhE,CAAC,IAAI,EAAE,CAAC;IAEP,OAAO,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAU,EACV,UAAsB,EACtB,OAAe,EACf,UAAkB,EAClB,UAAsC;IAEtC,MAAM,MAAM,GAAG;;;;;;EAMf,IAAI,CAAC,IAAI;;;;EAIT,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;;;;EAIhC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,kBAAkB;;;;;;CAM9E,CAAC,IAAI,EAAE,CAAC;IAEP,OAAO,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,oBAAoB,CACjC,SAAoB,EACpB,IAAU,EACV,KAAmB,EACnB,OAA6B;IAE7B,MAAM,EACJ,UAAU,EACV,UAAU,GAAG,mBAAmB,EAChC,YAAY,EACZ,UAAU,GACX,GAAG,OAAO,CAAC;IAEZ,sCAAsC;IACtC,IAAI,eAAmC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,EAAE,0BAA0B,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACxE,eAAe,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,6CAA6C;IAC/C,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IAC1E,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,iEAAiE;IACjE,MAAM,cAAc,GAAG,UAAU;QAC/B,CAAC,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC;QAC5C,CAAC,CAAC,SAAS,CAAC;IAEd,mBAAmB;IACnB,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAEhF,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI;YACJ,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,uBAAuB;YAClD,OAAO,EAAE,CAAC;SACX,CAAC;IACJ,CAAC;IAED,uBAAuB;IACvB,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,oCAAoC;QACpC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI;YACJ,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,OAAO,EAAE,CAAC;SACX,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,OAAO,OAAO,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE9D,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,UAAU,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI;gBACJ,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,UAAU;gBACV,OAAO;aACR,CAAC;QACJ,CAAC;QAED,eAAe;QACf,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,IAAI;gBACJ,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,UAAU;gBACV,KAAK,EAAE,sBAAsB,OAAO,aAAa,cAAc,CAAC,UAAU,CAAC,EAAE;gBAC7E,OAAO;aACR,CAAC;QACJ,CAAC;QAED,iBAAiB;QACjB,OAAO,EAAE,CAAC;QACV,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAEjF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,IAAI;gBACJ,UAAU;gBACV,KAAK,EAAE,uBAAuB,SAAS,CAAC,KAAK,EAAE;gBAC/C,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,OAAO;QACL,OAAO,EAAE,KAAK;QACd,IAAI;QACJ,KAAK,EAAE,gCAAgC;QACvC,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA6B;IAE7B,MAAM,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,cAAc,GACf,GAAG,OAAO,CAAC;IAEZ,6BAA6B;IAC7B,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAE7C,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAE5B,IAAI,CAAC;QACH,IAAI,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;QAE1C,MAAM,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,wBAAwB,EAAE;YAC7D,WAAW,EAAE,KAAK,CAAC,IAAI;YACvB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM;YACxC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;QAEH,kCAAkC;QAClC,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK;gBACL,cAAc,EAAE,CAAC;gBACjB,WAAW,EAAE,CAAC;gBACd,KAAK,EAAE,4CAA4C,KAAK,CAAC,KAAK,QAAQ;aACvE,CAAC;QACJ,CAAC;QAED,gBAAgB;QAChB,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;QAEjE,UAAU,EAAE,CAAC,iBAAiB,EAAE,yCAAyC,CAAC,CAAC;QAC3E,UAAU,EAAE,CAAC,iBAAiB,EAAE,cAAc,KAAK,CAAC,UAAU,CAAC,MAAM,qCAAqC,CAAC,CAAC;QAE5G,uEAAuE;QACvE,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAEzE,yBAAyB;QACzB,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACzC,4BAA4B;YAC5B,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,IAAI,SAAS,CAAC,kBAAkB,EAAE,CAAC;gBACpE,UAAU,EAAE,CAAC,gBAAgB,EAAE,iCAAiC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;gBAClF,mBAAmB,EAAE,CAAC;gBACtB,cAAc,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;gBAC9E,SAAS;YACX,CAAC;YAED,wBAAwB;YACxB,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAE5D,UAAU,EAAE,CACV,iBAAiB,EACjB,uBAAuB,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK,CAAC,MAAM,SAAS,CAC1E,CAAC;YAEF,MAAM,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,uBAAuB,SAAS,CAAC,IAAI,EAAE,EAAE;gBAC5E,WAAW,EAAE,SAAS,CAAC,EAAE;gBACzB,aAAa,EAAE,SAAS,CAAC,IAAI;gBAC7B,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM;gBACjC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAC5C,CAAC,CAAC;YAEH,sCAAsC;YACtC,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,SAAS,EAAE;gBAC5D,UAAU;gBACV,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,UAAU;gBACV,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;oBACpB,IAAI,WAAW,EAAE,CAAC;wBAChB,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;gBACD,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;oBAChC,IAAI,OAAO,EAAE,CAAC;wBACZ,cAAc,EAAE,CAAC;oBACnB,CAAC;yBAAM,CAAC;wBACN,WAAW,EAAE,CAAC;oBAChB,CAAC;oBACD,IAAI,cAAc,EAAE,CAAC;wBACnB,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;gBAC5B,mBAAmB,EAAE,CAAC;gBACtB,UAAU,EAAE,CACV,oBAAoB,EACpB,uBAAuB,SAAS,CAAC,IAAI,YAAY,eAAe,CAAC,mBAAmB,EAAE,UAAU,IAAI,CACrG,CAAC;gBAEF,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,wBAAwB,SAAS,CAAC,IAAI,EAAE,EAAE;oBAChF,WAAW,EAAE,SAAS,CAAC,EAAE;oBACzB,aAAa,EAAE,SAAS,CAAC,IAAI;oBAC7B,cAAc,EAAE,eAAe,CAAC,mBAAmB,EAAE,UAAU;oBAC/D,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM;iBAC5E,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,2DAA2D;gBAC3D,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;oBACpC,UAAU,EAAE,CACV,kBAAkB,EAClB,kCAAkC,SAAS,CAAC,IAAI,EAAE,CACnD,CAAC;oBACF,UAAU,EAAE,CACV,kBAAkB,EAClB,8EAA8E,CAC/E,CAAC;oBAEF,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,uCAAuC,SAAS,CAAC,IAAI,EAAE,EAAE;wBAC1G,WAAW,EAAE,SAAS,CAAC,EAAE;wBACzB,aAAa,EAAE,SAAS,CAAC,IAAI;qBAC9B,CAAC,CAAC;oBAEH,6BAA6B;oBAC7B,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;oBAEtC,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK;wBACL,cAAc;wBACd,WAAW;wBACX,eAAe,EAAE,IAAI;wBACrB,KAAK,EAAE,eAAe,CAAC,KAAK;qBAC7B,CAAC;gBACJ,CAAC;gBAED,iBAAiB;gBACjB,UAAU,EAAE,CACV,kBAAkB,EAClB,qBAAqB,SAAS,CAAC,IAAI,MAAM,eAAe,CAAC,KAAK,EAAE,CACjE,CAAC;gBAEF,MAAM,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,qBAAqB,SAAS,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,KAAK,IAAI,eAAe,EAAE;oBACrH,WAAW,EAAE,SAAS,CAAC,EAAE;oBACzB,aAAa,EAAE,SAAS,CAAC,IAAI;iBAC9B,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;gBAEtC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK;oBACL,cAAc;oBACd,WAAW;oBACX,KAAK,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,eAAe,CAAC,KAAK,EAAE;iBACxE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,iBAAiB;QACjB,+CAA+C;QAC/C,UAAU,EAAE,CAAC,UAAU,EAAE,qDAAqD,CAAC,CAAC;QAChF,MAAM,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;QAEzD,+EAA+E;QAC/E,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QAE1C,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,oCAAoC;gBACpC,IAAI,MAAM,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;gBAEnD,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC1B,UAAU,EAAE,CAAC,UAAU,EAAE,mCAAmC,CAAC,CAAC;oBAC9D,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5E,MAAM,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBAC9C,UAAU,EAAE,CAAC,UAAU,EAAE,uBAAuB,MAAM,CAAC,SAAS,iBAAiB,CAAC,CAAC;gBACrF,CAAC;gBAED,2DAA2D;gBAC3D,UAAU,EAAE,CAAC,UAAU,EAAE,6CAA6C,CAAC,CAAC;gBACxE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,UAAU,EACV;oBACE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,QAAQ;oBACpC,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;iBAC9C,EACD,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CACvC,CAAC;gBAEF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACrB,UAAU,EAAE,CAAC,UAAU,EAAE,sBAAsB,QAAQ,CAAC,mBAAmB,CAAC,MAAM,uBAAuB,CAAC,CAAC;oBAC3G,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,mBAAmB,EAAE,iCAAiC,EAAE;wBACvF,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,UAAU,EAAE,QAAQ,CAAC,mBAAmB;qBACzC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,UAAU,EAAE,CAAC,UAAU,EAAE,qBAAqB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;oBAChE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,EAAE,qBAAqB,EAAE;wBACvE,KAAK,EAAE,QAAQ,CAAC,KAAK;qBACtB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,8DAA8D;gBAC9D,UAAU,EAAE,CAAC,UAAU,EAAE,qBAAqB,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;gBAC9G,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,EAAE,sBAAsB,EAAE;oBACxE,KAAK,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;iBACpE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,EAAE,CAAC,UAAU,EAAE,yCAAyC,CAAC,CAAC;QACtE,CAAC;QAED,+CAA+C;QAC/C,2BAA2B;QAC3B,+CAA+C;QAC/C,UAAU,EAAE,CAAC,cAAc,EAAE,+BAA+B,CAAC,CAAC;QAC9D,MAAM,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAEvE,6BAA6B;QAC7B,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;QAEtC,qCAAqC;QACrC,MAAM,oBAAoB,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QACnF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,eAAe,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,UAAU,EAAE,CACV,sBAAsB,EACtB,YAAY,oBAAoB,CAAC,MAAM,sCAAsC,eAAe,EAAE,CAC/F,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QACtE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,mBAAmB,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpF,UAAU,EAAE,CACV,sBAAsB,EACtB,YAAY,eAAe,CAAC,MAAM,0BAA0B,mBAAmB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5H,CAAC;QACJ,CAAC;QAED,6CAA6C;QAC7C,UAAU,EAAE,CAAC,cAAc,EAAE,qCAAqC,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,UAAU,EACV,KAAK,CAAC,QAAQ,EACd,CAAC,EAAE,mBAAmB;QACtB,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,cAAc,GAAG,EAAE,CAAC,CAC3D,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,UAAU,EAAE,CACV,oBAAoB,EACpB,4BAA4B,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,uBAAuB,CAC7G,CAAC;YACF,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,2BAA2B,EAAE;gBAC9E,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;gBACzC,SAAS,EAAE,WAAW,CAAC,SAAS;aACjC,CAAC,CAAC;YAEH,sDAAsD;YACtD,UAAU,EAAE,CAAC,WAAW,EAAE,gCAAgC,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAEtD,6DAA6D;YAC7D,MAAM,gBAAgB,GAAG,MAAM,0BAA0B,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtF,MAAM,eAAe,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,qBAAqB,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YAEtF,mCAAmC;YACnC,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;gBAChC,UAAU,EAAE,CACV,WAAW,EACX,qBAAqB,WAAW,CAAC,gBAAgB,IAAI,WAAW,CAAC,eAAe,sGAAsG,CACvL,CAAC;YACJ,CAAC;YAED,UAAU,EAAE,CAAC,WAAW,EAAE,iDAAiD,CAAC,CAAC;YAE7E,gDAAgD;YAChD,MAAM,gBAAgB,GAAG,yBAAyB,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC/E,MAAM,gBAAgB,GAAG,+BAA+B,qBAAqB,CAAC,OAAO,KACnF,qBAAqB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBACtC,CAAC,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,MAAM,OAAO,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACpM,CAAC,CAAC,gCACN,EAAE,CAAC;YAEH,gDAAgD;YAChD,IAAI,sBAAsB,GAAG,EAAE,CAAC;YAChC,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;gBAChC,sBAAsB,GAAG;;EAE/B,qBAAqB,CAAC,OAAO,CAAC,MAAM,OAAO,eAAe,CAAC,MAAM;;;;;;;;;;;6GAW0C,CAAC;YACxG,CAAC;YAED,8EAA8E;YAC9E,MAAM,gBAAgB,GAAG,WAAW,CAAC,eAAe;gBAClD,CAAC,CAAC,4CAA4C,eAAe,CAAC,MAAM,uBAAuB,qBAAqB,CAAC,OAAO,CAAC,MAAM,sBAAsB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU;gBACzL,CAAC,CAAC,qCAAqC,WAAW,UAAU,CAAC;YAE/D,iEAAiE;YACjE,MAAM,aAAa,GAAG;;EAE1B,gBAAgB;;EAEhB,gBAAgB;;EAEhB,gBAAgB;;EAEhB,sBAAsB;;cAEV,KAAK,CAAC,IAAI;eACT,KAAK,CAAC,QAAQ;;;;;;;;;;;;;;;;;;;;sEAoByC,CAAC;YAEjE,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAC1C,aAAa,EACb,2BAA2B,KAAK,CAAC,IAAI,EAAE,EACvC,KAAK,CAAC,QAAQ,EACd,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,cAAc,GAAG,EAAE,CAAC,CACxD,CAAC;YAEF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC3B,yDAAyD;gBACzD,IAAI,aAAa,CAAC,eAAe,EAAE,CAAC;oBAClC,UAAU,EAAE,CAAC,WAAW,EAAE,2DAA2D,CAAC,CAAC;oBACvF,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;oBACjG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,oCAAoC,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;gBAC3J,CAAC;gBAED,UAAU,EAAE,CAAC,WAAW,EAAE,8BAA8B,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC/E,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,sDAAsD,EAAE,CAAC,CAAC;gBACnH,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,kDAAkD,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;YAClJ,CAAC;YAED,8CAA8C;YAC9C,UAAU,EAAE,CAAC,qBAAqB,EAAE,wCAAwC,CAAC,CAAC;YAE9E,4DAA4D;YAC5D,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBACnE,CAAC,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,MAAM,OAAO,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtM,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,eAAe,GAAG;WACnB,KAAK,CAAC,IAAI;YACT,KAAK,CAAC,QAAQ;;;;EAIxB,gBAAgB;;;EAGhB,qBAAqB,CAAC,OAAO,GAAG,oBAAoB;EACpD,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,8HAA8H,CAAC,CAAC,CAAC,EAAE;;;;EAIjK,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;;CAEtF,CAAC,IAAI,EAAE,CAAC;YAEH,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;YAChD,MAAM,YAAY,GAAG,eAAe,EAAE,qBAAqB,KAAK,KAAK,CAAC;YACtE,IAAI,iBAAyC,CAAC;YAE9C,IAAI,CAAC;gBACH,IAAI,YAAY,EAAE,CAAC;oBACjB,iBAAiB,GAAG,MAAM,4BAA4B,CACpD,aAAa,CAAC,QAAQ,EACtB,eAAe,EACf;wBACE,UAAU;wBACV,MAAM,EAAE,eAAe;wBACvB,WAAW,EAAE,WAAW;wBACxB,aAAa,EAAE,wBAAwB;wBACvC,eAAe,EAAE,IAAI;wBACrB,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;wBACxC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;4BACjC,UAAU,EAAE,CAAC,qBAAqB,EAAE,iCAAiC,SAAS,KAAK,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;wBACtG,CAAC;wBACD,UAAU;qBACX,CACwB,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACN,iBAAiB,GAAG,MAAM,qBAAqB,CAC7C,aAAa,CAAC,QAAQ,EACtB,eAAe,EACf;wBACE,UAAU;wBACV,MAAM,EAAE,eAAe;wBACvB,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;wBACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;4BACjC,UAAU,EAAE,CAAC,qBAAqB,EAAE,iCAAiC,SAAS,KAAK,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;wBACtG,CAAC;wBACD,UAAU;qBACX,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,cAAc,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,cAAc,YAAY,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBAC1F,UAAU,EAAE,CAAC,qBAAqB,EAAE,+BAA+B,MAAM,EAAE,CAAC,CAAC;gBAC7E,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,+BAA+B,MAAM,EAAE,EAAE,CAAC,CAAC;gBACpG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,kDAAkD,EAAE,CAAC;YAC3H,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAChC,UAAU,EAAE,CAAC,qBAAqB,EAAE,gCAAgC,iBAAiB,CAAC,UAAU,IAAI,CAAC,CAAC;gBACtG,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,2BAA2B,iBAAiB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;gBACxH,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,kDAAkD,EAAE,CAAC;YAC3H,CAAC;YAED,UAAU,EAAE,CAAC,qBAAqB,EAAE,4BAA4B,iBAAiB,CAAC,UAAU,IAAI,CAAC,CAAC;YAElG,+CAA+C;YAC/C,UAAU,EAAE,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC;YAE1E,0EAA0E;YAC1E,MAAM,qBAAqB,GAAG;gBAC5B,0BAA0B,KAAK,CAAC,IAAI,EAAE;gBACtC,gBAAgB;gBAChB,mBAAmB,qBAAqB,CAAC,OAAO,EAAE;aACnD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEf,MAAM,eAAe,GAAG,MAAM,YAAY,CACxC,wDAAwD,iBAAiB,CAAC,QAAQ,EAAE,EACpF,qBAAqB,EACrB;gBACE,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;aAC/D,CACF,CAAC;YAEF,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;gBACpC,UAAU,EAAE,CAAC,WAAW,EAAE,2DAA2D,CAAC,CAAC;gBACvF,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;gBACjG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,oCAAoC,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;YAC3J,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;gBAC7B,UAAU,EAAE,CAAC,WAAW,EAAE,oCAAoC,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvF,MAAM,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;gBAC9F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,kDAAkD,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;YAClJ,CAAC;YAED,gDAAgD;YAChD,UAAU,EAAE,CAAC,cAAc,EAAE,kEAAkE,CAAC,CAAC;YACjG,MAAM,UAAU,GAAG,MAAM,gBAAgB,CACvC,UAAU,EACV,KAAK,CAAC,QAAQ,EACd,CAAC,EACD,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,iBAAiB,GAAG,EAAE,CAAC,CAC9D,CAAC;YAEF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,UAAU,EAAE,CAAC,cAAc,EAAE,+CAA+C,CAAC,CAAC;gBAC9E,MAAM,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,0BAA0B,EAAE,yCAAyC,EAAE;oBAC1G,cAAc,EAAE,iBAAiB,CAAC,UAAU;oBAC5C,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,6EAA6E;gBAC7E,UAAU,EAAE,CACV,oBAAoB,EACpB,mFAAmF,CACpF,CAAC;gBAEF,MAAM,WAAW,CAAC,UAAU,EAAE;oBAC5B,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,8EAA8E;iBACtF,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK;oBACL,cAAc;oBACd,WAAW;oBACX,KAAK,EAAE,kDAAkD;oBACzD,WAAW,EAAE,QAAQ;iBACtB,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,EAAE,CAAC,cAAc,EAAE,4BAA4B,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7G,MAAM,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,2BAA2B,EAAE;gBAChF,SAAS,EAAE,WAAW,CAAC,SAAS;aACjC,CAAC,CAAC;QACL,CAAC;QAED,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,eAAe,GAAiD,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QACtG,IAAI,QAAQ,EAAE,CAAC;YACb,UAAU,EAAE,CAAC,cAAc,EAAE,oCAAoC,CAAC,CAAC;YACnE,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,eAAe,GAAG,QAAQ,CAAC;gBAC3B,UAAU,EAAE,CACV,sBAAsB,EACtB,mCAAmC,UAAU,CAAC,MAAM,iBAAiB,CACtE,CAAC;gBACF,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,gCAAgC,EAAE;oBAClF,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,WAAW,EAAE,UAAU,CAAC,WAAW;iBACpC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,QAAQ,CAAC;gBAC3B,UAAU,EAAE,CACV,cAAc,EACd,qBAAqB,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,CAC7D,CAAC;gBACF,MAAM,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBACvE,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,KAAK,EAAE,UAAU,CAAC,KAAK;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,8CAA8C;QAC9C,UAAU,EAAE,CAAC,cAAc,EAAE,sCAAsC,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAAC,UAAU,CAAC,CAAC;QAE5E,yCAAyC;QACzC,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,mCAAmC,EAAE;YAC3F,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,gBAAgB;YACpE,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,gBAAgB;YACpE,iBAAiB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,iBAAiB;YACtE,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ;YACpD,kBAAkB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,kBAAkB;YACxE,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,MAAM;YAChD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ;SACrD,CAAC,CAAC;QAEH,+BAA+B;QAC/B,UAAU,EAAE,CACV,cAAc,EACd,SAAS,gBAAgB,CAAC,gBAAgB,CAAC,gBAAgB,UAAU;YACrE,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,gBAAgB,gBAAgB,CACtE,CAAC;QAEF,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;gBAC7D,UAAU,EAAE,CAAC,sBAAsB,EAAE,eAAe,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,KAAK,MAAM,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC7E,UAAU,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,OAAO,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QAED,UAAU;QACV,UAAU,EAAE,CACV,sBAAsB,EACtB,0BAA0B,mBAAmB,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,eAAe;YACvF,GAAG,cAAc,IAAI,QAAQ,CAAC,MAAM,UAAU;YAC9C,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,gBAAgB,gBAAgB,CACtE,CAAC;QAEF,8BAA8B;QAC9B,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;YAC1C,UAAU,EAAE,CACV,sBAAsB,EACtB,iFAAiF,CAClF,CAAC;YACF,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,iBAAiB,EAAE,uCAAuC,EAAE;gBAC5F,YAAY,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,UAAU;gBAC1D,iBAAiB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,MAAM;gBAC3D,OAAO,EAAE,gBAAgB,CAAC,OAAO;aAClC,CAAC,CAAC;QACL,CAAC;QAED,+CAA+C;QAC/C,qCAAqC;QACrC,+CAA+C;QAC/C,UAAU,EAAE,CAAC,cAAc,EAAE,+CAA+C,CAAC,CAAC;QAE9E,MAAM,mBAAmB,GAAG,MAAM,4BAA4B,CAC5D,UAAU,EACV,KAAK,CAAC,QAAQ,EACd,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,CAC3C,CAAC;QAEF,2BAA2B;QAC3B,KAAK,MAAM,MAAM,IAAI,mBAAmB,CAAC,OAAO,EAAE,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,sBAAsB,CAAC;gBAC1F,UAAU,EAAE,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,IAAI,mBAAmB,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;YAChG,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACrB,UAAU,EAAE,CAAC,cAAc,EAAE,0BAA0B,YAAY,cAAc,CAAC,CAAC;gBACnF,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnG,UAAU,EAAE,CAAC,cAAc,EAAE,cAAc,KAAK,WAAW,CAAC,CAAC;gBAE7D,kCAAkC;gBAClC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,UAAU,EAAE,CAAC,cAAc,EAAE,wCAAwC,CAAC,CAAC;oBACvE,MAAM,cAAc,GAAG,MAAM,4BAA4B,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAEtF,IAAI,cAAc,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;wBACpC,UAAU,EAAE,CACV,oBAAoB,EACpB,GAAG,cAAc,CAAC,YAAY,0CAA0C,CACzE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,mBAAmB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,UAAU,EAAE,CACV,oBAAoB,EACpB,aAAa,mBAAmB,CAAC,cAAc,CAAC,MAAM,0BAA0B,CACjF,CAAC;YAEF,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,cAAc,EAAE,CAAC;gBACvD,UAAU,EAAE,CAAC,oBAAoB,EAAE,OAAO,KAAK,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAiB,EAAE,oCAAoC,EAAE;gBAC1F,MAAM,EAAE,mBAAmB,CAAC,cAAc;aAC3C,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK;gBACL,cAAc;gBACd,WAAW;gBACX,KAAK,EAAE,gCAAgC,mBAAmB,CAAC,cAAc,CAAC,MAAM,kBAAkB;aACnG,CAAC;QACJ,CAAC;QAED,UAAU,EAAE,CACV,cAAc,EACd,0BAA0B,mBAAmB,CAAC,YAAY,IAAI,mBAAmB,CAAC,WAAW,gBAAgB,CAC9G,CAAC;QAEF,+CAA+C;QAC/C,0BAA0B;QAC1B,+CAA+C;QAC/C,UAAU,EAAE,CAAC,QAAQ,EAAE,8DAA8D,CAAC,CAAC;QACvF,MAAM,YAAY,GAAG,MAAM,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAEpE,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,UAAU,EAAE,CAAC,QAAQ,EAAE,kCAAkC,CAAC,CAAC;YAC3D,MAAM,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE;gBACjF,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,UAAU,EAAE,CAAC,gBAAgB,EAAE,8BAA8B,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;YACnF,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,EAAE,2BAA2B,EAAE;gBAC5E,KAAK,EAAE,YAAY,CAAC,KAAK;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,KAAK,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;QAE1C,UAAU,EAAE,CACV,oBAAoB,EACpB,qBAAqB,mBAAmB,gBAAgB,cAAc,+BAA+B,CACtG,CAAC;QAEF,MAAM,MAAM,CAAC,aAAa,CAAC,YAAY,EAAE,0CAA0C,EAAE;YACnF,mBAAmB,EAAE,mBAAmB;YACxC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM;YACxC,cAAc,EAAE,cAAc;YAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YACxE,WAAW,EAAE,WAAW,CAAC,OAAO;YAChC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;SACpF,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK;YACL,cAAc;YACd,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,eAAe;SAC5B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAC9E,UAAU,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAEpC,MAAM,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,uBAAuB,EAAE,YAAY,EAAE;YAC3E,SAAS,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK;YACzE,cAAc,EAAE,cAAc;YAC9B,WAAW,EAAE,WAAW;YACxB,mBAAmB,EAAE,mBAAmB;SACzC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAmB,CAAA,CAAC;YACtE,cAAc;YACd,WAAW;YACX,KAAK,EAAE,YAAY;SACpB,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAA6B;IAE7B,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC3C,IAAI,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;IAE1C,sDAAsD;IACtD,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;IAEvC,uBAAuB;IACvB,UAAU,EAAE,CACV,iBAAiB,EACjB,qBAAqB,QAAQ,CAAC,eAAe,EAAE,CAChD,CAAC;IAEF,4FAA4F;IAC5F,MAAM,0BAA0B,GAAG,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC;IAE7F,IAAI,0BAA0B,EAAE,CAAC;QAC/B,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,UAAU,EAAE,CAAC,iBAAiB,EAAE,gEAAgE,CAAC,CAAC;YAClG,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,KAAK;gBACL,cAAc,EAAE,QAAQ,CAAC,cAAc;gBACvC,WAAW,EAAE,CAAC;gBACd,WAAW,EAAE,QAAQ;aACtB,CAAC;QACJ,CAAC;QAED,8CAA8C;QAC9C,UAAU,EAAE,CACV,iBAAiB,EACjB,mDAAmD,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,UAAU,aAAa,CAC/G,CAAC;QAEF,yBAAyB;QACzB,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,UAAU,EAAE,CACV,cAAc,EACd,4CAA4C,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,WAAW,kBAAkB,CAC3G,CAAC;IACJ,CAAC;IAED,yFAAyF;IACzF,IAAI,YAAY,CAAC,UAAU,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAC3D,UAAU,EAAE,CACV,qBAAqB,EACrB,4FAA4F,CAC7F,CAAC;QAEF,uEAAuE;QACvE,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3D,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE;gBACpC,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,GAAG,CAAC;YACJ,wCAAwC;YACxC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC;gBACjD,CAAC,CAAC,UAAmB;gBACrB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC;oBACxE,CAAC,CAAC,aAAsB;oBACxB,CAAC,CAAC,SAAkB;YACxB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAkB,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CACnF;SACF,CAAC,CAAC,CAAC;QAEJ,MAAM,WAAW,CAAC,UAAU,EAAE;YAC5B,UAAU,EAAE,iBAAiB;YAC7B,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YAC7B,UAAU,EAAE,CACV,cAAc,EACd,SAAS,QAAQ,CAAC,WAAW,sCAAsC,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC3B,UAAU,EAAE,CACV,aAAa,EACb,mBAAmB,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,CACjD,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,UAAU,EAAE,CACV,aAAa,EACb,cAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,QAAQ,CAAC,QAAQ,CAAC,SAAS,GAAG,CAC3E,CAAC;IACJ,CAAC;IAED,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAkB,EAClB,MAAc,EACd,UAAyC,EAAE;IAE3C,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;IAE5C,gBAAgB;IAChB,IAAI,SAA2B,CAAC;IAChC,IAAI,cAAqC,CAAC;IAE1C,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QAC1D,IAAI,IAAI,EAAE,CAAC;YACT,SAAS,GAAG,IAAI,CAAC;YACjB,cAAc,GAAG,SAAS,CAAC;YAC3B,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE;YACzE,KAAK,EAAE,QAAQ,MAAM,YAAY;YACjC,OAAO,EAAE,CAAC;SACX,CAAC;IACJ,CAAC;IAED,OAAO,oBAAoB,CACzB,cAAc,EACd,SAAS,EACT,KAAK,EACL,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,CAC3B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"execution-mode.js","sourceRoot":"","sources":["../../src/workflow/execution-mode.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "popeye-cli",
3
- "version": "1.4.3",
3
+ "version": "1.4.4",
4
4
  "description": "Fully autonomous code generation tool powered by Claude CLI and OpenAI consensus",
5
5
  "main": "./dist/index.js",
6
6
  "bin": {
@@ -29,7 +29,7 @@ import { runComprehensiveVerification, autoFixIssues, resolveProjectPaths } from
29
29
  import { setupUI } from './ui-setup.js';
30
30
  import { designUI, saveUISpecification, loadUISpecification } from './ui-designer.js';
31
31
  import { iterateUntilConsensus, runOptimizedConsensusProcess, type ConsensusProcessResult } from './consensus.js';
32
- import { isWorkspace } from '../types/project.js';
32
+ import { isWorkspace, type OutputLanguage } from '../types/project.js';
33
33
  import { getProjectStructureSummary } from './project-structure.js';
34
34
 
35
35
  /**
@@ -167,6 +167,7 @@ async function generateProjectReadme(
167
167
  ): Promise<{ success: boolean; path?: string; error?: string }> {
168
168
  try {
169
169
  const readmePath = path.join(projectDir, 'README.md');
170
+ const workspace = isWorkspace(state.language);
170
171
 
171
172
  // Extract features from completed milestones
172
173
  const features = state.milestones
@@ -177,121 +178,460 @@ async function generateProjectReadme(
177
178
  tasks: m.tasks.filter(t => t.status === 'complete').map(t => t.name),
178
179
  }));
179
180
 
180
- // Determine run commands based on language
181
- const isTypeScript = state.language === 'typescript';
182
- const installCmd = isTypeScript ? 'npm install' : 'pip install -r requirements.txt';
183
- const devCmd = isTypeScript ? 'npm run dev' : 'python src/main.py';
184
- const testCmd = isTypeScript ? 'npm test' : 'pytest tests/ -v';
185
- const buildCmd = isTypeScript ? 'npm run build' : 'python -m py_compile src/**/*.py';
181
+ // Load workspace.json for workspace projects
182
+ let wsConfig: Record<string, unknown> | null = null;
183
+ if (workspace) {
184
+ try {
185
+ const wsContent = await fs.readFile(path.join(projectDir, '.popeye', 'workspace.json'), 'utf-8');
186
+ wsConfig = JSON.parse(wsContent);
187
+ } catch {
188
+ // workspace.json not available, use defaults
189
+ }
190
+ }
186
191
 
187
- // Build README content
188
- const readmeContent = `# ${state.name}
192
+ const description = state.specification
193
+ ? extractDescriptionFromSpec(state.specification)
194
+ : 'A project generated by Popeye CLI.';
189
195
 
190
- ${state.specification ? extractDescriptionFromSpec(state.specification) : 'A project generated by Popeye CLI.'}
196
+ const sections: string[] = [];
191
197
 
192
- ## Features
198
+ // Title and description
199
+ sections.push(`# ${state.name}\n\n${description}`);
193
200
 
194
- ${features.map(f => `### ${f.name}
201
+ // Features
202
+ const featuresContent = features.map(f => `### ${f.name}
195
203
  ${f.description || ''}
196
- ${f.tasks.length > 0 ? f.tasks.map(t => `- ${t}`).join('\n') : ''}`).join('\n\n')}
204
+ ${f.tasks.length > 0 ? f.tasks.map(t => `- ${t}`).join('\n') : ''}`).join('\n\n');
205
+ sections.push(`## Features\n\n${featuresContent}`);
197
206
 
198
- ## Prerequisites
207
+ // Prerequisites
208
+ sections.push(`## Prerequisites\n\n${generatePrerequisites(state.language)}`);
199
209
 
200
- ${isTypeScript ? `- Node.js 18.0 or higher
201
- - npm 8.0 or higher` : `- Python 3.9 or higher
202
- - pip (Python package manager)`}
210
+ // Installation
211
+ sections.push(`## Installation\n\n${generateInstallation(state.name, state.language)}`);
203
212
 
204
- ## Installation
205
-
206
- \`\`\`bash
207
- # Clone the repository (if applicable)
208
- cd ${state.name}
209
-
210
- # Install dependencies
211
- ${installCmd}
212
- \`\`\`
213
-
214
- ## Environment Setup
213
+ // Environment Setup
214
+ sections.push(`## Environment Setup
215
215
 
216
216
  1. Copy the example environment file:
217
217
  \`\`\`bash
218
218
  cp .env.example .env
219
219
  \`\`\`
220
220
 
221
- 2. Edit \`.env\` and fill in the required values.
221
+ 2. Edit \`.env\` and fill in the required values.`);
222
+
223
+ // Running the Application
224
+ sections.push(`## Running the Application\n\n${generateRunSection(state.language, wsConfig)}`);
225
+
226
+ // Project Structure
227
+ sections.push(`## Project Structure\n\n${generateStructureSection(state.name, state.language)}`);
228
+
229
+ // Deployment - per-app for workspace projects
230
+ if (workspace) {
231
+ sections.push(`## Deployment\n\n${generateDeploymentSection(state.name, state.language, wsConfig)}`);
232
+ }
233
+
234
+ // Development footer
235
+ sections.push(`## Development
236
+
237
+ This project was generated using [Popeye CLI](https://github.com/your-org/popeye-cli), an autonomous code generation tool.
222
238
 
223
- ## Running the Application
239
+ ### Development Plan
224
240
 
225
- ### Development Mode
241
+ See [docs/PLAN.md](docs/PLAN.md) for the complete development plan used to build this project.
242
+
243
+ ### Workflow Log
244
+
245
+ See [docs/WORKFLOW_LOG.md](docs/WORKFLOW_LOG.md) for detailed execution logs.
246
+
247
+ ## License
248
+
249
+ MIT`);
250
+
251
+ const readmeContent = sections.join('\n\n') + '\n';
252
+ await fs.writeFile(readmePath, readmeContent, 'utf-8');
253
+
254
+ return { success: true, path: readmePath };
255
+ } catch (error) {
256
+ return {
257
+ success: false,
258
+ error: error instanceof Error ? error.message : 'Failed to generate README',
259
+ };
260
+ }
261
+ }
262
+
263
+ /**
264
+ * Generate prerequisites section based on language
265
+ */
266
+ function generatePrerequisites(language: OutputLanguage): string {
267
+ if (language === 'python') {
268
+ return `- Python 3.9 or higher
269
+ - pip (Python package manager)`;
270
+ }
271
+ if (language === 'typescript' || language === 'website') {
272
+ return `- Node.js 18.0 or higher
273
+ - npm 8.0 or higher`;
274
+ }
275
+ // Workspace projects (fullstack, all) need both
276
+ return `- Node.js 18.0 or higher
277
+ - npm 8.0 or higher
278
+ - Python 3.9 or higher
279
+ - pip (Python package manager)
280
+ - Docker and Docker Compose (recommended for local development)`;
281
+ }
282
+
283
+ /**
284
+ * Generate installation section based on language
285
+ */
286
+ function generateInstallation(name: string, language: OutputLanguage): string {
287
+ const lines = [`\`\`\`bash`, `cd ${name}`, ''];
288
+
289
+ if (isWorkspace(language)) {
290
+ lines.push('# Install all workspace dependencies');
291
+ lines.push('npm install');
292
+ lines.push('');
293
+ lines.push('# Install backend Python dependencies');
294
+ lines.push('cd apps/backend && pip install -r requirements.txt && cd ../..');
295
+ if (language === 'all') {
296
+ lines.push('');
297
+ lines.push('# Install website dependencies (if not covered by workspace)');
298
+ lines.push('cd apps/website && npm install && cd ../..');
299
+ }
300
+ } else if (language === 'python') {
301
+ lines.push('pip install -r requirements.txt');
302
+ } else {
303
+ lines.push('npm install');
304
+ }
305
+
306
+ lines.push('```');
307
+ return lines.join('\n');
308
+ }
309
+
310
+ /**
311
+ * Generate run commands section based on language
312
+ */
313
+ function generateRunSection(language: OutputLanguage, wsConfig: Record<string, unknown> | null): string {
314
+ if (language === 'python') {
315
+ return `### Development Mode
316
+
317
+ \`\`\`bash
318
+ python src/main.py
319
+ \`\`\`
320
+
321
+ ### Running Tests
322
+
323
+ \`\`\`bash
324
+ pytest tests/ -v
325
+ \`\`\`
326
+
327
+ ### Build for Production
226
328
 
227
329
  \`\`\`bash
228
- ${devCmd}
330
+ python -m py_compile src/**/*.py
331
+ \`\`\``;
332
+ }
333
+
334
+ if (language === 'typescript') {
335
+ return `### Development Mode
336
+
337
+ \`\`\`bash
338
+ npm run dev
229
339
  \`\`\`
230
340
 
231
341
  ### Running Tests
232
342
 
233
343
  \`\`\`bash
234
- ${testCmd}
344
+ npm test
235
345
  \`\`\`
236
346
 
237
347
  ### Build for Production
238
348
 
239
349
  \`\`\`bash
240
- ${buildCmd}
350
+ npm run build
241
351
  \`\`\`
242
352
 
243
- ${isTypeScript ? `### Start Production Server
353
+ ### Start Production Server
244
354
 
245
355
  \`\`\`bash
246
356
  npm start
357
+ \`\`\``;
358
+ }
359
+
360
+ if (language === 'website') {
361
+ return `### Development Mode
362
+
363
+ \`\`\`bash
364
+ npm run dev
365
+ \`\`\`
366
+
367
+ ### Running Tests
368
+
369
+ \`\`\`bash
370
+ npm test
371
+ \`\`\`
372
+
373
+ ### Build for Production
374
+
375
+ \`\`\`bash
376
+ npm run build
377
+ \`\`\`
378
+
379
+ ### Preview Production Build
380
+
381
+ \`\`\`bash
382
+ npm run start
383
+ \`\`\``;
384
+ }
385
+
386
+ // Workspace projects (fullstack, all)
387
+ const apps = (wsConfig as { apps?: Record<string, { path?: string; commands?: Record<string, string> }> })?.apps;
388
+
389
+ const lines: string[] = [];
390
+
391
+ lines.push(`### Run Everything (Docker Compose)
392
+
393
+ \`\`\`bash
394
+ docker-compose up
247
395
  \`\`\`
248
- ` : ''}
249
- ## Project Structure
250
396
 
397
+ ### Run Individual Apps`);
398
+
399
+ // Frontend
400
+ const fePath = apps?.frontend?.path || 'apps/frontend';
401
+ lines.push(`
402
+ #### Frontend (React/Vite)
403
+
404
+ \`\`\`bash
405
+ cd ${fePath}
406
+ npm run dev # Development server
407
+ npm run build # Production build
408
+ npm test # Run tests
409
+ \`\`\``);
410
+
411
+ // Backend
412
+ const bePath = apps?.backend?.path || 'apps/backend';
413
+ lines.push(`
414
+ #### Backend (Python/FastAPI)
415
+
416
+ \`\`\`bash
417
+ cd ${bePath}
418
+ uvicorn src.backend.main:app --reload --port 8000 # Development server
419
+ pip install -e . # Build/install
420
+ pytest tests/ -v # Run tests
421
+ \`\`\``);
422
+
423
+ // Website (for 'all' projects)
424
+ if (language === 'all') {
425
+ const webPath = apps?.website?.path || 'apps/website';
426
+ lines.push(`
427
+ #### Website (Next.js)
428
+
429
+ \`\`\`bash
430
+ cd ${webPath}
431
+ npm run dev # Development server (port 3001)
432
+ npm run build # Production build
433
+ npm test # Run tests
434
+ \`\`\``);
435
+ }
436
+
437
+ // All-at-once commands
438
+ lines.push(`
439
+ ### Run All Tests
440
+
441
+ \`\`\`bash
442
+ npm run test:all
251
443
  \`\`\`
252
- ${state.name}/
444
+
445
+ ### Build All
446
+
447
+ \`\`\`bash
448
+ npm run build:all
449
+ \`\`\``);
450
+
451
+ return lines.join('\n');
452
+ }
453
+
454
+ /**
455
+ * Generate project structure section based on language
456
+ */
457
+ function generateStructureSection(name: string, language: OutputLanguage): string {
458
+ if (language === 'python') {
459
+ return `\`\`\`
460
+ ${name}/
253
461
  ├── src/ # Source code
254
- ${isTypeScript ? `│ └── index.ts # Main entry point` : `│ ├── __init__.py
255
- │ └── main.py # Main entry point`}
462
+ ├── __init__.py
463
+ │ └── main.py # Main entry point
256
464
  ├── tests/ # Test files
257
465
  ├── docs/ # Documentation
258
466
  │ ├── PLAN.md # Development plan
259
467
  │ └── WORKFLOW_LOG.md # Execution log
260
- ${isTypeScript ? `├── package.json # Dependencies and scripts
261
- ├── tsconfig.json # TypeScript configuration` : `├── requirements.txt # Python dependencies
262
- ├── pyproject.toml # Project configuration`}
468
+ ├── requirements.txt # Python dependencies
469
+ ├── pyproject.toml # Project configuration
263
470
  ├── .env.example # Environment template
264
471
  ├── .gitignore
265
472
  ├── Dockerfile
266
473
  └── README.md
267
- \`\`\`
474
+ \`\`\``;
475
+ }
268
476
 
269
- ## Development
477
+ if (language === 'typescript') {
478
+ return `\`\`\`
479
+ ${name}/
480
+ ├── src/ # Source code
481
+ │ └── index.ts # Main entry point
482
+ ├── tests/ # Test files
483
+ ├── docs/ # Documentation
484
+ │ ├── PLAN.md # Development plan
485
+ │ └── WORKFLOW_LOG.md # Execution log
486
+ ├── package.json # Dependencies and scripts
487
+ ├── tsconfig.json # TypeScript configuration
488
+ ├── .env.example # Environment template
489
+ ├── .gitignore
490
+ ├── Dockerfile
491
+ └── README.md
492
+ \`\`\``;
493
+ }
270
494
 
271
- This project was generated using [Popeye CLI](https://github.com/your-org/popeye-cli), an autonomous code generation tool.
495
+ if (language === 'website') {
496
+ return `\`\`\`
497
+ ${name}/
498
+ ├── app/ # Next.js app directory
499
+ │ ├── layout.tsx # Root layout
500
+ │ └── page.tsx # Home page
501
+ ├── components/ # React components
502
+ ├── public/ # Static assets
503
+ ├── docs/ # Documentation
504
+ │ ├── PLAN.md # Development plan
505
+ │ └── WORKFLOW_LOG.md # Execution log
506
+ ├── package.json # Dependencies and scripts
507
+ ├── next.config.js # Next.js configuration
508
+ ├── tsconfig.json # TypeScript configuration
509
+ ├── .env.example # Environment template
510
+ ├── .gitignore
511
+ ├── Dockerfile
512
+ └── README.md
513
+ \`\`\``;
514
+ }
272
515
 
273
- ### Development Plan
516
+ // Workspace (fullstack / all)
517
+ const websiteTree = language === 'all' ? `│ ├── website/ # Next.js marketing/landing site
518
+ │ │ ├── app/
519
+ │ │ ├── components/
520
+ │ │ ├── package.json
521
+ │ │ └── Dockerfile
522
+ ` : '';
523
+
524
+ const packagesTree = language === 'all' ? `├── packages/ # Shared packages
525
+ │ ├── design-tokens/ # Shared design tokens
526
+ │ ├── ui/ # Shared UI components
527
+ │ └── contracts/ # API contracts (OpenAPI)
528
+ ` : '';
529
+
530
+ return `\`\`\`
531
+ ${name}/
532
+ ├── apps/
533
+ │ ├── frontend/ # React/Vite frontend
534
+ │ │ ├── src/
535
+ │ │ ├── package.json
536
+ │ │ └── Dockerfile
537
+ │ ├── backend/ # Python/FastAPI backend
538
+ │ │ ├── src/
539
+ │ │ ├── tests/
540
+ │ │ ├── requirements.txt
541
+ │ │ └── Dockerfile
542
+ ${websiteTree}${packagesTree}├── docs/ # Documentation
543
+ │ ├── PLAN.md # Development plan
544
+ │ └── WORKFLOW_LOG.md # Execution log
545
+ ├── .popeye/ # Popeye configuration
546
+ │ └── workspace.json # Workspace configuration
547
+ ├── docker-compose.yml # Local development stack
548
+ ├── package.json # Root workspace config
549
+ ├── .env.example # Environment template
550
+ ├── .gitignore
551
+ └── README.md
552
+ \`\`\``;
553
+ }
274
554
 
275
- See [docs/PLAN.md](docs/PLAN.md) for the complete development plan used to build this project.
555
+ /**
556
+ * Generate deployment section for workspace projects
557
+ */
558
+ function generateDeploymentSection(
559
+ name: string,
560
+ language: OutputLanguage,
561
+ wsConfig: Record<string, unknown> | null
562
+ ): string {
563
+ const apps = (wsConfig as { apps?: Record<string, { docker?: { imageName?: string; context?: string; dockerfile?: string } }> })?.apps;
564
+ const feImage = apps?.frontend?.docker?.imageName || `${name}-frontend`;
565
+ const beImage = apps?.backend?.docker?.imageName || `${name}-backend`;
276
566
 
277
- ### Workflow Log
567
+ const lines: string[] = [];
278
568
 
279
- See [docs/WORKFLOW_LOG.md](docs/WORKFLOW_LOG.md) for detailed execution logs.
569
+ lines.push(`Each app can be built and deployed independently as a Docker container.
280
570
 
281
- ## License
571
+ ### Build Docker Images
282
572
 
283
- MIT
284
- `;
573
+ \`\`\`bash
574
+ # Frontend
575
+ docker build -t ${feImage} -f apps/frontend/Dockerfile apps/frontend
285
576
 
286
- await fs.writeFile(readmePath, readmeContent, 'utf-8');
577
+ # Backend
578
+ docker build -t ${beImage} -f apps/backend/Dockerfile apps/backend`);
287
579
 
288
- return { success: true, path: readmePath };
289
- } catch (error) {
290
- return {
291
- success: false,
292
- error: error instanceof Error ? error.message : 'Failed to generate README',
293
- };
580
+ if (language === 'all') {
581
+ const webImage = apps?.website?.docker?.imageName || `${name}-website`;
582
+ lines.push(`
583
+ # Website
584
+ docker build -t ${webImage} -f apps/website/Dockerfile apps/website`);
294
585
  }
586
+
587
+ lines.push('```');
588
+
589
+ lines.push(`
590
+ ### Deploy with Docker Compose
591
+
592
+ \`\`\`bash
593
+ # Start all services
594
+ docker-compose up -d
595
+
596
+ # View logs
597
+ docker-compose logs -f
598
+
599
+ # Stop all services
600
+ docker-compose down
601
+ \`\`\``);
602
+
603
+ lines.push(`
604
+ ### Individual App Deployment
605
+
606
+ #### Frontend (Static Site)
607
+ The frontend builds to static files that can be served by any CDN or static hosting:
608
+ \`\`\`bash
609
+ cd apps/frontend
610
+ npm run build
611
+ # Deploy the dist/ folder to your hosting provider (Vercel, Netlify, S3, etc.)
612
+ \`\`\`
613
+
614
+ #### Backend (API Server)
615
+ The backend runs as a Python ASGI server:
616
+ \`\`\`bash
617
+ cd apps/backend
618
+ pip install -r requirements.txt
619
+ uvicorn src.backend.main:app --host 0.0.0.0 --port 8000
620
+ \`\`\``);
621
+
622
+ if (language === 'all') {
623
+ lines.push(`
624
+ #### Website (Next.js SSR/SSG)
625
+ The website can be deployed as a Node.js server or exported as static files:
626
+ \`\`\`bash
627
+ cd apps/website
628
+ npm run build
629
+ npm start # Run as Node.js server
630
+ # Or deploy to Vercel/Netlify for automatic SSR support
631
+ \`\`\``);
632
+ }
633
+
634
+ return lines.join('\n');
295
635
  }
296
636
 
297
637
  /**