n8n-nodes-qiniu-ai 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/nodes/QiniuAi/QiniuAi.node.js +185 -9
- package/dist/nodes/QiniuAi/descriptions/AgentDescription.js +78 -1
- package/dist/nodes/QiniuAi/descriptions/ImageDescription.js +44 -1
- package/dist/nodes/QiniuAi/descriptions/ToolsDescription.js +34 -1
- package/dist/nodes/QiniuAi/descriptions/VideoDescription.js +123 -1
- package/package.json +2 -2
|
@@ -221,6 +221,27 @@ async function handleImage(context, client, itemIndex) {
|
|
|
221
221
|
if (options.imageSize) {
|
|
222
222
|
params.image_config = { image_size: options.imageSize };
|
|
223
223
|
}
|
|
224
|
+
// Advanced image references (generate only)
|
|
225
|
+
if (operation === 'generate') {
|
|
226
|
+
const subjectImageUrls = context.getNodeParameter('subjectImageUrls', itemIndex, '');
|
|
227
|
+
const sceneImageUrl = context.getNodeParameter('sceneImageUrl', itemIndex, '');
|
|
228
|
+
const styleImageUrl = context.getNodeParameter('styleImageUrl', itemIndex, '');
|
|
229
|
+
// Subject reference images
|
|
230
|
+
if (subjectImageUrls) {
|
|
231
|
+
const urls = subjectImageUrls.split(',').map(u => u.trim()).filter(u => u);
|
|
232
|
+
if (urls.length > 0) {
|
|
233
|
+
params.subject_image_list = urls.map(image => ({ image, image_type: 'subject' }));
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
// Scene reference image
|
|
237
|
+
if (sceneImageUrl) {
|
|
238
|
+
params.scene_image = { image: sceneImageUrl };
|
|
239
|
+
}
|
|
240
|
+
// Style reference image
|
|
241
|
+
if (styleImageUrl) {
|
|
242
|
+
params.style_image = { image: styleImageUrl };
|
|
243
|
+
}
|
|
244
|
+
}
|
|
224
245
|
let result;
|
|
225
246
|
if (operation === 'generate') {
|
|
226
247
|
const createResult = await client.image.generate(params);
|
|
@@ -278,6 +299,36 @@ async function handleVideo(context, client, itemIndex) {
|
|
|
278
299
|
_raw: result,
|
|
279
300
|
};
|
|
280
301
|
}
|
|
302
|
+
if (operation === 'remix') {
|
|
303
|
+
const sourceVideoId = context.getNodeParameter('sourceVideoId', itemIndex);
|
|
304
|
+
const remixPrompt = context.getNodeParameter('remixPrompt', itemIndex, '');
|
|
305
|
+
const waitForCompletion = context.getNodeParameter('waitForCompletion', itemIndex, true);
|
|
306
|
+
const remixOptions = context.getNodeParameter('remixOptions', itemIndex, {});
|
|
307
|
+
const remixParams = {};
|
|
308
|
+
if (remixPrompt)
|
|
309
|
+
remixParams.prompt = remixPrompt;
|
|
310
|
+
if (remixOptions.duration)
|
|
311
|
+
remixParams.duration = remixOptions.duration;
|
|
312
|
+
if (remixOptions.mode)
|
|
313
|
+
remixParams.mode = remixOptions.mode;
|
|
314
|
+
if (remixOptions.negativePrompt)
|
|
315
|
+
remixParams.negative_prompt = remixOptions.negativePrompt;
|
|
316
|
+
const task = await client.video.remix(sourceVideoId, remixParams);
|
|
317
|
+
if (waitForCompletion) {
|
|
318
|
+
const result = await client.video.waitForCompletion(task.id);
|
|
319
|
+
return {
|
|
320
|
+
id: result.id,
|
|
321
|
+
status: result.status,
|
|
322
|
+
videos: result.task_result?.videos || [],
|
|
323
|
+
_raw: result,
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
return {
|
|
327
|
+
id: task.id,
|
|
328
|
+
status: 'processing',
|
|
329
|
+
_raw: task,
|
|
330
|
+
};
|
|
331
|
+
}
|
|
281
332
|
// Generate
|
|
282
333
|
const model = context.getNodeParameter('model', itemIndex);
|
|
283
334
|
const prompt = context.getNodeParameter('prompt', itemIndex);
|
|
@@ -325,6 +376,15 @@ async function handleVideo(context, client, itemIndex) {
|
|
|
325
376
|
if (Object.keys(frames).length > 0) {
|
|
326
377
|
params.frames = frames;
|
|
327
378
|
}
|
|
379
|
+
// Video reference (video_list) for video-to-video generation
|
|
380
|
+
const videoReferenceUrl = context.getNodeParameter('videoReferenceUrl', itemIndex, '');
|
|
381
|
+
const keepOriginalSound = context.getNodeParameter('keepOriginalSound', itemIndex, false);
|
|
382
|
+
if (videoReferenceUrl) {
|
|
383
|
+
params.video_list = [{
|
|
384
|
+
video_url: videoReferenceUrl,
|
|
385
|
+
keep_original_sound: keepOriginalSound ? 'yes' : 'no',
|
|
386
|
+
}];
|
|
387
|
+
}
|
|
328
388
|
// Model-specific options
|
|
329
389
|
if (model.includes('kling')) {
|
|
330
390
|
const klingOptions = context.getNodeParameter('klingOptions', itemIndex, {});
|
|
@@ -384,22 +444,105 @@ async function handleAgent(context, client, itemIndex) {
|
|
|
384
444
|
const model = context.getNodeParameter('model', itemIndex);
|
|
385
445
|
const prompt = context.getNodeParameter('prompt', itemIndex);
|
|
386
446
|
const systemMessage = context.getNodeParameter('systemMessage', itemIndex, '');
|
|
447
|
+
const builtinTools = context.getNodeParameter('builtinTools', itemIndex, []);
|
|
448
|
+
const autoExecuteTools = context.getNodeParameter('autoExecuteTools', itemIndex, true);
|
|
387
449
|
const options = context.getNodeParameter('options', itemIndex, {});
|
|
388
|
-
//
|
|
389
|
-
|
|
450
|
+
// Build tools record
|
|
451
|
+
const toolsRecord = {};
|
|
452
|
+
// Register built-in tools
|
|
453
|
+
if (builtinTools.includes('webSearch')) {
|
|
454
|
+
toolsRecord['web_search'] = {
|
|
455
|
+
description: 'Search the web for information. Use this to find current information.',
|
|
456
|
+
parameters: {
|
|
457
|
+
type: 'object',
|
|
458
|
+
properties: {
|
|
459
|
+
query: { type: 'string', description: 'The search query' },
|
|
460
|
+
},
|
|
461
|
+
required: ['query'],
|
|
462
|
+
},
|
|
463
|
+
execute: async (args) => {
|
|
464
|
+
const results = await client.sys.search({ query: args.query });
|
|
465
|
+
return { results: results?.slice(0, 5) || [] };
|
|
466
|
+
},
|
|
467
|
+
};
|
|
468
|
+
}
|
|
469
|
+
if (builtinTools.includes('ocr')) {
|
|
470
|
+
toolsRecord['ocr'] = {
|
|
471
|
+
description: 'Extract text from an image URL using OCR.',
|
|
472
|
+
parameters: {
|
|
473
|
+
type: 'object',
|
|
474
|
+
properties: {
|
|
475
|
+
url: { type: 'string', description: 'The image URL to extract text from' },
|
|
476
|
+
},
|
|
477
|
+
required: ['url'],
|
|
478
|
+
},
|
|
479
|
+
execute: async (args) => {
|
|
480
|
+
const result = await client.ocr.detect({ url: args.url });
|
|
481
|
+
return result;
|
|
482
|
+
},
|
|
483
|
+
};
|
|
484
|
+
}
|
|
485
|
+
if (builtinTools.includes('imageGenerate')) {
|
|
486
|
+
toolsRecord['generate_image'] = {
|
|
487
|
+
description: 'Generate an image from a text prompt.',
|
|
488
|
+
parameters: {
|
|
489
|
+
type: 'object',
|
|
490
|
+
properties: {
|
|
491
|
+
prompt: { type: 'string', description: 'Description of the image to generate' },
|
|
492
|
+
},
|
|
493
|
+
required: ['prompt'],
|
|
494
|
+
},
|
|
495
|
+
execute: async (args) => {
|
|
496
|
+
const createResult = await client.image.generate({
|
|
497
|
+
model: 'kling-v2-1',
|
|
498
|
+
prompt: args.prompt,
|
|
499
|
+
});
|
|
500
|
+
const result = await client.image.waitForResult(createResult);
|
|
501
|
+
return {
|
|
502
|
+
images: result.data?.map((d) => d.url || d.b64_json?.substring(0, 100) + '...') || [],
|
|
503
|
+
};
|
|
504
|
+
},
|
|
505
|
+
};
|
|
506
|
+
}
|
|
507
|
+
if (builtinTools.includes('videoGenerate')) {
|
|
508
|
+
toolsRecord['generate_video'] = {
|
|
509
|
+
description: 'Generate a video from a text prompt.',
|
|
510
|
+
parameters: {
|
|
511
|
+
type: 'object',
|
|
512
|
+
properties: {
|
|
513
|
+
prompt: { type: 'string', description: 'Description of the video to generate' },
|
|
514
|
+
},
|
|
515
|
+
required: ['prompt'],
|
|
516
|
+
},
|
|
517
|
+
execute: async (args) => {
|
|
518
|
+
const task = await client.video.create({
|
|
519
|
+
model: 'kling-video-o1',
|
|
520
|
+
prompt: args.prompt,
|
|
521
|
+
duration: '5',
|
|
522
|
+
aspect_ratio: '16:9',
|
|
523
|
+
});
|
|
524
|
+
const result = await client.video.waitForCompletion(task.id);
|
|
525
|
+
return {
|
|
526
|
+
id: result.id,
|
|
527
|
+
status: result.status,
|
|
528
|
+
videos: result.task_result?.videos || [],
|
|
529
|
+
};
|
|
530
|
+
},
|
|
531
|
+
};
|
|
532
|
+
}
|
|
533
|
+
// Parse user-defined tools
|
|
390
534
|
if (options.tools) {
|
|
391
535
|
try {
|
|
392
536
|
const toolsArray = JSON.parse(options.tools);
|
|
393
537
|
if (Array.isArray(toolsArray) && toolsArray.length > 0) {
|
|
394
|
-
toolsRecord = {};
|
|
395
538
|
for (const tool of toolsArray) {
|
|
396
539
|
if (tool.function?.name) {
|
|
397
540
|
toolsRecord[tool.function.name] = {
|
|
398
541
|
description: tool.function.description || '',
|
|
399
542
|
parameters: tool.function.parameters || {},
|
|
400
543
|
execute: async (_args) => {
|
|
401
|
-
//
|
|
402
|
-
return { result: 'Tool
|
|
544
|
+
// User-defined tools return placeholder for manual execution
|
|
545
|
+
return { result: 'Tool executed. Process the result in subsequent workflow steps.' };
|
|
403
546
|
},
|
|
404
547
|
};
|
|
405
548
|
}
|
|
@@ -410,6 +553,23 @@ async function handleAgent(context, client, itemIndex) {
|
|
|
410
553
|
throw new n8n_workflow_1.NodeOperationError(context.getNode(), 'Invalid tools JSON format', { itemIndex });
|
|
411
554
|
}
|
|
412
555
|
}
|
|
556
|
+
// Execute with AgentGraph if auto-execute is enabled and there are tools
|
|
557
|
+
const hasTools = Object.keys(toolsRecord).length > 0;
|
|
558
|
+
// Initialize Checkpointer if configured
|
|
559
|
+
// Note: Checkpointer integration requires AgentGraph directly, not generateTextWithGraph
|
|
560
|
+
// This is a placeholder for future full implementation
|
|
561
|
+
let checkpointerInfo = null;
|
|
562
|
+
if (options.checkpointerType && options.checkpointerType !== 'none') {
|
|
563
|
+
if (options.checkpointerType === 'memory') {
|
|
564
|
+
checkpointerInfo = 'memory';
|
|
565
|
+
}
|
|
566
|
+
else if (options.checkpointerType === 'redis') {
|
|
567
|
+
checkpointerInfo = `redis:${options.checkpointerConnection || 'not-configured'}`;
|
|
568
|
+
}
|
|
569
|
+
else if (options.checkpointerType === 'postgres') {
|
|
570
|
+
checkpointerInfo = `postgres:${options.checkpointerConnection || 'not-configured'}`;
|
|
571
|
+
}
|
|
572
|
+
}
|
|
413
573
|
const result = await (0, qiniu_ai_sdk_1.generateTextWithGraph)({
|
|
414
574
|
client,
|
|
415
575
|
model,
|
|
@@ -418,10 +578,11 @@ async function handleAgent(context, client, itemIndex) {
|
|
|
418
578
|
maxContextTokens: options.maxContextTokens || 32000,
|
|
419
579
|
maxSteps: options.maxSteps || 10,
|
|
420
580
|
temperature: options.temperature,
|
|
421
|
-
tools: toolsRecord,
|
|
581
|
+
tools: hasTools && autoExecuteTools ? toolsRecord : undefined,
|
|
422
582
|
});
|
|
423
583
|
return {
|
|
424
584
|
content: result.text || '',
|
|
585
|
+
reasoning: result.reasoning || '',
|
|
425
586
|
steps: result.steps?.map((step) => ({
|
|
426
587
|
type: step.type,
|
|
427
588
|
toolName: step.toolName,
|
|
@@ -429,6 +590,9 @@ async function handleAgent(context, client, itemIndex) {
|
|
|
429
590
|
toolResult: step.toolResult,
|
|
430
591
|
text: step.text,
|
|
431
592
|
})) || [],
|
|
593
|
+
toolsExecuted: result.steps?.filter((s) => s.type === 'tool_call').length || 0,
|
|
594
|
+
threadId: options.threadId || null,
|
|
595
|
+
checkpointer: checkpointerInfo,
|
|
432
596
|
usage: result.usage
|
|
433
597
|
? {
|
|
434
598
|
promptTokens: result.usage.prompt_tokens,
|
|
@@ -486,8 +650,20 @@ async function handleTools(context, client, itemIndex) {
|
|
|
486
650
|
const operation = context.getNodeParameter('operation', itemIndex);
|
|
487
651
|
if (operation === 'webSearch') {
|
|
488
652
|
const query = context.getNodeParameter('query', itemIndex);
|
|
489
|
-
|
|
490
|
-
const
|
|
653
|
+
const options = context.getNodeParameter('options', itemIndex, {});
|
|
654
|
+
const searchParams = { query };
|
|
655
|
+
if (options.maxResults)
|
|
656
|
+
searchParams.max_results = options.maxResults;
|
|
657
|
+
if (options.searchType)
|
|
658
|
+
searchParams.search_type = options.searchType;
|
|
659
|
+
if (options.timeFilter)
|
|
660
|
+
searchParams.time_filter = options.timeFilter;
|
|
661
|
+
if (options.siteFilter) {
|
|
662
|
+
const sites = options.siteFilter.split(',').map(s => s.trim()).filter(s => s);
|
|
663
|
+
if (sites.length > 0)
|
|
664
|
+
searchParams.site_filter = sites;
|
|
665
|
+
}
|
|
666
|
+
const results = await client.sys.search(searchParams);
|
|
491
667
|
return {
|
|
492
668
|
results: results || [],
|
|
493
669
|
query,
|
|
@@ -520,4 +696,4 @@ async function handleTools(context, client, itemIndex) {
|
|
|
520
696
|
}
|
|
521
697
|
throw new n8n_workflow_1.NodeOperationError(context.getNode(), `Unknown tools operation: ${operation}`, { itemIndex });
|
|
522
698
|
}
|
|
523
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUWluaXVBaS5ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbm9kZXMvUWluaXVBaS9RaW5pdUFpLm5vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBUXNCO0FBRXRCLHdEQUFpRjtBQUVqRixvRUFBNEU7QUFDNUUsc0VBQStFO0FBQy9FLHNFQUErRTtBQUMvRSxzRUFBK0U7QUFDL0Usc0VBQStFO0FBQy9FLHNFQUErRTtBQUUvRSxNQUFhLE9BQU87SUFBcEI7UUFDSSxnQkFBVyxHQUF5QjtZQUNoQyxXQUFXLEVBQUUsVUFBVTtZQUN2QixJQUFJLEVBQUUsU0FBUztZQUNmLElBQUksRUFBRSxnQkFBZ0I7WUFDdEIsS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsUUFBUSxFQUFFLDhEQUE4RDtZQUN4RSxXQUFXLEVBQUUsc0VBQXNFO1lBQ25GLFFBQVEsRUFBRTtnQkFDTixJQUFJLEVBQUUsVUFBVTthQUNuQjtZQUNELE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNoQixPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDakIsV0FBVyxFQUFFO2dCQUNUO29CQUNJLElBQUksRUFBRSxZQUFZO29CQUNsQixRQUFRLEVBQUUsSUFBSTtpQkFDakI7YUFDSjtZQUNELFVBQVUsRUFBRTtnQkFDUixXQUFXO2dCQUNYO29CQUNJLFdBQVcsRUFBRSxVQUFVO29CQUN2QixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtvQkFDdEIsT0FBTyxFQUFFO3dCQUNMOzRCQUNJLElBQUksRUFBRSxNQUFNOzRCQUNaLEtBQUssRUFBRSxNQUFNOzRCQUNiLFdBQVcsRUFBRSwyQkFBMkI7eUJBQzNDO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSx5QkFB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LEVBQUUsS0FBSyxFQUFFLFFBQVEsUUFBUSxXQUFXLFVBQVUsRUFBRSxFQUFFLENBQUM7UUFDbkUsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbEQsT0FBTztZQUNILElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDdkIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRTtZQUMzQixJQUFJLEVBQUUsTUFBZ0M7U0FDekMsQ0FBQztJQUNOLENBQUM7SUFFRCxNQUFNLElBQUksaUNBQWtCLENBQ3hCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFDakIsNEJBQTRCLFNBQVMsRUFBRSxFQUN2QyxFQUFFLFNBQVMsRUFBRSxDQUNoQixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSUV4ZWN1dGVGdW5jdGlvbnMsXG4gICAgSU5vZGVFeGVjdXRpb25EYXRhLFxuICAgIElOb2RlVHlwZSxcbiAgICBJTm9kZVR5cGVEZXNjcmlwdGlvbixcbiAgICBOb2RlT3BlcmF0aW9uRXJyb3IsXG4gICAgSURhdGFPYmplY3QsXG4gICAgSUJpbmFyeUtleURhdGEsXG59IGZyb20gJ244bi13b3JrZmxvdyc7XG5cbmltcG9ydCB7IFFpbml1QUksIGdlbmVyYXRlVGV4dFdpdGhHcmFwaCwgQVBJRXJyb3IgfSBmcm9tICdAYm93ZW5xdC9xaW5pdS1haS1zZGsnO1xuXG5pbXBvcnQgeyBjaGF0T3BlcmF0aW9ucywgY2hhdEZpZWxkcyB9IGZyb20gJy4vZGVzY3JpcHRpb25zL0NoYXREZXNjcmlwdGlvbic7XG5pbXBvcnQgeyBpbWFnZU9wZXJhdGlvbnMsIGltYWdlRmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvSW1hZ2VEZXNjcmlwdGlvbic7XG5pbXBvcnQgeyB2aWRlb09wZXJhdGlvbnMsIHZpZGVvRmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvVmlkZW9EZXNjcmlwdGlvbic7XG5pbXBvcnQgeyBhZ2VudE9wZXJhdGlvbnMsIGFnZW50RmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvQWdlbnREZXNjcmlwdGlvbic7XG5pbXBvcnQgeyBhdWRpb09wZXJhdGlvbnMsIGF1ZGlvRmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvQXVkaW9EZXNjcmlwdGlvbic7XG5pbXBvcnQgeyB0b29sc09wZXJhdGlvbnMsIHRvb2xzRmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvVG9vbHNEZXNjcmlwdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBRaW5pdUFpIGltcGxlbWVudHMgSU5vZGVUeXBlIHtcbiAgICBkZXNjcmlwdGlvbjogSU5vZGVUeXBlRGVzY3JpcHRpb24gPSB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnUWluaXUgQUknLFxuICAgICAgICBuYW1lOiAncWluaXVBaScsXG4gICAgICAgIGljb246ICdmaWxlOnFpbml1LnN2ZycsXG4gICAgICAgIGdyb3VwOiBbJ3RyYW5zZm9ybSddLFxuICAgICAgICB2ZXJzaW9uOiAxLFxuICAgICAgICBzdWJ0aXRsZTogJz17eyRwYXJhbWV0ZXJbXCJvcGVyYXRpb25cIl0gKyBcIjogXCIgKyAkcGFyYW1ldGVyW1wicmVzb3VyY2VcIl19fScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnSW50ZXJhY3Qgd2l0aCBRaW5pdSBBSSBzZXJ2aWNlcyAtIENoYXQsIEltYWdlLCBWaWRlbywgQWdlbnQgYW5kIG1vcmUnLFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgbmFtZTogJ1Fpbml1IEFJJyxcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXRzOiBbJ21haW4nXSxcbiAgICAgICAgb3V0cHV0czogWydtYWluJ10sXG4gICAgICAgIGNyZWRlbnRpYWxzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Fpbml1QWlBcGknLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgLy8gUmVzb3VyY2VcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1Jlc291cmNlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVzb3VyY2UnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBub0RhdGFFeHByZXNzaW9uOiB0cnVlLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0NoYXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICdjaGF0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgY2hhdCBjb21wbGV0aW9ucycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdJbWFnZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2ltYWdlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgb3IgZWRpdCBpbWFnZXMnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVmlkZW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICd2aWRlbycsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0dlbmVyYXRlIHZpZGVvcycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdBZ2VudCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2FnZW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnUnVuIEFJIGFnZW50IHdpdGggdG9vbHMgYW5kIG1lbW9yeScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdBdWRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2F1ZGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGV4dC10by1TcGVlY2ggYW5kIFNwZWVjaC10by1UZXh0JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ1Rvb2xzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAndG9vbHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdXZWIgU2VhcmNoLCBPQ1IgYW5kIG1vcmUnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ2NoYXQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8vIE9wZXJhdGlvbnMgYW5kIGZpZWxkc1xuICAgICAgICAgICAgLi4uY2hhdE9wZXJhdGlvbnMsXG4gICAgICAgICAgICAuLi5jaGF0RmllbGRzLFxuICAgICAgICAgICAgLi4uaW1hZ2VPcGVyYXRpb25zLFxuICAgICAgICAgICAgLi4uaW1hZ2VGaWVsZHMsXG4gICAgICAgICAgICAuLi52aWRlb09wZXJhdGlvbnMsXG4gICAgICAgICAgICAuLi52aWRlb0ZpZWxkcyxcbiAgICAgICAgICAgIC4uLmFnZW50T3BlcmF0aW9ucyxcbiAgICAgICAgICAgIC4uLmFnZW50RmllbGRzLFxuICAgICAgICAgICAgLi4uYXVkaW9PcGVyYXRpb25zLFxuICAgICAgICAgICAgLi4uYXVkaW9GaWVsZHMsXG4gICAgICAgICAgICAuLi50b29sc09wZXJhdGlvbnMsXG4gICAgICAgICAgICAuLi50b29sc0ZpZWxkcyxcbiAgICAgICAgXSxcbiAgICB9O1xuXG4gICAgYXN5bmMgZXhlY3V0ZSh0aGlzOiBJRXhlY3V0ZUZ1bmN0aW9ucyk6IFByb21pc2U8SU5vZGVFeGVjdXRpb25EYXRhW11bXT4ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SW5wdXREYXRhKCk7XG4gICAgICAgIGNvbnN0IHJldHVybkRhdGE6IElOb2RlRXhlY3V0aW9uRGF0YVtdID0gW107XG5cbiAgICAgICAgLy8gR2V0IGNyZWRlbnRpYWxzXG4gICAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gYXdhaXQgdGhpcy5nZXRDcmVkZW50aWFscygncWluaXVBaUFwaScpO1xuICAgICAgICBjb25zdCBhcGlLZXkgPSBjcmVkZW50aWFscy5hcGlLZXkgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBiYXNlVXJsID0gKGNyZWRlbnRpYWxzLmJhc2VVcmwgYXMgc3RyaW5nKSB8fCAnaHR0cHM6Ly9hcGkucW5haWdjLmNvbS92MSc7XG5cbiAgICAgICAgLy8gSW5pdGlhbGl6ZSBjbGllbnRcbiAgICAgICAgY29uc3QgY2xpZW50ID0gbmV3IFFpbml1QUkoeyBhcGlLZXksIGJhc2VVcmwgfSk7XG5cbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3Jlc291cmNlJywgMCkgYXMgc3RyaW5nO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IHJlc3VsdDogSURhdGFPYmplY3Q7XG5cbiAgICAgICAgICAgICAgICAvLyBSb3V0ZSB0byBhcHByb3ByaWF0ZSBoYW5kbGVyXG4gICAgICAgICAgICAgICAgaWYgKHJlc291cmNlID09PSAnY2hhdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlQ2hhdCh0aGlzLCBjbGllbnQsIGkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzb3VyY2UgPT09ICdpbWFnZScpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSW1hZ2UgbmVlZHMgc3BlY2lhbCBoYW5kbGluZyBmb3IgYmluYXJ5IG91dHB1dFxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbWFnZVJlc3VsdCA9IGF3YWl0IGhhbmRsZUltYWdlKHRoaXMsIGNsaWVudCwgaSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybkRhdGEucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBqc29uOiBpbWFnZVJlc3VsdC5qc29uLFxuICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5OiBpbWFnZVJlc3VsdC5iaW5hcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWlyZWRJdGVtOiB7IGl0ZW06IGkgfSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzb3VyY2UgPT09ICd2aWRlbycpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlVmlkZW8odGhpcywgY2xpZW50LCBpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc291cmNlID09PSAnYWdlbnQnKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGhhbmRsZUFnZW50KHRoaXMsIGNsaWVudCwgaSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNvdXJjZSA9PT0gJ2F1ZGlvJykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBoYW5kbGVBdWRpbyh0aGlzLCBjbGllbnQsIGkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzb3VyY2UgPT09ICd0b29scycpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlVG9vbHModGhpcywgY2xpZW50LCBpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgTm9kZU9wZXJhdGlvbkVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBgVW5rbm93biByZXNvdXJjZTogJHtyZXNvdXJjZX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpdGVtSW5kZXg6IGkgfVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybkRhdGEucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIGpzb246IHJlc3VsdCxcbiAgICAgICAgICAgICAgICAgICAgcGFpcmVkSXRlbTogeyBpdGVtOiBpIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEFQSUVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBOb2RlT3BlcmF0aW9uRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldE5vZGUoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGBRaW5pdSBBSSBBUEkgRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1JbmRleDogaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYFN0YXR1czogJHtlcnJvci5zdGF0dXN9LCBDb2RlOiAkeyhlcnJvciBhcyBhbnkpLmNvZGUgfHwgJ3Vua25vd24nfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFtyZXR1cm5EYXRhXTtcbiAgICB9XG59XG5cbi8vIENoYXQgaGFuZGxlclxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlQ2hhdChcbiAgICBjb250ZXh0OiBJRXhlY3V0ZUZ1bmN0aW9ucyxcbiAgICBjbGllbnQ6IFFpbml1QUksXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbik6IFByb21pc2U8SURhdGFPYmplY3Q+IHtcbiAgICBjb25zdCBtb2RlbCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbW9kZWwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBpbnB1dFR5cGUgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2lucHV0VHlwZScsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyB7XG4gICAgICAgIHRlbXBlcmF0dXJlPzogbnVtYmVyO1xuICAgICAgICBtYXhUb2tlbnM/OiBudW1iZXI7XG4gICAgICAgIGpzb25Nb2RlPzogYm9vbGVhbjtcbiAgICAgICAgdG9wUD86IG51bWJlcjtcbiAgICB9O1xuXG4gICAgLy8gQnVpbGQgbWVzc2FnZXNcbiAgICBsZXQgbWVzc2FnZXM6IEFycmF5PHsgcm9sZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfT4gPSBbXTtcblxuICAgIGlmIChpbnB1dFR5cGUgPT09ICdzaW1wbGUnKSB7XG4gICAgICAgIGNvbnN0IHByb21wdCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigncHJvbXB0JywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgICAgIGNvbnN0IHN5c3RlbU1lc3NhZ2UgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3N5c3RlbU1lc3NhZ2UnLCBpdGVtSW5kZXgsICcnKSBhcyBzdHJpbmc7XG5cbiAgICAgICAgaWYgKHN5c3RlbU1lc3NhZ2UpIHtcbiAgICAgICAgICAgIG1lc3NhZ2VzLnB1c2goeyByb2xlOiAnc3lzdGVtJywgY29udGVudDogc3lzdGVtTWVzc2FnZSB9KTtcbiAgICAgICAgfVxuICAgICAgICBtZXNzYWdlcy5wdXNoKHsgcm9sZTogJ3VzZXInLCBjb250ZW50OiBwcm9tcHQgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZXNEYXRhID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdtZXNzYWdlcycsIGl0ZW1JbmRleCkgYXMge1xuICAgICAgICAgICAgbWVzc2FnZVZhbHVlcz86IEFycmF5PHsgcm9sZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfT47XG4gICAgICAgIH07XG4gICAgICAgIG1lc3NhZ2VzID0gbWVzc2FnZXNEYXRhLm1lc3NhZ2VWYWx1ZXMgfHwgW107XG4gICAgfVxuXG4gICAgLy8gQ2FsbCBBUElcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5jaGF0LmNyZWF0ZSh7XG4gICAgICAgIG1vZGVsLFxuICAgICAgICBtZXNzYWdlczogbWVzc2FnZXMgYXMgYW55LFxuICAgICAgICB0ZW1wZXJhdHVyZTogb3B0aW9ucy50ZW1wZXJhdHVyZSxcbiAgICAgICAgbWF4X3Rva2Vuczogb3B0aW9ucy5tYXhUb2tlbnMsXG4gICAgICAgIHRvcF9wOiBvcHRpb25zLnRvcFAsXG4gICAgICAgIHJlc3BvbnNlX2Zvcm1hdDogb3B0aW9ucy5qc29uTW9kZSA/IHsgdHlwZTogJ2pzb25fb2JqZWN0JyB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuXG4gICAgLy8gTm9ybWFsaXplIG91dHB1dFxuICAgIGNvbnN0IGNob2ljZSA9IHJlc3BvbnNlLmNob2ljZXM/LlswXTtcbiAgICByZXR1cm4ge1xuICAgICAgICBjb250ZW50OiBjaG9pY2U/Lm1lc3NhZ2U/LmNvbnRlbnQgfHwgJycsXG4gICAgICAgIHJvbGU6IGNob2ljZT8ubWVzc2FnZT8ucm9sZSB8fCAnYXNzaXN0YW50JyxcbiAgICAgICAgZmluaXNoUmVhc29uOiBjaG9pY2U/LmZpbmlzaF9yZWFzb24gfHwgbnVsbCxcbiAgICAgICAgdXNhZ2U6IHJlc3BvbnNlLnVzYWdlXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBwcm9tcHRUb2tlbnM6IHJlc3BvbnNlLnVzYWdlLnByb21wdF90b2tlbnMsXG4gICAgICAgICAgICAgICAgY29tcGxldGlvblRva2VuczogcmVzcG9uc2UudXNhZ2UuY29tcGxldGlvbl90b2tlbnMsXG4gICAgICAgICAgICAgICAgdG90YWxUb2tlbnM6IHJlc3BvbnNlLnVzYWdlLnRvdGFsX3Rva2VucyxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgX3JhdzogcmVzcG9uc2UgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICB9O1xufVxuXG4vLyBJbWFnZSBoYW5kbGVyIC0gcmV0dXJucyB7IGpzb24sIGJpbmFyeSB9IGZvciBwcm9wZXIgbjhuIGJpbmFyeSBkYXRhIGhhbmRsaW5nXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVJbWFnZShcbiAgICBjb250ZXh0OiBJRXhlY3V0ZUZ1bmN0aW9ucyxcbiAgICBjbGllbnQ6IFFpbml1QUksXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbik6IFByb21pc2U8eyBqc29uOiBJRGF0YU9iamVjdDsgYmluYXJ5PzogSUJpbmFyeUtleURhdGEgfT4ge1xuICAgIGNvbnN0IG9wZXJhdGlvbiA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3BlcmF0aW9uJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgY29uc3QgbW9kZWwgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ21vZGVsJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgY29uc3QgcHJvbXB0ID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdwcm9tcHQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCB3YWl0Rm9yQ29tcGxldGlvbiA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignd2FpdEZvckNvbXBsZXRpb24nLCBpdGVtSW5kZXgsIHRydWUpIGFzIGJvb2xlYW47XG4gICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3B0aW9ucycsIGl0ZW1JbmRleCwge30pIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gICAgY29uc3QgcGFyYW1zOiBhbnkgPSB7XG4gICAgICAgIG1vZGVsLFxuICAgICAgICBwcm9tcHQsXG4gICAgICAgIG5lZ2F0aXZlX3Byb21wdDogb3B0aW9ucy5uZWdhdGl2ZVByb21wdCxcbiAgICAgICAgYXNwZWN0X3JhdGlvOiBvcHRpb25zLmFzcGVjdFJhdGlvLFxuICAgICAgICBuOiBvcHRpb25zLm4sXG4gICAgfTtcblxuICAgIGlmIChvcGVyYXRpb24gPT09ICdlZGl0Jykge1xuICAgICAgICBjb25zdCByZWZlcmVuY2VVcmwgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3JlZmVyZW5jZUltYWdlVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgICAgICBpZiAocmVmZXJlbmNlVXJsKSB7XG4gICAgICAgICAgICBwYXJhbXMuaW1hZ2VfdXJsID0gcmVmZXJlbmNlVXJsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLm1hc2spIHtcbiAgICAgICAgICAgIHBhcmFtcy5tYXNrID0gb3B0aW9ucy5tYXNrO1xuICAgICAgICB9XG4gICAgICAgIHBhcmFtcy5zdHJlbmd0aCA9IG9wdGlvbnMuc3RyZW5ndGg7XG4gICAgICAgIHBhcmFtcy5pbWFnZV9yZWZlcmVuY2UgPSBvcHRpb25zLmltYWdlUmVmZXJlbmNlO1xuICAgIH1cblxuICAgIC8vIEhhbmRsZSBpbWFnZV9jb25maWdcbiAgICBpZiAob3B0aW9ucy5pbWFnZVNpemUpIHtcbiAgICAgICAgcGFyYW1zLmltYWdlX2NvbmZpZyA9IHsgaW1hZ2Vfc2l6ZTogb3B0aW9ucy5pbWFnZVNpemUgfTtcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBhbnk7XG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ2dlbmVyYXRlJykge1xuICAgICAgICBjb25zdCBjcmVhdGVSZXN1bHQgPSBhd2FpdCBjbGllbnQuaW1hZ2UuZ2VuZXJhdGUocGFyYW1zKTtcbiAgICAgICAgaWYgKHdhaXRGb3JDb21wbGV0aW9uKSB7XG4gICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBjbGllbnQuaW1hZ2Uud2FpdEZvclJlc3VsdChjcmVhdGVSZXN1bHQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVzdWx0ID0gY3JlYXRlUmVzdWx0O1xuICAgICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0ID0gYXdhaXQgY2xpZW50LmltYWdlLmVkaXQocGFyYW1zKTtcbiAgICB9XG5cbiAgICAvLyBCdWlsZCBiaW5hcnkgZGF0YSBmcm9tIGJhc2U2NCBpbWFnZXNcbiAgICBjb25zdCBiaW5hcnk6IElCaW5hcnlLZXlEYXRhID0ge307XG4gICAgY29uc3QgaW1hZ2VzOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHJlc3VsdC5kYXRhICYmIEFycmF5LmlzQXJyYXkocmVzdWx0LmRhdGEpKSB7XG4gICAgICAgIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IHJlc3VsdC5kYXRhLmxlbmd0aDsgaWR4KyspIHtcbiAgICAgICAgICAgIGNvbnN0IGltZyA9IHJlc3VsdC5kYXRhW2lkeF07XG4gICAgICAgICAgICBpbWFnZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgdXJsOiBpbWcudXJsIHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBpbmRleDogaW1nLmluZGV4LFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIC8vIENvbnZlcnQgYmFzZTY0IHRvIGJpbmFyeSBkYXRhIGZvciBkb3duc3RyZWFtIHVzYWdlXG4gICAgICAgICAgICBpZiAoaW1nLmI2NF9qc29uKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmZyb20oaW1nLmI2NF9qc29uLCAnYmFzZTY0Jyk7XG4gICAgICAgICAgICAgICAgY29uc3QgYmluYXJ5S2V5ID0gaWR4ID09PSAwID8gJ2RhdGEnIDogYGRhdGFfJHtpZHh9YDtcbiAgICAgICAgICAgICAgICBiaW5hcnlbYmluYXJ5S2V5XSA9IGF3YWl0IGNvbnRleHQuaGVscGVycy5wcmVwYXJlQmluYXJ5RGF0YShcbiAgICAgICAgICAgICAgICAgICAgYnVmZmVyLFxuICAgICAgICAgICAgICAgICAgICBgaW1hZ2VfJHtpZHh9LiR7cmVzdWx0Lm91dHB1dF9mb3JtYXQgfHwgJ3BuZyd9YCxcbiAgICAgICAgICAgICAgICAgICAgYGltYWdlLyR7cmVzdWx0Lm91dHB1dF9mb3JtYXQgfHwgJ3BuZyd9YFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBqc29uOiB7XG4gICAgICAgICAgICBpbWFnZXMsXG4gICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMgfHwgJ3Vua25vd24nLFxuICAgICAgICAgICAgdGFza0lkOiByZXN1bHQudGFza19pZCxcbiAgICAgICAgICAgIGlzU3luYzogcmVzdWx0LmlzU3luYyxcbiAgICAgICAgICAgIGltYWdlQ291bnQ6IGltYWdlcy5sZW5ndGgsXG4gICAgICAgICAgICBfcmF3OiByZXN1bHQsXG4gICAgICAgIH0sXG4gICAgICAgIGJpbmFyeTogT2JqZWN0LmtleXMoYmluYXJ5KS5sZW5ndGggPiAwID8gYmluYXJ5IDogdW5kZWZpbmVkLFxuICAgIH07XG59XG5cbi8vIFZpZGVvIGhhbmRsZXJcbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZVZpZGVvKFxuICAgIGNvbnRleHQ6IElFeGVjdXRlRnVuY3Rpb25zLFxuICAgIGNsaWVudDogUWluaXVBSSxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuKTogUHJvbWlzZTxJRGF0YU9iamVjdD4ge1xuICAgIGNvbnN0IG9wZXJhdGlvbiA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3BlcmF0aW9uJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG5cbiAgICBpZiAob3BlcmF0aW9uID09PSAnZ2V0U3RhdHVzJykge1xuICAgICAgICBjb25zdCB0YXNrSWQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Rhc2tJZCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQudmlkZW8uZ2V0KHRhc2tJZCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogcmVzdWx0LmlkLFxuICAgICAgICAgICAgc3RhdHVzOiByZXN1bHQuc3RhdHVzLFxuICAgICAgICAgICAgdmlkZW9zOiByZXN1bHQudGFza19yZXN1bHQ/LnZpZGVvcyB8fCBbXSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IHJlc3VsdC5tZXNzYWdlLFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGVcbiAgICBjb25zdCBtb2RlbCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbW9kZWwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBwcm9tcHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Byb21wdCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHdhaXRGb3JDb21wbGV0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCd3YWl0Rm9yQ29tcGxldGlvbicsIGl0ZW1JbmRleCwgdHJ1ZSkgYXMgYm9vbGVhbjtcbiAgICBjb25zdCBmaXJzdEZyYW1lVXJsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdmaXJzdEZyYW1lVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGZpcnN0RnJhbWVCaW5hcnlQcm9wZXJ0eSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignZmlyc3RGcmFtZUJpbmFyeVByb3BlcnR5JywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGxhc3RGcmFtZVVybCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbGFzdEZyYW1lVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5ID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdsYXN0RnJhbWVCaW5hcnlQcm9wZXJ0eScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZztcbiAgICBjb25zdCBhc3BlY3RSYXRpbyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignYXNwZWN0UmF0aW8nLCBpdGVtSW5kZXgsICcxNjo5JykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIGNvbnN0IHBhcmFtczogYW55ID0ge1xuICAgICAgICBtb2RlbCxcbiAgICAgICAgcHJvbXB0LFxuICAgICAgICBuZWdhdGl2ZV9wcm9tcHQ6IG9wdGlvbnMubmVnYXRpdmVQcm9tcHQsXG4gICAgICAgIGFzcGVjdF9yYXRpbzogYXNwZWN0UmF0aW8sXG4gICAgfTtcblxuICAgIC8vIEZyYW1lIGNvbnRyb2wgLSBzdXBwb3J0IGJvdGggVVJMIGFuZCBCaW5hcnkgRGF0YVxuICAgIGNvbnN0IGZyYW1lczogYW55ID0ge307XG5cbiAgICAvLyBGaXJzdCBmcmFtZVxuICAgIGlmIChmaXJzdEZyYW1lVXJsKSB7XG4gICAgICAgIGZyYW1lcy5maXJzdCA9IHsgdXJsOiBmaXJzdEZyYW1lVXJsIH07XG4gICAgfSBlbHNlIGlmIChmaXJzdEZyYW1lQmluYXJ5UHJvcGVydHkpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IGF3YWl0IGNvbnRleHQuaGVscGVycy5nZXRCaW5hcnlEYXRhQnVmZmVyKGl0ZW1JbmRleCwgZmlyc3RGcmFtZUJpbmFyeVByb3BlcnR5KTtcbiAgICAgICAgICAgIGZyYW1lcy5maXJzdCA9IHsgYmFzZTY0OiBidWZmZXIudG9TdHJpbmcoJ2Jhc2U2NCcpIH07XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgLy8gQmluYXJ5IGRhdGEgbm90IGZvdW5kLCBza2lwXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMYXN0IGZyYW1lXG4gICAgaWYgKGxhc3RGcmFtZVVybCkge1xuICAgICAgICBmcmFtZXMubGFzdCA9IHsgdXJsOiBsYXN0RnJhbWVVcmwgfTtcbiAgICB9IGVsc2UgaWYgKGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5KSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBidWZmZXIgPSBhd2FpdCBjb250ZXh0LmhlbHBlcnMuZ2V0QmluYXJ5RGF0YUJ1ZmZlcihpdGVtSW5kZXgsIGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5KTtcbiAgICAgICAgICAgIGZyYW1lcy5sYXN0ID0geyBiYXNlNjQ6IGJ1ZmZlci50b1N0cmluZygnYmFzZTY0JykgfTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAvLyBCaW5hcnkgZGF0YSBub3QgZm91bmQsIHNraXBcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyhmcmFtZXMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcGFyYW1zLmZyYW1lcyA9IGZyYW1lcztcbiAgICB9XG5cbiAgICAvLyBNb2RlbC1zcGVjaWZpYyBvcHRpb25zXG4gICAgaWYgKG1vZGVsLmluY2x1ZGVzKCdrbGluZycpKSB7XG4gICAgICAgIGNvbnN0IGtsaW5nT3B0aW9ucyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigna2xpbmdPcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgICAgIC8vIER1cmF0aW9uIGlzIHJlcXVpcmVkIGZvciBLbGluZyAtIGRlZmF1bHQgdG8gNSBzZWNvbmRzXG4gICAgICAgIHBhcmFtcy5kdXJhdGlvbiA9IGtsaW5nT3B0aW9ucy5kdXJhdGlvbiB8fCAnNSc7XG4gICAgICAgIGlmIChrbGluZ09wdGlvbnMubW9kZSkgcGFyYW1zLm1vZGUgPSBrbGluZ09wdGlvbnMubW9kZTtcbiAgICAgICAgaWYgKGtsaW5nT3B0aW9ucy5jZmdTY2FsZSkgcGFyYW1zLmNmZ19zY2FsZSA9IGtsaW5nT3B0aW9ucy5jZmdTY2FsZTtcblxuICAgICAgICAvLyBVc2Ugc2l6ZSBmcm9tIG9wdGlvbnMsIG9yIGRlcml2ZSBmcm9tIGFzcGVjdF9yYXRpbyAod29ya2Fyb3VuZCBmb3IgU0RLIGJ1ZylcbiAgICAgICAgaWYgKGtsaW5nT3B0aW9ucy5zaXplKSB7XG4gICAgICAgICAgICBwYXJhbXMuc2l6ZSA9IGtsaW5nT3B0aW9ucy5zaXplO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gTWFwIGFzcGVjdF9yYXRpbyB0byBkZWZhdWx0IHNpemUgZm9yIEtsaW5nIEFQSVxuICAgICAgICAgICAgY29uc3Qgc2l6ZU1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgICAgICAgICAgICAnMTY6OSc6ICcxOTIwOjEwODAnLFxuICAgICAgICAgICAgICAgICc5OjE2JzogJzEwODA6MTkyMCcsXG4gICAgICAgICAgICAgICAgJzE6MSc6ICcxMDgwOjEwODAnLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHBhcmFtcy5zaXplID0gc2l6ZU1hcFthc3BlY3RSYXRpb10gfHwgJzE5MjA6MTA4MCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobW9kZWwuaW5jbHVkZXMoJ3ZlbycpKSB7XG4gICAgICAgIGNvbnN0IHZlb09wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Zlb09wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICAgICAgLy8gRHVyYXRpb25TZWNvbmRzIGlzIHJlcXVpcmVkIGZvciBWZW8gLSBmaXhlZCBhdCA4IHNlY29uZHNcbiAgICAgICAgcGFyYW1zLmR1cmF0aW9uID0gdmVvT3B0aW9ucy5kdXJhdGlvbiB8fCA4O1xuICAgICAgICBpZiAodmVvT3B0aW9ucy5nZW5lcmF0ZUF1ZGlvICE9PSB1bmRlZmluZWQpIHBhcmFtcy5nZW5lcmF0ZV9hdWRpbyA9IHZlb09wdGlvbnMuZ2VuZXJhdGVBdWRpbztcbiAgICAgICAgaWYgKHZlb09wdGlvbnMucmVzb2x1dGlvbikgcGFyYW1zLnJlc29sdXRpb24gPSB2ZW9PcHRpb25zLnJlc29sdXRpb247XG4gICAgICAgIGlmICh2ZW9PcHRpb25zLnNhbXBsZUNvdW50KSBwYXJhbXMuc2FtcGxlX2NvdW50ID0gdmVvT3B0aW9ucy5zYW1wbGVDb3VudDtcbiAgICAgICAgaWYgKHZlb09wdGlvbnMucGVyc29uR2VuZXJhdGlvbikgcGFyYW1zLnBlcnNvbl9nZW5lcmF0aW9uID0gdmVvT3B0aW9ucy5wZXJzb25HZW5lcmF0aW9uO1xuICAgICAgICBpZiAodmVvT3B0aW9ucy5zZWVkKSBwYXJhbXMuc2VlZCA9IHZlb09wdGlvbnMuc2VlZDtcbiAgICB9XG5cbiAgICBjb25zdCB0YXNrID0gYXdhaXQgY2xpZW50LnZpZGVvLmNyZWF0ZShwYXJhbXMpO1xuXG4gICAgaWYgKHdhaXRGb3JDb21wbGV0aW9uKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNsaWVudC52aWRlby53YWl0Rm9yQ29tcGxldGlvbih0YXNrLmlkKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiByZXN1bHQuaWQsXG4gICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMsXG4gICAgICAgICAgICB2aWRlb3M6IHJlc3VsdC50YXNrX3Jlc3VsdD8udmlkZW9zIHx8IFtdLFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHRhc2suaWQsXG4gICAgICAgIHN0YXR1czogJ3Byb2Nlc3NpbmcnLFxuICAgICAgICBfcmF3OiB0YXNrLFxuICAgIH07XG59XG5cbi8vIEFnZW50IGhhbmRsZXJcbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZUFnZW50KFxuICAgIGNvbnRleHQ6IElFeGVjdXRlRnVuY3Rpb25zLFxuICAgIGNsaWVudDogUWluaXVBSSxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuKTogUHJvbWlzZTxJRGF0YU9iamVjdD4ge1xuICAgIGNvbnN0IG1vZGVsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdtb2RlbCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHByb21wdCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigncHJvbXB0JywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgY29uc3Qgc3lzdGVtTWVzc2FnZSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignc3lzdGVtTWVzc2FnZScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZztcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMge1xuICAgICAgICBtYXhDb250ZXh0VG9rZW5zPzogbnVtYmVyO1xuICAgICAgICBtYXhTdGVwcz86IG51bWJlcjtcbiAgICAgICAgdGhyZWFkSWQ/OiBzdHJpbmc7XG4gICAgICAgIHRvb2xzPzogc3RyaW5nO1xuICAgICAgICB0ZW1wZXJhdHVyZT86IG51bWJlcjtcbiAgICB9O1xuXG4gICAgLy8gUGFyc2UgdG9vbHMgLSBjb252ZXJ0IGFycmF5IHRvIFJlY29yZDxzdHJpbmcsIFRvb2w+XG4gICAgbGV0IHRvb2xzUmVjb3JkOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkO1xuICAgIGlmIChvcHRpb25zLnRvb2xzKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCB0b29sc0FycmF5ID0gSlNPTi5wYXJzZShvcHRpb25zLnRvb2xzKTtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRvb2xzQXJyYXkpICYmIHRvb2xzQXJyYXkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRvb2xzUmVjb3JkID0ge307XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCB0b29sIG9mIHRvb2xzQXJyYXkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRvb2wuZnVuY3Rpb24/Lm5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvb2xzUmVjb3JkW3Rvb2wuZnVuY3Rpb24ubmFtZV0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHRvb2wuZnVuY3Rpb24uZGVzY3JpcHRpb24gfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyczogdG9vbC5mdW5jdGlvbi5wYXJhbWV0ZXJzIHx8IHt9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGU6IGFzeW5jIChfYXJnczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvb2xzIGV4ZWN1dGVkIGJ5IHRoZSBhZ2VudCAtIHdlIHJldHVybiBhIHBsYWNlaG9sZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHJlc3VsdDogJ1Rvb2wgZXhlY3V0aW9uIG5vdCBpbXBsZW1lbnRlZCBpbiBuOG4gbm9kZScgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTm9kZU9wZXJhdGlvbkVycm9yKFxuICAgICAgICAgICAgICAgIGNvbnRleHQuZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgICdJbnZhbGlkIHRvb2xzIEpTT04gZm9ybWF0JyxcbiAgICAgICAgICAgICAgICB7IGl0ZW1JbmRleCB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZ2VuZXJhdGVUZXh0V2l0aEdyYXBoKHtcbiAgICAgICAgY2xpZW50LFxuICAgICAgICBtb2RlbCxcbiAgICAgICAgcHJvbXB0LFxuICAgICAgICBzeXN0ZW06IHN5c3RlbU1lc3NhZ2UgfHwgdW5kZWZpbmVkLFxuICAgICAgICBtYXhDb250ZXh0VG9rZW5zOiBvcHRpb25zLm1heENvbnRleHRUb2tlbnMgfHwgMzIwMDAsXG4gICAgICAgIG1heFN0ZXBzOiBvcHRpb25zLm1heFN0ZXBzIHx8IDEwLFxuICAgICAgICB0ZW1wZXJhdHVyZTogb3B0aW9ucy50ZW1wZXJhdHVyZSxcbiAgICAgICAgdG9vbHM6IHRvb2xzUmVjb3JkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgY29udGVudDogcmVzdWx0LnRleHQgfHwgJycsXG4gICAgICAgIHN0ZXBzOiByZXN1bHQuc3RlcHM/Lm1hcCgoc3RlcDogYW55KSA9PiAoe1xuICAgICAgICAgICAgdHlwZTogc3RlcC50eXBlLFxuICAgICAgICAgICAgdG9vbE5hbWU6IHN0ZXAudG9vbE5hbWUsXG4gICAgICAgICAgICB0b29sQXJnczogc3RlcC50b29sQXJncyxcbiAgICAgICAgICAgIHRvb2xSZXN1bHQ6IHN0ZXAudG9vbFJlc3VsdCxcbiAgICAgICAgICAgIHRleHQ6IHN0ZXAudGV4dCxcbiAgICAgICAgfSkpIHx8IFtdLFxuICAgICAgICB1c2FnZTogcmVzdWx0LnVzYWdlXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBwcm9tcHRUb2tlbnM6IHJlc3VsdC51c2FnZS5wcm9tcHRfdG9rZW5zLFxuICAgICAgICAgICAgICAgIGNvbXBsZXRpb25Ub2tlbnM6IHJlc3VsdC51c2FnZS5jb21wbGV0aW9uX3Rva2VucyxcbiAgICAgICAgICAgICAgICB0b3RhbFRva2VuczogcmVzdWx0LnVzYWdlLnRvdGFsX3Rva2VucyxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgfTtcbn1cblxuLy8gQXVkaW8gaGFuZGxlclxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlQXVkaW8oXG4gICAgY29udGV4dDogSUV4ZWN1dGVGdW5jdGlvbnMsXG4gICAgY2xpZW50OiBRaW5pdUFJLFxuICAgIGl0ZW1JbmRleDogbnVtYmVyXG4pOiBQcm9taXNlPElEYXRhT2JqZWN0PiB7XG4gICAgY29uc3Qgb3BlcmF0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcGVyYXRpb24nLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcblxuICAgIGlmIChvcGVyYXRpb24gPT09ICd0ZXh0VG9TcGVlY2gnKSB7XG4gICAgICAgIGNvbnN0IHRleHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3RleHQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3Qgdm9pY2UgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3ZvaWNlJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyB7XG4gICAgICAgICAgICBlbmNvZGluZz86IHN0cmluZztcbiAgICAgICAgICAgIHNwZWVkUmF0aW8/OiBudW1iZXI7XG4gICAgICAgICAgICB2b2x1bWU/OiBudW1iZXI7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LnR0cy5zeW50aGVzaXplKHtcbiAgICAgICAgICAgIHRleHQsXG4gICAgICAgICAgICB2b2ljZV90eXBlOiB2b2ljZSxcbiAgICAgICAgICAgIGVuY29kaW5nOiBvcHRpb25zLmVuY29kaW5nIGFzIGFueSxcbiAgICAgICAgICAgIHNwZWVkX3JhdGlvOiBvcHRpb25zLnNwZWVkUmF0aW8sXG4gICAgICAgICAgICB2b2x1bWU6IG9wdGlvbnMudm9sdW1lLFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBSZXR1cm4gYXVkaW8gYXMgYmluYXJ5IGRhdGFcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGF1ZGlvOiByZXN1bHQuYXVkaW8sXG4gICAgICAgICAgICBkdXJhdGlvbjogcmVzdWx0LmR1cmF0aW9uLFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ3NwZWVjaFRvVGV4dCcpIHtcbiAgICAgICAgY29uc3QgYmluYXJ5UHJvcGVydHlOYW1lID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdiaW5hcnlQcm9wZXJ0eU5hbWUnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3QgYXVkaW9Gb3JtYXQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2F1ZGlvRm9ybWF0JywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG5cbiAgICAgICAgLy8gR2V0IGJpbmFyeSBkYXRhXG4gICAgICAgIGNvbnRleHQuaGVscGVycy5hc3NlcnRCaW5hcnlEYXRhKGl0ZW1JbmRleCwgYmluYXJ5UHJvcGVydHlOYW1lKTtcbiAgICAgICAgY29uc3QgYnVmZmVyID0gYXdhaXQgY29udGV4dC5oZWxwZXJzLmdldEJpbmFyeURhdGFCdWZmZXIoaXRlbUluZGV4LCBiaW5hcnlQcm9wZXJ0eU5hbWUpO1xuICAgICAgICBjb25zdCBiYXNlNjRBdWRpbyA9IGJ1ZmZlci50b1N0cmluZygnYmFzZTY0Jyk7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LmFzci50cmFuc2NyaWJlKHtcbiAgICAgICAgICAgIGF1ZGlvOiB7XG4gICAgICAgICAgICAgICAgZm9ybWF0OiBhdWRpb0Zvcm1hdCBhcyBhbnksXG4gICAgICAgICAgICAgICAgZGF0YTogYmFzZTY0QXVkaW8sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGV4dDogcmVzdWx0LnRleHQgfHwgJycsXG4gICAgICAgICAgICB3b3JkczogcmVzdWx0LndvcmRzIHx8IFtdLFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IE5vZGVPcGVyYXRpb25FcnJvcihcbiAgICAgICAgY29udGV4dC5nZXROb2RlKCksXG4gICAgICAgIGBVbmtub3duIGF1ZGlvIG9wZXJhdGlvbjogJHtvcGVyYXRpb259YCxcbiAgICAgICAgeyBpdGVtSW5kZXggfVxuICAgICk7XG59XG5cbi8vIFRvb2xzIGhhbmRsZXJcbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZVRvb2xzKFxuICAgIGNvbnRleHQ6IElFeGVjdXRlRnVuY3Rpb25zLFxuICAgIGNsaWVudDogUWluaXVBSSxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuKTogUHJvbWlzZTxJRGF0YU9iamVjdD4ge1xuICAgIGNvbnN0IG9wZXJhdGlvbiA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3BlcmF0aW9uJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG5cbiAgICBpZiAob3BlcmF0aW9uID09PSAnd2ViU2VhcmNoJykge1xuICAgICAgICBjb25zdCBxdWVyeSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigncXVlcnknLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgLy8gTm90ZTogbWF4UmVzdWx0cyBvcHRpb24gcmVzZXJ2ZWQgZm9yIGZ1dHVyZSBTREsgc3VwcG9ydFxuXG4gICAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBjbGllbnQuc3lzLnNlYXJjaCh7IHF1ZXJ5IH0pO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICByZXN1bHRzOiByZXN1bHRzIHx8IFtdLFxuICAgICAgICAgICAgcXVlcnksXG4gICAgICAgICAgICBfcmF3OiByZXN1bHRzIGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ29jcicpIHtcbiAgICAgICAgY29uc3QgaW1hZ2VVcmwgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2ltYWdlVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBiaW5hcnlQcm9wZXJ0eU5hbWUgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2JpbmFyeVByb3BlcnR5TmFtZScsIGl0ZW1JbmRleCwgJ2RhdGEnKSBhcyBzdHJpbmc7XG5cbiAgICAgICAgbGV0IG9jclBhcmFtczogeyB1cmw/OiBzdHJpbmc7IGltYWdlPzogc3RyaW5nIH07XG5cbiAgICAgICAgaWYgKGltYWdlVXJsKSB7XG4gICAgICAgICAgICAvLyBVc2UgVVJMIGRpcmVjdGx5XG4gICAgICAgICAgICBvY3JQYXJhbXMgPSB7IHVybDogaW1hZ2VVcmwgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEdldCBmcm9tIGJpbmFyeSBhbmQgY3JlYXRlIGRhdGEgVVJMXG4gICAgICAgICAgICBjb25zdCBiaW5hcnlEYXRhID0gY29udGV4dC5oZWxwZXJzLmFzc2VydEJpbmFyeURhdGEoaXRlbUluZGV4LCBiaW5hcnlQcm9wZXJ0eU5hbWUpO1xuICAgICAgICAgICAgY29uc3QgYnVmZmVyID0gYXdhaXQgY29udGV4dC5oZWxwZXJzLmdldEJpbmFyeURhdGFCdWZmZXIoaXRlbUluZGV4LCBiaW5hcnlQcm9wZXJ0eU5hbWUpO1xuICAgICAgICAgICAgY29uc3QgbWltZVR5cGUgPSBiaW5hcnlEYXRhLm1pbWVUeXBlIHx8ICdpbWFnZS9wbmcnO1xuICAgICAgICAgICAgY29uc3QgYmFzZTY0RGF0YSA9IGJ1ZmZlci50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgICAgICAgICAvLyBGb3JtYXQ6IGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCw8YmFzZTY0X2RhdGE+XG4gICAgICAgICAgICBvY3JQYXJhbXMgPSB7IGltYWdlOiBgZGF0YToke21pbWVUeXBlfTtiYXNlNjQsJHtiYXNlNjREYXRhfWAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNsaWVudC5vY3IuZGV0ZWN0KG9jclBhcmFtcyk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRleHQ6IHJlc3VsdC50ZXh0IHx8ICcnLFxuICAgICAgICAgICAgYmxvY2tzOiByZXN1bHQuYmxvY2tzIHx8IFtdLFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0IGFzIHVua25vd24gYXMgSURhdGFPYmplY3QsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IE5vZGVPcGVyYXRpb25FcnJvcihcbiAgICAgICAgY29udGV4dC5nZXROb2RlKCksXG4gICAgICAgIGBVbmtub3duIHRvb2xzIG9wZXJhdGlvbjogJHtvcGVyYXRpb259YCxcbiAgICAgICAgeyBpdGVtSW5kZXggfVxuICAgICk7XG59XG4iXX0=
|
|
699
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUWluaXVBaS5ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbm9kZXMvUWluaXVBaS9RaW5pdUFpLm5vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBUXNCO0FBRXRCLHdEQUFpRjtBQUVqRixvRUFBNEU7QUFDNUUsc0VBQStFO0FBQy9FLHNFQUErRTtBQUMvRSxzRUFBK0U7QUFDL0Usc0VBQStFO0FBQy9FLHNFQUErRTtBQUUvRSxNQUFhLE9BQU87SUFBcEI7UUFDSSxnQkFBVyxHQUF5QjtZQUNoQyxXQUFXLEVBQUUsVUFBVTtZQUN2QixJQUFJLEVBQUUsU0FBUztZQUNmLElBQUksRUFBRSxnQkFBZ0I7WUFDdEIsS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsUUFBUSxFQUFFLDhEQUE4RDtZQUN4RSxXQUFXLEVBQUUsc0VBQXNFO1lBQ25GLFFBQVEsRUFBRTtnQkFDTixJQUFJLEVBQUUsVUFBVTthQUNuQjtZQUNELE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNoQixPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDakIsV0FBVyxFQUFFO2dCQUNUO29CQUNJLElBQUksRUFBRSxZQUFZO29CQUNsQixRQUFRLEVBQUUsSUFBSTtpQkFDakI7YUFDSjtZQUNELFVBQVUsRUFBRTtnQkFDUixXQUFXO2dCQUNYO29CQUNJLFdBQVcsRUFBRSxVQUFVO29CQUN2QixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtvQkFDdEIsT0FBTyxFQUFFO3dCQUNMOzRCQUNJLElBQUksRUFBRSxNQUFNOzRCQUNaLEtBQUssRUFBRSxNQUFNOzRCQUNiLFdBQVcsRUFBRSwyQkFBMkI7eUJBQzNDO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSx5QkFBeUI7eUJBQ3pDO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSxpQkFBaUI7eUJBQ2pDO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSxvQ0FBb0M7eUJBQ3BEO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSxtQ0FBbUM7eUJBQ25EO3dCQUNEOzRCQUNJLElBQUksRUFBRSxPQUFPOzRCQUNiLEtBQUssRUFBRSxPQUFPOzRCQUNkLFdBQVcsRUFBRSwwQkFBMEI7eUJBQzFDO3FCQUNKO29CQUNELE9BQU8sRUFBRSxNQUFNO2lCQUNsQjtnQkFDRCx3QkFBd0I7Z0JBQ3hCLEdBQUcsZ0NBQWM7Z0JBQ2pCLEdBQUcsNEJBQVU7Z0JBQ2IsR0FBRyxrQ0FBZTtnQkFDbEIsR0FBRyw4QkFBVztnQkFDZCxHQUFHLGtDQUFlO2dCQUNsQixHQUFHLDhCQUFXO2dCQUNkLEdBQUcsa0NBQWU7Z0JBQ2xCLEdBQUcsOEJBQVc7Z0JBQ2QsR0FBRyxrQ0FBZTtnQkFDbEIsR0FBRyw4QkFBVztnQkFDZCxHQUFHLGtDQUFlO2dCQUNsQixHQUFHLDhCQUFXO2FBQ2pCO1NBQ0osQ0FBQztJQXFFTixDQUFDO0lBbkVHLEtBQUssQ0FBQyxPQUFPO1FBQ1QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xDLE1BQU0sVUFBVSxHQUF5QixFQUFFLENBQUM7UUFFNUMsa0JBQWtCO1FBQ2xCLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM1RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsTUFBZ0IsQ0FBQztRQUM1QyxNQUFNLE9BQU8sR0FBSSxXQUFXLENBQUMsT0FBa0IsSUFBSSwyQkFBMkIsQ0FBQztRQUUvRSxvQkFBb0I7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxzQkFBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFFaEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDLENBQVcsQ0FBQztRQUVoRSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQztnQkFDRCxJQUFJLE1BQW1CLENBQUM7Z0JBRXhCLCtCQUErQjtnQkFDL0IsSUFBSSxRQUFRLEtBQUssTUFBTSxFQUFFLENBQUM7b0JBQ3RCLE1BQU0sR0FBRyxNQUFNLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDO3FCQUFNLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUM5QixpREFBaUQ7b0JBQ2pELE1BQU0sV0FBVyxHQUFHLE1BQU0sV0FBVyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ3ZELFVBQVUsQ0FBQyxJQUFJLENBQUM7d0JBQ1osSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJO3dCQUN0QixNQUFNLEVBQUUsV0FBVyxDQUFDLE1BQU07d0JBQzFCLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7cUJBQzFCLENBQUMsQ0FBQztvQkFDSCxTQUFTO2dCQUNiLENBQUM7cUJBQU0sSUFBSSxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7b0JBQzlCLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO3FCQUFNLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUM5QixNQUFNLEdBQUcsTUFBTSxXQUFXLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEQsQ0FBQztxQkFBTSxJQUFJLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQztvQkFDOUIsTUFBTSxHQUFHLE1BQU0sV0FBVyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELENBQUM7cUJBQU0sSUFBSSxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7b0JBQzlCLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxJQUFJLGlDQUFrQixDQUN4QixJQUFJLENBQUMsT0FBTyxFQUFFLEVBQ2QscUJBQXFCLFFBQVEsRUFBRSxFQUMvQixFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FDbkIsQ0FBQztnQkFDTixDQUFDO2dCQUVELFVBQVUsQ0FBQyxJQUFJLENBQUM7b0JBQ1osSUFBSSxFQUFFLE1BQU07b0JBQ1osVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtpQkFDMUIsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7Z0JBQ2IsSUFBSSxLQUFLLFlBQVksdUJBQVEsRUFBRSxDQUFDO29CQUM1QixNQUFNLElBQUksaUNBQWtCLENBQ3hCLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFDZCx1QkFBdUIsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUN0Qzt3QkFDSSxTQUFTLEVBQUUsQ0FBQzt3QkFDWixXQUFXLEVBQUUsV0FBVyxLQUFLLENBQUMsTUFBTSxXQUFZLEtBQWEsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO3FCQUNwRixDQUNKLENBQUM7Z0JBQ04sQ0FBQztnQkFDRCxNQUFNLEtBQUssQ0FBQztZQUNoQixDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0o7QUFoSkQsMEJBZ0pDO0FBRUQsZUFBZTtBQUNmLEtBQUssVUFBVSxVQUFVLENBQ3JCLE9BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFpQjtJQUVqQixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBVyxDQUFDO0lBQ3JFLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFXLENBQUM7SUFDN0UsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUtoRSxDQUFDO0lBRUYsaUJBQWlCO0lBQ2pCLElBQUksUUFBUSxHQUE2QyxFQUFFLENBQUM7SUFFNUQsSUFBSSxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDekIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxTQUFTLENBQVcsQ0FBQztRQUN2RSxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQVcsQ0FBQztRQUV6RixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUVsRSxDQUFDO1FBQ0YsUUFBUSxHQUFHLFlBQVksQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRCxXQUFXO0lBQ1gsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN0QyxLQUFLO1FBQ0wsUUFBUSxFQUFFLFFBQWU7UUFDekIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1FBQ2hDLFVBQVUsRUFBRSxPQUFPLENBQUMsU0FBUztRQUM3QixLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUk7UUFDbkIsZUFBZSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO0tBQzFFLENBQUMsQ0FBQztJQUVILG1CQUFtQjtJQUNuQixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckMsT0FBTztRQUNILE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxFQUFFO1FBQ3ZDLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSSxXQUFXO1FBQzFDLFlBQVksRUFBRSxNQUFNLEVBQUUsYUFBYSxJQUFJLElBQUk7UUFDM0MsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLO1lBQ2pCLENBQUMsQ0FBQztnQkFDRSxZQUFZLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhO2dCQUMxQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLGlCQUFpQjtnQkFDbEQsV0FBVyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsWUFBWTthQUMzQztZQUNELENBQUMsQ0FBQyxJQUFJO1FBQ1YsSUFBSSxFQUFFLFFBQWtDO0tBQzNDLENBQUM7QUFDTixDQUFDO0FBRUQsK0VBQStFO0FBQy9FLEtBQUssVUFBVSxXQUFXLENBQ3RCLE9BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFpQjtJQUVqQixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBVyxDQUFDO0lBQzdFLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFXLENBQUM7SUFDckUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxTQUFTLENBQVcsQ0FBQztJQUN2RSxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFZLENBQUM7SUFDcEcsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUE0QixDQUFDO0lBRTlGLE1BQU0sTUFBTSxHQUFRO1FBQ2hCLEtBQUs7UUFDTCxNQUFNO1FBQ04sZUFBZSxFQUFFLE9BQU8sQ0FBQyxjQUFjO1FBQ3ZDLFlBQVksRUFBRSxPQUFPLENBQUMsV0FBVztRQUNqQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDZixDQUFDO0lBRUYsSUFBSSxTQUFTLEtBQUssTUFBTSxFQUFFLENBQUM7UUFDdkIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxFQUFFLENBQVcsQ0FBQztRQUM1RixJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2YsTUFBTSxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUM7UUFDcEMsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2YsTUFBTSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQy9CLENBQUM7UUFDRCxNQUFNLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDbkMsTUFBTSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDO0lBQ3BELENBQUM7SUFFRCxzQkFBc0I7SUFDdEIsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDcEIsTUFBTSxDQUFDLFlBQVksR0FBRyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDNUQsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxJQUFJLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUMzQixNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFXLENBQUM7UUFDL0YsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFXLENBQUM7UUFDekYsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFXLENBQUM7UUFFekYsMkJBQTJCO1FBQzNCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0UsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNsQixNQUFNLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN0RixDQUFDO1FBQ0wsQ0FBQztRQUVELHdCQUF3QjtRQUN4QixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sQ0FBQyxXQUFXLEdBQUcsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDbEQsQ0FBQztRQUVELHdCQUF3QjtRQUN4QixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sQ0FBQyxXQUFXLEdBQUcsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDbEQsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLE1BQVcsQ0FBQztJQUNoQixJQUFJLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUMzQixNQUFNLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUNwQixNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM1RCxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sR0FBRyxZQUFZLENBQUM7UUFDMUIsQ0FBQztJQUNMLENBQUM7U0FBTSxDQUFDO1FBQ0osTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxNQUFNLE1BQU0sR0FBbUIsRUFBRSxDQUFDO0lBQ2xDLE1BQU0sTUFBTSxHQUFVLEVBQUUsQ0FBQztJQUV6QixJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUM1QyxLQUFLLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztZQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ1IsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHLElBQUksU0FBUztnQkFDekIsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO2FBQ25CLENBQUMsQ0FBQztZQUVILHFEQUFxRDtZQUNyRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDZixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ25ELE1BQU0sU0FBUyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDckQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FDdkQsTUFBTSxFQUNOLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxhQUFhLElBQUksS0FBSyxFQUFFLEVBQy9DLFNBQVMsTUFBTSxDQUFDLGFBQWEsSUFBSSxLQUFLLEVBQUUsQ0FDM0MsQ0FBQztZQUNOLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLEVBQUU7WUFDRixNQUFNO1lBQ04sTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLElBQUksU0FBUztZQUNsQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdEIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQ3JCLFVBQVUsRUFBRSxNQUFNLENBQUMsTUFBTTtZQUN6QixJQUFJLEVBQUUsTUFBTTtTQUNmO1FBQ0QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO0tBQzlELENBQUM7QUFDTixDQUFDO0FBRUQsZ0JBQWdCO0FBQ2hCLEtBQUssVUFBVSxXQUFXLENBQ3RCLE9BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFpQjtJQUVqQixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBVyxDQUFDO0lBRTdFLElBQUksU0FBUyxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQzVCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFXLENBQUM7UUFDdkUsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxPQUFPO1lBQ0gsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ2IsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1lBQ3JCLE1BQU0sRUFBRSxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxFQUFFO1lBQ3hDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztZQUN2QixJQUFJLEVBQUUsTUFBZ0M7U0FDekMsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLFNBQVMsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUN4QixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBVyxDQUFDO1FBQ3JGLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBVyxDQUFDO1FBQ3JGLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQVksQ0FBQztRQUNwRyxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQTRCLENBQUM7UUFFeEcsTUFBTSxXQUFXLEdBQVEsRUFBRSxDQUFDO1FBQzVCLElBQUksV0FBVztZQUFFLFdBQVcsQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1FBQ2xELElBQUksWUFBWSxDQUFDLFFBQVE7WUFBRSxXQUFXLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDeEUsSUFBSSxZQUFZLENBQUMsSUFBSTtZQUFFLFdBQVcsQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztRQUM1RCxJQUFJLFlBQVksQ0FBQyxjQUFjO1lBQUUsV0FBVyxDQUFDLGVBQWUsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUFDO1FBRTNGLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRWxFLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUNwQixNQUFNLE1BQU0sR0FBRyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdELE9BQU87Z0JBQ0gsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFO2dCQUNiLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtnQkFDckIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxJQUFJLEVBQUU7Z0JBQ3hDLElBQUksRUFBRSxNQUFnQzthQUN6QyxDQUFDO1FBQ04sQ0FBQztRQUVELE9BQU87WUFDSCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxNQUFNLEVBQUUsWUFBWTtZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNiLENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVztJQUNYLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFXLENBQUM7SUFDckUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxTQUFTLENBQVcsQ0FBQztJQUN2RSxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFZLENBQUM7SUFDcEcsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFXLENBQUM7SUFDekYsTUFBTSx3QkFBd0IsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsMEJBQTBCLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBVyxDQUFDO0lBQy9HLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBVyxDQUFDO0lBQ3ZGLE1BQU0sdUJBQXVCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLHlCQUF5QixFQUFFLFNBQVMsRUFBRSxFQUFFLENBQVcsQ0FBQztJQUM3RyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQVcsQ0FBQztJQUN6RixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQTRCLENBQUM7SUFFOUYsTUFBTSxNQUFNLEdBQVE7UUFDaEIsS0FBSztRQUNMLE1BQU07UUFDTixlQUFlLEVBQUUsT0FBTyxDQUFDLGNBQWM7UUFDdkMsWUFBWSxFQUFFLFdBQVc7S0FDNUIsQ0FBQztJQUVGLG1EQUFtRDtJQUNuRCxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7SUFFdkIsY0FBYztJQUNkLElBQUksYUFBYSxFQUFFLENBQUM7UUFDaEIsTUFBTSxDQUFDLEtBQUssR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsQ0FBQztJQUMxQyxDQUFDO1NBQU0sSUFBSSx3QkFBd0IsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQztZQUNELE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztZQUM5RixNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUN6RCxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ0wsOEJBQThCO1FBQ2xDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYTtJQUNiLElBQUksWUFBWSxFQUFFLENBQUM7UUFDZixNQUFNLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7U0FBTSxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDO1lBQ0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO1lBQzdGLE1BQU0sQ0FBQyxJQUFJLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ3hELENBQUM7UUFBQyxNQUFNLENBQUM7WUFDTCw4QkFBOEI7UUFDbEMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQzNCLENBQUM7SUFFRCw2REFBNkQ7SUFDN0QsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBVyxDQUFDO0lBQ2pHLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxLQUFLLENBQVksQ0FBQztJQUNyRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFDcEIsTUFBTSxDQUFDLFVBQVUsR0FBRyxDQUFDO2dCQUNqQixTQUFTLEVBQUUsaUJBQWlCO2dCQUM1QixtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO2FBQ3hELENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCx5QkFBeUI7SUFDekIsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDMUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUE0QixDQUFDO1FBQ3hHLHdEQUF3RDtRQUN4RCxNQUFNLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDO1FBQy9DLElBQUksWUFBWSxDQUFDLElBQUk7WUFBRSxNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdkQsSUFBSSxZQUFZLENBQUMsUUFBUTtZQUFFLE1BQU0sQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUVwRSw4RUFBOEU7UUFDOUUsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEIsTUFBTSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQ3BDLENBQUM7YUFBTSxDQUFDO1lBQ0osaURBQWlEO1lBQ2pELE1BQU0sT0FBTyxHQUEyQjtnQkFDcEMsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLE1BQU0sRUFBRSxXQUFXO2dCQUNuQixLQUFLLEVBQUUsV0FBVzthQUNyQixDQUFDO1lBQ0YsTUFBTSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksV0FBVyxDQUFDO1FBQ3RELENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDeEIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUE0QixDQUFDO1FBQ3BHLDJEQUEyRDtRQUMzRCxNQUFNLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksVUFBVSxDQUFDLGFBQWEsS0FBSyxTQUFTO1lBQUUsTUFBTSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzdGLElBQUksVUFBVSxDQUFDLFVBQVU7WUFBRSxNQUFNLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDckUsSUFBSSxVQUFVLENBQUMsV0FBVztZQUFFLE1BQU0sQ0FBQyxZQUFZLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUN6RSxJQUFJLFVBQVUsQ0FBQyxnQkFBZ0I7WUFBRSxNQUFNLENBQUMsaUJBQWlCLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixDQUFDO1FBQ3hGLElBQUksVUFBVSxDQUFDLElBQUk7WUFBRSxNQUFNLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDdkQsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFL0MsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1FBQ3BCLE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0QsT0FBTztZQUNILEVBQUUsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNiLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixNQUFNLEVBQUUsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLElBQUksRUFBRTtZQUN4QyxJQUFJLEVBQUUsTUFBZ0M7U0FDekMsQ0FBQztJQUNOLENBQUM7SUFFRCxPQUFPO1FBQ0gsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1FBQ1gsTUFBTSxFQUFFLFlBQVk7UUFDcEIsSUFBSSxFQUFFLElBQUk7S0FDYixDQUFDO0FBQ04sQ0FBQztBQUVELGdCQUFnQjtBQUNoQixLQUFLLFVBQVUsV0FBVyxDQUN0QixPQUEwQixFQUMxQixNQUFlLEVBQ2YsU0FBaUI7SUFFakIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxTQUFTLENBQVcsQ0FBQztJQUNyRSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBVyxDQUFDO0lBQ3ZFLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBVyxDQUFDO0lBQ3pGLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBYSxDQUFDO0lBQ3pGLE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQVksQ0FBQztJQUNsRyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxFQUFFLENBUWhFLENBQUM7SUFFRixxQkFBcUI7SUFDckIsTUFBTSxXQUFXLEdBQXdCLEVBQUUsQ0FBQztJQUU1QywwQkFBMEI7SUFDMUIsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDckMsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHO1lBQ3hCLFdBQVcsRUFBRSx1RUFBdUU7WUFDcEYsVUFBVSxFQUFFO2dCQUNSLElBQUksRUFBRSxRQUFRO2dCQUNkLFVBQVUsRUFBRTtvQkFDUixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRTtpQkFDN0Q7Z0JBQ0QsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1lBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUF1QixFQUFFLEVBQUU7Z0JBQ3ZDLE1BQU0sT0FBTyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDbkQsQ0FBQztTQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0IsV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHO1lBQ2pCLFdBQVcsRUFBRSwyQ0FBMkM7WUFDeEQsVUFBVSxFQUFFO2dCQUNSLElBQUksRUFBRSxRQUFRO2dCQUNkLFVBQVUsRUFBRTtvQkFDUixHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxvQ0FBb0MsRUFBRTtpQkFDN0U7Z0JBQ0QsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDO2FBQ3BCO1lBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFxQixFQUFFLEVBQUU7Z0JBQ3JDLE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQzFELE9BQU8sTUFBTSxDQUFDO1lBQ2xCLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3pDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHO1lBQzVCLFdBQVcsRUFBRSx1Q0FBdUM7WUFDcEQsVUFBVSxFQUFFO2dCQUNSLElBQUksRUFBRSxRQUFRO2dCQUNkLFVBQVUsRUFBRTtvQkFDUixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxzQ0FBc0MsRUFBRTtpQkFDbEY7Z0JBQ0QsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDO2FBQ3ZCO1lBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUF3QixFQUFFLEVBQUU7Z0JBQ3hDLE1BQU0sWUFBWSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7b0JBQzdDLEtBQUssRUFBRSxZQUFZO29CQUNuQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07aUJBQ3RCLENBQUMsQ0FBQztnQkFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUM5RCxPQUFPO29CQUNILE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRTtpQkFDN0YsQ0FBQztZQUNOLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3pDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHO1lBQzVCLFdBQVcsRUFBRSxzQ0FBc0M7WUFDbkQsVUFBVSxFQUFFO2dCQUNSLElBQUksRUFBRSxRQUFRO2dCQUNkLFVBQVUsRUFBRTtvQkFDUixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxzQ0FBc0MsRUFBRTtpQkFDbEY7Z0JBQ0QsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDO2FBQ3ZCO1lBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUF3QixFQUFFLEVBQUU7Z0JBQ3hDLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7b0JBQ25DLEtBQUssRUFBRSxnQkFBZ0I7b0JBQ3ZCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDbkIsUUFBUSxFQUFFLEdBQUc7b0JBQ2IsWUFBWSxFQUFFLE1BQU07aUJBQ3ZCLENBQUMsQ0FBQztnQkFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM3RCxPQUFPO29CQUNILEVBQUUsRUFBRSxNQUFNLENBQUMsRUFBRTtvQkFDYixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07b0JBQ3JCLE1BQU0sRUFBRSxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxFQUFFO2lCQUMzQyxDQUFDO1lBQ04sQ0FBQztTQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsMkJBQTJCO0lBQzNCLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQztZQUNELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNyRCxLQUFLLE1BQU0sSUFBSSxJQUFJLFVBQVUsRUFBRSxDQUFDO29CQUM1QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7d0JBQ3RCLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHOzRCQUM5QixXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLElBQUksRUFBRTs0QkFDNUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxJQUFJLEVBQUU7NEJBQzFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBVSxFQUFFLEVBQUU7Z0NBQzFCLDZEQUE2RDtnQ0FDN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxpRUFBaUUsRUFBRSxDQUFDOzRCQUN6RixDQUFDO3lCQUNKLENBQUM7b0JBQ04sQ0FBQztnQkFDTCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDTCxNQUFNLElBQUksaUNBQWtCLENBQ3hCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFDakIsMkJBQTJCLEVBQzNCLEVBQUUsU0FBUyxFQUFFLENBQ2hCLENBQUM7UUFDTixDQUFDO0lBQ0wsQ0FBQztJQUVELHlFQUF5RTtJQUN6RSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFFckQsd0NBQXdDO0lBQ3hDLHlGQUF5RjtJQUN6Rix1REFBdUQ7SUFDdkQsSUFBSSxnQkFBZ0IsR0FBa0IsSUFBSSxDQUFDO0lBQzNDLElBQUksT0FBTyxDQUFDLGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxNQUFNLEVBQUUsQ0FBQztRQUNsRSxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN4QyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7UUFDaEMsQ0FBQzthQUFNLElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQzlDLGdCQUFnQixHQUFHLFNBQVMsT0FBTyxDQUFDLHNCQUFzQixJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDckYsQ0FBQzthQUFNLElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2pELGdCQUFnQixHQUFHLFlBQVksT0FBTyxDQUFDLHNCQUFzQixJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDeEYsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUEsb0NBQXFCLEVBQUM7UUFDdkMsTUFBTTtRQUNOLEtBQUs7UUFDTCxNQUFNO1FBQ04sTUFBTSxFQUFFLGFBQWEsSUFBSSxTQUFTO1FBQ2xDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsSUFBSSxLQUFLO1FBQ25ELFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLEVBQUU7UUFDaEMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1FBQ2hDLEtBQUssRUFBRSxRQUFRLElBQUksZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUNoRSxDQUFDLENBQUM7SUFFSCxPQUFPO1FBQ0gsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtRQUMxQixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFO1FBQ2pDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNyQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDbEIsQ0FBQyxDQUFDLElBQUksRUFBRTtRQUNULGFBQWEsRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQztRQUNuRixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJO1FBQ2xDLFlBQVksRUFBRSxnQkFBZ0I7UUFDOUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ2YsQ0FBQyxDQUFDO2dCQUNFLFlBQVksRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWE7Z0JBQ3hDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCO2dCQUNoRCxXQUFXLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZO2FBQ3pDO1lBQ0QsQ0FBQyxDQUFDLElBQUk7UUFDVixJQUFJLEVBQUUsTUFBZ0M7S0FDekMsQ0FBQztBQUNOLENBQUM7QUFFRCxnQkFBZ0I7QUFDaEIsS0FBSyxVQUFVLFdBQVcsQ0FDdEIsT0FBMEIsRUFDMUIsTUFBZSxFQUNmLFNBQWlCO0lBRWpCLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFXLENBQUM7SUFFN0UsSUFBSSxTQUFTLEtBQUssY0FBYyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxTQUFTLENBQVcsQ0FBQztRQUNuRSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBVyxDQUFDO1FBQ3JFLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FJaEUsQ0FBQztRQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7WUFDdkMsSUFBSTtZQUNKLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBZTtZQUNqQyxXQUFXLEVBQUUsT0FBTyxDQUFDLFVBQVU7WUFDL0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1NBQ3pCLENBQUMsQ0FBQztRQUVILDhCQUE4QjtRQUM5QixPQUFPO1lBQ0gsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtZQUN6QixJQUFJLEVBQUUsTUFBZ0M7U0FDekMsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLFNBQVMsS0FBSyxjQUFjLEVBQUUsQ0FBQztRQUMvQixNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxTQUFTLENBQVcsQ0FBQztRQUMvRixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBVyxDQUFDO1FBRWpGLGtCQUFrQjtRQUNsQixPQUFPLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUN4RixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlDLE1BQU0sTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7WUFDdkMsS0FBSyxFQUFFO2dCQUNILE1BQU0sRUFBRSxXQUFrQjtnQkFDMUIsSUFBSSxFQUFFLFdBQVc7YUFDcEI7U0FDSixDQUFDLENBQUM7UUFFSCxPQUFPO1lBQ0gsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUN2QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ3pCLElBQUksRUFBRSxNQUFnQztTQUN6QyxDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sSUFBSSxpQ0FBa0IsQ0FDeEIsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUNqQiw0QkFBNEIsU0FBUyxFQUFFLEVBQ3ZDLEVBQUUsU0FBUyxFQUFFLENBQ2hCLENBQUM7QUFDTixDQUFDO0FBRUQsZ0JBQWdCO0FBQ2hCLEtBQUssVUFBVSxXQUFXLENBQ3RCLE9BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFpQjtJQUVqQixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBVyxDQUFDO0lBRTdFLElBQUksU0FBUyxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQzVCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFXLENBQUM7UUFDckUsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUE0QixDQUFDO1FBRTlGLE1BQU0sWUFBWSxHQU1kLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFFZCxJQUFJLE9BQU8sQ0FBQyxVQUFVO1lBQUUsWUFBWSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsVUFBb0IsQ0FBQztRQUNoRixJQUFJLE9BQU8sQ0FBQyxVQUFVO1lBQUUsWUFBWSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsVUFBNEIsQ0FBQztRQUN4RixJQUFJLE9BQU8sQ0FBQyxVQUFVO1lBQUUsWUFBWSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsVUFBK0MsQ0FBQztRQUMzRyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixNQUFNLEtBQUssR0FBSSxPQUFPLENBQUMsVUFBcUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUYsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQUUsWUFBWSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDM0QsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFdEQsT0FBTztZQUNILE9BQU8sRUFBRSxPQUFPLElBQUksRUFBRTtZQUN0QixLQUFLO1lBQ0wsSUFBSSxFQUFFLE9BQWlDO1NBQzFDLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxTQUFTLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDdEIsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFXLENBQUM7UUFDL0UsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBVyxDQUFDO1FBRXZHLElBQUksU0FBMkMsQ0FBQztRQUVoRCxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ1gsbUJBQW1CO1lBQ25CLFNBQVMsR0FBRyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsQ0FBQztRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNKLHNDQUFzQztZQUN0QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1lBQ25GLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztZQUN4RixNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxJQUFJLFdBQVcsQ0FBQztZQUNwRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdDLDhDQUE4QztZQUM5QyxTQUFTLEdBQUcsRUFBRSxLQUFLLEVBQUUsUUFBUSxRQUFRLFdBQVcsVUFBVSxFQUFFLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVsRCxPQUFPO1lBQ0gsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUN2QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxFQUFFO1lBQzNCLElBQUksRUFBRSxNQUFnQztTQUN6QyxDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sSUFBSSxpQ0FBa0IsQ0FDeEIsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUNqQiw0QkFBNEIsU0FBUyxFQUFFLEVBQ3ZDLEVBQUUsU0FBUyxFQUFFLENBQ2hCLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBJRXhlY3V0ZUZ1bmN0aW9ucyxcbiAgICBJTm9kZUV4ZWN1dGlvbkRhdGEsXG4gICAgSU5vZGVUeXBlLFxuICAgIElOb2RlVHlwZURlc2NyaXB0aW9uLFxuICAgIE5vZGVPcGVyYXRpb25FcnJvcixcbiAgICBJRGF0YU9iamVjdCxcbiAgICBJQmluYXJ5S2V5RGF0YSxcbn0gZnJvbSAnbjhuLXdvcmtmbG93JztcblxuaW1wb3J0IHsgUWluaXVBSSwgZ2VuZXJhdGVUZXh0V2l0aEdyYXBoLCBBUElFcnJvciB9IGZyb20gJ0Bib3dlbnF0L3Fpbml1LWFpLXNkayc7XG5cbmltcG9ydCB7IGNoYXRPcGVyYXRpb25zLCBjaGF0RmllbGRzIH0gZnJvbSAnLi9kZXNjcmlwdGlvbnMvQ2hhdERlc2NyaXB0aW9uJztcbmltcG9ydCB7IGltYWdlT3BlcmF0aW9ucywgaW1hZ2VGaWVsZHMgfSBmcm9tICcuL2Rlc2NyaXB0aW9ucy9JbWFnZURlc2NyaXB0aW9uJztcbmltcG9ydCB7IHZpZGVvT3BlcmF0aW9ucywgdmlkZW9GaWVsZHMgfSBmcm9tICcuL2Rlc2NyaXB0aW9ucy9WaWRlb0Rlc2NyaXB0aW9uJztcbmltcG9ydCB7IGFnZW50T3BlcmF0aW9ucywgYWdlbnRGaWVsZHMgfSBmcm9tICcuL2Rlc2NyaXB0aW9ucy9BZ2VudERlc2NyaXB0aW9uJztcbmltcG9ydCB7IGF1ZGlvT3BlcmF0aW9ucywgYXVkaW9GaWVsZHMgfSBmcm9tICcuL2Rlc2NyaXB0aW9ucy9BdWRpb0Rlc2NyaXB0aW9uJztcbmltcG9ydCB7IHRvb2xzT3BlcmF0aW9ucywgdG9vbHNGaWVsZHMgfSBmcm9tICcuL2Rlc2NyaXB0aW9ucy9Ub29sc0Rlc2NyaXB0aW9uJztcblxuZXhwb3J0IGNsYXNzIFFpbml1QWkgaW1wbGVtZW50cyBJTm9kZVR5cGUge1xuICAgIGRlc2NyaXB0aW9uOiBJTm9kZVR5cGVEZXNjcmlwdGlvbiA9IHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdRaW5pdSBBSScsXG4gICAgICAgIG5hbWU6ICdxaW5pdUFpJyxcbiAgICAgICAgaWNvbjogJ2ZpbGU6cWluaXUuc3ZnJyxcbiAgICAgICAgZ3JvdXA6IFsndHJhbnNmb3JtJ10sXG4gICAgICAgIHZlcnNpb246IDEsXG4gICAgICAgIHN1YnRpdGxlOiAnPXt7JHBhcmFtZXRlcltcIm9wZXJhdGlvblwiXSArIFwiOiBcIiArICRwYXJhbWV0ZXJbXCJyZXNvdXJjZVwiXX19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdJbnRlcmFjdCB3aXRoIFFpbml1IEFJIHNlcnZpY2VzIC0gQ2hhdCwgSW1hZ2UsIFZpZGVvLCBBZ2VudCBhbmQgbW9yZScsXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBuYW1lOiAnUWluaXUgQUknLFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dHM6IFsnbWFpbiddLFxuICAgICAgICBvdXRwdXRzOiBbJ21haW4nXSxcbiAgICAgICAgY3JlZGVudGlhbHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncWluaXVBaUFwaScsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICAvLyBSZXNvdXJjZVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnUmVzb3VyY2UnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXNvdXJjZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG5vRGF0YUV4cHJlc3Npb246IHRydWUsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQ2hhdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2NoYXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBjaGF0IGNvbXBsZXRpb25zJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ltYWdlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnaW1hZ2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBvciBlZGl0IGltYWdlcycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdWaWRlbycsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ3ZpZGVvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgdmlkZW9zJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0FnZW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnYWdlbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSdW4gQUkgYWdlbnQgd2l0aCB0b29scyBhbmQgbWVtb3J5JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0F1ZGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnYXVkaW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUZXh0LXRvLVNwZWVjaCBhbmQgU3BlZWNoLXRvLVRleHQnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVG9vbHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICd0b29scycsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1dlYiBTZWFyY2gsIE9DUiBhbmQgbW9yZScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnY2hhdCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy8gT3BlcmF0aW9ucyBhbmQgZmllbGRzXG4gICAgICAgICAgICAuLi5jaGF0T3BlcmF0aW9ucyxcbiAgICAgICAgICAgIC4uLmNoYXRGaWVsZHMsXG4gICAgICAgICAgICAuLi5pbWFnZU9wZXJhdGlvbnMsXG4gICAgICAgICAgICAuLi5pbWFnZUZpZWxkcyxcbiAgICAgICAgICAgIC4uLnZpZGVvT3BlcmF0aW9ucyxcbiAgICAgICAgICAgIC4uLnZpZGVvRmllbGRzLFxuICAgICAgICAgICAgLi4uYWdlbnRPcGVyYXRpb25zLFxuICAgICAgICAgICAgLi4uYWdlbnRGaWVsZHMsXG4gICAgICAgICAgICAuLi5hdWRpb09wZXJhdGlvbnMsXG4gICAgICAgICAgICAuLi5hdWRpb0ZpZWxkcyxcbiAgICAgICAgICAgIC4uLnRvb2xzT3BlcmF0aW9ucyxcbiAgICAgICAgICAgIC4uLnRvb2xzRmllbGRzLFxuICAgICAgICBdLFxuICAgIH07XG5cbiAgICBhc3luYyBleGVjdXRlKHRoaXM6IElFeGVjdXRlRnVuY3Rpb25zKTogUHJvbWlzZTxJTm9kZUV4ZWN1dGlvbkRhdGFbXVtdPiB7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJbnB1dERhdGEoKTtcbiAgICAgICAgY29uc3QgcmV0dXJuRGF0YTogSU5vZGVFeGVjdXRpb25EYXRhW10gPSBbXTtcblxuICAgICAgICAvLyBHZXQgY3JlZGVudGlhbHNcbiAgICAgICAgY29uc3QgY3JlZGVudGlhbHMgPSBhd2FpdCB0aGlzLmdldENyZWRlbnRpYWxzKCdxaW5pdUFpQXBpJyk7XG4gICAgICAgIGNvbnN0IGFwaUtleSA9IGNyZWRlbnRpYWxzLmFwaUtleSBhcyBzdHJpbmc7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSAoY3JlZGVudGlhbHMuYmFzZVVybCBhcyBzdHJpbmcpIHx8ICdodHRwczovL2FwaS5xbmFpZ2MuY29tL3YxJztcblxuICAgICAgICAvLyBJbml0aWFsaXplIGNsaWVudFxuICAgICAgICBjb25zdCBjbGllbnQgPSBuZXcgUWluaXVBSSh7IGFwaUtleSwgYmFzZVVybCB9KTtcblxuICAgICAgICBjb25zdCByZXNvdXJjZSA9IHRoaXMuZ2V0Tm9kZVBhcmFtZXRlcigncmVzb3VyY2UnLCAwKSBhcyBzdHJpbmc7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgcmVzdWx0OiBJRGF0YU9iamVjdDtcblxuICAgICAgICAgICAgICAgIC8vIFJvdXRlIHRvIGFwcHJvcHJpYXRlIGhhbmRsZXJcbiAgICAgICAgICAgICAgICBpZiAocmVzb3VyY2UgPT09ICdjaGF0Jykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBoYW5kbGVDaGF0KHRoaXMsIGNsaWVudCwgaSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNvdXJjZSA9PT0gJ2ltYWdlJykge1xuICAgICAgICAgICAgICAgICAgICAvLyBJbWFnZSBuZWVkcyBzcGVjaWFsIGhhbmRsaW5nIGZvciBiaW5hcnkgb3V0cHV0XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGltYWdlUmVzdWx0ID0gYXdhaXQgaGFuZGxlSW1hZ2UodGhpcywgY2xpZW50LCBpKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGpzb246IGltYWdlUmVzdWx0Lmpzb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnk6IGltYWdlUmVzdWx0LmJpbmFyeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhaXJlZEl0ZW06IHsgaXRlbTogaSB9LFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNvdXJjZSA9PT0gJ3ZpZGVvJykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBoYW5kbGVWaWRlbyh0aGlzLCBjbGllbnQsIGkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzb3VyY2UgPT09ICdhZ2VudCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlQWdlbnQodGhpcywgY2xpZW50LCBpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc291cmNlID09PSAnYXVkaW8nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGhhbmRsZUF1ZGlvKHRoaXMsIGNsaWVudCwgaSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNvdXJjZSA9PT0gJ3Rvb2xzJykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBoYW5kbGVUb29scyh0aGlzLCBjbGllbnQsIGkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBOb2RlT3BlcmF0aW9uRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldE5vZGUoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGBVbmtub3duIHJlc291cmNlOiAke3Jlc291cmNlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGl0ZW1JbmRleDogaSB9XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAganNvbjogcmVzdWx0LFxuICAgICAgICAgICAgICAgICAgICBwYWlyZWRJdGVtOiB7IGl0ZW06IGkgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQVBJRXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IE5vZGVPcGVyYXRpb25FcnJvcihcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgYFFpbml1IEFJIEFQSSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbUluZGV4OiBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgU3RhdHVzOiAke2Vycm9yLnN0YXR1c30sIENvZGU6ICR7KGVycm9yIGFzIGFueSkuY29kZSB8fCAndW5rbm93bid9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW3JldHVybkRhdGFdO1xuICAgIH1cbn1cblxuLy8gQ2hhdCBoYW5kbGVyXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVDaGF0KFxuICAgIGNvbnRleHQ6IElFeGVjdXRlRnVuY3Rpb25zLFxuICAgIGNsaWVudDogUWluaXVBSSxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuKTogUHJvbWlzZTxJRGF0YU9iamVjdD4ge1xuICAgIGNvbnN0IG1vZGVsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdtb2RlbCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGlucHV0VHlwZSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignaW5wdXRUeXBlJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3B0aW9ucycsIGl0ZW1JbmRleCwge30pIGFzIHtcbiAgICAgICAgdGVtcGVyYXR1cmU/OiBudW1iZXI7XG4gICAgICAgIG1heFRva2Vucz86IG51bWJlcjtcbiAgICAgICAganNvbk1vZGU/OiBib29sZWFuO1xuICAgICAgICB0b3BQPzogbnVtYmVyO1xuICAgIH07XG5cbiAgICAvLyBCdWlsZCBtZXNzYWdlc1xuICAgIGxldCBtZXNzYWdlczogQXJyYXk8eyByb2xlOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB9PiA9IFtdO1xuXG4gICAgaWYgKGlucHV0VHlwZSA9PT0gJ3NpbXBsZScpIHtcbiAgICAgICAgY29uc3QgcHJvbXB0ID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdwcm9tcHQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3Qgc3lzdGVtTWVzc2FnZSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignc3lzdGVtTWVzc2FnZScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZztcblxuICAgICAgICBpZiAoc3lzdGVtTWVzc2FnZSkge1xuICAgICAgICAgICAgbWVzc2FnZXMucHVzaCh7IHJvbGU6ICdzeXN0ZW0nLCBjb250ZW50OiBzeXN0ZW1NZXNzYWdlIH0pO1xuICAgICAgICB9XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goeyByb2xlOiAndXNlcicsIGNvbnRlbnQ6IHByb21wdCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBtZXNzYWdlc0RhdGEgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ21lc3NhZ2VzJywgaXRlbUluZGV4KSBhcyB7XG4gICAgICAgICAgICBtZXNzYWdlVmFsdWVzPzogQXJyYXk8eyByb2xlOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB9PjtcbiAgICAgICAgfTtcbiAgICAgICAgbWVzc2FnZXMgPSBtZXNzYWdlc0RhdGEubWVzc2FnZVZhbHVlcyB8fCBbXTtcbiAgICB9XG5cbiAgICAvLyBDYWxsIEFQSVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmNoYXQuY3JlYXRlKHtcbiAgICAgICAgbW9kZWwsXG4gICAgICAgIG1lc3NhZ2VzOiBtZXNzYWdlcyBhcyBhbnksXG4gICAgICAgIHRlbXBlcmF0dXJlOiBvcHRpb25zLnRlbXBlcmF0dXJlLFxuICAgICAgICBtYXhfdG9rZW5zOiBvcHRpb25zLm1heFRva2VucyxcbiAgICAgICAgdG9wX3A6IG9wdGlvbnMudG9wUCxcbiAgICAgICAgcmVzcG9uc2VfZm9ybWF0OiBvcHRpb25zLmpzb25Nb2RlID8geyB0eXBlOiAnanNvbl9vYmplY3QnIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG5cbiAgICAvLyBOb3JtYWxpemUgb3V0cHV0XG4gICAgY29uc3QgY2hvaWNlID0gcmVzcG9uc2UuY2hvaWNlcz8uWzBdO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNvbnRlbnQ6IGNob2ljZT8ubWVzc2FnZT8uY29udGVudCB8fCAnJyxcbiAgICAgICAgcm9sZTogY2hvaWNlPy5tZXNzYWdlPy5yb2xlIHx8ICdhc3Npc3RhbnQnLFxuICAgICAgICBmaW5pc2hSZWFzb246IGNob2ljZT8uZmluaXNoX3JlYXNvbiB8fCBudWxsLFxuICAgICAgICB1c2FnZTogcmVzcG9uc2UudXNhZ2VcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIHByb21wdFRva2VuczogcmVzcG9uc2UudXNhZ2UucHJvbXB0X3Rva2VucyxcbiAgICAgICAgICAgICAgICBjb21wbGV0aW9uVG9rZW5zOiByZXNwb25zZS51c2FnZS5jb21wbGV0aW9uX3Rva2VucyxcbiAgICAgICAgICAgICAgICB0b3RhbFRva2VuczogcmVzcG9uc2UudXNhZ2UudG90YWxfdG9rZW5zLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBfcmF3OiByZXNwb25zZSBhcyB1bmtub3duIGFzIElEYXRhT2JqZWN0LFxuICAgIH07XG59XG5cbi8vIEltYWdlIGhhbmRsZXIgLSByZXR1cm5zIHsganNvbiwgYmluYXJ5IH0gZm9yIHByb3BlciBuOG4gYmluYXJ5IGRhdGEgaGFuZGxpbmdcbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZUltYWdlKFxuICAgIGNvbnRleHQ6IElFeGVjdXRlRnVuY3Rpb25zLFxuICAgIGNsaWVudDogUWluaXVBSSxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuKTogUHJvbWlzZTx7IGpzb246IElEYXRhT2JqZWN0OyBiaW5hcnk/OiBJQmluYXJ5S2V5RGF0YSB9PiB7XG4gICAgY29uc3Qgb3BlcmF0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcGVyYXRpb24nLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBtb2RlbCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbW9kZWwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBwcm9tcHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Byb21wdCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHdhaXRGb3JDb21wbGV0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCd3YWl0Rm9yQ29tcGxldGlvbicsIGl0ZW1JbmRleCwgdHJ1ZSkgYXMgYm9vbGVhbjtcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgICBjb25zdCBwYXJhbXM6IGFueSA9IHtcbiAgICAgICAgbW9kZWwsXG4gICAgICAgIHByb21wdCxcbiAgICAgICAgbmVnYXRpdmVfcHJvbXB0OiBvcHRpb25zLm5lZ2F0aXZlUHJvbXB0LFxuICAgICAgICBhc3BlY3RfcmF0aW86IG9wdGlvbnMuYXNwZWN0UmF0aW8sXG4gICAgICAgIG46IG9wdGlvbnMubixcbiAgICB9O1xuXG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ2VkaXQnKSB7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZVVybCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigncmVmZXJlbmNlSW1hZ2VVcmwnLCBpdGVtSW5kZXgsICcnKSBhcyBzdHJpbmc7XG4gICAgICAgIGlmIChyZWZlcmVuY2VVcmwpIHtcbiAgICAgICAgICAgIHBhcmFtcy5pbWFnZV91cmwgPSByZWZlcmVuY2VVcmw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMubWFzaykge1xuICAgICAgICAgICAgcGFyYW1zLm1hc2sgPSBvcHRpb25zLm1hc2s7XG4gICAgICAgIH1cbiAgICAgICAgcGFyYW1zLnN0cmVuZ3RoID0gb3B0aW9ucy5zdHJlbmd0aDtcbiAgICAgICAgcGFyYW1zLmltYWdlX3JlZmVyZW5jZSA9IG9wdGlvbnMuaW1hZ2VSZWZlcmVuY2U7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIGltYWdlX2NvbmZpZ1xuICAgIGlmIChvcHRpb25zLmltYWdlU2l6ZSkge1xuICAgICAgICBwYXJhbXMuaW1hZ2VfY29uZmlnID0geyBpbWFnZV9zaXplOiBvcHRpb25zLmltYWdlU2l6ZSB9O1xuICAgIH1cblxuICAgIC8vIEFkdmFuY2VkIGltYWdlIHJlZmVyZW5jZXMgKGdlbmVyYXRlIG9ubHkpXG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ2dlbmVyYXRlJykge1xuICAgICAgICBjb25zdCBzdWJqZWN0SW1hZ2VVcmxzID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdzdWJqZWN0SW1hZ2VVcmxzJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBzY2VuZUltYWdlVXJsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdzY2VuZUltYWdlVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBzdHlsZUltYWdlVXJsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdzdHlsZUltYWdlVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuXG4gICAgICAgIC8vIFN1YmplY3QgcmVmZXJlbmNlIGltYWdlc1xuICAgICAgICBpZiAoc3ViamVjdEltYWdlVXJscykge1xuICAgICAgICAgICAgY29uc3QgdXJscyA9IHN1YmplY3RJbWFnZVVybHMuc3BsaXQoJywnKS5tYXAodSA9PiB1LnRyaW0oKSkuZmlsdGVyKHUgPT4gdSk7XG4gICAgICAgICAgICBpZiAodXJscy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zLnN1YmplY3RfaW1hZ2VfbGlzdCA9IHVybHMubWFwKGltYWdlID0+ICh7IGltYWdlLCBpbWFnZV90eXBlOiAnc3ViamVjdCcgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2NlbmUgcmVmZXJlbmNlIGltYWdlXG4gICAgICAgIGlmIChzY2VuZUltYWdlVXJsKSB7XG4gICAgICAgICAgICBwYXJhbXMuc2NlbmVfaW1hZ2UgPSB7IGltYWdlOiBzY2VuZUltYWdlVXJsIH07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdHlsZSByZWZlcmVuY2UgaW1hZ2VcbiAgICAgICAgaWYgKHN0eWxlSW1hZ2VVcmwpIHtcbiAgICAgICAgICAgIHBhcmFtcy5zdHlsZV9pbWFnZSA9IHsgaW1hZ2U6IHN0eWxlSW1hZ2VVcmwgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxldCByZXN1bHQ6IGFueTtcbiAgICBpZiAob3BlcmF0aW9uID09PSAnZ2VuZXJhdGUnKSB7XG4gICAgICAgIGNvbnN0IGNyZWF0ZVJlc3VsdCA9IGF3YWl0IGNsaWVudC5pbWFnZS5nZW5lcmF0ZShwYXJhbXMpO1xuICAgICAgICBpZiAod2FpdEZvckNvbXBsZXRpb24pIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGNsaWVudC5pbWFnZS53YWl0Rm9yUmVzdWx0KGNyZWF0ZVJlc3VsdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXN1bHQgPSBjcmVhdGVSZXN1bHQ7XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSBhd2FpdCBjbGllbnQuaW1hZ2UuZWRpdChwYXJhbXMpO1xuICAgIH1cblxuICAgIC8vIEJ1aWxkIGJpbmFyeSBkYXRhIGZyb20gYmFzZTY0IGltYWdlc1xuICAgIGNvbnN0IGJpbmFyeTogSUJpbmFyeUtleURhdGEgPSB7fTtcbiAgICBjb25zdCBpbWFnZXM6IGFueVtdID0gW107XG5cbiAgICBpZiAocmVzdWx0LmRhdGEgJiYgQXJyYXkuaXNBcnJheShyZXN1bHQuZGF0YSkpIHtcbiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgcmVzdWx0LmRhdGEubGVuZ3RoOyBpZHgrKykge1xuICAgICAgICAgICAgY29uc3QgaW1nID0gcmVzdWx0LmRhdGFbaWR4XTtcbiAgICAgICAgICAgIGltYWdlcy5wdXNoKHtcbiAgICAgICAgICAgICAgICB1cmw6IGltZy51cmwgfHwgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGluZGV4OiBpbWcuaW5kZXgsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gQ29udmVydCBiYXNlNjQgdG8gYmluYXJ5IGRhdGEgZm9yIGRvd25zdHJlYW0gdXNhZ2VcbiAgICAgICAgICAgIGlmIChpbWcuYjY0X2pzb24pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuZnJvbShpbWcuYjY0X2pzb24sICdiYXNlNjQnKTtcbiAgICAgICAgICAgICAgICBjb25zdCBiaW5hcnlLZXkgPSBpZHggPT09IDAgPyAnZGF0YScgOiBgZGF0YV8ke2lkeH1gO1xuICAgICAgICAgICAgICAgIGJpbmFyeVtiaW5hcnlLZXldID0gYXdhaXQgY29udGV4dC5oZWxwZXJzLnByZXBhcmVCaW5hcnlEYXRhKFxuICAgICAgICAgICAgICAgICAgICBidWZmZXIsXG4gICAgICAgICAgICAgICAgICAgIGBpbWFnZV8ke2lkeH0uJHtyZXN1bHQub3V0cHV0X2Zvcm1hdCB8fCAncG5nJ31gLFxuICAgICAgICAgICAgICAgICAgICBgaW1hZ2UvJHtyZXN1bHQub3V0cHV0X2Zvcm1hdCB8fCAncG5nJ31gXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIGpzb246IHtcbiAgICAgICAgICAgIGltYWdlcyxcbiAgICAgICAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyB8fCAndW5rbm93bicsXG4gICAgICAgICAgICB0YXNrSWQ6IHJlc3VsdC50YXNrX2lkLFxuICAgICAgICAgICAgaXNTeW5jOiByZXN1bHQuaXNTeW5jLFxuICAgICAgICAgICAgaW1hZ2VDb3VudDogaW1hZ2VzLmxlbmd0aCxcbiAgICAgICAgICAgIF9yYXc6IHJlc3VsdCxcbiAgICAgICAgfSxcbiAgICAgICAgYmluYXJ5OiBPYmplY3Qua2V5cyhiaW5hcnkpLmxlbmd0aCA+IDAgPyBiaW5hcnkgOiB1bmRlZmluZWQsXG4gICAgfTtcbn1cblxuLy8gVmlkZW8gaGFuZGxlclxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlVmlkZW8oXG4gICAgY29udGV4dDogSUV4ZWN1dGVGdW5jdGlvbnMsXG4gICAgY2xpZW50OiBRaW5pdUFJLFxuICAgIGl0ZW1JbmRleDogbnVtYmVyXG4pOiBQcm9taXNlPElEYXRhT2JqZWN0PiB7XG4gICAgY29uc3Qgb3BlcmF0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcGVyYXRpb24nLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcblxuICAgIGlmIChvcGVyYXRpb24gPT09ICdnZXRTdGF0dXMnKSB7XG4gICAgICAgIGNvbnN0IHRhc2tJZCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigndGFza0lkJywgaXRlbUluZGV4KSBhcyBzdHJpbmc7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNsaWVudC52aWRlby5nZXQodGFza0lkKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiByZXN1bHQuaWQsXG4gICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMsXG4gICAgICAgICAgICB2aWRlb3M6IHJlc3VsdC50YXNrX3Jlc3VsdD8udmlkZW9zIHx8IFtdLFxuICAgICAgICAgICAgbWVzc2FnZTogcmVzdWx0Lm1lc3NhZ2UsXG4gICAgICAgICAgICBfcmF3OiByZXN1bHQgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAob3BlcmF0aW9uID09PSAncmVtaXgnKSB7XG4gICAgICAgIGNvbnN0IHNvdXJjZVZpZGVvSWQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3NvdXJjZVZpZGVvSWQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3QgcmVtaXhQcm9tcHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3JlbWl4UHJvbXB0JywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCB3YWl0Rm9yQ29tcGxldGlvbiA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignd2FpdEZvckNvbXBsZXRpb24nLCBpdGVtSW5kZXgsIHRydWUpIGFzIGJvb2xlYW47XG4gICAgICAgIGNvbnN0IHJlbWl4T3B0aW9ucyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigncmVtaXhPcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgICAgICAgY29uc3QgcmVtaXhQYXJhbXM6IGFueSA9IHt9O1xuICAgICAgICBpZiAocmVtaXhQcm9tcHQpIHJlbWl4UGFyYW1zLnByb21wdCA9IHJlbWl4UHJvbXB0O1xuICAgICAgICBpZiAocmVtaXhPcHRpb25zLmR1cmF0aW9uKSByZW1peFBhcmFtcy5kdXJhdGlvbiA9IHJlbWl4T3B0aW9ucy5kdXJhdGlvbjtcbiAgICAgICAgaWYgKHJlbWl4T3B0aW9ucy5tb2RlKSByZW1peFBhcmFtcy5tb2RlID0gcmVtaXhPcHRpb25zLm1vZGU7XG4gICAgICAgIGlmIChyZW1peE9wdGlvbnMubmVnYXRpdmVQcm9tcHQpIHJlbWl4UGFyYW1zLm5lZ2F0aXZlX3Byb21wdCA9IHJlbWl4T3B0aW9ucy5uZWdhdGl2ZVByb21wdDtcblxuICAgICAgICBjb25zdCB0YXNrID0gYXdhaXQgY2xpZW50LnZpZGVvLnJlbWl4KHNvdXJjZVZpZGVvSWQsIHJlbWl4UGFyYW1zKTtcblxuICAgICAgICBpZiAod2FpdEZvckNvbXBsZXRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNsaWVudC52aWRlby53YWl0Rm9yQ29tcGxldGlvbih0YXNrLmlkKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgaWQ6IHJlc3VsdC5pZCxcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMsXG4gICAgICAgICAgICAgICAgdmlkZW9zOiByZXN1bHQudGFza19yZXN1bHQ/LnZpZGVvcyB8fCBbXSxcbiAgICAgICAgICAgICAgICBfcmF3OiByZXN1bHQgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IHRhc2suaWQsXG4gICAgICAgICAgICBzdGF0dXM6ICdwcm9jZXNzaW5nJyxcbiAgICAgICAgICAgIF9yYXc6IHRhc2ssXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGVcbiAgICBjb25zdCBtb2RlbCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbW9kZWwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBwcm9tcHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Byb21wdCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHdhaXRGb3JDb21wbGV0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCd3YWl0Rm9yQ29tcGxldGlvbicsIGl0ZW1JbmRleCwgdHJ1ZSkgYXMgYm9vbGVhbjtcbiAgICBjb25zdCBmaXJzdEZyYW1lVXJsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdmaXJzdEZyYW1lVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGZpcnN0RnJhbWVCaW5hcnlQcm9wZXJ0eSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignZmlyc3RGcmFtZUJpbmFyeVByb3BlcnR5JywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGxhc3RGcmFtZVVybCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbGFzdEZyYW1lVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5ID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdsYXN0RnJhbWVCaW5hcnlQcm9wZXJ0eScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZztcbiAgICBjb25zdCBhc3BlY3RSYXRpbyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignYXNwZWN0UmF0aW8nLCBpdGVtSW5kZXgsICcxNjo5JykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIGNvbnN0IHBhcmFtczogYW55ID0ge1xuICAgICAgICBtb2RlbCxcbiAgICAgICAgcHJvbXB0LFxuICAgICAgICBuZWdhdGl2ZV9wcm9tcHQ6IG9wdGlvbnMubmVnYXRpdmVQcm9tcHQsXG4gICAgICAgIGFzcGVjdF9yYXRpbzogYXNwZWN0UmF0aW8sXG4gICAgfTtcblxuICAgIC8vIEZyYW1lIGNvbnRyb2wgLSBzdXBwb3J0IGJvdGggVVJMIGFuZCBCaW5hcnkgRGF0YVxuICAgIGNvbnN0IGZyYW1lczogYW55ID0ge307XG5cbiAgICAvLyBGaXJzdCBmcmFtZVxuICAgIGlmIChmaXJzdEZyYW1lVXJsKSB7XG4gICAgICAgIGZyYW1lcy5maXJzdCA9IHsgdXJsOiBmaXJzdEZyYW1lVXJsIH07XG4gICAgfSBlbHNlIGlmIChmaXJzdEZyYW1lQmluYXJ5UHJvcGVydHkpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IGF3YWl0IGNvbnRleHQuaGVscGVycy5nZXRCaW5hcnlEYXRhQnVmZmVyKGl0ZW1JbmRleCwgZmlyc3RGcmFtZUJpbmFyeVByb3BlcnR5KTtcbiAgICAgICAgICAgIGZyYW1lcy5maXJzdCA9IHsgYmFzZTY0OiBidWZmZXIudG9TdHJpbmcoJ2Jhc2U2NCcpIH07XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgLy8gQmluYXJ5IGRhdGEgbm90IGZvdW5kLCBza2lwXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMYXN0IGZyYW1lXG4gICAgaWYgKGxhc3RGcmFtZVVybCkge1xuICAgICAgICBmcmFtZXMubGFzdCA9IHsgdXJsOiBsYXN0RnJhbWVVcmwgfTtcbiAgICB9IGVsc2UgaWYgKGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5KSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBidWZmZXIgPSBhd2FpdCBjb250ZXh0LmhlbHBlcnMuZ2V0QmluYXJ5RGF0YUJ1ZmZlcihpdGVtSW5kZXgsIGxhc3RGcmFtZUJpbmFyeVByb3BlcnR5KTtcbiAgICAgICAgICAgIGZyYW1lcy5sYXN0ID0geyBiYXNlNjQ6IGJ1ZmZlci50b1N0cmluZygnYmFzZTY0JykgfTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAvLyBCaW5hcnkgZGF0YSBub3QgZm91bmQsIHNraXBcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyhmcmFtZXMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcGFyYW1zLmZyYW1lcyA9IGZyYW1lcztcbiAgICB9XG5cbiAgICAvLyBWaWRlbyByZWZlcmVuY2UgKHZpZGVvX2xpc3QpIGZvciB2aWRlby10by12aWRlbyBnZW5lcmF0aW9uXG4gICAgY29uc3QgdmlkZW9SZWZlcmVuY2VVcmwgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3ZpZGVvUmVmZXJlbmNlVXJsJywgaXRlbUluZGV4LCAnJykgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGtlZXBPcmlnaW5hbFNvdW5kID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdrZWVwT3JpZ2luYWxTb3VuZCcsIGl0ZW1JbmRleCwgZmFsc2UpIGFzIGJvb2xlYW47XG4gICAgaWYgKHZpZGVvUmVmZXJlbmNlVXJsKSB7XG4gICAgICAgIHBhcmFtcy52aWRlb19saXN0ID0gW3tcbiAgICAgICAgICAgIHZpZGVvX3VybDogdmlkZW9SZWZlcmVuY2VVcmwsXG4gICAgICAgICAgICBrZWVwX29yaWdpbmFsX3NvdW5kOiBrZWVwT3JpZ2luYWxTb3VuZCA/ICd5ZXMnIDogJ25vJyxcbiAgICAgICAgfV07XG4gICAgfVxuXG4gICAgLy8gTW9kZWwtc3BlY2lmaWMgb3B0aW9uc1xuICAgIGlmIChtb2RlbC5pbmNsdWRlcygna2xpbmcnKSkge1xuICAgICAgICBjb25zdCBrbGluZ09wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2tsaW5nT3B0aW9ucycsIGl0ZW1JbmRleCwge30pIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgICAgICAvLyBEdXJhdGlvbiBpcyByZXF1aXJlZCBmb3IgS2xpbmcgLSBkZWZhdWx0IHRvIDUgc2Vjb25kc1xuICAgICAgICBwYXJhbXMuZHVyYXRpb24gPSBrbGluZ09wdGlvbnMuZHVyYXRpb24gfHwgJzUnO1xuICAgICAgICBpZiAoa2xpbmdPcHRpb25zLm1vZGUpIHBhcmFtcy5tb2RlID0ga2xpbmdPcHRpb25zLm1vZGU7XG4gICAgICAgIGlmIChrbGluZ09wdGlvbnMuY2ZnU2NhbGUpIHBhcmFtcy5jZmdfc2NhbGUgPSBrbGluZ09wdGlvbnMuY2ZnU2NhbGU7XG5cbiAgICAgICAgLy8gVXNlIHNpemUgZnJvbSBvcHRpb25zLCBvciBkZXJpdmUgZnJvbSBhc3BlY3RfcmF0aW8gKHdvcmthcm91bmQgZm9yIFNESyBidWcpXG4gICAgICAgIGlmIChrbGluZ09wdGlvbnMuc2l6ZSkge1xuICAgICAgICAgICAgcGFyYW1zLnNpemUgPSBrbGluZ09wdGlvbnMuc2l6ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIE1hcCBhc3BlY3RfcmF0aW8gdG8gZGVmYXVsdCBzaXplIGZvciBLbGluZyBBUElcbiAgICAgICAgICAgIGNvbnN0IHNpemVNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAgICAgICAgICAgJzE2OjknOiAnMTkyMDoxMDgwJyxcbiAgICAgICAgICAgICAgICAnOToxNic6ICcxMDgwOjE5MjAnLFxuICAgICAgICAgICAgICAgICcxOjEnOiAnMTA4MDoxMDgwJyxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBwYXJhbXMuc2l6ZSA9IHNpemVNYXBbYXNwZWN0UmF0aW9dIHx8ICcxOTIwOjEwODAnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG1vZGVsLmluY2x1ZGVzKCd2ZW8nKSkge1xuICAgICAgICBjb25zdCB2ZW9PcHRpb25zID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCd2ZW9PcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgICAgIC8vIER1cmF0aW9uU2Vjb25kcyBpcyByZXF1aXJlZCBmb3IgVmVvIC0gZml4ZWQgYXQgOCBzZWNvbmRzXG4gICAgICAgIHBhcmFtcy5kdXJhdGlvbiA9IHZlb09wdGlvbnMuZHVyYXRpb24gfHwgODtcbiAgICAgICAgaWYgKHZlb09wdGlvbnMuZ2VuZXJhdGVBdWRpbyAhPT0gdW5kZWZpbmVkKSBwYXJhbXMuZ2VuZXJhdGVfYXVkaW8gPSB2ZW9PcHRpb25zLmdlbmVyYXRlQXVkaW87XG4gICAgICAgIGlmICh2ZW9PcHRpb25zLnJlc29sdXRpb24pIHBhcmFtcy5yZXNvbHV0aW9uID0gdmVvT3B0aW9ucy5yZXNvbHV0aW9uO1xuICAgICAgICBpZiAodmVvT3B0aW9ucy5zYW1wbGVDb3VudCkgcGFyYW1zLnNhbXBsZV9jb3VudCA9IHZlb09wdGlvbnMuc2FtcGxlQ291bnQ7XG4gICAgICAgIGlmICh2ZW9PcHRpb25zLnBlcnNvbkdlbmVyYXRpb24pIHBhcmFtcy5wZXJzb25fZ2VuZXJhdGlvbiA9IHZlb09wdGlvbnMucGVyc29uR2VuZXJhdGlvbjtcbiAgICAgICAgaWYgKHZlb09wdGlvbnMuc2VlZCkgcGFyYW1zLnNlZWQgPSB2ZW9PcHRpb25zLnNlZWQ7XG4gICAgfVxuXG4gICAgY29uc3QgdGFzayA9IGF3YWl0IGNsaWVudC52aWRlby5jcmVhdGUocGFyYW1zKTtcblxuICAgIGlmICh3YWl0Rm9yQ29tcGxldGlvbikge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQudmlkZW8ud2FpdEZvckNvbXBsZXRpb24odGFzay5pZCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogcmVzdWx0LmlkLFxuICAgICAgICAgICAgc3RhdHVzOiByZXN1bHQuc3RhdHVzLFxuICAgICAgICAgICAgdmlkZW9zOiByZXN1bHQudGFza19yZXN1bHQ/LnZpZGVvcyB8fCBbXSxcbiAgICAgICAgICAgIF9yYXc6IHJlc3VsdCBhcyB1bmtub3duIGFzIElEYXRhT2JqZWN0LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIGlkOiB0YXNrLmlkLFxuICAgICAgICBzdGF0dXM6ICdwcm9jZXNzaW5nJyxcbiAgICAgICAgX3JhdzogdGFzayxcbiAgICB9O1xufVxuXG4vLyBBZ2VudCBoYW5kbGVyXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVBZ2VudChcbiAgICBjb250ZXh0OiBJRXhlY3V0ZUZ1bmN0aW9ucyxcbiAgICBjbGllbnQ6IFFpbml1QUksXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbik6IFByb21pc2U8SURhdGFPYmplY3Q+IHtcbiAgICBjb25zdCBtb2RlbCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignbW9kZWwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBwcm9tcHQgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3Byb21wdCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHN5c3RlbU1lc3NhZ2UgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ3N5c3RlbU1lc3NhZ2UnLCBpdGVtSW5kZXgsICcnKSBhcyBzdHJpbmc7XG4gICAgY29uc3QgYnVpbHRpblRvb2xzID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdidWlsdGluVG9vbHMnLCBpdGVtSW5kZXgsIFtdKSBhcyBzdHJpbmdbXTtcbiAgICBjb25zdCBhdXRvRXhlY3V0ZVRvb2xzID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdhdXRvRXhlY3V0ZVRvb2xzJywgaXRlbUluZGV4LCB0cnVlKSBhcyBib29sZWFuO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wdGlvbnMnLCBpdGVtSW5kZXgsIHt9KSBhcyB7XG4gICAgICAgIG1heENvbnRleHRUb2tlbnM/OiBudW1iZXI7XG4gICAgICAgIG1heFN0ZXBzPzogbnVtYmVyO1xuICAgICAgICB0aHJlYWRJZD86IHN0cmluZztcbiAgICAgICAgdG9vbHM/OiBzdHJpbmc7XG4gICAgICAgIHRlbXBlcmF0dXJlPzogbnVtYmVyO1xuICAgICAgICBjaGVja3BvaW50ZXJUeXBlPzogJ25vbmUnIHwgJ21lbW9yeScgfCAncmVkaXMnIHwgJ3Bvc3RncmVzJztcbiAgICAgICAgY2hlY2twb2ludGVyQ29ubmVjdGlvbj86IHN0cmluZztcbiAgICB9O1xuXG4gICAgLy8gQnVpbGQgdG9vbHMgcmVjb3JkXG4gICAgY29uc3QgdG9vbHNSZWNvcmQ6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblxuICAgIC8vIFJlZ2lzdGVyIGJ1aWx0LWluIHRvb2xzXG4gICAgaWYgKGJ1aWx0aW5Ub29scy5pbmNsdWRlcygnd2ViU2VhcmNoJykpIHtcbiAgICAgICAgdG9vbHNSZWNvcmRbJ3dlYl9zZWFyY2gnXSA9IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU2VhcmNoIHRoZSB3ZWIgZm9yIGluZm9ybWF0aW9uLiBVc2UgdGhpcyB0byBmaW5kIGN1cnJlbnQgaW5mb3JtYXRpb24uJyxcbiAgICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgIHF1ZXJ5OiB7IHR5cGU6ICdzdHJpbmcnLCBkZXNjcmlwdGlvbjogJ1RoZSBzZWFyY2ggcXVlcnknIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogWydxdWVyeSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGV4ZWN1dGU6IGFzeW5jIChhcmdzOiB7IHF1ZXJ5OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBjbGllbnQuc3lzLnNlYXJjaCh7IHF1ZXJ5OiBhcmdzLnF1ZXJ5IH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHJlc3VsdHM6IHJlc3VsdHM/LnNsaWNlKDAsIDUpIHx8IFtdIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGlmIChidWlsdGluVG9vbHMuaW5jbHVkZXMoJ29jcicpKSB7XG4gICAgICAgIHRvb2xzUmVjb3JkWydvY3InXSA9IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRXh0cmFjdCB0ZXh0IGZyb20gYW4gaW1hZ2UgVVJMIHVzaW5nIE9DUi4nLFxuICAgICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiB7IHR5cGU6ICdzdHJpbmcnLCBkZXNjcmlwdGlvbjogJ1RoZSBpbWFnZSBVUkwgdG8gZXh0cmFjdCB0ZXh0IGZyb20nIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyd1cmwnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleGVjdXRlOiBhc3luYyAoYXJnczogeyB1cmw6IHN0cmluZyB9KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50Lm9jci5kZXRlY3QoeyB1cmw6IGFyZ3MudXJsIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGlmIChidWlsdGluVG9vbHMuaW5jbHVkZXMoJ2ltYWdlR2VuZXJhdGUnKSkge1xuICAgICAgICB0b29sc1JlY29yZFsnZ2VuZXJhdGVfaW1hZ2UnXSA9IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgYW4gaW1hZ2UgZnJvbSBhIHRleHQgcHJvbXB0LicsXG4gICAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgICAgICBwcm9tcHQ6IHsgdHlwZTogJ3N0cmluZycsIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gb2YgdGhlIGltYWdlIHRvIGdlbmVyYXRlJyB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsncHJvbXB0J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGFyZ3M6IHsgcHJvbXB0OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNyZWF0ZVJlc3VsdCA9IGF3YWl0IGNsaWVudC5pbWFnZS5nZW5lcmF0ZSh7XG4gICAgICAgICAgICAgICAgICAgIG1vZGVsOiAna2xpbmctdjItMScsXG4gICAgICAgICAgICAgICAgICAgIHByb21wdDogYXJncy5wcm9tcHQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LmltYWdlLndhaXRGb3JSZXN1bHQoY3JlYXRlUmVzdWx0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBpbWFnZXM6IHJlc3VsdC5kYXRhPy5tYXAoKGQ6IGFueSkgPT4gZC51cmwgfHwgZC5iNjRfanNvbj8uc3Vic3RyaW5nKDAsIDEwMCkgKyAnLi4uJykgfHwgW10sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGJ1aWx0aW5Ub29scy5pbmNsdWRlcygndmlkZW9HZW5lcmF0ZScpKSB7XG4gICAgICAgIHRvb2xzUmVjb3JkWydnZW5lcmF0ZV92aWRlbyddID0ge1xuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBhIHZpZGVvIGZyb20gYSB0ZXh0IHByb21wdC4nLFxuICAgICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvbXB0OiB7IHR5cGU6ICdzdHJpbmcnLCBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIG9mIHRoZSB2aWRlbyB0byBnZW5lcmF0ZScgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBbJ3Byb21wdCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGV4ZWN1dGU6IGFzeW5jIChhcmdzOiB7IHByb21wdDogc3RyaW5nIH0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrID0gYXdhaXQgY2xpZW50LnZpZGVvLmNyZWF0ZSh7XG4gICAgICAgICAgICAgICAgICAgIG1vZGVsOiAna2xpbmctdmlkZW8tbzEnLFxuICAgICAgICAgICAgICAgICAgICBwcm9tcHQ6IGFyZ3MucHJvbXB0LFxuICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbjogJzUnLFxuICAgICAgICAgICAgICAgICAgICBhc3BlY3RfcmF0aW86ICcxNjo5JyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQudmlkZW8ud2FpdEZvckNvbXBsZXRpb24odGFzay5pZCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHJlc3VsdC5pZCxcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiByZXN1bHQuc3RhdHVzLFxuICAgICAgICAgICAgICAgICAgICB2aWRlb3M6IHJlc3VsdC50YXNrX3Jlc3VsdD8udmlkZW9zIHx8IFtdLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8vIFBhcnNlIHVzZXItZGVmaW5lZCB0b29sc1xuICAgIGlmIChvcHRpb25zLnRvb2xzKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCB0b29sc0FycmF5ID0gSlNPTi5wYXJzZShvcHRpb25zLnRvb2xzKTtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRvb2xzQXJyYXkpICYmIHRvb2xzQXJyYXkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgdG9vbCBvZiB0b29sc0FycmF5KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0b29sLmZ1bmN0aW9uPy5uYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b29sc1JlY29yZFt0b29sLmZ1bmN0aW9uLm5hbWVdID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0b29sLmZ1bmN0aW9uLmRlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IHRvb2wuZnVuY3Rpb24ucGFyYW1ldGVycyB8fCB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGVjdXRlOiBhc3luYyAoX2FyZ3M6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBVc2VyLWRlZmluZWQgdG9vbHMgcmV0dXJuIHBsYWNlaG9sZGVyIGZvciBtYW51YWwgZXhlY3V0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHJlc3VsdDogJ1Rvb2wgZXhlY3V0ZWQuIFByb2Nlc3MgdGhlIHJlc3VsdCBpbiBzdWJzZXF1ZW50IHdvcmtmbG93IHN0ZXBzLicgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTm9kZU9wZXJhdGlvbkVycm9yKFxuICAgICAgICAgICAgICAgIGNvbnRleHQuZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgICdJbnZhbGlkIHRvb2xzIEpTT04gZm9ybWF0JyxcbiAgICAgICAgICAgICAgICB7IGl0ZW1JbmRleCB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZSB3aXRoIEFnZW50R3JhcGggaWYgYXV0by1leGVjdXRlIGlzIGVuYWJsZWQgYW5kIHRoZXJlIGFyZSB0b29sc1xuICAgIGNvbnN0IGhhc1Rvb2xzID0gT2JqZWN0LmtleXModG9vbHNSZWNvcmQpLmxlbmd0aCA+IDA7XG5cbiAgICAvLyBJbml0aWFsaXplIENoZWNrcG9pbnRlciBpZiBjb25maWd1cmVkXG4gICAgLy8gTm90ZTogQ2hlY2twb2ludGVyIGludGVncmF0aW9uIHJlcXVpcmVzIEFnZW50R3JhcGggZGlyZWN0bHksIG5vdCBnZW5lcmF0ZVRleHRXaXRoR3JhcGhcbiAgICAvLyBUaGlzIGlzIGEgcGxhY2Vob2xkZXIgZm9yIGZ1dHVyZSBmdWxsIGltcGxlbWVudGF0aW9uXG4gICAgbGV0IGNoZWNrcG9pbnRlckluZm86IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIGlmIChvcHRpb25zLmNoZWNrcG9pbnRlclR5cGUgJiYgb3B0aW9ucy5jaGVja3BvaW50ZXJUeXBlICE9PSAnbm9uZScpIHtcbiAgICAgICAgaWYgKG9wdGlvbnMuY2hlY2twb2ludGVyVHlwZSA9PT0gJ21lbW9yeScpIHtcbiAgICAgICAgICAgIGNoZWNrcG9pbnRlckluZm8gPSAnbWVtb3J5JztcbiAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmNoZWNrcG9pbnRlclR5cGUgPT09ICdyZWRpcycpIHtcbiAgICAgICAgICAgIGNoZWNrcG9pbnRlckluZm8gPSBgcmVkaXM6JHtvcHRpb25zLmNoZWNrcG9pbnRlckNvbm5lY3Rpb24gfHwgJ25vdC1jb25maWd1cmVkJ31gO1xuICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMuY2hlY2twb2ludGVyVHlwZSA9PT0gJ3Bvc3RncmVzJykge1xuICAgICAgICAgICAgY2hlY2twb2ludGVySW5mbyA9IGBwb3N0Z3Jlczoke29wdGlvbnMuY2hlY2twb2ludGVyQ29ubmVjdGlvbiB8fCAnbm90LWNvbmZpZ3VyZWQnfWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBnZW5lcmF0ZVRleHRXaXRoR3JhcGgoe1xuICAgICAgICBjbGllbnQsXG4gICAgICAgIG1vZGVsLFxuICAgICAgICBwcm9tcHQsXG4gICAgICAgIHN5c3RlbTogc3lzdGVtTWVzc2FnZSB8fCB1bmRlZmluZWQsXG4gICAgICAgIG1heENvbnRleHRUb2tlbnM6IG9wdGlvbnMubWF4Q29udGV4dFRva2VucyB8fCAzMjAwMCxcbiAgICAgICAgbWF4U3RlcHM6IG9wdGlvbnMubWF4U3RlcHMgfHwgMTAsXG4gICAgICAgIHRlbXBlcmF0dXJlOiBvcHRpb25zLnRlbXBlcmF0dXJlLFxuICAgICAgICB0b29sczogaGFzVG9vbHMgJiYgYXV0b0V4ZWN1dGVUb29scyA/IHRvb2xzUmVjb3JkIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgY29udGVudDogcmVzdWx0LnRleHQgfHwgJycsXG4gICAgICAgIHJlYXNvbmluZzogcmVzdWx0LnJlYXNvbmluZyB8fCAnJyxcbiAgICAgICAgc3RlcHM6IHJlc3VsdC5zdGVwcz8ubWFwKChzdGVwOiBhbnkpID0+ICh7XG4gICAgICAgICAgICB0eXBlOiBzdGVwLnR5cGUsXG4gICAgICAgICAgICB0b29sTmFtZTogc3RlcC50b29sTmFtZSxcbiAgICAgICAgICAgIHRvb2xBcmdzOiBzdGVwLnRvb2xBcmdzLFxuICAgICAgICAgICAgdG9vbFJlc3VsdDogc3RlcC50b29sUmVzdWx0LFxuICAgICAgICAgICAgdGV4dDogc3RlcC50ZXh0LFxuICAgICAgICB9KSkgfHwgW10sXG4gICAgICAgIHRvb2xzRXhlY3V0ZWQ6IHJlc3VsdC5zdGVwcz8uZmlsdGVyKChzOiBhbnkpID0+IHMudHlwZSA9PT0gJ3Rvb2xfY2FsbCcpLmxlbmd0aCB8fCAwLFxuICAgICAgICB0aHJlYWRJZDogb3B0aW9ucy50aHJlYWRJZCB8fCBudWxsLFxuICAgICAgICBjaGVja3BvaW50ZXI6IGNoZWNrcG9pbnRlckluZm8sXG4gICAgICAgIHVzYWdlOiByZXN1bHQudXNhZ2VcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIHByb21wdFRva2VuczogcmVzdWx0LnVzYWdlLnByb21wdF90b2tlbnMsXG4gICAgICAgICAgICAgICAgY29tcGxldGlvblRva2VuczogcmVzdWx0LnVzYWdlLmNvbXBsZXRpb25fdG9rZW5zLFxuICAgICAgICAgICAgICAgIHRvdGFsVG9rZW5zOiByZXN1bHQudXNhZ2UudG90YWxfdG9rZW5zLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBfcmF3OiByZXN1bHQgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICB9O1xufVxuXG4vLyBBdWRpbyBoYW5kbGVyXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVBdWRpbyhcbiAgICBjb250ZXh0OiBJRXhlY3V0ZUZ1bmN0aW9ucyxcbiAgICBjbGllbnQ6IFFpbml1QUksXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbik6IFByb21pc2U8SURhdGFPYmplY3Q+IHtcbiAgICBjb25zdCBvcGVyYXRpb24gPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ29wZXJhdGlvbicsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuXG4gICAgaWYgKG9wZXJhdGlvbiA9PT0gJ3RleHRUb1NwZWVjaCcpIHtcbiAgICAgICAgY29uc3QgdGV4dCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigndGV4dCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCB2b2ljZSA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcigndm9pY2UnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignb3B0aW9ucycsIGl0ZW1JbmRleCwge30pIGFzIHtcbiAgICAgICAgICAgIGVuY29kaW5nPzogc3RyaW5nO1xuICAgICAgICAgICAgc3BlZWRSYXRpbz86IG51bWJlcjtcbiAgICAgICAgICAgIHZvbHVtZT86IG51bWJlcjtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQudHRzLnN5bnRoZXNpemUoe1xuICAgICAgICAgICAgdGV4dCxcbiAgICAgICAgICAgIHZvaWNlX3R5cGU6IHZvaWNlLFxuICAgICAgICAgICAgZW5jb2Rpbmc6IG9wdGlvbnMuZW5jb2RpbmcgYXMgYW55LFxuICAgICAgICAgICAgc3BlZWRfcmF0aW86IG9wdGlvbnMuc3BlZWRSYXRpbyxcbiAgICAgICAgICAgIHZvbHVtZTogb3B0aW9ucy52b2x1bWUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFJldHVybiBhdWRpbyBhcyBiaW5hcnkgZGF0YVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYXVkaW86IHJlc3VsdC5hdWRpbyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiByZXN1bHQuZHVyYXRpb24sXG4gICAgICAgICAgICBfcmF3OiByZXN1bHQgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAob3BlcmF0aW9uID09PSAnc3BlZWNoVG9UZXh0Jykge1xuICAgICAgICBjb25zdCBiaW5hcnlQcm9wZXJ0eU5hbWUgPSBjb250ZXh0LmdldE5vZGVQYXJhbWV0ZXIoJ2JpbmFyeVByb3BlcnR5TmFtZScsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBhdWRpb0Zvcm1hdCA9IGNvbnRleHQuZ2V0Tm9kZVBhcmFtZXRlcignYXVkaW9Gb3JtYXQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcblxuICAgICAgICAvLyBHZXQgYmluYXJ5IGRhdGFcbiAgICAgICAgY29udGV4dC5oZWxwZXJzLmFzc2VydEJpbmFyeURhdGEoaXRlbUluZGV4LCBiaW5hcnlQcm9wZXJ0eU5hbWUpO1xuICAgICAgICBjb25zdCBidWZmZXIgPSBhd2FpdCBjb250ZXh0LmhlbHBlcnMuZ2V0QmluYXJ5RGF0YUJ1ZmZlcihpdGVtSW5kZXgsIGJpbmFyeVByb3BlcnR5TmFtZSk7XG4gICAgICAgIGNvbnN0IGJhc2U2NEF1ZGlvID0gYnVmZmVyLnRvU3RyaW5nKCdiYXNlNjQnKTtcblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQuYXNyLnRyYW5zY3JpYmUoe1xuICAgICAgICAgICAgYXVkaW86IHtcbiAgICAgICAgICAgICAgICBmb3JtYXQ6IGF1ZGlvRm9ybWF0IGFzIGFueSxcbiAgICAgICAgICAgICAgICBkYXRhOiBiYXNlNjRBdWRpbyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0ZXh0OiByZXN1bHQudGV4dCB8fCAnJyxcbiAgICAgICAgICAgIHdvcmRzOiByZXN1bHQud29yZHMgfHwgW10sXG4gICAgICAgICAgICBfcmF3OiByZXN1bHQgYXMgdW5rbm93biBhcyBJRGF0YU9iamVjdCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgTm9kZU9wZXJhdGlvbkVycm9yKFxuICAgICAgICBjb250ZXh0LmdldE5vZGUoKSxcbiAgICAgICAgYFVua25vd24gYXVkaW8gb3BlcmF0aW9uOiAke29wZXJhdGlvbn1gLFxuICAgICAgICB7IGl0ZW1JbmRleCB9XG4gICAgKTtcbn1cblxuLy8gVG9vbHMgaGFuZGxlclxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlVG9vbHMoXG4gICAgY29udGV4dDogSUV4ZWN1dGVGdW5jdGlvbnMsXG4gICAgY2xpZW50OiBRaW5pdUFJLFxuICAgIGl0ZW1JbmRleDogbnVtYmVyXG4pOiBQcm9taXNlPElEYXRhT2JqZWN0PiB7XG4gICAgY29uc3Qgb3BlcmF0aW9uID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcGVyYXRpb24nLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcblxuICAgIGlmIChvcGVyYXRpb24gPT09ICd3ZWJTZWFyY2gnKSB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdxdWVyeScsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgICAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdvcHRpb25zJywgaXRlbUluZGV4LCB7fSkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgICAgICAgY29uc3Qgc2VhcmNoUGFyYW1zOiB7XG4gICAgICAgICAgICBxdWVyeTogc3RyaW5nO1xuICAgICAgICAgICAgbWF4X3Jlc3VsdHM/OiBudW1iZXI7XG4gICAgICAgICAgICBzZWFyY2hfdHlwZT86ICd3ZWInIHwgJ25ld3MnO1xuICAgICAgICAgICAgdGltZV9maWx0ZXI/OiAnZGF5JyB8ICd3ZWVrJyB8ICdtb250aCcgfCAneWVhcic7XG4gICAgICAgICAgICBzaXRlX2ZpbHRlcj86IHN0cmluZ1tdO1xuICAgICAgICB9ID0geyBxdWVyeSB9O1xuXG4gICAgICAgIGlmIChvcHRpb25zLm1heFJlc3VsdHMpIHNlYXJjaFBhcmFtcy5tYXhfcmVzdWx0cyA9IG9wdGlvbnMubWF4UmVzdWx0cyBhcyBudW1iZXI7XG4gICAgICAgIGlmIChvcHRpb25zLnNlYXJjaFR5cGUpIHNlYXJjaFBhcmFtcy5zZWFyY2hfdHlwZSA9IG9wdGlvbnMuc2VhcmNoVHlwZSBhcyAnd2ViJyB8ICduZXdzJztcbiAgICAgICAgaWYgKG9wdGlvbnMudGltZUZpbHRlcikgc2VhcmNoUGFyYW1zLnRpbWVfZmlsdGVyID0gb3B0aW9ucy50aW1lRmlsdGVyIGFzICdkYXknIHwgJ3dlZWsnIHwgJ21vbnRoJyB8ICd5ZWFyJztcbiAgICAgICAgaWYgKG9wdGlvbnMuc2l0ZUZpbHRlcikge1xuICAgICAgICAgICAgY29uc3Qgc2l0ZXMgPSAob3B0aW9ucy5zaXRlRmlsdGVyIGFzIHN0cmluZykuc3BsaXQoJywnKS5tYXAocyA9PiBzLnRyaW0oKSkuZmlsdGVyKHMgPT4gcyk7XG4gICAgICAgICAgICBpZiAoc2l0ZXMubGVuZ3RoID4gMCkgc2VhcmNoUGFyYW1zLnNpdGVfZmlsdGVyID0gc2l0ZXM7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgY2xpZW50LnN5cy5zZWFyY2goc2VhcmNoUGFyYW1zKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcmVzdWx0czogcmVzdWx0cyB8fCBbXSxcbiAgICAgICAgICAgIHF1ZXJ5LFxuICAgICAgICAgICAgX3JhdzogcmVzdWx0cyBhcyB1bmtub3duIGFzIElEYXRhT2JqZWN0LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGlmIChvcGVyYXRpb24gPT09ICdvY3InKSB7XG4gICAgICAgIGNvbnN0IGltYWdlVXJsID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdpbWFnZVVybCcsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZztcbiAgICAgICAgY29uc3QgYmluYXJ5UHJvcGVydHlOYW1lID0gY29udGV4dC5nZXROb2RlUGFyYW1ldGVyKCdiaW5hcnlQcm9wZXJ0eU5hbWUnLCBpdGVtSW5kZXgsICdkYXRhJykgYXMgc3RyaW5nO1xuXG4gICAgICAgIGxldCBvY3JQYXJhbXM6IHsgdXJsPzogc3RyaW5nOyBpbWFnZT86IHN0cmluZyB9O1xuXG4gICAgICAgIGlmIChpbWFnZVVybCkge1xuICAgICAgICAgICAgLy8gVXNlIFVSTCBkaXJlY3RseVxuICAgICAgICAgICAgb2NyUGFyYW1zID0geyB1cmw6IGltYWdlVXJsIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBHZXQgZnJvbSBiaW5hcnkgYW5kIGNyZWF0ZSBkYXRhIFVSTFxuICAgICAgICAgICAgY29uc3QgYmluYXJ5RGF0YSA9IGNvbnRleHQuaGVscGVycy5hc3NlcnRCaW5hcnlEYXRhKGl0ZW1JbmRleCwgYmluYXJ5UHJvcGVydHlOYW1lKTtcbiAgICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IGF3YWl0IGNvbnRleHQuaGVscGVycy5nZXRCaW5hcnlEYXRhQnVmZmVyKGl0ZW1JbmRleCwgYmluYXJ5UHJvcGVydHlOYW1lKTtcbiAgICAgICAgICAgIGNvbnN0IG1pbWVUeXBlID0gYmluYXJ5RGF0YS5taW1lVHlwZSB8fCAnaW1hZ2UvcG5nJztcbiAgICAgICAgICAgIGNvbnN0IGJhc2U2NERhdGEgPSBidWZmZXIudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICAgICAgICAgICAgLy8gRm9ybWF0OiBkYXRhOmltYWdlL3BuZztiYXNlNjQsPGJhc2U2NF9kYXRhPlxuICAgICAgICAgICAgb2NyUGFyYW1zID0geyBpbWFnZTogYGRhdGE6JHttaW1lVHlwZX07YmFzZTY0LCR7YmFzZTY0RGF0YX1gIH07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQub2NyLmRldGVjdChvY3JQYXJhbXMpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0ZXh0OiByZXN1bHQudGV4dCB8fCAnJyxcbiAgICAgICAgICAgIGJsb2NrczogcmVzdWx0LmJsb2NrcyB8fCBbXSxcbiAgICAgICAgICAgIF9yYXc6IHJlc3VsdCBhcyB1bmtub3duIGFzIElEYXRhT2JqZWN0LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHRocm93IG5ldyBOb2RlT3BlcmF0aW9uRXJyb3IoXG4gICAgICAgIGNvbnRleHQuZ2V0Tm9kZSgpLFxuICAgICAgICBgVW5rbm93biB0b29scyBvcGVyYXRpb246ICR7b3BlcmF0aW9ufWAsXG4gICAgICAgIHsgaXRlbUluZGV4IH1cbiAgICApO1xufVxuIl19
|
|
@@ -73,6 +73,54 @@ exports.agentFields = [
|
|
|
73
73
|
default: '',
|
|
74
74
|
description: 'Agent persona and instructions',
|
|
75
75
|
},
|
|
76
|
+
// Built-in Tools
|
|
77
|
+
{
|
|
78
|
+
displayName: 'Built-in Tools',
|
|
79
|
+
name: 'builtinTools',
|
|
80
|
+
type: 'multiOptions',
|
|
81
|
+
displayOptions: {
|
|
82
|
+
show: {
|
|
83
|
+
resource: ['agent'],
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
options: [
|
|
87
|
+
{
|
|
88
|
+
name: 'Web Search',
|
|
89
|
+
value: 'webSearch',
|
|
90
|
+
description: 'Search the web for information',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'OCR',
|
|
94
|
+
value: 'ocr',
|
|
95
|
+
description: 'Extract text from images',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
name: 'Image Generate',
|
|
99
|
+
value: 'imageGenerate',
|
|
100
|
+
description: 'Generate images from text prompts',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'Video Generate',
|
|
104
|
+
value: 'videoGenerate',
|
|
105
|
+
description: 'Generate videos from text prompts',
|
|
106
|
+
},
|
|
107
|
+
],
|
|
108
|
+
default: [],
|
|
109
|
+
description: 'Built-in tools that the agent can use automatically',
|
|
110
|
+
},
|
|
111
|
+
// Auto Execute Tools
|
|
112
|
+
{
|
|
113
|
+
displayName: 'Auto Execute Tools',
|
|
114
|
+
name: 'autoExecuteTools',
|
|
115
|
+
type: 'boolean',
|
|
116
|
+
displayOptions: {
|
|
117
|
+
show: {
|
|
118
|
+
resource: ['agent'],
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
default: true,
|
|
122
|
+
description: 'Automatically execute tool calls and return results (ReAct loop)',
|
|
123
|
+
},
|
|
76
124
|
// Options
|
|
77
125
|
{
|
|
78
126
|
displayName: 'Options',
|
|
@@ -133,7 +181,36 @@ exports.agentFields = [
|
|
|
133
181
|
default: 0.7,
|
|
134
182
|
description: 'Controls randomness',
|
|
135
183
|
},
|
|
184
|
+
{
|
|
185
|
+
displayName: 'Checkpointer Type',
|
|
186
|
+
name: 'checkpointerType',
|
|
187
|
+
type: 'options',
|
|
188
|
+
options: [
|
|
189
|
+
{ name: 'None', value: 'none' },
|
|
190
|
+
{ name: 'Memory', value: 'memory' },
|
|
191
|
+
{ name: 'Redis', value: 'redis' },
|
|
192
|
+
{ name: 'PostgreSQL', value: 'postgres' },
|
|
193
|
+
],
|
|
194
|
+
default: 'none',
|
|
195
|
+
description: 'Type of state persistence for multi-turn conversations',
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
displayName: 'Checkpointer Connection String',
|
|
199
|
+
name: 'checkpointerConnection',
|
|
200
|
+
type: 'string',
|
|
201
|
+
typeOptions: {
|
|
202
|
+
password: true,
|
|
203
|
+
},
|
|
204
|
+
displayOptions: {
|
|
205
|
+
show: {
|
|
206
|
+
checkpointerType: ['redis', 'postgres'],
|
|
207
|
+
},
|
|
208
|
+
},
|
|
209
|
+
default: '',
|
|
210
|
+
placeholder: 'redis://localhost:6379 or postgresql://user:pass@localhost:5432/db',
|
|
211
|
+
description: 'Connection string for the checkpointer backend',
|
|
212
|
+
},
|
|
136
213
|
],
|
|
137
214
|
},
|
|
138
215
|
];
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWdlbnREZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL0FnZW50RGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQWtEO0FBRXJDLFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsV0FBVztnQkFDakIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSwyQ0FBMkM7Z0JBQ3hELE1BQU0sRUFBRSxjQUFjO2FBQ3pCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsVUFBVTtLQUN0QjtDQUNKLENBQUM7QUFFVyxRQUFBLFdBQVcsR0FBc0I7SUFDMUMsUUFBUTtJQUNSO1FBQ0ksV0FBVyxFQUFFLE9BQU87UUFDcEIsSUFBSSxFQUFFLE9BQU87UUFDYixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxJQUFJO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUN0QjtTQUNKO1FBQ0QsT0FBTyxFQUFFLDhCQUFrQjtRQUMzQixPQUFPLEVBQUUsV0FBVztRQUNwQixXQUFXLEVBQUUsZ0NBQWdDO0tBQ2hEO0lBQ0QsU0FBUztJQUNUO1FBQ0ksV0FBVyxFQUFFLFFBQVE7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRTtZQUNULElBQUksRUFBRSxDQUFDO1NBQ1Y7UUFDRCxRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDdEI7U0FDSjtRQUNELE9BQU8sRUFBRSxFQUFFO1FBQ1gsV0FBVyxFQUFFLHNDQUFzQztLQUN0RDtJQUNELGlCQUFpQjtJQUNqQjtRQUNJLFdBQVcsRUFBRSxnQkFBZ0I7UUFDN0IsSUFBSSxFQUFFLGVBQWU7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxXQUFXLEVBQUU7WUFDVCxJQUFJLEVBQUUsQ0FBQztTQUNWO1FBQ0QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUN0QjtTQUNKO1FBQ0QsT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsZ0NBQWdDO0tBQ2hEO0lBQ0QsVUFBVTtJQUNWO1FBQ0ksV0FBVyxFQUFFLFNBQVM7UUFDdEIsSUFBSSxFQUFFLFNBQVM7UUFDZixJQUFJLEVBQUUsWUFBWTtRQUNsQixXQUFXLEVBQUUsWUFBWTtRQUN6QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLE9BQU8sRUFBRTtZQUNMO2dCQUNJLFdBQVcsRUFBRSxvQkFBb0I7Z0JBQ2pDLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLElBQUksRUFBRSxRQUFRO2dCQUNkLFdBQVcsRUFBRTtvQkFDVCxRQUFRLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsV0FBVyxFQUFFLDBEQUEwRDthQUMxRTtZQUNEO2dCQUNJLFdBQVcsRUFBRSxXQUFXO2dCQUN4QixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFO29CQUNULFFBQVEsRUFBRSxDQUFDO29CQUNYLFFBQVEsRUFBRSxFQUFFO2lCQUNmO2dCQUNELE9BQU8sRUFBRSxFQUFFO2dCQUNYLFdBQVcsRUFBRSx5REFBeUQ7YUFDekU7WUFDRDtnQkFDSSxXQUFXLEVBQUUsV0FBVztnQkFDeEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLElBQUksRUFBRSxRQUFRO2dCQUNkLE9BQU8sRUFBRSxFQUFFO2dCQUNYLFdBQVcsRUFBRSxnRUFBZ0U7YUFDaEY7WUFDRDtnQkFDSSxXQUFXLEVBQUUsY0FBYztnQkFDM0IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsSUFBSSxFQUFFLE1BQU07Z0JBQ1osT0FBTyxFQUFFLElBQUk7Z0JBQ2IsV0FBVyxFQUFFLHFEQUFxRDthQUNyRTtZQUNEO2dCQUNJLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFO29CQUNULFFBQVEsRUFBRSxDQUFDO29CQUNYLFFBQVEsRUFBRSxDQUFDO29CQUNYLGVBQWUsRUFBRSxDQUFDO2lCQUNyQjtnQkFDRCxPQUFPLEVBQUUsR0FBRztnQkFDWixXQUFXLEVBQUUscUJBQXFCO2FBQ3JDO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTm9kZVByb3BlcnRpZXMgfSBmcm9tICduOG4td29ya2Zsb3cnO1xuaW1wb3J0IHsgQ0hBVF9NT0RFTF9PUFRJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuZXhwb3J0IGNvbnN0IGFnZW50T3BlcmF0aW9uczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wZXJhdGlvbicsXG4gICAgICAgIG5hbWU6ICdvcGVyYXRpb24nLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIG5vRGF0YUV4cHJlc3Npb246IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnUnVuIEdyYXBoJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ3J1bkdyYXBoJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0V4ZWN1dGUgYW4gQUkgYWdlbnQgd2l0aCB0b29scyBhbmQgbWVtb3J5JyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdSdW4gQUkgYWdlbnQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZGVmYXVsdDogJ3J1bkdyYXBoJyxcbiAgICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IGFnZW50RmllbGRzOiBJTm9kZVByb3BlcnRpZXNbXSA9IFtcbiAgICAvLyBNb2RlbFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdNb2RlbCcsXG4gICAgICAgIG5hbWU6ICdtb2RlbCcsXG4gICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IENIQVRfTU9ERUxfT1BUSU9OUyxcbiAgICAgICAgZGVmYXVsdDogJ3F3ZW4zLW1heCcsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIG1vZGVsIHRvIHVzZSBmb3IgdGhlIGFnZW50JyxcbiAgICB9LFxuICAgIC8vIFByb21wdFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdQcm9tcHQnLFxuICAgICAgICBuYW1lOiAncHJvbXB0JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydhZ2VudCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIHVzZXIgZ29hbCBvciBxdWVyeSBmb3IgdGhlIGFnZW50JyxcbiAgICB9LFxuICAgIC8vIFN5c3RlbSBNZXNzYWdlXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1N5c3RlbSBNZXNzYWdlJyxcbiAgICAgICAgbmFtZTogJ3N5c3RlbU1lc3NhZ2UnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHJvd3M6IDQsXG4gICAgICAgIH0sXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0FnZW50IHBlcnNvbmEgYW5kIGluc3RydWN0aW9ucycsXG4gICAgfSxcbiAgICAvLyBPcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wdGlvbnMnLFxuICAgICAgICBuYW1lOiAnb3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydhZ2VudCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ01heCBDb250ZXh0IFRva2VucycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ21heENvbnRleHRUb2tlbnMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxMDAwLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogMzIwMDAsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdNYXhpbXVtIGNvbnRleHQgdG9rZW5zIChTREsgYXV0by1jb21wYWN0cyB3aGVuIGV4Y2VlZGVkKScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTWF4IFN0ZXBzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbWF4U3RlcHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogNTAsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAxMCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ01heGltdW0gbnVtYmVyIG9mIGFnZW50IHN0ZXBzIChwcmV2ZW50cyBpbmZpbml0ZSBsb29wcyknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1RocmVhZCBJRCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RocmVhZElkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Nlc3Npb24gSUQgZm9yIG1lbW9yeSBjb250aW51aXR5IChsZWF2ZSBlbXB0eSBmb3IgbmV3IHNlc3Npb24pJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdUb29scyAoSlNPTiknLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b29scycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICdbXScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdBcnJheSBvZiB0b29sIGRlZmluaXRpb25zIGluIE9wZW5BSSBmdW5jdGlvbiBmb3JtYXQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1RlbXBlcmF0dXJlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndGVtcGVyYXR1cmUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAwLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogMixcbiAgICAgICAgICAgICAgICAgICAgbnVtYmVyUHJlY2lzaW9uOiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogMC43LFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQ29udHJvbHMgcmFuZG9tbmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG5dO1xuIl19
|
|
216
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWdlbnREZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL0FnZW50RGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQWtEO0FBRXJDLFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsV0FBVztnQkFDakIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSwyQ0FBMkM7Z0JBQ3hELE1BQU0sRUFBRSxjQUFjO2FBQ3pCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsVUFBVTtLQUN0QjtDQUNKLENBQUM7QUFFVyxRQUFBLFdBQVcsR0FBc0I7SUFDMUMsUUFBUTtJQUNSO1FBQ0ksV0FBVyxFQUFFLE9BQU87UUFDcEIsSUFBSSxFQUFFLE9BQU87UUFDYixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxJQUFJO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUN0QjtTQUNKO1FBQ0QsT0FBTyxFQUFFLDhCQUFrQjtRQUMzQixPQUFPLEVBQUUsV0FBVztRQUNwQixXQUFXLEVBQUUsZ0NBQWdDO0tBQ2hEO0lBQ0QsU0FBUztJQUNUO1FBQ0ksV0FBVyxFQUFFLFFBQVE7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRTtZQUNULElBQUksRUFBRSxDQUFDO1NBQ1Y7UUFDRCxRQUFRLEVB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V0FBVyxFQUFFLG9FQUFvRTtnQkFDakYsV0FBVyxFQUFFLGdEQUFnRDthQUNoRTtTQUNKO0tBQ0o7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU5vZGVQcm9wZXJ0aWVzIH0gZnJvbSAnbjhuLXdvcmtmbG93JztcbmltcG9ydCB7IENIQVRfTU9ERUxfT1BUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBhZ2VudE9wZXJhdGlvbnM6IElOb2RlUHJvcGVydGllc1tdID0gW1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdPcGVyYXRpb24nLFxuICAgICAgICBuYW1lOiAnb3BlcmF0aW9uJyxcbiAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICBub0RhdGFFeHByZXNzaW9uOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ2FnZW50J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1J1biBHcmFwaCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdydW5HcmFwaCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdFeGVjdXRlIGFuIEFJIGFnZW50IHdpdGggdG9vbHMgYW5kIG1lbW9yeScsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnUnVuIEFJIGFnZW50JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGRlZmF1bHQ6ICdydW5HcmFwaCcsXG4gICAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBhZ2VudEZpZWxkczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAgLy8gTW9kZWxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnTW9kZWwnLFxuICAgICAgICBuYW1lOiAnbW9kZWwnLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ2FnZW50J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiBDSEFUX01PREVMX09QVElPTlMsXG4gICAgICAgIGRlZmF1bHQ6ICdxd2VuMy1tYXgnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBtb2RlbCB0byB1c2UgZm9yIHRoZSBhZ2VudCcsXG4gICAgfSxcbiAgICAvLyBQcm9tcHRcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnUHJvbXB0JyxcbiAgICAgICAgbmFtZTogJ3Byb21wdCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgcm93czogNCxcbiAgICAgICAgfSxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSB1c2VyIGdvYWwgb3IgcXVlcnkgZm9yIHRoZSBhZ2VudCcsXG4gICAgfSxcbiAgICAvLyBTeXN0ZW0gTWVzc2FnZVxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdTeXN0ZW0gTWVzc2FnZScsXG4gICAgICAgIG5hbWU6ICdzeXN0ZW1NZXNzYWdlJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICB9LFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ2FnZW50J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdBZ2VudCBwZXJzb25hIGFuZCBpbnN0cnVjdGlvbnMnLFxuICAgIH0sXG4gICAgLy8gQnVpbHQtaW4gVG9vbHNcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQnVpbHQtaW4gVG9vbHMnLFxuICAgICAgICBuYW1lOiAnYnVpbHRpblRvb2xzJyxcbiAgICAgICAgdHlwZTogJ211bHRpT3B0aW9ucycsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnV2ViIFNlYXJjaCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICd3ZWJTZWFyY2gnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU2VhcmNoIHRoZSB3ZWIgZm9yIGluZm9ybWF0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ09DUicsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdvY3InLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRXh0cmFjdCB0ZXh0IGZyb20gaW1hZ2VzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0ltYWdlIEdlbmVyYXRlJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2ltYWdlR2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgaW1hZ2VzIGZyb20gdGV4dCBwcm9tcHRzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1ZpZGVvIEdlbmVyYXRlJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ3ZpZGVvR2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgdmlkZW9zIGZyb20gdGV4dCBwcm9tcHRzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGRlZmF1bHQ6IFtdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0J1aWx0LWluIHRvb2xzIHRoYXQgdGhlIGFnZW50IGNhbiB1c2UgYXV0b21hdGljYWxseScsXG4gICAgfSxcbiAgICAvLyBBdXRvIEV4ZWN1dGUgVG9vbHNcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQXV0byBFeGVjdXRlIFRvb2xzJyxcbiAgICAgICAgbmFtZTogJ2F1dG9FeGVjdXRlVG9vbHMnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnYWdlbnQnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnQXV0b21hdGljYWxseSBleGVjdXRlIHRvb2wgY2FsbHMgYW5kIHJldHVybiByZXN1bHRzIChSZUFjdCBsb29wKScsXG4gICAgfSxcbiAgICAvLyBPcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wdGlvbnMnLFxuICAgICAgICBuYW1lOiAnb3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydhZ2VudCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ01heCBDb250ZXh0IFRva2VucycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ21heENvbnRleHRUb2tlbnMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxMDAwLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogMzIwMDAsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdNYXhpbXVtIGNvbnRleHQgdG9rZW5zIChTREsgYXV0by1jb21wYWN0cyB3aGVuIGV4Y2VlZGVkKScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTWF4IFN0ZXBzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbWF4U3RlcHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogNTAsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAxMCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ01heGltdW0gbnVtYmVyIG9mIGFnZW50IHN0ZXBzIChwcmV2ZW50cyBpbmZpbml0ZSBsb29wcyknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1RocmVhZCBJRCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RocmVhZElkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Nlc3Npb24gSUQgZm9yIG1lbW9yeSBjb250aW51aXR5IChsZWF2ZSBlbXB0eSBmb3IgbmV3IHNlc3Npb24pJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdUb29scyAoSlNPTiknLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b29scycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICdbXScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdBcnJheSBvZiB0b29sIGRlZmluaXRpb25zIGluIE9wZW5BSSBmdW5jdGlvbiBmb3JtYXQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1RlbXBlcmF0dXJlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndGVtcGVyYXR1cmUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAwLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogMixcbiAgICAgICAgICAgICAgICAgICAgbnVtYmVyUHJlY2lzaW9uOiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogMC43LFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQ29udHJvbHMgcmFuZG9tbmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnQ2hlY2twb2ludGVyIFR5cGUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdjaGVja3BvaW50ZXJUeXBlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdOb25lJywgdmFsdWU6ICdub25lJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdNZW1vcnknLCB2YWx1ZTogJ21lbW9yeScgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnUmVkaXMnLCB2YWx1ZTogJ3JlZGlzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdQb3N0Z3JlU1FMJywgdmFsdWU6ICdwb3N0Z3JlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICdub25lJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1R5cGUgb2Ygc3RhdGUgcGVyc2lzdGVuY2UgZm9yIG11bHRpLXR1cm4gY29udmVyc2F0aW9ucycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnQ2hlY2twb2ludGVyIENvbm5lY3Rpb24gU3RyaW5nJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnY2hlY2twb2ludGVyQ29ubmVjdGlvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGVja3BvaW50ZXJUeXBlOiBbJ3JlZGlzJywgJ3Bvc3RncmVzJ10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3JlZGlzOi8vbG9jYWxob3N0OjYzNzkgb3IgcG9zdGdyZXNxbDovL3VzZXI6cGFzc0Bsb2NhbGhvc3Q6NTQzMi9kYicsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdDb25uZWN0aW9uIHN0cmluZyBmb3IgdGhlIGNoZWNrcG9pbnRlciBiYWNrZW5kJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbl07XG4iXX0=
|
|
@@ -190,5 +190,48 @@ exports.imageFields = [
|
|
|
190
190
|
},
|
|
191
191
|
],
|
|
192
192
|
},
|
|
193
|
+
// Advanced Image References
|
|
194
|
+
{
|
|
195
|
+
displayName: 'Subject Reference Images',
|
|
196
|
+
name: 'subjectImageUrls',
|
|
197
|
+
type: 'string',
|
|
198
|
+
displayOptions: {
|
|
199
|
+
show: {
|
|
200
|
+
resource: ['image'],
|
|
201
|
+
operation: ['generate'],
|
|
202
|
+
},
|
|
203
|
+
},
|
|
204
|
+
default: '',
|
|
205
|
+
placeholder: 'https://example.com/subject1.jpg, https://example.com/subject2.jpg',
|
|
206
|
+
description: 'Comma-separated URLs of subject reference images to maintain in the generated image',
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
displayName: 'Scene Reference Image',
|
|
210
|
+
name: 'sceneImageUrl',
|
|
211
|
+
type: 'string',
|
|
212
|
+
displayOptions: {
|
|
213
|
+
show: {
|
|
214
|
+
resource: ['image'],
|
|
215
|
+
operation: ['generate'],
|
|
216
|
+
},
|
|
217
|
+
},
|
|
218
|
+
default: '',
|
|
219
|
+
placeholder: 'https://example.com/scene.jpg',
|
|
220
|
+
description: 'URL of a scene reference image to use as background or environment',
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
displayName: 'Style Reference Image',
|
|
224
|
+
name: 'styleImageUrl',
|
|
225
|
+
type: 'string',
|
|
226
|
+
displayOptions: {
|
|
227
|
+
show: {
|
|
228
|
+
resource: ['image'],
|
|
229
|
+
operation: ['generate'],
|
|
230
|
+
},
|
|
231
|
+
},
|
|
232
|
+
default: '',
|
|
233
|
+
placeholder: 'https://example.com/style.jpg',
|
|
234
|
+
description: 'URL of a style reference image to transfer artistic style from',
|
|
235
|
+
},
|
|
193
236
|
];
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1hZ2VEZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL0ltYWdlRGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQXlFO0FBRTVELFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSw2QkFBNkI7Z0JBQzFDLE1BQU0sRUFBRSxtQkFBbUI7YUFDOUI7WUFDRDtnQkFDSSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsTUFBTTtnQkFDYixXQUFXLEVBQUUsNEJBQTRCO2dCQUN6QyxNQUFNLEVBQUUsZUFBZTthQUMxQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLFVBQVU7S0FDdEI7Q0FDSixDQUFDO0FBRVcsUUFBQSxXQUFXLEdBQXNCO0lBQzFDLFFBQVE7SUFDUjtRQUNJLFdBQVcsRUFBRSxPQUFPO1FBQ3BCLElBQUksRUFBRSxPQUFPO1FBQ2IsSUFBSSxFQUFFLFNBQVM7UUFDZixRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDdEI7U0FDSjtRQUNELE9BQU8sRUFBRSwrQkFBbUI7UUFDNUIsT0FBTyxFQUFFLFlBQVk7UUFDckIsV0FBVyxFQUFFLHVDQUF1QztLQUN2RDtJQUNELFNBQVM7SUFDVDtRQUNJLFdBQVcsRUFB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b0Y7YUFDcEc7WUFDRDtnQkFDSSxXQUFXLEVBQUUsc0JBQXNCO2dCQUNuQyxJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUU7b0JBQ0wsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7b0JBQ3JDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO2lCQUNsQztnQkFDRCxPQUFPLEVBQUUsU0FBUztnQkFDbEIsV0FBVyxFQUFFLCtDQUErQzthQUMvRDtZQUNEO2dCQUNJLFdBQVcsRUFBRSxZQUFZO2dCQUN6QixJQUFJLEVBQUUsV0FBVztnQkFDakIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFO29CQUNMLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO29CQUMzQixFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtvQkFDM0IsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7aUJBQzlCO2dCQUNELE9BQU8sRUFBRSxJQUFJO2dCQUNiLFdBQVcsRUFBRSx5QkFBeUI7YUFDekM7WUFDRDtnQkFDSSxXQUFXLEVBQUUsZUFBZTtnQkFDNUIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsV0FBVyxFQUFFLHdEQUF3RDthQUN4RTtTQUNKO0tBQ0o7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU5vZGVQcm9wZXJ0aWVzIH0gZnJvbSAnbjhuLXdvcmtmbG93JztcbmltcG9ydCB7IElNQUdFX01PREVMX09QVElPTlMsIEFTUEVDVF9SQVRJT19PUFRJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuZXhwb3J0IGNvbnN0IGltYWdlT3BlcmF0aW9uczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wZXJhdGlvbicsXG4gICAgICAgIG5hbWU6ICdvcGVyYXRpb24nLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIG5vRGF0YUV4cHJlc3Npb246IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnR2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiAnZ2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgYW4gaW1hZ2UgZnJvbSB0ZXh0JyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdHZW5lcmF0ZSBhbiBpbWFnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdFZGl0JyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2VkaXQnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRWRpdCBvciB0cmFuc2Zvcm0gYW4gaW1hZ2UnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ0VkaXQgYW4gaW1hZ2UnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZGVmYXVsdDogJ2dlbmVyYXRlJyxcbiAgICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IGltYWdlRmllbGRzOiBJTm9kZVByb3BlcnRpZXNbXSA9IFtcbiAgICAvLyBNb2RlbFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdNb2RlbCcsXG4gICAgICAgIG5hbWU6ICdtb2RlbCcsXG4gICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IElNQUdFX01PREVMX09QVElPTlMsXG4gICAgICAgIGRlZmF1bHQ6ICdrbGluZy12Mi0xJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgbW9kZWwgdG8gdXNlIGZvciBpbWFnZSBnZW5lcmF0aW9uJyxcbiAgICB9LFxuICAgIC8vIFByb21wdFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdQcm9tcHQnLFxuICAgICAgICBuYW1lOiAncHJvbXB0JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gb2YgdGhlIGltYWdlIHRvIGdlbmVyYXRlJyxcbiAgICB9LFxuICAgIC8vIFdhaXQgZm9yIENvbXBsZXRpb25cbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnV2FpdCBmb3IgQ29tcGxldGlvbicsXG4gICAgICAgIG5hbWU6ICd3YWl0Rm9yQ29tcGxldGlvbicsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIHdhaXQgZm9yIHRoZSBpbWFnZSB0byBiZSBmdWxseSBnZW5lcmF0ZWQgYmVmb3JlIHJldHVybmluZycsXG4gICAgfSxcbiAgICAvLyBSZWZlcmVuY2UgSW1hZ2UgKGZvciBlZGl0KVxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdSZWZlcmVuY2UgSW1hZ2UgVVJMJyxcbiAgICAgICAgbmFtZTogJ3JlZmVyZW5jZUltYWdlVXJsJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IFsnZWRpdCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVVJMIG9mIHRoZSBpbWFnZSB0byBlZGl0JyxcbiAgICB9LFxuICAgIC8vIEJpbmFyeSBJbnB1dCAoZm9yIGVkaXQpXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0JpbmFyeSBQcm9wZXJ0eScsXG4gICAgICAgIG5hbWU6ICdiaW5hcnlQcm9wZXJ0eU5hbWUnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydlZGl0J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnZGF0YScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTmFtZSBvZiB0aGUgYmluYXJ5IHByb3BlcnR5IGNvbnRhaW5pbmcgdGhlIGltYWdlIHRvIGVkaXQnLFxuICAgIH0sXG4gICAgLy8gT3B0aW9uc1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdPcHRpb25zJyxcbiAgICAgICAgbmFtZTogJ29wdGlvbnMnLFxuICAgICAgICB0eXBlOiAnY29sbGVjdGlvbicsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnQWRkIE9wdGlvbicsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6IHt9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdBc3BlY3QgUmF0aW8nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3BlY3RSYXRpbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IEFTUEVDVF9SQVRJT19PUFRJT05TLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICcxOjEnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQXNwZWN0IHJhdGlvIG9mIHRoZSBnZW5lcmF0ZWQgaW1hZ2UnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ05lZ2F0aXZlIFByb21wdCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25lZ2F0aXZlUHJvbXB0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICByb3dzOiAyLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUaGluZ3MgdG8gYXZvaWQgaW4gdGhlIGdlbmVyYXRlZCBpbWFnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnQ291bnQnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICduJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICBtaW5WYWx1ZTogMSxcbiAgICAgICAgICAgICAgICAgICAgbWF4VmFsdWU6IDQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAxLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTnVtYmVyIG9mIGltYWdlcyB0byBnZW5lcmF0ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU3RyZW5ndGgnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzdHJlbmd0aCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgbWluVmFsdWU6IDAsXG4gICAgICAgICAgICAgICAgICAgIG1heFZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBudW1iZXJQcmVjaXNpb246IDIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAwLjUsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdIb3cgbXVjaCB0byB0cmFuc2Zvcm0gdGhlIHJlZmVyZW5jZSBpbWFnZSAoMCA9IGtlZXAgb3JpZ2luYWwsIDEgPSBpZ25vcmUgb3JpZ2luYWwpJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdJbWFnZSBSZWZlcmVuY2UgVHlwZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ltYWdlUmVmZXJlbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdTdWJqZWN0JywgdmFsdWU6ICdzdWJqZWN0JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdGYWNlJywgdmFsdWU6ICdmYWNlJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ3N1YmplY3QnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVHlwZSBvZiByZWZlcmVuY2UgdG8gdXNlIGZyb20gdGhlIGlucHV0IGltYWdlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdJbWFnZSBTaXplJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnaW1hZ2VTaXplJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICcxSycsIHZhbHVlOiAnMUsnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJzJLJywgdmFsdWU6ICcySycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnNEsnLCB2YWx1ZTogJzRLJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJzFLJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ091dHB1dCBpbWFnZSByZXNvbHV0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdNYXNrIChCYXNlNjQpJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbWFzaycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdCYXNlNjQtZW5jb2RlZCBtYXNrIGZvciBpbnBhaW50aW5nICh3aGl0ZSA9IGVkaXQgYXJlYSknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuXTtcbiJdfQ==
|
|
237
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1hZ2VEZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL0ltYWdlRGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQXlFO0FBRTVELFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSw2QkFBNkI7Z0JBQzFDLE1BQU0sRUFBRSxtQkFBbUI7YUFDOUI7WUFDRDtnQkFDSSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsTUFBTTtnQkFDYixXQUFXLEVBQUUsNEJBQTRCO2dCQUN6QyxNQUFNLEVBQUUsZUFBZTthQUMxQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLFVBQVU7S0FDdEI7Q0FDSixDQUFDO0FBRVcsUUFBQSxXQUFXLEdBQXNCO0lBQzFDLFFBQVE7SUFDUjtRQUNJLFdBQVcsRUFBRSxPQUFPO1FBQ3BCLElBQUksRUFBRSxPQUFPO1FBQ2IsSUFBSSxFQUFFLFNBQVM7UUFDZixRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDdEI7U0FDSjtRQUNELE9BQU8sRUFBRSwrQkFBbUI7UUFDNUIsT0FBTyxFQUFFLFlBQVk7UUFDckIsV0FBVyxFQUFFLHVDQUF1QztLQUN2RDtJQUNELFNBQVM7SUFDVDtRQUNJLFdBQVcsRUFB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V0FBVyxFQUFFLG9FQUFvRTtRQUNqRixXQUFXLEVBQUUscUZBQXFGO0tBQ3JHO0lBQ0Q7UUFDSSxXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxlQUFlO1FBQ3JCLElBQUksRUFBRSxRQUFRO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLFdBQVcsRUFBRSwrQkFBK0I7UUFDNUMsV0FBVyxFQUFFLG9FQUFvRTtLQUNwRjtJQUNEO1FBQ0ksV0FBVyxFQUFFLHVCQUF1QjtRQUNwQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixJQUFJLEVBQUUsUUFBUTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQzthQUMxQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsK0JBQStCO1FBQzVDLFdBQVcsRUFBRSxnRUFBZ0U7S0FDaEY7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU5vZGVQcm9wZXJ0aWVzIH0gZnJvbSAnbjhuLXdvcmtmbG93JztcbmltcG9ydCB7IElNQUdFX01PREVMX09QVElPTlMsIEFTUEVDVF9SQVRJT19PUFRJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuZXhwb3J0IGNvbnN0IGltYWdlT3BlcmF0aW9uczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wZXJhdGlvbicsXG4gICAgICAgIG5hbWU6ICdvcGVyYXRpb24nLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIG5vRGF0YUV4cHJlc3Npb246IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnR2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiAnZ2VuZXJhdGUnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgYW4gaW1hZ2UgZnJvbSB0ZXh0JyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdHZW5lcmF0ZSBhbiBpbWFnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdFZGl0JyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2VkaXQnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRWRpdCBvciB0cmFuc2Zvcm0gYW4gaW1hZ2UnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ0VkaXQgYW4gaW1hZ2UnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZGVmYXVsdDogJ2dlbmVyYXRlJyxcbiAgICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IGltYWdlRmllbGRzOiBJTm9kZVByb3BlcnRpZXNbXSA9IFtcbiAgICAvLyBNb2RlbFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdNb2RlbCcsXG4gICAgICAgIG5hbWU6ICdtb2RlbCcsXG4gICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IElNQUdFX01PREVMX09QVElPTlMsXG4gICAgICAgIGRlZmF1bHQ6ICdrbGluZy12Mi0xJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgbW9kZWwgdG8gdXNlIGZvciBpbWFnZSBnZW5lcmF0aW9uJyxcbiAgICB9LFxuICAgIC8vIFByb21wdFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdQcm9tcHQnLFxuICAgICAgICBuYW1lOiAncHJvbXB0JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gb2YgdGhlIGltYWdlIHRvIGdlbmVyYXRlJyxcbiAgICB9LFxuICAgIC8vIFdhaXQgZm9yIENvbXBsZXRpb25cbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnV2FpdCBmb3IgQ29tcGxldGlvbicsXG4gICAgICAgIG5hbWU6ICd3YWl0Rm9yQ29tcGxldGlvbicsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIHdhaXQgZm9yIHRoZSBpbWFnZSB0byBiZSBmdWxseSBnZW5lcmF0ZWQgYmVmb3JlIHJldHVybmluZycsXG4gICAgfSxcbiAgICAvLyBSZWZlcmVuY2UgSW1hZ2UgKGZvciBlZGl0KVxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdSZWZlcmVuY2UgSW1hZ2UgVVJMJyxcbiAgICAgICAgbmFtZTogJ3JlZmVyZW5jZUltYWdlVXJsJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IFsnZWRpdCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVVJMIG9mIHRoZSBpbWFnZSB0byBlZGl0JyxcbiAgICB9LFxuICAgIC8vIEJpbmFyeSBJbnB1dCAoZm9yIGVkaXQpXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0JpbmFyeSBQcm9wZXJ0eScsXG4gICAgICAgIG5hbWU6ICdiaW5hcnlQcm9wZXJ0eU5hbWUnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydlZGl0J10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnZGF0YScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTmFtZSBvZiB0aGUgYmluYXJ5IHByb3BlcnR5IGNvbnRhaW5pbmcgdGhlIGltYWdlIHRvIGVkaXQnLFxuICAgIH0sXG4gICAgLy8gT3B0aW9uc1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdPcHRpb25zJyxcbiAgICAgICAgbmFtZTogJ29wdGlvbnMnLFxuICAgICAgICB0eXBlOiAnY29sbGVjdGlvbicsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnQWRkIE9wdGlvbicsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsnaW1hZ2UnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6IHt9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdBc3BlY3QgUmF0aW8nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3BlY3RSYXRpbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IEFTUEVDVF9SQVRJT19PUFRJT05TLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICcxOjEnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQXNwZWN0IHJhdGlvIG9mIHRoZSBnZW5lcmF0ZWQgaW1hZ2UnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ05lZ2F0aXZlIFByb21wdCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25lZ2F0aXZlUHJvbXB0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICByb3dzOiAyLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUaGluZ3MgdG8gYXZvaWQgaW4gdGhlIGdlbmVyYXRlZCBpbWFnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnQ291bnQnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICduJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICBtaW5WYWx1ZTogMSxcbiAgICAgICAgICAgICAgICAgICAgbWF4VmFsdWU6IDQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAxLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTnVtYmVyIG9mIGltYWdlcyB0byBnZW5lcmF0ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU3RyZW5ndGgnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzdHJlbmd0aCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgbWluVmFsdWU6IDAsXG4gICAgICAgICAgICAgICAgICAgIG1heFZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBudW1iZXJQcmVjaXNpb246IDIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAwLjUsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdIb3cgbXVjaCB0byB0cmFuc2Zvcm0gdGhlIHJlZmVyZW5jZSBpbWFnZSAoMCA9IGtlZXAgb3JpZ2luYWwsIDEgPSBpZ25vcmUgb3JpZ2luYWwpJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdJbWFnZSBSZWZlcmVuY2UgVHlwZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ltYWdlUmVmZXJlbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdTdWJqZWN0JywgdmFsdWU6ICdzdWJqZWN0JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdGYWNlJywgdmFsdWU6ICdmYWNlJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ3N1YmplY3QnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVHlwZSBvZiByZWZlcmVuY2UgdG8gdXNlIGZyb20gdGhlIGlucHV0IGltYWdlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdJbWFnZSBTaXplJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnaW1hZ2VTaXplJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICcxSycsIHZhbHVlOiAnMUsnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJzJLJywgdmFsdWU6ICcySycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnNEsnLCB2YWx1ZTogJzRLJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJzFLJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ091dHB1dCBpbWFnZSByZXNvbHV0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdNYXNrIChCYXNlNjQpJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbWFzaycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdCYXNlNjQtZW5jb2RlZCBtYXNrIGZvciBpbnBhaW50aW5nICh3aGl0ZSA9IGVkaXQgYXJlYSknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIC8vIEFkdmFuY2VkIEltYWdlIFJlZmVyZW5jZXNcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnU3ViamVjdCBSZWZlcmVuY2UgSW1hZ2VzJyxcbiAgICAgICAgbmFtZTogJ3N1YmplY3RJbWFnZVVybHMnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly9leGFtcGxlLmNvbS9zdWJqZWN0MS5qcGcsIGh0dHBzOi8vZXhhbXBsZS5jb20vc3ViamVjdDIuanBnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdDb21tYS1zZXBhcmF0ZWQgVVJMcyBvZiBzdWJqZWN0IHJlZmVyZW5jZSBpbWFnZXMgdG8gbWFpbnRhaW4gaW4gdGhlIGdlbmVyYXRlZCBpbWFnZScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnU2NlbmUgUmVmZXJlbmNlIEltYWdlJyxcbiAgICAgICAgbmFtZTogJ3NjZW5lSW1hZ2VVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly9leGFtcGxlLmNvbS9zY2VuZS5qcGcnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VSTCBvZiBhIHNjZW5lIHJlZmVyZW5jZSBpbWFnZSB0byB1c2UgYXMgYmFja2dyb3VuZCBvciBlbnZpcm9ubWVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnU3R5bGUgUmVmZXJlbmNlIEltYWdlJyxcbiAgICAgICAgbmFtZTogJ3N0eWxlSW1hZ2VVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWydpbWFnZSddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly9leGFtcGxlLmNvbS9zdHlsZS5qcGcnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VSTCBvZiBhIHN0eWxlIHJlZmVyZW5jZSBpbWFnZSB0byB0cmFuc2ZlciBhcnRpc3RpYyBzdHlsZSBmcm9tJyxcbiAgICB9LFxuXTtcbiJdfQ==
|
|
@@ -70,6 +70,39 @@ exports.toolsFields = [
|
|
|
70
70
|
default: 5,
|
|
71
71
|
description: 'Maximum number of results to return',
|
|
72
72
|
},
|
|
73
|
+
{
|
|
74
|
+
displayName: 'Search Type',
|
|
75
|
+
name: 'searchType',
|
|
76
|
+
type: 'options',
|
|
77
|
+
options: [
|
|
78
|
+
{ name: 'Web', value: 'web' },
|
|
79
|
+
{ name: 'News', value: 'news' },
|
|
80
|
+
],
|
|
81
|
+
default: 'web',
|
|
82
|
+
description: 'Type of search to perform',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
displayName: 'Time Filter',
|
|
86
|
+
name: 'timeFilter',
|
|
87
|
+
type: 'options',
|
|
88
|
+
options: [
|
|
89
|
+
{ name: 'Any Time', value: '' },
|
|
90
|
+
{ name: 'Past Day', value: 'day' },
|
|
91
|
+
{ name: 'Past Week', value: 'week' },
|
|
92
|
+
{ name: 'Past Month', value: 'month' },
|
|
93
|
+
{ name: 'Past Year', value: 'year' },
|
|
94
|
+
],
|
|
95
|
+
default: '',
|
|
96
|
+
description: 'Filter results by time period',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
displayName: 'Site Filter',
|
|
100
|
+
name: 'siteFilter',
|
|
101
|
+
type: 'string',
|
|
102
|
+
default: '',
|
|
103
|
+
placeholder: 'github.com, stackoverflow.com',
|
|
104
|
+
description: 'Comma-separated list of sites to search within',
|
|
105
|
+
},
|
|
73
106
|
],
|
|
74
107
|
},
|
|
75
108
|
// OCR: Image URL
|
|
@@ -101,4 +134,4 @@ exports.toolsFields = [
|
|
|
101
134
|
description: 'Name of the binary property containing the image',
|
|
102
135
|
},
|
|
103
136
|
];
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVG9vbHNEZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL1Rvb2xzRGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRWEsUUFBQSxlQUFlLEdBQXNCO0lBQzlDO1FBQ0ksV0FBVyxFQUFFLFdBQVc7UUFDeEIsSUFBSSxFQUFFLFdBQVc7UUFDakIsSUFBSSxFQUFFLFNBQVM7UUFDZixnQkFBZ0IsRUFBRSxJQUFJO1FBQ3RCLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDdEI7U0FDSjtRQUNELE9BQU8sRUFBRTtZQUNMO2dCQUNJLElBQUksRUFBRSxZQUFZO2dCQUNsQixLQUFLLEVBQUUsV0FBVztnQkFDbEIsV0FBVyxFQUFFLHlCQUF5QjtnQkFDdEMsTUFBTSxFQUFFLFlBQVk7YUFDdkI7WUFDRDtnQkFDSSxJQUFJLEVBQUUsS0FBSztnQkFDWCxLQUFLLEVBQUUsS0FBSztnQkFDWixXQUFXLEVBQUUsMEJBQTBCO2dCQUN2QyxNQUFNLEVBQUUsS0FBSzthQUNoQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLFdBQVc7S0FDdkI7Q0FDSixDQUFDO0FBRVcsUUFBQSxXQUFXLEdBQXNCO0lBQzFDLG9CQUFvQjtJQUNwQjtRQUNJLFdBQVcsRUFBRSxPQUFPO1FBQ3BCLElBQUksRUFBRSxPQUFPO1FBQ2IsSUFBSSxFQUFFLFFBQVE7UUFDZCxRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQzthQUMzQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsa0JBQWtCO0tBQ2xDO0lBQ0QscUJBQXFCO0lBQ3JCO1FBQ0ksV0FBVyxFQUFFLFNBQVM7UUFDdEIsSUFBSSxFQUFFLFNBQVM7UUFDZixJQUFJLEVBQUUsWUFBWTtRQUNsQixXQUFXLEVBQUUsWUFBWTtRQUN6QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUM7YUFDM0I7U0FDSjtRQUNELE9BQU8sRUFBRSxFQUFFO1FBQ1gsT0FBTyxFQUFFO1lBQ0w7Z0JBQ0ksV0FBVyxFQUFFLGFBQWE7Z0JBQzFCLElBQUksRUFBRSxZQUFZO2dCQUNsQixJQUFJLEVBQUUsUUFBUTtnQkFDZCxXQUFXLEVBQUU7b0JBQ1QsUUFBUSxFQUFFLENBQUM7b0JBQ1gsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7Z0JBQ0QsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsV0FBVyxFQUFFLHFDQUFxQzthQUNyRDtZQUNEO2dCQUNJLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFO29CQUNMLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO29CQUM3QixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtpQkFDbEM7Z0JBQ0QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsV0FBVyxFQUFFLDJCQUEyQjthQUMzQztZQUNEO2dCQUNJLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFO29CQUNMLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO29CQUMvQixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtvQkFDbEMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7b0JBQ3BDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO29CQUN0QyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtpQkFDdkM7Z0JBQ0QsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsV0FBVyxFQUFFLCtCQUErQjthQUMvQztZQUNEO2dCQUNJLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsV0FBVyxFQUFFLCtCQUErQjtnQkFDNUMsV0FBVyxFQUFFLGdEQUFnRDthQUNoRTtTQUNKO0tBQ0o7SUFDRCxpQkFBaUI7SUFDakI7UUFDSSxXQUFXLEVBQUUsV0FBVztRQUN4QixJQUFJLEVBQUUsVUFBVTtRQUNoQixJQUFJLEVBQUUsUUFBUTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLEtBQUssQ0FBQzthQUNyQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsNkJBQTZCO0tBQzdDO0lBQ0QsdUJBQXVCO0lBQ3ZCO1FBQ0ksV0FBVyxFQUFFLGlCQUFpQjtRQUM5QixJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLElBQUksRUFBRSxRQUFRO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsS0FBSyxDQUFDO2FBQ3JCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsTUFBTTtRQUNmLFdBQVcsRUFBRSxrREFBa0Q7S0FDbEU7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU5vZGVQcm9wZXJ0aWVzIH0gZnJvbSAnbjhuLXdvcmtmbG93JztcblxuZXhwb3J0IGNvbnN0IHRvb2xzT3BlcmF0aW9uczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wZXJhdGlvbicsXG4gICAgICAgIG5hbWU6ICdvcGVyYXRpb24nLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIG5vRGF0YUV4cHJlc3Npb246IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsndG9vbHMnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnV2ViIFNlYXJjaCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICd3ZWJTZWFyY2gnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU2VhcmNoIHRoZSB3ZWIgdXNpbmcgQUknLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ1dlYiBzZWFyY2gnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnT0NSJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ29jcicsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdFeHRyYWN0IHRleHQgZnJvbSBpbWFnZXMnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ09DUicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBkZWZhdWx0OiAnd2ViU2VhcmNoJyxcbiAgICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IHRvb2xzRmllbGRzOiBJTm9kZVByb3BlcnRpZXNbXSA9IFtcbiAgICAvLyBXZWIgU2VhcmNoOiBRdWVyeVxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdRdWVyeScsXG4gICAgICAgIG5hbWU6ICdxdWVyeScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd0b29scyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWyd3ZWJTZWFyY2gnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBzZWFyY2ggcXVlcnknLFxuICAgIH0sXG4gICAgLy8gV2ViIFNlYXJjaCBPcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wdGlvbnMnLFxuICAgICAgICBuYW1lOiAnb3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd0b29scyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWyd3ZWJTZWFyY2gnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6IHt9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdNYXggUmVzdWx0cycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ21heFJlc3VsdHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogMjAsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiA1LFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTWF4aW11bSBudW1iZXIgb2YgcmVzdWx0cyB0byByZXR1cm4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1NlYXJjaCBUeXBlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VhcmNoVHlwZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnV2ViJywgdmFsdWU6ICd3ZWInIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ05ld3MnLCB2YWx1ZTogJ25ld3MnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnd2ViJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1R5cGUgb2Ygc2VhcmNoIHRvIHBlcmZvcm0nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1RpbWUgRmlsdGVyJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndGltZUZpbHRlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnQW55IFRpbWUnLCB2YWx1ZTogJycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnUGFzdCBEYXknLCB2YWx1ZTogJ2RheScgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnUGFzdCBXZWVrJywgdmFsdWU6ICd3ZWVrJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdQYXN0IE1vbnRoJywgdmFsdWU6ICdtb250aCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnUGFzdCBZZWFyJywgdmFsdWU6ICd5ZWFyJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdGaWx0ZXIgcmVzdWx0cyBieSB0aW1lIHBlcmlvZCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU2l0ZSBGaWx0ZXInLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzaXRlRmlsdGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ2dpdGh1Yi5jb20sIHN0YWNrb3ZlcmZsb3cuY29tJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0NvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHNpdGVzIHRvIHNlYXJjaCB3aXRoaW4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIC8vIE9DUjogSW1hZ2UgVVJMXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0ltYWdlIFVSTCcsXG4gICAgICAgIG5hbWU6ICdpbWFnZVVybCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3Rvb2xzJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ29jciddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVVJMIG9mIHRoZSBpbWFnZSB0byBhbmFseXplJyxcbiAgICB9LFxuICAgIC8vIE9DUjogQmluYXJ5IFByb3BlcnR5XG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0JpbmFyeSBQcm9wZXJ0eScsXG4gICAgICAgIG5hbWU6ICdiaW5hcnlQcm9wZXJ0eU5hbWUnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd0b29scyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydvY3InXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6ICdkYXRhJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOYW1lIG9mIHRoZSBiaW5hcnkgcHJvcGVydHkgY29udGFpbmluZyB0aGUgaW1hZ2UnLFxuICAgIH0sXG5dO1xuIl19
|
|
@@ -20,6 +20,12 @@ exports.videoOperations = [
|
|
|
20
20
|
description: 'Generate a video from text or image',
|
|
21
21
|
action: 'Generate a video',
|
|
22
22
|
},
|
|
23
|
+
{
|
|
24
|
+
name: 'Remix',
|
|
25
|
+
value: 'remix',
|
|
26
|
+
description: 'Remix an existing video with new prompt or parameters',
|
|
27
|
+
action: 'Remix a video',
|
|
28
|
+
},
|
|
23
29
|
{
|
|
24
30
|
name: 'Get Status',
|
|
25
31
|
value: 'getStatus',
|
|
@@ -330,5 +336,121 @@ exports.videoFields = [
|
|
|
330
336
|
},
|
|
331
337
|
],
|
|
332
338
|
},
|
|
339
|
+
// Video Reference (video_list) for video-to-video generation
|
|
340
|
+
{
|
|
341
|
+
displayName: 'Video Reference URL',
|
|
342
|
+
name: 'videoReferenceUrl',
|
|
343
|
+
type: 'string',
|
|
344
|
+
displayOptions: {
|
|
345
|
+
show: {
|
|
346
|
+
resource: ['video'],
|
|
347
|
+
operation: ['generate'],
|
|
348
|
+
},
|
|
349
|
+
},
|
|
350
|
+
default: '',
|
|
351
|
+
placeholder: 'https://example.com/reference-video.mp4',
|
|
352
|
+
description: 'URL of a reference video for video-to-video generation',
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
displayName: 'Keep Original Sound',
|
|
356
|
+
name: 'keepOriginalSound',
|
|
357
|
+
type: 'boolean',
|
|
358
|
+
displayOptions: {
|
|
359
|
+
show: {
|
|
360
|
+
resource: ['video'],
|
|
361
|
+
operation: ['generate'],
|
|
362
|
+
},
|
|
363
|
+
},
|
|
364
|
+
default: false,
|
|
365
|
+
description: 'Whether to keep the original sound from the reference video',
|
|
366
|
+
},
|
|
367
|
+
// Remix Operation Fields
|
|
368
|
+
{
|
|
369
|
+
displayName: 'Source Video ID',
|
|
370
|
+
name: 'sourceVideoId',
|
|
371
|
+
type: 'string',
|
|
372
|
+
required: true,
|
|
373
|
+
displayOptions: {
|
|
374
|
+
show: {
|
|
375
|
+
resource: ['video'],
|
|
376
|
+
operation: ['remix'],
|
|
377
|
+
},
|
|
378
|
+
},
|
|
379
|
+
default: '',
|
|
380
|
+
description: 'The ID of the video to remix',
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
displayName: 'New Prompt',
|
|
384
|
+
name: 'remixPrompt',
|
|
385
|
+
type: 'string',
|
|
386
|
+
typeOptions: {
|
|
387
|
+
rows: 4,
|
|
388
|
+
},
|
|
389
|
+
displayOptions: {
|
|
390
|
+
show: {
|
|
391
|
+
resource: ['video'],
|
|
392
|
+
operation: ['remix'],
|
|
393
|
+
},
|
|
394
|
+
},
|
|
395
|
+
default: '',
|
|
396
|
+
description: 'New prompt to guide the remix (optional)',
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
displayName: 'Wait for Completion',
|
|
400
|
+
name: 'waitForCompletion',
|
|
401
|
+
type: 'boolean',
|
|
402
|
+
displayOptions: {
|
|
403
|
+
show: {
|
|
404
|
+
resource: ['video'],
|
|
405
|
+
operation: ['remix'],
|
|
406
|
+
},
|
|
407
|
+
},
|
|
408
|
+
default: true,
|
|
409
|
+
description: 'Whether to wait for the remix to complete before returning',
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
displayName: 'Remix Options',
|
|
413
|
+
name: 'remixOptions',
|
|
414
|
+
type: 'collection',
|
|
415
|
+
placeholder: 'Add Remix Option',
|
|
416
|
+
displayOptions: {
|
|
417
|
+
show: {
|
|
418
|
+
resource: ['video'],
|
|
419
|
+
operation: ['remix'],
|
|
420
|
+
},
|
|
421
|
+
},
|
|
422
|
+
default: {},
|
|
423
|
+
options: [
|
|
424
|
+
{
|
|
425
|
+
displayName: 'Duration',
|
|
426
|
+
name: 'duration',
|
|
427
|
+
type: 'options',
|
|
428
|
+
options: [
|
|
429
|
+
{ name: '5 seconds', value: '5' },
|
|
430
|
+
{ name: '10 seconds', value: '10' },
|
|
431
|
+
],
|
|
432
|
+
default: '5',
|
|
433
|
+
description: 'Duration of the remixed video',
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
displayName: 'Mode',
|
|
437
|
+
name: 'mode',
|
|
438
|
+
type: 'options',
|
|
439
|
+
options: [
|
|
440
|
+
{ name: 'Standard', value: 'std' },
|
|
441
|
+
{ name: 'Professional', value: 'pro' },
|
|
442
|
+
],
|
|
443
|
+
default: 'std',
|
|
444
|
+
description: 'Generation quality mode',
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
displayName: 'Negative Prompt',
|
|
448
|
+
name: 'negativePrompt',
|
|
449
|
+
type: 'string',
|
|
450
|
+
default: '',
|
|
451
|
+
description: 'What to avoid in the video',
|
|
452
|
+
},
|
|
453
|
+
],
|
|
454
|
+
},
|
|
333
455
|
];
|
|
334
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlkZW9EZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL1ZpZGVvRGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQStFO0FBRWxFLFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSxxQ0FBcUM7Z0JBQ2xELE1BQU0sRUFBRSxrQkFBa0I7YUFDN0I7WUFDRDtnQkFDSSxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLFdBQVcsRUFBRSwyQ0FBMkM7Z0JBQ3hELE1BQU0sRUFBRSxrQkFBa0I7YUFDN0I7U0FDSjtRQUNELE9BQU8sRUFBRSxVQUFVO0tBQ3RCO0NBQ0osQ0FBQztBQUVXLFFBQUEsV0FBVyxHQUFzQjtJQUMxQyxRQUFRO0lBQ1I7UUFDSSxXQUFXLEVBQUUsT0FBTztRQUNwQixJQUFJLEVBQUUsT0FBTztRQUNiLElBQUksRUFBRSxTQUFTO1FBQ2YsUUFBUSxFQUFFLElBQUk7UUFDZCxjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUM7YUFDMUI7U0FDSjtRQUNELE9BQU8sRUFBRSwrQkFBbUI7UUFDNUIsT0FBTyxFQUFFLGdCQUFnQjtRQUN6QixXQUFXLEVBQUUsdUNBQXVDO0tBQ3ZEO0lBQ0QsU0FBUztJQUNUO1FBQ0ksV0FBVyxFQUFFLFFBQVE7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLFdBQVcsRUFBRTtZQUNULElBQUksRUFBRSxDQUFDO1NBQ1Y7UUFDRCxRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQzthQUMxQjtTQUNKO1FBQ0QsT0FBTyxFQUFFLEVBQUU7UUFDWCxXQUFXLEVBQUUsc0NBQXNDO0tBQ3REO0lBQ0QsMEJBQTBCO0lBQzFCO1FBQ0ksV0FBVyxFQUFFLFNBQVM7UUFDdEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLFFBQVEsRUFBRSxJQUFJO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsV0FBVyxDQUFDO2FBQzNCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLFdBQVcsRUFBRSxxQ0FBcUM7S0FDckQ7SUFDRCxzQkFBc0I7SUFDdEI7UUFDSSxXQUFXLEVBQUUscUJBQXFCO1FBQ2xDLElBQUksRUFBRSxtQkFBbUI7UUFDekIsSUFBSSxFQUFFLFNBQVM7UUFDZixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUM7YUFDMUI7U0FDSjtRQUNELE9BQU8sRUFBRSxJQUFJO1FBQ2IsV0FBVyxFQUFFLHNFQUFzRTtLQUN0RjtJQUNELGdCQUFnQjtJQUNoQjtRQUNJLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsSUFBSSxFQUFFLGVBQWU7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUM7YUFDMUI7U0FDSjtRQUNELE9BQU8sRUFBRSxFQUFFO1FBQ1gsV0FBVyxFQUFFLGtGQUFrRjtLQUNsRztJQUNEO1FBQ0ksV0FBVyxFQUFFLDZCQUE2QjtRQUMxQyxJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLElBQUksRUFBRSxRQUFRO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLFdBQVcsRUFBRSxNQUFNO1FBQ25CLFdBQVcsRUFBRSxnRkFBZ0Y7S0FDaEc7SUFDRDtRQUNJLFdBQVcsRUFBRSxzQkFBc0I7UUFDbkMsSUFBSSxFQUFFLGNBQWM7UUFDcEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUM7YUFDMUI7U0FDSjtRQUNELE9BQU8sRUFBRSxFQUFFO1FBQ1gsV0FBVyxFQUFFLGlGQUFpRjtLQUNqRztJQUNEO1FBQ0ksV0FBVyxFQUFFLDRCQUE0QjtRQUN6QyxJQUFJLEVBQUUseUJBQXlCO1FBQy9CLElBQUksRUFBRSxRQUFRO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLFdBQVcsRUFBRSxRQUFRO1FBQ3JCLFdBQVcsRUFBRSwrRUFBK0U7S0FDL0Y7SUFDRCw4Q0FBOEM7SUFDOUM7UUFDSSxXQUFXLEVBQUUsY0FBYztRQUMzQixJQUFJLEVBQUUsYUFBYTtRQUNuQixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxJQUFJO1FBQ2QsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsc0NBQTBCO1FBQ25DLE9BQU8sRUFBRSxNQUFNO1FBQ2YsV0FBVyxFQUFFLDBFQUEwRTtLQUMxRjtJQUNELGlCQUFpQjtJQUNqQjtRQUNJLFdBQVcsRUFBRSxTQUFTO1FBQ3RCLElBQUksRUFBRSxTQUFTO1FBQ2YsSUFBSSxFQUFFLFlBQVk7UUFDbEIsV0FBVyxFQUFFLFlBQVk7UUFDekIsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLE9BQU8sRUFBRTtZQUNMO2dCQUNJLFdBQVcsRUFBRSxpQkFBaUI7Z0JBQzlCLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLElBQUksRUFBRSxRQUFRO2dCQUNkLFdBQVcsRUFBRTtvQkFDVCxJQUFJLEVBQUUsQ0FBQztpQkFDVjtnQkFDRCxPQUFPLEVBQUUsRUFBRTtnQkFDWCxXQUFXLEVBQUUsd0NBQXdDO2FBQ3hEO1NBQ0o7S0FDSjtJQUNELHlCQUF5QjtJQUN6QjtRQUNJLFdBQVcsRUFBRSxlQUFlO1FBQzVCLElBQUksRUFBRSxjQUFjO1FBQ3BCLElBQUksRUFBRSxZQUFZO1FBQ2xCLFdBQVcsRUFBRSxrQkFBa0I7UUFDL0IsY0FBYyxFQUFFO1lBQ1osSUFBSSxFQUFFO2dCQUNGLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbkIsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2dCQUN2QixLQUFLLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLENBQUM7YUFDOUQ7U0FDSjtRQUNELE9BQU8sRUFBRSxFQUFFO1FBQ1gsT0FBTyxFQUFFO1lBQ0w7Z0JBQ0ksV0FBVyxFQUFFLFVBQVU7Z0JBQ3ZCLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUU7b0JBQ0wsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUU7b0JBQ2pDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2lCQUN0QztnQkFDRCxPQUFPLEVBQUUsR0FBRztnQkFDWixXQUFXLEVBQUUsMkJBQTJCO2FBQzNDO1lBQ0Q7Z0JBQ0ksV0FBVyxFQUFFLE1BQU07Z0JBQ25CLElBQUksRUFBRSxNQUFNO2dCQUNaLElBQUksRUFBRSxTQUFTO2dCQUNmLE9BQU8sRUFBRTtvQkFDTCxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtvQkFDbEMsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7aUJBQ3pDO2dCQUNELE9BQU8sRUFBRSxLQUFLO2dCQUNkLFdBQVcsRUFBRSxpQkFBaUI7YUFDakM7WUFDRDtnQkFDSSxXQUFXLEVBQUUsV0FBVztnQkFDeEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLElBQUksRUFBRSxRQUFRO2dCQUNkLFdBQVcsRUFBRTtvQkFDVCxRQUFRLEVBQUUsQ0FBQztvQkFDWCxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsQ0FBQztpQkFDckI7Z0JBQ0QsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsV0FBVyxFQUFFLG9CQUFvQjthQUNwQztZQUNEO2dCQUNJLFdBQVcsRUFBRSxNQUFNO2dCQUNuQixJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsUUFBUTtnQkFDZCxPQUFPLEVBQUUsRUFBRTtnQkFDWCxXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLG9DQUFvQzthQUNwRDtTQUNKO0tBQ0o7SUFDRCx1QkFBdUI7SUFDdkI7UUFDSSxXQUFXLEVBQUUsYUFBYTtRQUMxQixJQUFJLEVBQUUsWUFBWTtRQUNsQixJQUFJLEVBQUUsWUFBWTtRQUNsQixXQUFXLEVBQUUsZ0JBQWdCO1FBQzdCLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDdkIsS0FBSyxFQUFFO29CQUNILHNCQUFzQjtvQkFDdEIsMEJBQTBCO29CQUMxQiwrQkFBK0I7b0JBQy9CLDBCQUEwQjtvQkFDMUIsK0JBQStCO2lCQUNsQzthQUNKO1NBQ0o7UUFDRCxPQUFPLEVBQUUsRUFBRTtRQUNYLE9BQU8sRUFBRTtZQUNMO2dCQUNJLFdBQVcsRUFBRSxvQkFBb0I7Z0JBQ2pDLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUU7b0JBQ0wsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7aUJBQ2xDO2dCQUNELE9BQU8sRUFBRSxDQUFDO2dCQUNWLFdBQVcsRUFBRSx5REFBeUQ7YUFDekU7WUFDRDtnQkFDSSxXQUFXLEVBQUUsZ0JBQWdCO2dCQUM3QixJQUFJLEVBQUUsZUFBZTtnQkFDckIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsV0FBVyxFQUFFLHlDQUF5QzthQUN6RDtZQUNEO2dCQUNJLFdBQVcsRUFBRSxZQUFZO2dCQUN6QixJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFO29CQUNMLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO29CQUMvQixFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtpQkFDcEM7Z0JBQ0QsT0FBTyxFQUFFLE1BQU07Z0JBQ2YsV0FBVyxFQUFFLHlCQUF5QjthQUN6QztZQUNEO2dCQUNJLFdBQVcsRUFBRSxjQUFjO2dCQUMzQixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFO29CQUNULFFBQVEsRUFBRSxDQUFDO29CQUNYLFFBQVEsRUFBRSxDQUFDO2lCQUNkO2dCQUNELE9BQU8sRUFBRSxDQUFDO2dCQUNWLFdBQVcsRUFBRSw4QkFBOEI7YUFDOUM7WUFDRDtnQkFDSSxXQUFXLEVBQUUsbUJBQW1CO2dCQUNoQyxJQUFJLEVBQUUsa0JBQWtCO2dCQUN4QixJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUU7b0JBQ0wsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7b0JBQzdDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFO2lCQUMvQztnQkFDRCxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLG9DQUFvQzthQUNwRDtZQUNEO2dCQUNJLFdBQVcsRUFBRSxNQUFNO2dCQUNuQixJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsUUFBUTtnQkFDZCxPQUFPLEVBQUUsQ0FBQztnQkFDVixXQUFXLEVBQUUsbURBQW1EO2FBQ25FO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTm9kZVByb3BlcnRpZXMgfSBmcm9tICduOG4td29ya2Zsb3cnO1xuaW1wb3J0IHsgVklERU9fTU9ERUxfT1BUSU9OUywgVklERU9fQVNQRUNUX1JBVElPX09QVElPTlMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY29uc3QgdmlkZW9PcGVyYXRpb25zOiBJTm9kZVByb3BlcnRpZXNbXSA9IFtcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnT3BlcmF0aW9uJyxcbiAgICAgICAgbmFtZTogJ29wZXJhdGlvbicsXG4gICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgbm9EYXRhRXhwcmVzc2lvbjogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdHZW5lcmF0ZScsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdnZW5lcmF0ZScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBhIHZpZGVvIGZyb20gdGV4dCBvciBpbWFnZScsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnR2VuZXJhdGUgYSB2aWRlbycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdHZXQgU3RhdHVzJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2dldFN0YXR1cycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZXQgdGhlIHN0YXR1cyBvZiBhIHZpZGVvIGdlbmVyYXRpb24gdGFzaycsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnR2V0IHZpZGVvIHN0YXR1cycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBkZWZhdWx0OiAnZ2VuZXJhdGUnLFxuICAgIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgdmlkZW9GaWVsZHM6IElOb2RlUHJvcGVydGllc1tdID0gW1xuICAgIC8vIE1vZGVsXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ01vZGVsJyxcbiAgICAgICAgbmFtZTogJ21vZGVsJyxcbiAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczogVklERU9fTU9ERUxfT1BUSU9OUyxcbiAgICAgICAgZGVmYXVsdDogJ2tsaW5nLXZpZGVvLW8xJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgbW9kZWwgdG8gdXNlIGZvciB2aWRlbyBnZW5lcmF0aW9uJyxcbiAgICB9LFxuICAgIC8vIFByb21wdFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdQcm9tcHQnLFxuICAgICAgICBuYW1lOiAncHJvbXB0JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gb2YgdGhlIHZpZGVvIHRvIGdlbmVyYXRlJyxcbiAgICB9LFxuICAgIC8vIFRhc2sgSUQgKGZvciBnZXRTdGF0dXMpXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1Rhc2sgSUQnLFxuICAgICAgICBuYW1lOiAndGFza0lkJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dldFN0YXR1cyddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIElEIG9mIHRoZSB2aWRlbyBnZW5lcmF0aW9uIHRhc2snLFxuICAgIH0sXG4gICAgLy8gV2FpdCBmb3IgQ29tcGxldGlvblxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdXYWl0IGZvciBDb21wbGV0aW9uJyxcbiAgICAgICAgbmFtZTogJ3dhaXRGb3JDb21wbGV0aW9uJyxcbiAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1doZXRoZXIgdG8gd2FpdCBmb3IgdGhlIHZpZGVvIHRvIGJlIGZ1bGx5IGdlbmVyYXRlZCBiZWZvcmUgcmV0dXJuaW5nJyxcbiAgICB9LFxuICAgIC8vIEZyYW1lIENvbnRyb2xcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnRmlyc3QgRnJhbWUgSW1hZ2UgVVJMJyxcbiAgICAgICAgbmFtZTogJ2ZpcnN0RnJhbWVVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVVJMIG9mIHRoZSBmaXJzdCBmcmFtZSBpbWFnZS4gTGVhdmUgZW1wdHkgdG8gdXNlIGJpbmFyeSBkYXRhIGZyb20gcHJldmlvdXMgbm9kZS4nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0ZpcnN0IEZyYW1lIEJpbmFyeSBQcm9wZXJ0eScsXG4gICAgICAgIG5hbWU6ICdmaXJzdEZyYW1lQmluYXJ5UHJvcGVydHknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnZGF0YScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnQmluYXJ5IHByb3BlcnR5IG5hbWUgY29udGFpbmluZyB0aGUgZmlyc3QgZnJhbWUgaW1hZ2UgKGZyb20gSW1hZ2Ugbm9kZSBvdXRwdXQpJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdMYXN0IEZyYW1lIEltYWdlIFVSTCcsXG4gICAgICAgIG5hbWU6ICdsYXN0RnJhbWVVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVVJMIG9mIHRoZSBsYXN0IGZyYW1lIGltYWdlLiBMZWF2ZSBlbXB0eSB0byB1c2UgYmluYXJ5IGRhdGEgZnJvbSBwcmV2aW91cyBub2RlLicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnTGFzdCBGcmFtZSBCaW5hcnkgUHJvcGVydHknLFxuICAgICAgICBuYW1lOiAnbGFzdEZyYW1lQmluYXJ5UHJvcGVydHknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnZGF0YV8xJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdCaW5hcnkgcHJvcGVydHkgbmFtZSBjb250YWluaW5nIHRoZSBsYXN0IGZyYW1lIGltYWdlIChmcm9tIEltYWdlIG5vZGUgb3V0cHV0KScsXG4gICAgfSxcbiAgICAvLyBBc3BlY3QgUmF0aW8gKHJlcXVpcmVkIHdoZW4gbm8gZmlyc3QgZnJhbWUpXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0FzcGVjdCBSYXRpbycsXG4gICAgICAgIG5hbWU6ICdhc3BlY3RSYXRpbycsXG4gICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsndmlkZW8nXSxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IFsnZ2VuZXJhdGUnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IFZJREVPX0FTUEVDVF9SQVRJT19PUFRJT05TLFxuICAgICAgICBkZWZhdWx0OiAnMTY6OScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnQXNwZWN0IHJhdGlvIG9mIHRoZSBnZW5lcmF0ZWQgdmlkZW8gKHJlcXVpcmVkIHdoZW4gbm8gZmlyc3QgZnJhbWUgaW1hZ2UpJyxcbiAgICB9LFxuICAgIC8vIENvbW1vbiBPcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ09wdGlvbnMnLFxuICAgICAgICBuYW1lOiAnb3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ05lZ2F0aXZlIFByb21wdCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25lZ2F0aXZlUHJvbXB0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICByb3dzOiAyLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUaGluZ3MgdG8gYXZvaWQgaW4gdGhlIGdlbmVyYXRlZCB2aWRlbycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAgLy8gS2xpbmctc3BlY2lmaWMgb3B0aW9uc1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdLbGluZyBPcHRpb25zJyxcbiAgICAgICAgbmFtZTogJ2tsaW5nT3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgS2xpbmcgT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgIG1vZGVsOiBbJ2tsaW5nLXZpZGVvLW8xJywgJ2tsaW5nLXYyLTEnLCAna2xpbmctdjItNS10dXJibyddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0R1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZHVyYXRpb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJzUgc2Vjb25kcycsIHZhbHVlOiAnNScgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnMTAgc2Vjb25kcycsIHZhbHVlOiAnMTAnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnNScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdWaWRlbyBkdXJhdGlvbiBpbiBzZWNvbmRzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdNb2RlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbW9kZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnU3RhbmRhcmQnLCB2YWx1ZTogJ3N0ZCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnUHJvZmVzc2lvbmFsJywgdmFsdWU6ICdwcm8nIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnc3RkJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0dlbmVyYXRpb24gbW9kZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnQ0ZHIFNjYWxlJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnY2ZnU2NhbGUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAwLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogMjAsXG4gICAgICAgICAgICAgICAgICAgIG51bWJlclByZWNpc2lvbjogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IDcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdDRkcgZ3VpZGFuY2Ugc2NhbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1NpemUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzaXplJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJzE5MjB4MTA4MCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdWaWRlbyByZXNvbHV0aW9uIChlLmcuLCAxOTIweDEwODApJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICAvLyBWZW8tc3BlY2lmaWMgb3B0aW9uc1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdWZW8gT3B0aW9ucycsXG4gICAgICAgIG5hbWU6ICd2ZW9PcHRpb25zJyxcbiAgICAgICAgdHlwZTogJ2NvbGxlY3Rpb24nLFxuICAgICAgICBwbGFjZWhvbGRlcjogJ0FkZCBWZW8gT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgIG1vZGVsOiBbXG4gICAgICAgICAgICAgICAgICAgICd2ZW8tMi4wLWdlbmVyYXRlLTAwMScsXG4gICAgICAgICAgICAgICAgICAgICd2ZW8tMy4wLWdlbmVyYXRlLXByZXZpZXcnLFxuICAgICAgICAgICAgICAgICAgICAndmVvLTMuMC1mYXN0LWdlbmVyYXRlLXByZXZpZXcnLFxuICAgICAgICAgICAgICAgICAgICAndmVvLTMuMS1nZW5lcmF0ZS1wcmV2aWV3JyxcbiAgICAgICAgICAgICAgICAgICAgJ3Zlby0zLjEtZmFzdC1nZW5lcmF0ZS1wcmV2aWV3JyxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0R1cmF0aW9uIChzZWNvbmRzKScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2R1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICc4IHNlY29uZHMnLCB2YWx1ZTogOCB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogOCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1ZpZGVvIGR1cmF0aW9uIGluIHNlY29uZHMgKFZlbyBvbmx5IHN1cHBvcnRzIDggc2Vjb25kcyknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0dlbmVyYXRlIEF1ZGlvJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZ2VuZXJhdGVBdWRpbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0byBnZW5lcmF0ZSBhdWRpbyBmb3IgdGhlIHZpZGVvJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdSZXNvbHV0aW9uJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVzb2x1dGlvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnNzIwcCcsIHZhbHVlOiAnNzIwcCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnMTA4MHAnLCB2YWx1ZTogJzEwODBwJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJzcyMHAnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnT3V0cHV0IHZpZGVvIHJlc29sdXRpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1NhbXBsZSBDb3VudCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NhbXBsZUNvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICBtaW5WYWx1ZTogMSxcbiAgICAgICAgICAgICAgICAgICAgbWF4VmFsdWU6IDQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAxLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTnVtYmVyIG9mIHZpZGVvcyB0byBnZW5lcmF0ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnUGVyc29uIEdlbmVyYXRpb24nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdwZXJzb25HZW5lcmF0aW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdBbGxvdyBBZHVsdCcsIHZhbHVlOiAnYWxsb3dfYWR1bHQnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogXCJEb24ndCBBbGxvd1wiLCB2YWx1ZTogJ2RvbnRfYWxsb3cnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnYWxsb3dfYWR1bHQnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQ29udHJvbCBwZXJzb24gZ2VuZXJhdGlvbiBpbiB2aWRlbycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU2VlZCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlZWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IDAsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSYW5kb20gc2VlZCBmb3IgcmVwcm9kdWNpYmxlIHJlc3VsdHMgKDAgPSByYW5kb20pJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbl07XG4iXX0=
|
|
456
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlkZW9EZXNjcmlwdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVzL1Fpbml1QWkvZGVzY3JpcHRpb25zL1ZpZGVvRGVzY3JpcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNENBQStFO0FBRWxFLFFBQUEsZUFBZSxHQUFzQjtJQUM5QztRQUNJLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxTQUFTO1FBQ2YsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixjQUFjLEVBQUU7WUFDWixJQUFJLEVBQUU7Z0JBQ0YsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCO1NBQ0o7UUFDRCxPQUFPLEVBQUU7WUFDTDtnQkFDSSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFdBQVcsRUFBRSxxQ0FBcUM7Z0JBQ2xELE1BQU0sRUFBRSxrQkFBa0I7YUFDN0I7WUFDRDtnQkFDSSxJQUFJLEVBQUUsT0FBTztnQkFDYixLQUFLLEVBQUUsT0FBTztnQkFDZCxXQUFXLEVBQUUsdURBQXVEO2dCQUNwRSxNQUFNLEVBQUUsZUFBZTthQUMxQjtZQUNEO2dCQUNJLElBQUksRUFBRSxZQUFZO2dCQUNsQixLQUFLLEVBQUUsV0FBVztnQkFDbEIsV0FBVyxFQUFFLDJDQUEyQztnQkFDeEQsTUFBTSxFQUFFLGtCQUFrQjthQUM3QjtTQUNKO1FBQ0QsT0FBTyxFQUFFLFVBQVU7S0FDdEI7Q0FDSixDQUFDO0FBRVcsUUFBQSxXQUFXLEdBQXNCO0lBQzFDLFFBQVE7SUFDUjtRQUNJLFdBQVcsRUFBRSxPQUFPO1FBQ3BCLElBQUksRUFBRSxPQUFPO1FBQ2IsSUFBSSxFQUFFLFNBQVM7UUFDZixRQUFRLEVBQUUsSUFBSTtRQUNkLGNBQWMsRUFBRTtZQUNaLElBQUksRUFBRTtnQkFDRixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLFNB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O0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElOb2RlUHJvcGVydGllcyB9IGZyb20gJ244bi13b3JrZmxvdyc7XG5pbXBvcnQgeyBWSURFT19NT0RFTF9PUFRJT05TLCBWSURFT19BU1BFQ1RfUkFUSU9fT1BUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCB2aWRlb09wZXJhdGlvbnM6IElOb2RlUHJvcGVydGllc1tdID0gW1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdPcGVyYXRpb24nLFxuICAgICAgICBuYW1lOiAnb3BlcmF0aW9uJyxcbiAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICBub0RhdGFFeHByZXNzaW9uOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0dlbmVyYXRlJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2dlbmVyYXRlJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0dlbmVyYXRlIGEgdmlkZW8gZnJvbSB0ZXh0IG9yIGltYWdlJyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdHZW5lcmF0ZSBhIHZpZGVvJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1JlbWl4JyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ3JlbWl4JyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1JlbWl4IGFuIGV4aXN0aW5nIHZpZGVvIHdpdGggbmV3IHByb21wdCBvciBwYXJhbWV0ZXJzJyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdSZW1peCBhIHZpZGVvJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0dldCBTdGF0dXMnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiAnZ2V0U3RhdHVzJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0dldCB0aGUgc3RhdHVzIG9mIGEgdmlkZW8gZ2VuZXJhdGlvbiB0YXNrJyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdHZXQgdmlkZW8gc3RhdHVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGRlZmF1bHQ6ICdnZW5lcmF0ZScsXG4gICAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCB2aWRlb0ZpZWxkczogSU5vZGVQcm9wZXJ0aWVzW10gPSBbXG4gICAgLy8gTW9kZWxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnTW9kZWwnLFxuICAgICAgICBuYW1lOiAnbW9kZWwnLFxuICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiBWSURFT19NT0RFTF9PUFRJT05TLFxuICAgICAgICBkZWZhdWx0OiAna2xpbmctdmlkZW8tbzEnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBtb2RlbCB0byB1c2UgZm9yIHZpZGVvIGdlbmVyYXRpb24nLFxuICAgIH0sXG4gICAgLy8gUHJvbXB0XG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1Byb21wdCcsXG4gICAgICAgIG5hbWU6ICdwcm9tcHQnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHJvd3M6IDQsXG4gICAgICAgIH0sXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbiBvZiB0aGUgdmlkZW8gdG8gZ2VuZXJhdGUnLFxuICAgIH0sXG4gICAgLy8gVGFzayBJRCAoZm9yIGdldFN0YXR1cylcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnVGFzayBJRCcsXG4gICAgICAgIG5hbWU6ICd0YXNrSWQnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsndmlkZW8nXSxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IFsnZ2V0U3RhdHVzJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgSUQgb2YgdGhlIHZpZGVvIGdlbmVyYXRpb24gdGFzaycsXG4gICAgfSxcbiAgICAvLyBXYWl0IGZvciBDb21wbGV0aW9uXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1dhaXQgZm9yIENvbXBsZXRpb24nLFxuICAgICAgICBuYW1lOiAnd2FpdEZvckNvbXBsZXRpb24nLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGRpc3BsYXlPcHRpb25zOiB7XG4gICAgICAgICAgICBzaG93OiB7XG4gICAgICAgICAgICAgICAgcmVzb3VyY2U6IFsndmlkZW8nXSxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IFsnZ2VuZXJhdGUnXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0byB3YWl0IGZvciB0aGUgdmlkZW8gdG8gYmUgZnVsbHkgZ2VuZXJhdGVkIGJlZm9yZSByZXR1cm5pbmcnLFxuICAgIH0sXG4gICAgLy8gRnJhbWUgQ29udHJvbFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdGaXJzdCBGcmFtZSBJbWFnZSBVUkwnLFxuICAgICAgICBuYW1lOiAnZmlyc3RGcmFtZVVybCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdVUkwgb2YgdGhlIGZpcnN0IGZyYW1lIGltYWdlLiBMZWF2ZSBlbXB0eSB0byB1c2UgYmluYXJ5IGRhdGEgZnJvbSBwcmV2aW91cyBub2RlLicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnRmlyc3QgRnJhbWUgQmluYXJ5IFByb3BlcnR5JyxcbiAgICAgICAgbmFtZTogJ2ZpcnN0RnJhbWVCaW5hcnlQcm9wZXJ0eScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdkYXRhJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdCaW5hcnkgcHJvcGVydHkgbmFtZSBjb250YWluaW5nIHRoZSBmaXJzdCBmcmFtZSBpbWFnZSAoZnJvbSBJbWFnZSBub2RlIG91dHB1dCknLFxuICAgIH0sXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0xhc3QgRnJhbWUgSW1hZ2UgVVJMJyxcbiAgICAgICAgbmFtZTogJ2xhc3RGcmFtZVVybCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdVUkwgb2YgdGhlIGxhc3QgZnJhbWUgaW1hZ2UuIExlYXZlIGVtcHR5IHRvIHVzZSBiaW5hcnkgZGF0YSBmcm9tIHByZXZpb3VzIG5vZGUuJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdMYXN0IEZyYW1lIEJpbmFyeSBQcm9wZXJ0eScsXG4gICAgICAgIG5hbWU6ICdsYXN0RnJhbWVCaW5hcnlQcm9wZXJ0eScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdkYXRhXzEnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0JpbmFyeSBwcm9wZXJ0eSBuYW1lIGNvbnRhaW5pbmcgdGhlIGxhc3QgZnJhbWUgaW1hZ2UgKGZyb20gSW1hZ2Ugbm9kZSBvdXRwdXQpJyxcbiAgICB9LFxuICAgIC8vIEFzcGVjdCBSYXRpbyAocmVxdWlyZWQgd2hlbiBubyBmaXJzdCBmcmFtZSlcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQXNwZWN0IFJhdGlvJyxcbiAgICAgICAgbmFtZTogJ2FzcGVjdFJhdGlvJyxcbiAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczogVklERU9fQVNQRUNUX1JBVElPX09QVElPTlMsXG4gICAgICAgIGRlZmF1bHQ6ICcxNjo5JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdBc3BlY3QgcmF0aW8gb2YgdGhlIGdlbmVyYXRlZCB2aWRlbyAocmVxdWlyZWQgd2hlbiBubyBmaXJzdCBmcmFtZSBpbWFnZSknLFxuICAgIH0sXG4gICAgLy8gQ29tbW9uIE9wdGlvbnNcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnT3B0aW9ucycsXG4gICAgICAgIG5hbWU6ICdvcHRpb25zJyxcbiAgICAgICAgdHlwZTogJ2NvbGxlY3Rpb24nLFxuICAgICAgICBwbGFjZWhvbGRlcjogJ0FkZCBPcHRpb24nLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTmVnYXRpdmUgUHJvbXB0JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbmVnYXRpdmVQcm9tcHQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIHJvd3M6IDIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RoaW5ncyB0byBhdm9pZCBpbiB0aGUgZ2VuZXJhdGVkIHZpZGVvJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICAvLyBLbGluZy1zcGVjaWZpYyBvcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0tsaW5nIE9wdGlvbnMnLFxuICAgICAgICBuYW1lOiAna2xpbmdPcHRpb25zJyxcbiAgICAgICAgdHlwZTogJ2NvbGxlY3Rpb24nLFxuICAgICAgICBwbGFjZWhvbGRlcjogJ0FkZCBLbGluZyBPcHRpb24nLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICAgICAgbW9kZWw6IFsna2xpbmctdmlkZW8tbzEnLCAna2xpbmctdjItMScsICdrbGluZy12Mi01LXR1cmJvJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnRHVyYXRpb24nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdkdXJhdGlvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ29wdGlvbnMnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnNSBzZWNvbmRzJywgdmFsdWU6ICc1JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICcxMCBzZWNvbmRzJywgdmFsdWU6ICcxMCcgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICc1JyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1ZpZGVvIGR1cmF0aW9uIGluIHNlY29uZHMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ01vZGUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdtb2RlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdTdGFuZGFyZCcsIHZhbHVlOiAnc3RkJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdQcm9mZXNzaW9uYWwnLCB2YWx1ZTogJ3BybycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICdzdGQnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGlvbiBtb2RlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdDRkcgU2NhbGUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdjZmdTY2FsZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgdHlwZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgbWluVmFsdWU6IDAsXG4gICAgICAgICAgICAgICAgICAgIG1heFZhbHVlOiAyMCxcbiAgICAgICAgICAgICAgICAgICAgbnVtYmVyUHJlY2lzaW9uOiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogNyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0NGRyBndWlkYW5jZSBzY2FsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU2l6ZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NpemUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMTkyMHgxMDgwJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1ZpZGVvIHJlc29sdXRpb24gKGUuZy4sIDE5MjB4MTA4MCknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIC8vIFZlby1zcGVjaWZpYyBvcHRpb25zXG4gICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1ZlbyBPcHRpb25zJyxcbiAgICAgICAgbmFtZTogJ3Zlb09wdGlvbnMnLFxuICAgICAgICB0eXBlOiAnY29sbGVjdGlvbicsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnQWRkIFZlbyBPcHRpb24nLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICAgICAgbW9kZWw6IFtcbiAgICAgICAgICAgICAgICAgICAgJ3Zlby0yLjAtZ2VuZXJhdGUtMDAxJyxcbiAgICAgICAgICAgICAgICAgICAgJ3Zlby0zLjAtZ2VuZXJhdGUtcHJldmlldycsXG4gICAgICAgICAgICAgICAgICAgICd2ZW8tMy4wLWZhc3QtZ2VuZXJhdGUtcHJldmlldycsXG4gICAgICAgICAgICAgICAgICAgICd2ZW8tMy4xLWdlbmVyYXRlLXByZXZpZXcnLFxuICAgICAgICAgICAgICAgICAgICAndmVvLTMuMS1mYXN0LWdlbmVyYXRlLXByZXZpZXcnLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnRHVyYXRpb24gKHNlY29uZHMpJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZHVyYXRpb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJzggc2Vjb25kcycsIHZhbHVlOiA4IH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiA4LFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVmlkZW8gZHVyYXRpb24gaW4gc2Vjb25kcyAoVmVvIG9ubHkgc3VwcG9ydHMgOCBzZWNvbmRzKScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnR2VuZXJhdGUgQXVkaW8nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdnZW5lcmF0ZUF1ZGlvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIGdlbmVyYXRlIGF1ZGlvIGZvciB0aGUgdmlkZW8nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1Jlc29sdXRpb24nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXNvbHV0aW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3B0aW9ucycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICc3MjBwJywgdmFsdWU6ICc3MjBwJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICcxMDgwcCcsIHZhbHVlOiAnMTA4MHAnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnNzIwcCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdPdXRwdXQgdmlkZW8gcmVzb2x1dGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnU2FtcGxlIENvdW50JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2FtcGxlQ291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIHR5cGVPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgICAgICAgICBtYXhWYWx1ZTogNCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IDEsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOdW1iZXIgb2YgdmlkZW9zIHRvIGdlbmVyYXRlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdQZXJzb24gR2VuZXJhdGlvbicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3BlcnNvbkdlbmVyYXRpb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ0FsbG93IEFkdWx0JywgdmFsdWU6ICdhbGxvd19hZHVsdCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiBcIkRvbid0IEFsbG93XCIsIHZhbHVlOiAnZG9udF9hbGxvdycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICdhbGxvd19hZHVsdCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdDb250cm9sIHBlcnNvbiBnZW5lcmF0aW9uIGluIHZpZGVvJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdTZWVkJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogMCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1JhbmRvbSBzZWVkIGZvciByZXByb2R1Y2libGUgcmVzdWx0cyAoMCA9IHJhbmRvbSknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIC8vIFZpZGVvIFJlZmVyZW5jZSAodmlkZW9fbGlzdCkgZm9yIHZpZGVvLXRvLXZpZGVvIGdlbmVyYXRpb25cbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnVmlkZW8gUmVmZXJlbmNlIFVSTCcsXG4gICAgICAgIG5hbWU6ICd2aWRlb1JlZmVyZW5jZVVybCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkaXNwbGF5T3B0aW9uczoge1xuICAgICAgICAgICAgc2hvdzoge1xuICAgICAgICAgICAgICAgIHJlc291cmNlOiBbJ3ZpZGVvJ10sXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBbJ2dlbmVyYXRlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdodHRwczovL2V4YW1wbGUuY29tL3JlZmVyZW5jZS12aWRlby5tcDQnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VSTCBvZiBhIHJlZmVyZW5jZSB2aWRlbyBmb3IgdmlkZW8tdG8tdmlkZW8gZ2VuZXJhdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnS2VlcCBPcmlnaW5hbCBTb3VuZCcsXG4gICAgICAgIG5hbWU6ICdrZWVwT3JpZ2luYWxTb3VuZCcsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydnZW5lcmF0ZSddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0byBrZWVwIHRoZSBvcmlnaW5hbCBzb3VuZCBmcm9tIHRoZSByZWZlcmVuY2UgdmlkZW8nLFxuICAgIH0sXG4gICAgLy8gUmVtaXggT3BlcmF0aW9uIEZpZWxkc1xuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdTb3VyY2UgVmlkZW8gSUQnLFxuICAgICAgICBuYW1lOiAnc291cmNlVmlkZW9JZCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydyZW1peCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIElEIG9mIHRoZSB2aWRlbyB0byByZW1peCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnTmV3IFByb21wdCcsXG4gICAgICAgIG5hbWU6ICdyZW1peFByb21wdCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgICAgcm93czogNCxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydyZW1peCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTmV3IHByb21wdCB0byBndWlkZSB0aGUgcmVtaXggKG9wdGlvbmFsKScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnV2FpdCBmb3IgQ29tcGxldGlvbicsXG4gICAgICAgIG5hbWU6ICd3YWl0Rm9yQ29tcGxldGlvbicsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydyZW1peCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIHdhaXQgZm9yIHRoZSByZW1peCB0byBjb21wbGV0ZSBiZWZvcmUgcmV0dXJuaW5nJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdSZW1peCBPcHRpb25zJyxcbiAgICAgICAgbmFtZTogJ3JlbWl4T3B0aW9ucycsXG4gICAgICAgIHR5cGU6ICdjb2xsZWN0aW9uJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgUmVtaXggT3B0aW9uJyxcbiAgICAgICAgZGlzcGxheU9wdGlvbnM6IHtcbiAgICAgICAgICAgIHNob3c6IHtcbiAgICAgICAgICAgICAgICByZXNvdXJjZTogWyd2aWRlbyddLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogWydyZW1peCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdDoge30sXG4gICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0R1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZHVyYXRpb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJzUgc2Vjb25kcycsIHZhbHVlOiAnNScgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnMTAgc2Vjb25kcycsIHZhbHVlOiAnMTAnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnNScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdEdXJhdGlvbiBvZiB0aGUgcmVtaXhlZCB2aWRlbycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTW9kZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ21vZGUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ1N0YW5kYXJkJywgdmFsdWU6ICdzdGQnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ1Byb2Zlc3Npb25hbCcsIHZhbHVlOiAncHJvJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ3N0ZCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0aW9uIHF1YWxpdHkgbW9kZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTmVnYXRpdmUgUHJvbXB0JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbmVnYXRpdmVQcm9tcHQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnV2hhdCB0byBhdm9pZCBpbiB0aGUgdmlkZW8nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuXTtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-qiniu-ai",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "n8n nodes for Qiniu AI SDK - Chat, Image, Video, Audio, OCR, Agent and more",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"n8n-community-node-package",
|
|
@@ -53,4 +53,4 @@
|
|
|
53
53
|
"peerDependencies": {
|
|
54
54
|
"n8n-workflow": "*"
|
|
55
55
|
}
|
|
56
|
-
}
|
|
56
|
+
}
|