appium 2.0.0-beta.20 → 2.0.0-beta.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/README.md +1 -2
  2. package/build/check-npm-pack-files.js +23 -0
  3. package/build/commands-yml/parse.js +319 -0
  4. package/build/commands-yml/validator.js +130 -0
  5. package/build/index.js +19 -0
  6. package/build/lib/appium.js +22 -7
  7. package/build/lib/cli/args.js +13 -15
  8. package/build/lib/cli/npm.js +27 -16
  9. package/build/lib/cli/parser.js +7 -3
  10. package/build/lib/config.js +27 -47
  11. package/build/lib/extension-config.js +1 -1
  12. package/build/lib/main.js +29 -28
  13. package/build/lib/plugin-config.js +2 -2
  14. package/build/lib/plugins.js +4 -2
  15. package/build/lib/schema/appium-config-schema.js +3 -2
  16. package/build/lib/schema/arg-spec.js +5 -3
  17. package/build/lib/schema/cli-args.js +25 -16
  18. package/build/lib/schema/keywords.js +14 -4
  19. package/build/lib/schema/schema.js +80 -9
  20. package/build/lib/utils.js +16 -36
  21. package/build/postinstall.js +90 -0
  22. package/build/test/cli/cli-e2e-specs.js +221 -0
  23. package/build/test/cli/cli-helpers.js +86 -0
  24. package/build/test/cli/cli-specs.js +71 -0
  25. package/build/test/cli/fixtures/test-driver/package.json +27 -0
  26. package/build/test/cli/schema-args-specs.js +48 -0
  27. package/build/test/cli/schema-e2e-specs.js +47 -0
  28. package/build/test/config-e2e-specs.js +112 -0
  29. package/build/test/config-file-e2e-specs.js +209 -0
  30. package/build/test/config-file-specs.js +281 -0
  31. package/build/test/config-specs.js +246 -0
  32. package/build/test/driver-e2e-specs.js +435 -0
  33. package/build/test/driver-specs.js +386 -0
  34. package/build/test/ext-config-io-specs.js +181 -0
  35. package/build/test/extension-config-specs.js +365 -0
  36. package/build/test/fixtures/allow-feat.txt +5 -0
  37. package/build/test/fixtures/caps.json +3 -0
  38. package/build/test/fixtures/config/allow-insecure.txt +3 -0
  39. package/build/test/fixtures/config/appium.config.bad-nodeconfig.json +5 -0
  40. package/build/test/fixtures/config/appium.config.bad.json +32 -0
  41. package/build/test/fixtures/config/appium.config.ext-good.json +9 -0
  42. package/build/test/fixtures/config/appium.config.ext-unknown-props.json +10 -0
  43. package/build/test/fixtures/config/appium.config.good.js +40 -0
  44. package/build/test/fixtures/config/appium.config.good.json +33 -0
  45. package/build/test/fixtures/config/appium.config.good.yaml +30 -0
  46. package/build/test/fixtures/config/appium.config.invalid.json +31 -0
  47. package/build/test/fixtures/config/appium.config.security-array.json +5 -0
  48. package/build/test/fixtures/config/appium.config.security-delimited.json +5 -0
  49. package/build/test/fixtures/config/appium.config.security-path.json +5 -0
  50. package/build/test/fixtures/config/driver-fake.config.json +8 -0
  51. package/build/test/fixtures/config/nodeconfig.json +3 -0
  52. package/build/test/fixtures/config/plugin-fake.config.json +0 -0
  53. package/build/test/fixtures/default-args.js +35 -0
  54. package/build/test/fixtures/deny-feat.txt +5 -0
  55. package/build/test/fixtures/driver.schema.js +20 -0
  56. package/build/test/fixtures/extensions.yaml +27 -0
  57. package/build/test/fixtures/flattened-schema.js +532 -0
  58. package/build/test/fixtures/plugin.schema.js +20 -0
  59. package/build/test/fixtures/schema-with-extensions.js +28 -0
  60. package/build/test/grid-register-specs.js +74 -0
  61. package/build/test/helpers.js +75 -0
  62. package/build/test/logger-specs.js +76 -0
  63. package/build/test/npm-specs.js +20 -0
  64. package/build/test/parser-specs.js +319 -0
  65. package/build/test/plugin-e2e-specs.js +316 -0
  66. package/build/test/schema/arg-spec-specs.js +70 -0
  67. package/build/test/schema/cli-args-specs.js +408 -0
  68. package/build/test/schema/schema-specs.js +407 -0
  69. package/build/test/utils-specs.js +288 -0
  70. package/index.js +11 -0
  71. package/lib/appium-config.schema.json +2 -1
  72. package/lib/appium.js +51 -8
  73. package/lib/cli/args.js +17 -14
  74. package/lib/cli/npm.js +68 -6
  75. package/lib/cli/parser.js +5 -2
  76. package/lib/config.js +72 -54
  77. package/lib/extension-config.js +1 -1
  78. package/lib/main.js +93 -40
  79. package/lib/plugin-config.js +1 -1
  80. package/lib/plugins.js +2 -0
  81. package/lib/schema/appium-config-schema.js +1 -0
  82. package/lib/schema/arg-spec.js +12 -2
  83. package/lib/schema/cli-args.js +22 -34
  84. package/lib/schema/keywords.js +20 -4
  85. package/lib/schema/schema.js +142 -22
  86. package/lib/utils.js +28 -29
  87. package/package.json +10 -14
  88. package/types/types.d.ts +5 -0
  89. package/build/lib/cli/argparse-actions.js +0 -104
  90. package/lib/cli/argparse-actions.js +0 -77
@@ -0,0 +1,532 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ require("source-map-support/register");
9
+
10
+ var _default = [{
11
+ argSpec: {
12
+ arg: 'address',
13
+ defaultValue: '0.0.0.0',
14
+ dest: 'address',
15
+ extName: undefined,
16
+ extType: undefined,
17
+ name: 'address',
18
+ rawDest: 'address',
19
+ ref: 'appium.json#/properties/server/properties/address'
20
+ },
21
+ schema: {
22
+ $comment: 'I think hostname covers both DNS and IPv4...could be wrong',
23
+ appiumCliAliases: ['a'],
24
+ default: '0.0.0.0',
25
+ description: 'IP address to listen on',
26
+ format: 'hostname',
27
+ title: 'address config',
28
+ type: 'string'
29
+ }
30
+ }, {
31
+ argSpec: {
32
+ arg: 'allow-cors',
33
+ defaultValue: false,
34
+ dest: 'allowCors',
35
+ extName: undefined,
36
+ extType: undefined,
37
+ name: 'allow-cors',
38
+ rawDest: 'allowCors',
39
+ ref: 'appium.json#/properties/server/properties/allow-cors'
40
+ },
41
+ schema: {
42
+ default: false,
43
+ description: 'Whether the Appium server should allow web browser connections from any host',
44
+ title: 'allow-cors config',
45
+ type: 'boolean'
46
+ }
47
+ }, {
48
+ argSpec: {
49
+ arg: 'allow-insecure',
50
+ defaultValue: [],
51
+ dest: 'allowInsecure',
52
+ extName: undefined,
53
+ extType: undefined,
54
+ name: 'allow-insecure',
55
+ rawDest: 'allowInsecure',
56
+ ref: 'appium.json#/properties/server/properties/allow-insecure'
57
+ },
58
+ schema: {
59
+ appiumCliTransformer: 'csv',
60
+ default: [],
61
+ description: 'Set which insecure features are allowed to run in this server\'s sessions. Features are defined on a driver level; see documentation for more details. Note that features defined via "deny-insecure" will be disabled, even if also listed here. If string, a path to a text file containing policy or a comma-delimited list.',
62
+ items: {
63
+ type: 'string'
64
+ },
65
+ title: 'allow-insecure config',
66
+ type: 'array',
67
+ uniqueItems: true
68
+ }
69
+ }, {
70
+ argSpec: {
71
+ arg: 'base-path',
72
+ defaultValue: '',
73
+ dest: 'basePath',
74
+ extName: undefined,
75
+ extType: undefined,
76
+ name: 'base-path',
77
+ rawDest: 'basePath',
78
+ ref: 'appium.json#/properties/server/properties/base-path'
79
+ },
80
+ schema: {
81
+ appiumCliAliases: ['pa'],
82
+ default: '',
83
+ description: 'Base path to use as the prefix for all webdriver routes running on the server',
84
+ title: 'base-path config',
85
+ type: 'string'
86
+ }
87
+ }, {
88
+ argSpec: {
89
+ arg: 'callback-address',
90
+ defaultValue: undefined,
91
+ dest: 'callbackAddress',
92
+ extName: undefined,
93
+ extType: undefined,
94
+ name: 'callback-address',
95
+ rawDest: 'callbackAddress',
96
+ ref: 'appium.json#/properties/server/properties/callback-address'
97
+ },
98
+ schema: {
99
+ appiumCliAliases: ['ca'],
100
+ description: 'Callback IP address (default: same as "address")',
101
+ title: 'callback-address config',
102
+ type: 'string'
103
+ }
104
+ }, {
105
+ argSpec: {
106
+ arg: 'callback-port',
107
+ defaultValue: 4723,
108
+ dest: 'callbackPort',
109
+ extName: undefined,
110
+ extType: undefined,
111
+ name: 'callback-port',
112
+ rawDest: 'callbackPort',
113
+ ref: 'appium.json#/properties/server/properties/callback-port'
114
+ },
115
+ schema: {
116
+ appiumCliAliases: ['cp'],
117
+ default: 4723,
118
+ description: 'Callback port (default: same as "port")',
119
+ maximum: 65535,
120
+ minimum: 1,
121
+ title: 'callback-port config',
122
+ type: 'integer'
123
+ }
124
+ }, {
125
+ argSpec: {
126
+ arg: 'debug-log-spacing',
127
+ defaultValue: false,
128
+ dest: 'debugLogSpacing',
129
+ extName: undefined,
130
+ extType: undefined,
131
+ name: 'debug-log-spacing',
132
+ rawDest: 'debugLogSpacing',
133
+ ref: 'appium.json#/properties/server/properties/debug-log-spacing'
134
+ },
135
+ schema: {
136
+ default: false,
137
+ description: 'Add exaggerated spacing in logs to help with visual inspection',
138
+ title: 'debug-log-spacing config',
139
+ type: 'boolean'
140
+ }
141
+ }, {
142
+ argSpec: {
143
+ arg: 'default-capabilities',
144
+ defaultValue: undefined,
145
+ dest: 'defaultCapabilities',
146
+ extName: undefined,
147
+ extType: undefined,
148
+ name: 'default-capabilities',
149
+ rawDest: 'defaultCapabilities',
150
+ ref: 'appium.json#/properties/server/properties/default-capabilities'
151
+ },
152
+ schema: {
153
+ $comment: 'TODO',
154
+ appiumCliAliases: ['dc'],
155
+ description: 'Set the default desired capabilities, which will be set on each session unless overridden by received capabilities. If a string, a path to a JSON file containing the capabilities, or raw JSON.',
156
+ title: 'default-capabilities config',
157
+ type: 'object'
158
+ }
159
+ }, {
160
+ argSpec: {
161
+ arg: 'deny-insecure',
162
+ defaultValue: [],
163
+ dest: 'denyInsecure',
164
+ extName: undefined,
165
+ extType: undefined,
166
+ name: 'deny-insecure',
167
+ rawDest: 'denyInsecure',
168
+ ref: 'appium.json#/properties/server/properties/deny-insecure'
169
+ },
170
+ schema: {
171
+ $comment: 'Allowed values are defined by drivers',
172
+ appiumCliTransformer: 'csv',
173
+ default: [],
174
+ description: 'Set which insecure features are not allowed to run in this server\'s sessions. Features are defined on a driver level; see documentation for more details. Features listed here will not be enabled even if also listed in "allow-insecure", and even if "relaxed-security" is enabled. If string, a path to a text file containing policy or a comma-delimited list.',
175
+ items: {
176
+ type: 'string'
177
+ },
178
+ title: 'deny-insecure config',
179
+ type: 'array',
180
+ uniqueItems: true
181
+ }
182
+ }, {
183
+ argSpec: {
184
+ arg: 'keep-alive-timeout',
185
+ defaultValue: 600,
186
+ dest: 'keepAliveTimeout',
187
+ extName: undefined,
188
+ extType: undefined,
189
+ name: 'keep-alive-timeout',
190
+ rawDest: 'keepAliveTimeout',
191
+ ref: 'appium.json#/properties/server/properties/keep-alive-timeout'
192
+ },
193
+ schema: {
194
+ appiumCliAliases: ['ka'],
195
+ default: 600,
196
+ description: 'Number of seconds the Appium server should apply as both the keep-alive timeout and the connection timeout for all requests. A value of 0 disables the timeout.',
197
+ minimum: 0,
198
+ title: 'keep-alive-timeout config',
199
+ type: 'integer'
200
+ }
201
+ }, {
202
+ argSpec: {
203
+ arg: 'local-timezone',
204
+ defaultValue: false,
205
+ dest: 'localTimezone',
206
+ extName: undefined,
207
+ extType: undefined,
208
+ name: 'local-timezone',
209
+ rawDest: 'localTimezone',
210
+ ref: 'appium.json#/properties/server/properties/local-timezone'
211
+ },
212
+ schema: {
213
+ default: false,
214
+ description: 'Use local timezone for timestamps',
215
+ title: 'local-timezone config',
216
+ type: 'boolean'
217
+ }
218
+ }, {
219
+ argSpec: {
220
+ arg: 'log',
221
+ defaultValue: undefined,
222
+ dest: 'logFile',
223
+ extName: undefined,
224
+ extType: undefined,
225
+ name: 'log',
226
+ rawDest: 'logFile',
227
+ ref: 'appium.json#/properties/server/properties/log'
228
+ },
229
+ schema: {
230
+ appiumCliAliases: ['g'],
231
+ appiumCliDest: 'logFile',
232
+ description: 'Also send log output to this file',
233
+ title: 'log config',
234
+ type: 'string'
235
+ }
236
+ }, {
237
+ argSpec: {
238
+ arg: 'log-filters',
239
+ defaultValue: undefined,
240
+ dest: 'logFilters',
241
+ extName: undefined,
242
+ extType: undefined,
243
+ name: 'log-filters',
244
+ rawDest: 'logFilters',
245
+ ref: 'appium.json#/properties/server/properties/log-filters'
246
+ },
247
+ schema: {
248
+ $comment: 'TODO',
249
+ description: 'One or more log filtering rules',
250
+ items: {
251
+ type: 'string'
252
+ },
253
+ title: 'log-filters config',
254
+ type: 'array'
255
+ }
256
+ }, {
257
+ argSpec: {
258
+ arg: 'log-level',
259
+ defaultValue: 'debug',
260
+ dest: 'loglevel',
261
+ extName: undefined,
262
+ extType: undefined,
263
+ name: 'log-level',
264
+ rawDest: 'loglevel',
265
+ ref: 'appium.json#/properties/server/properties/log-level'
266
+ },
267
+ schema: {
268
+ appiumCliDest: 'loglevel',
269
+ default: 'debug',
270
+ description: 'Log level (console[:file])',
271
+ enum: ['info', 'info:debug', 'info:info', 'info:warn', 'info:error', 'warn', 'warn:debug', 'warn:info', 'warn:warn', 'warn:error', 'error', 'error:debug', 'error:info', 'error:warn', 'error:error', 'debug', 'debug:debug', 'debug:info', 'debug:warn', 'debug:error'],
272
+ title: 'log-level config',
273
+ type: 'string'
274
+ }
275
+ }, {
276
+ argSpec: {
277
+ arg: 'log-no-colors',
278
+ defaultValue: false,
279
+ dest: 'logNoColors',
280
+ extName: undefined,
281
+ extType: undefined,
282
+ name: 'log-no-colors',
283
+ rawDest: 'logNoColors',
284
+ ref: 'appium.json#/properties/server/properties/log-no-colors'
285
+ },
286
+ schema: {
287
+ default: false,
288
+ description: 'Do not use color in console output',
289
+ title: 'log-no-colors config',
290
+ type: 'boolean'
291
+ }
292
+ }, {
293
+ argSpec: {
294
+ arg: 'log-timestamp',
295
+ defaultValue: false,
296
+ dest: 'logTimestamp',
297
+ extName: undefined,
298
+ extType: undefined,
299
+ name: 'log-timestamp',
300
+ rawDest: 'logTimestamp',
301
+ ref: 'appium.json#/properties/server/properties/log-timestamp'
302
+ },
303
+ schema: {
304
+ default: false,
305
+ description: 'Show timestamps in console output',
306
+ title: 'log-timestamp config',
307
+ type: 'boolean'
308
+ }
309
+ }, {
310
+ argSpec: {
311
+ arg: 'long-stacktrace',
312
+ defaultValue: false,
313
+ dest: 'longStacktrace',
314
+ extName: undefined,
315
+ extType: undefined,
316
+ name: 'long-stacktrace',
317
+ rawDest: 'longStacktrace',
318
+ ref: 'appium.json#/properties/server/properties/long-stacktrace'
319
+ },
320
+ schema: {
321
+ default: false,
322
+ description: 'Add long stack traces to log entries. Recommended for debugging only.',
323
+ title: 'long-stacktrace config',
324
+ type: 'boolean'
325
+ }
326
+ }, {
327
+ argSpec: {
328
+ arg: 'no-perms-check',
329
+ defaultValue: false,
330
+ dest: 'noPermsCheck',
331
+ extName: undefined,
332
+ extType: undefined,
333
+ name: 'no-perms-check',
334
+ rawDest: 'noPermsCheck',
335
+ ref: 'appium.json#/properties/server/properties/no-perms-check'
336
+ },
337
+ schema: {
338
+ default: false,
339
+ description: 'Do not check that needed files are readable and/or writable',
340
+ title: 'no-perms-check config',
341
+ type: 'boolean'
342
+ }
343
+ }, {
344
+ argSpec: {
345
+ arg: 'nodeconfig',
346
+ defaultValue: undefined,
347
+ dest: 'nodeconfig',
348
+ extName: undefined,
349
+ extType: undefined,
350
+ name: 'nodeconfig',
351
+ rawDest: 'nodeconfig',
352
+ ref: 'appium.json#/properties/server/properties/nodeconfig'
353
+ },
354
+ schema: {
355
+ $comment: 'Selenium Grid 3 is unmaintained and Selenium Grid 4 no longer supports this file.',
356
+ description: 'Path to configuration JSON file to register Appium as a node with Selenium Grid 3; otherwise the configuration itself',
357
+ title: 'nodeconfig config',
358
+ type: 'object'
359
+ }
360
+ }, {
361
+ argSpec: {
362
+ arg: 'port',
363
+ defaultValue: 4723,
364
+ dest: 'port',
365
+ extName: undefined,
366
+ extType: undefined,
367
+ name: 'port',
368
+ rawDest: 'port',
369
+ ref: 'appium.json#/properties/server/properties/port'
370
+ },
371
+ schema: {
372
+ appiumCliAliases: ['p'],
373
+ default: 4723,
374
+ description: 'Port to listen on',
375
+ maximum: 65535,
376
+ minimum: 1,
377
+ title: 'port config',
378
+ type: 'integer'
379
+ }
380
+ }, {
381
+ argSpec: {
382
+ arg: 'relaxed-security',
383
+ defaultValue: false,
384
+ dest: 'relaxedSecurityEnabled',
385
+ extName: undefined,
386
+ extType: undefined,
387
+ name: 'relaxed-security',
388
+ rawDest: 'relaxedSecurityEnabled',
389
+ ref: 'appium.json#/properties/server/properties/relaxed-security'
390
+ },
391
+ schema: {
392
+ appiumCliDest: 'relaxedSecurityEnabled',
393
+ default: false,
394
+ description: 'Disable additional security checks, so it is possible to use some advanced features, provided by drivers supporting this option. Only enable it if all the clients are in the trusted network and it\'s not the case if a client could potentially break out of the session sandbox. Specific features can be overridden by using "deny-insecure"',
395
+ title: 'relaxed-security config',
396
+ type: 'boolean'
397
+ }
398
+ }, {
399
+ argSpec: {
400
+ arg: 'session-override',
401
+ defaultValue: false,
402
+ dest: 'sessionOverride',
403
+ extName: undefined,
404
+ extType: undefined,
405
+ name: 'session-override',
406
+ rawDest: 'sessionOverride',
407
+ ref: 'appium.json#/properties/server/properties/session-override'
408
+ },
409
+ schema: {
410
+ default: false,
411
+ description: 'Enables session override (clobbering)',
412
+ title: 'session-override config',
413
+ type: 'boolean'
414
+ }
415
+ }, {
416
+ argSpec: {
417
+ arg: 'strict-caps',
418
+ defaultValue: false,
419
+ dest: 'strictCaps',
420
+ extName: undefined,
421
+ extType: undefined,
422
+ name: 'strict-caps',
423
+ rawDest: 'strictCaps',
424
+ ref: 'appium.json#/properties/server/properties/strict-caps'
425
+ },
426
+ schema: {
427
+ default: false,
428
+ description: 'Cause sessions to fail if desired caps are sent in that Appium does not recognize as valid for the selected device',
429
+ title: 'strict-caps config',
430
+ type: 'boolean'
431
+ }
432
+ }, {
433
+ argSpec: {
434
+ arg: 'tmp',
435
+ defaultValue: undefined,
436
+ dest: 'tmpDir',
437
+ extName: undefined,
438
+ extType: undefined,
439
+ name: 'tmp',
440
+ rawDest: 'tmpDir',
441
+ ref: 'appium.json#/properties/server/properties/tmp'
442
+ },
443
+ schema: {
444
+ appiumCliDest: 'tmpDir',
445
+ description: 'Absolute path to directory Appium can use to manage temp files. Defaults to C:\\Windows\\Temp on Windows and /tmp otherwise.',
446
+ title: 'tmp config',
447
+ type: 'string'
448
+ }
449
+ }, {
450
+ argSpec: {
451
+ arg: 'trace-dir',
452
+ defaultValue: undefined,
453
+ dest: 'traceDir',
454
+ extName: undefined,
455
+ extType: undefined,
456
+ name: 'trace-dir',
457
+ rawDest: 'traceDir',
458
+ ref: 'appium.json#/properties/server/properties/trace-dir'
459
+ },
460
+ schema: {
461
+ description: 'Absolute path to directory Appium can use to save iOS instrument traces; defaults to <tmp>/appium-instruments',
462
+ title: 'trace-dir config',
463
+ type: 'string'
464
+ }
465
+ }, {
466
+ argSpec: {
467
+ arg: 'use-drivers',
468
+ defaultValue: [],
469
+ dest: 'useDrivers',
470
+ extName: undefined,
471
+ extType: undefined,
472
+ name: 'use-drivers',
473
+ rawDest: 'useDrivers',
474
+ ref: 'appium.json#/properties/server/properties/use-drivers'
475
+ },
476
+ schema: {
477
+ appiumCliDescription: 'A list of drivers to activate. Can be a comma-delimited string or path to CSV file. By default, all installed drivers will be activated.',
478
+ default: [],
479
+ description: 'A list of drivers to activate. By default, all installed drivers will be activated.',
480
+ items: {
481
+ type: 'string'
482
+ },
483
+ title: 'use-drivers config',
484
+ type: 'array',
485
+ uniqueItems: true
486
+ }
487
+ }, {
488
+ argSpec: {
489
+ arg: 'use-plugins',
490
+ defaultValue: [],
491
+ dest: 'usePlugins',
492
+ extName: undefined,
493
+ extType: undefined,
494
+ name: 'use-plugins',
495
+ rawDest: 'usePlugins',
496
+ ref: 'appium.json#/properties/server/properties/use-plugins'
497
+ },
498
+ schema: {
499
+ appiumCliDescription: 'A list of plugins to activate. Can be a comma-delimited string, path to CSV file, or the string "all" to use all installed plugins.',
500
+ default: [],
501
+ description: 'A list of plugins to activate. To activate all plugins, the value should be an array with a single item "all".',
502
+ items: {
503
+ type: 'string'
504
+ },
505
+ title: 'use-plugins config',
506
+ type: 'array',
507
+ uniqueItems: true
508
+ }
509
+ }, {
510
+ argSpec: {
511
+ arg: 'webhook',
512
+ defaultValue: undefined,
513
+ dest: 'webhook',
514
+ extName: undefined,
515
+ extType: undefined,
516
+ name: 'webhook',
517
+ rawDest: 'webhook',
518
+ ref: 'appium.json#/properties/server/properties/webhook'
519
+ },
520
+ schema: {
521
+ $comment: 'This should probably use a uri-template format to restrict the protocol to http/https',
522
+ appiumCliAliases: ['G'],
523
+ description: 'Also send log output to this http listener',
524
+ format: 'uri',
525
+ title: 'webhook config',
526
+ type: 'string'
527
+ }
528
+ }];
529
+ exports.default = _default;require('source-map-support').install();
530
+
531
+
532
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvZml4dHVyZXMvZmxhdHRlbmVkLXNjaGVtYS5qcyJdLCJuYW1lcyI6WyJhcmdTcGVjIiwiYXJnIiwiZGVmYXVsdFZhbHVlIiwiZGVzdCIsImV4dE5hbWUiLCJ1bmRlZmluZWQiLCJleHRUeXBlIiwibmFtZSIsInJhd0Rlc3QiLCJyZWYiLCJzY2hlbWEiLCIkY29tbWVudCIsImFwcGl1bUNsaUFsaWFzZXMiLCJkZWZhdWx0IiwiZGVzY3JpcHRpb24iLCJmb3JtYXQiLCJ0aXRsZSIsInR5cGUiLCJhcHBpdW1DbGlUcmFuc2Zvcm1lciIsIml0ZW1zIiwidW5pcXVlSXRlbXMiLCJtYXhpbXVtIiwibWluaW11bSIsImFwcGl1bUNsaURlc3QiLCJlbnVtIiwiYXBwaXVtQ2xpRGVzY3JpcHRpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztlQUFlLENBQ2I7QUFDRUEsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxTQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRSxTQUZQO0FBR1BDLElBQUFBLElBQUksRUFBRSxTQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLFNBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLFNBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkMsSUFBQUEsUUFBUSxFQUFFLDREQURKO0FBRU5DLElBQUFBLGdCQUFnQixFQUFFLENBQUMsR0FBRCxDQUZaO0FBR05DLElBQUFBLE9BQU8sRUFBRSxTQUhIO0FBSU5DLElBQUFBLFdBQVcsRUFBRSx5QkFKUDtBQUtOQyxJQUFBQSxNQUFNLEVBQUUsVUFMRjtBQU1OQyxJQUFBQSxLQUFLLEVBQUUsZ0JBTkQ7QUFPTkMsSUFBQUEsSUFBSSxFQUFFO0FBUEE7QUFYVixDQURhLEVBc0JiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLFlBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEtBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLFdBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsWUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsV0FQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORyxJQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxJQUFBQSxXQUFXLEVBQ1QsOEVBSEk7QUFJTkUsSUFBQUEsS0FBSyxFQUFFLG1CQUpEO0FBS05DLElBQUFBLElBQUksRUFBRTtBQUxBO0FBWFYsQ0F0QmEsRUF5Q2I7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsZ0JBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEVBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGVBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsZ0JBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLGVBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTlEsSUFBQUEsb0JBQW9CLEVBQUUsS0FEaEI7QUFFTkwsSUFBQUEsT0FBTyxFQUFFLEVBRkg7QUFHTkMsSUFBQUEsV0FBVyxFQUNULGlVQUpJO0FBS05LLElBQUFBLEtBQUssRUFBRTtBQUFDRixNQUFBQSxJQUFJLEVBQUU7QUFBUCxLQUxEO0FBTU5ELElBQUFBLEtBQUssRUFBRSx1QkFORDtBQU9OQyxJQUFBQSxJQUFJLEVBQUUsT0FQQTtBQVFORyxJQUFBQSxXQUFXLEVBQUU7QUFSUDtBQVhWLENBekNhLEVBK0RiO0FBQ0VwQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLFdBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEVBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLFVBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsV0FOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsVUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORSxJQUFBQSxnQkFBZ0IsRUFBRSxDQUFDLElBQUQsQ0FEWjtBQUVOQyxJQUFBQSxPQUFPLEVBQUUsRUFGSDtBQUdOQyxJQUFBQSxXQUFXLEVBQ1QsK0VBSkk7QUFLTkUsSUFBQUEsS0FBSyxFQUFFLGtCQUxEO0FBTU5DLElBQUFBLElBQUksRUFBRTtBQU5BO0FBWFYsQ0EvRGEsRUFtRmI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsa0JBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFRyxTQUZQO0FBR1BGLElBQUFBLElBQUksRUFBRSxpQkFIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxrQkFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsaUJBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkUsSUFBQUEsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFELENBRFo7QUFFTkUsSUFBQUEsV0FBVyxFQUFFLGtEQUZQO0FBR05FLElBQUFBLEtBQUssRUFBRSx5QkFIRDtBQUlOQyxJQUFBQSxJQUFJLEVBQUU7QUFKQTtBQVhWLENBbkZhLEVBcUdiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGVBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLElBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGNBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsZUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsY0FQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORSxJQUFBQSxnQkFBZ0IsRUFBRSxDQUFDLElBQUQsQ0FEWjtBQUVOQyxJQUFBQSxPQUFPLEVBQUUsSUFGSDtBQUdOQyxJQUFBQSxXQUFXLEVBQUUseUNBSFA7QUFJTk8sSUFBQUEsT0FBTyxFQUFFLEtBSkg7QUFLTkMsSUFBQUEsT0FBTyxFQUFFLENBTEg7QUFNTk4sSUFBQUEsS0FBSyxFQUFFLHNCQU5EO0FBT05DLElBQUFBLElBQUksRUFBRTtBQVBBO0FBWFYsQ0FyR2EsRUEwSGI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsbUJBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEtBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGlCQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLG1CQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxpQkFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORyxJQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxJQUFBQSxXQUFXLEVBQ1QsZ0VBSEk7QUFJTkUsSUFBQUEsS0FBSyxFQUFFLDBCQUpEO0FBS05DLElBQUFBLElBQUksRUFBRTtBQUxBO0FBWFYsQ0ExSGEsRUE2SWI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsc0JBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFRyxTQUZQO0FBR1BGLElBQUFBLElBQUksRUFBRSxxQkFIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxzQkFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUscUJBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkMsSUFBQUEsUUFBUSxFQUFFLE1BREo7QUFFTkMsSUFBQUEsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFELENBRlo7QUFHTkUsSUFBQUEsV0FBVyxFQUNULGtNQUpJO0FBS05FLElBQUFBLEtBQUssRUFBRSw2QkFMRDtBQU1OQyxJQUFBQSxJQUFJLEVBQUU7QUFOQTtBQVhWLENBN0lhLEVBaUtiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGVBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEVBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGNBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsZUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsY0FQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNOQyxJQUFBQSxRQUFRLEVBQUUsdUNBREo7QUFFTk8sSUFBQUEsb0JBQW9CLEVBQUUsS0FGaEI7QUFHTkwsSUFBQUEsT0FBTyxFQUFFLEVBSEg7QUFJTkMsSUFBQUEsV0FBVyxFQUNULHVXQUxJO0FBTU5LLElBQUFBLEtBQUssRUFBRTtBQUFDRixNQUFBQSxJQUFJLEVBQUU7QUFBUCxLQU5EO0FBT05ELElBQUFBLEtBQUssRUFBRSxzQkFQRDtBQVFOQyxJQUFBQSxJQUFJLEVBQUUsT0FSQTtBQVNORyxJQUFBQSxXQUFXLEVBQUU7QUFUUDtBQVhWLENBakthLEVBd0xiO0FBQ0VwQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLG9CQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRSxHQUZQO0FBR1BDLElBQUFBLElBQUksRUFBRSxrQkFIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxvQkFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsa0JBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkUsSUFBQUEsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFELENBRFo7QUFFTkMsSUFBQUEsT0FBTyxFQUFFLEdBRkg7QUFHTkMsSUFBQUEsV0FBVyxFQUNULGlLQUpJO0FBS05RLElBQUFBLE9BQU8sRUFBRSxDQUxIO0FBTU5OLElBQUFBLEtBQUssRUFBRSwyQkFORDtBQU9OQyxJQUFBQSxJQUFJLEVBQUU7QUFQQTtBQVhWLENBeExhLEVBNk1iO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGdCQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRSxLQUZQO0FBR1BDLElBQUFBLElBQUksRUFBRSxlQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLGdCQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxlQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05HLElBQUFBLE9BQU8sRUFBRSxLQURIO0FBRU5DLElBQUFBLFdBQVcsRUFBRSxtQ0FGUDtBQUdORSxJQUFBQSxLQUFLLEVBQUUsdUJBSEQ7QUFJTkMsSUFBQUEsSUFBSSxFQUFFO0FBSkE7QUFYVixDQTdNYSxFQStOYjtBQUNFakIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxLQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRUcsU0FGUDtBQUdQRixJQUFBQSxJQUFJLEVBQUUsU0FIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxLQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxTQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05FLElBQUFBLGdCQUFnQixFQUFFLENBQUMsR0FBRCxDQURaO0FBRU5XLElBQUFBLGFBQWEsRUFBRSxTQUZUO0FBR05ULElBQUFBLFdBQVcsRUFBRSxtQ0FIUDtBQUlORSxJQUFBQSxLQUFLLEVBQUUsWUFKRDtBQUtOQyxJQUFBQSxJQUFJLEVBQUU7QUFMQTtBQVhWLENBL05hLEVBa1BiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGFBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFRyxTQUZQO0FBR1BGLElBQUFBLElBQUksRUFBRSxZQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLGFBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLFlBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkMsSUFBQUEsUUFBUSxFQUFFLE1BREo7QUFFTkcsSUFBQUEsV0FBVyxFQUFFLGlDQUZQO0FBR05LLElBQUFBLEtBQUssRUFBRTtBQUFDRixNQUFBQSxJQUFJLEVBQUU7QUFBUCxLQUhEO0FBSU5ELElBQUFBLEtBQUssRUFBRSxvQkFKRDtBQUtOQyxJQUFBQSxJQUFJLEVBQUU7QUFMQTtBQVhWLENBbFBhLEVBcVFiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLFdBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLE9BRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLFVBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsV0FOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsVUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNOYSxJQUFBQSxhQUFhLEVBQUUsVUFEVDtBQUVOVixJQUFBQSxPQUFPLEVBQUUsT0FGSDtBQUdOQyxJQUFBQSxXQUFXLEVBQUUsNEJBSFA7QUFJTlUsSUFBQUEsSUFBSSxFQUFFLENBQ0osTUFESSxFQUVKLFlBRkksRUFHSixXQUhJLEVBSUosV0FKSSxFQUtKLFlBTEksRUFNSixNQU5JLEVBT0osWUFQSSxFQVFKLFdBUkksRUFTSixXQVRJLEVBVUosWUFWSSxFQVdKLE9BWEksRUFZSixhQVpJLEVBYUosWUFiSSxFQWNKLFlBZEksRUFlSixhQWZJLEVBZ0JKLE9BaEJJLEVBaUJKLGFBakJJLEVBa0JKLFlBbEJJLEVBbUJKLFlBbkJJLEVBb0JKLGFBcEJJLENBSkE7QUEwQk5SLElBQUFBLEtBQUssRUFBRSxrQkExQkQ7QUEyQk5DLElBQUFBLElBQUksRUFBRTtBQTNCQTtBQVhWLENBclFhLEVBOFNiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGVBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEtBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGFBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsZUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsYUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORyxJQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxJQUFBQSxXQUFXLEVBQUUsb0NBRlA7QUFHTkUsSUFBQUEsS0FBSyxFQUFFLHNCQUhEO0FBSU5DLElBQUFBLElBQUksRUFBRTtBQUpBO0FBWFYsQ0E5U2EsRUFnVWI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsZUFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUUsS0FGUDtBQUdQQyxJQUFBQSxJQUFJLEVBQUUsY0FIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxlQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxjQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05HLElBQUFBLE9BQU8sRUFBRSxLQURIO0FBRU5DLElBQUFBLFdBQVcsRUFBRSxtQ0FGUDtBQUdORSxJQUFBQSxLQUFLLEVBQUUsc0JBSEQ7QUFJTkMsSUFBQUEsSUFBSSxFQUFFO0FBSkE7QUFYVixDQWhVYSxFQWtWYjtBQUNFakIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxpQkFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUUsS0FGUDtBQUdQQyxJQUFBQSxJQUFJLEVBQUUsZ0JBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsaUJBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLGdCQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05HLElBQUFBLE9BQU8sRUFBRSxLQURIO0FBRU5DLElBQUFBLFdBQVcsRUFDVCx1RUFISTtBQUlORSxJQUFBQSxLQUFLLEVBQUUsd0JBSkQ7QUFLTkMsSUFBQUEsSUFBSSxFQUFFO0FBTEE7QUFYVixDQWxWYSxFQXFXYjtBQUNFakIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxnQkFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUUsS0FGUDtBQUdQQyxJQUFBQSxJQUFJLEVBQUUsY0FIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxnQkFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsY0FQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORyxJQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxJQUFBQSxXQUFXLEVBQ1QsNkRBSEk7QUFJTkUsSUFBQUEsS0FBSyxFQUFFLHVCQUpEO0FBS05DLElBQUFBLElBQUksRUFBRTtBQUxBO0FBWFYsQ0FyV2EsRUF3WGI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsWUFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUVHLFNBRlA7QUFHUEYsSUFBQUEsSUFBSSxFQUFFLFlBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsWUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsWUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNOQyxJQUFBQSxRQUFRLEVBQ04sbUZBRkk7QUFHTkcsSUFBQUEsV0FBVyxFQUNULHVIQUpJO0FBS05FLElBQUFBLEtBQUssRUFBRSxtQkFMRDtBQU1OQyxJQUFBQSxJQUFJLEVBQUU7QUFOQTtBQVhWLENBeFhhLEVBNFliO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLE1BREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLElBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLE1BSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsTUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsTUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORSxJQUFBQSxnQkFBZ0IsRUFBRSxDQUFDLEdBQUQsQ0FEWjtBQUVOQyxJQUFBQSxPQUFPLEVBQUUsSUFGSDtBQUdOQyxJQUFBQSxXQUFXLEVBQUUsbUJBSFA7QUFJTk8sSUFBQUEsT0FBTyxFQUFFLEtBSkg7QUFLTkMsSUFBQUEsT0FBTyxFQUFFLENBTEg7QUFNTk4sSUFBQUEsS0FBSyxFQUFFLGFBTkQ7QUFPTkMsSUFBQUEsSUFBSSxFQUFFO0FBUEE7QUFYVixDQTVZYSxFQWlhYjtBQUNFakIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxrQkFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUUsS0FGUDtBQUdQQyxJQUFBQSxJQUFJLEVBQUUsd0JBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsa0JBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLHdCQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05hLElBQUFBLGFBQWEsRUFBRSx3QkFEVDtBQUVOVixJQUFBQSxPQUFPLEVBQUUsS0FGSDtBQUdOQyxJQUFBQSxXQUFXLEVBQ1QsbVZBSkk7QUFLTkUsSUFBQUEsS0FBSyxFQUFFLHlCQUxEO0FBTU5DLElBQUFBLElBQUksRUFBRTtBQU5BO0FBWFYsQ0FqYWEsRUFxYmI7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsa0JBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEtBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLGlCQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLGtCQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxpQkFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNORyxJQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxJQUFBQSxXQUFXLEVBQUUsdUNBRlA7QUFHTkUsSUFBQUEsS0FBSyxFQUFFLHlCQUhEO0FBSU5DLElBQUFBLElBQUksRUFBRTtBQUpBO0FBWFYsQ0FyYmEsRUF1Y2I7QUFDRWpCLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxHQUFHLEVBQUUsYUFERTtBQUVQQyxJQUFBQSxZQUFZLEVBQUUsS0FGUDtBQUdQQyxJQUFBQSxJQUFJLEVBQUUsWUFIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxhQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxZQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05HLElBQUFBLE9BQU8sRUFBRSxLQURIO0FBRU5DLElBQUFBLFdBQVcsRUFDVCxvSEFISTtBQUlORSxJQUFBQSxLQUFLLEVBQUUsb0JBSkQ7QUFLTkMsSUFBQUEsSUFBSSxFQUFFO0FBTEE7QUFYVixDQXZjYSxFQTBkYjtBQUNFakIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxLQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRUcsU0FGUDtBQUdQRixJQUFBQSxJQUFJLEVBQUUsUUFIQztBQUlQQyxJQUFBQSxPQUFPLEVBQUVDLFNBSkY7QUFLUEMsSUFBQUEsT0FBTyxFQUFFRCxTQUxGO0FBTVBFLElBQUFBLElBQUksRUFBRSxLQU5DO0FBT1BDLElBQUFBLE9BQU8sRUFBRSxRQVBGO0FBUVBDLElBQUFBLEdBQUcsRUFBRTtBQVJFLEdBRFg7QUFXRUMsRUFBQUEsTUFBTSxFQUFFO0FBQ05hLElBQUFBLGFBQWEsRUFBRSxRQURUO0FBRU5ULElBQUFBLFdBQVcsRUFDVCw4SEFISTtBQUlORSxJQUFBQSxLQUFLLEVBQUUsWUFKRDtBQUtOQyxJQUFBQSxJQUFJLEVBQUU7QUFMQTtBQVhWLENBMWRhLEVBNmViO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLFdBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFRyxTQUZQO0FBR1BGLElBQUFBLElBQUksRUFBRSxVQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLFdBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLFVBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkksSUFBQUEsV0FBVyxFQUNULCtHQUZJO0FBR05FLElBQUFBLEtBQUssRUFBRSxrQkFIRDtBQUlOQyxJQUFBQSxJQUFJLEVBQUU7QUFKQTtBQVhWLENBN2VhLEVBK2ZiO0FBQ0VqQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLGFBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFLEVBRlA7QUFHUEMsSUFBQUEsSUFBSSxFQUFFLFlBSEM7QUFJUEMsSUFBQUEsT0FBTyxFQUFFQyxTQUpGO0FBS1BDLElBQUFBLE9BQU8sRUFBRUQsU0FMRjtBQU1QRSxJQUFBQSxJQUFJLEVBQUUsYUFOQztBQU9QQyxJQUFBQSxPQUFPLEVBQUUsWUFQRjtBQVFQQyxJQUFBQSxHQUFHLEVBQUU7QUFSRSxHQURYO0FBV0VDLEVBQUFBLE1BQU0sRUFBRTtBQUNOZSxJQUFBQSxvQkFBb0IsRUFDbEIsMElBRkk7QUFHTlosSUFBQUEsT0FBTyxFQUFFLEVBSEg7QUFJTkMsSUFBQUEsV0FBVyxFQUNULHFGQUxJO0FBTU5LLElBQUFBLEtBQUssRUFBRTtBQUFDRixNQUFBQSxJQUFJLEVBQUU7QUFBUCxLQU5EO0FBT05ELElBQUFBLEtBQUssRUFBRSxvQkFQRDtBQVFOQyxJQUFBQSxJQUFJLEVBQUUsT0FSQTtBQVNORyxJQUFBQSxXQUFXLEVBQUU7QUFUUDtBQVhWLENBL2ZhLEVBc2hCYjtBQUNFcEIsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLEdBQUcsRUFBRSxhQURFO0FBRVBDLElBQUFBLFlBQVksRUFBRSxFQUZQO0FBR1BDLElBQUFBLElBQUksRUFBRSxZQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLGFBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLFlBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTmUsSUFBQUEsb0JBQW9CLEVBQ2xCLHFJQUZJO0FBR05aLElBQUFBLE9BQU8sRUFBRSxFQUhIO0FBSU5DLElBQUFBLFdBQVcsRUFDVCxnSEFMSTtBQU1OSyxJQUFBQSxLQUFLLEVBQUU7QUFBQ0YsTUFBQUEsSUFBSSxFQUFFO0FBQVAsS0FORDtBQU9ORCxJQUFBQSxLQUFLLEVBQUUsb0JBUEQ7QUFRTkMsSUFBQUEsSUFBSSxFQUFFLE9BUkE7QUFTTkcsSUFBQUEsV0FBVyxFQUFFO0FBVFA7QUFYVixDQXRoQmEsRUE2aUJiO0FBQ0VwQixFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsR0FBRyxFQUFFLFNBREU7QUFFUEMsSUFBQUEsWUFBWSxFQUFFRyxTQUZQO0FBR1BGLElBQUFBLElBQUksRUFBRSxTQUhDO0FBSVBDLElBQUFBLE9BQU8sRUFBRUMsU0FKRjtBQUtQQyxJQUFBQSxPQUFPLEVBQUVELFNBTEY7QUFNUEUsSUFBQUEsSUFBSSxFQUFFLFNBTkM7QUFPUEMsSUFBQUEsT0FBTyxFQUFFLFNBUEY7QUFRUEMsSUFBQUEsR0FBRyxFQUFFO0FBUkUsR0FEWDtBQVdFQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkMsSUFBQUEsUUFBUSxFQUNOLHVGQUZJO0FBR05DLElBQUFBLGdCQUFnQixFQUFFLENBQUMsR0FBRCxDQUhaO0FBSU5FLElBQUFBLFdBQVcsRUFBRSw0Q0FKUDtBQUtOQyxJQUFBQSxNQUFNLEVBQUUsS0FMRjtBQU1OQyxJQUFBQSxLQUFLLEVBQUUsZ0JBTkQ7QUFPTkMsSUFBQUEsSUFBSSxFQUFFO0FBUEE7QUFYVixDQTdpQmEsQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IFtcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ2FkZHJlc3MnLFxuICAgICAgZGVmYXVsdFZhbHVlOiAnMC4wLjAuMCcsXG4gICAgICBkZXN0OiAnYWRkcmVzcycsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnYWRkcmVzcycsXG4gICAgICByYXdEZXN0OiAnYWRkcmVzcycsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9hZGRyZXNzJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgJGNvbW1lbnQ6ICdJIHRoaW5rIGhvc3RuYW1lIGNvdmVycyBib3RoIEROUyBhbmQgSVB2NC4uLmNvdWxkIGJlIHdyb25nJyxcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsnYSddLFxuICAgICAgZGVmYXVsdDogJzAuMC4wLjAnLFxuICAgICAgZGVzY3JpcHRpb246ICdJUCBhZGRyZXNzIHRvIGxpc3RlbiBvbicsXG4gICAgICBmb3JtYXQ6ICdob3N0bmFtZScsXG4gICAgICB0aXRsZTogJ2FkZHJlc3MgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdhbGxvdy1jb3JzJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICBkZXN0OiAnYWxsb3dDb3JzJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdhbGxvdy1jb3JzJyxcbiAgICAgIHJhd0Rlc3Q6ICdhbGxvd0NvcnMnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvYWxsb3ctY29ycycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdXaGV0aGVyIHRoZSBBcHBpdW0gc2VydmVyIHNob3VsZCBhbGxvdyB3ZWIgYnJvd3NlciBjb25uZWN0aW9ucyBmcm9tIGFueSBob3N0JyxcbiAgICAgIHRpdGxlOiAnYWxsb3ctY29ycyBjb25maWcnLFxuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdhbGxvdy1pbnNlY3VyZScsXG4gICAgICBkZWZhdWx0VmFsdWU6IFtdLFxuICAgICAgZGVzdDogJ2FsbG93SW5zZWN1cmUnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ2FsbG93LWluc2VjdXJlJyxcbiAgICAgIHJhd0Rlc3Q6ICdhbGxvd0luc2VjdXJlJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2FsbG93LWluc2VjdXJlJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgYXBwaXVtQ2xpVHJhbnNmb3JtZXI6ICdjc3YnLFxuICAgICAgZGVmYXVsdDogW10sXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ1NldCB3aGljaCBpbnNlY3VyZSBmZWF0dXJlcyBhcmUgYWxsb3dlZCB0byBydW4gaW4gdGhpcyBzZXJ2ZXJcXCdzIHNlc3Npb25zLiBGZWF0dXJlcyBhcmUgZGVmaW5lZCBvbiBhIGRyaXZlciBsZXZlbDsgc2VlIGRvY3VtZW50YXRpb24gZm9yIG1vcmUgZGV0YWlscy4gTm90ZSB0aGF0IGZlYXR1cmVzIGRlZmluZWQgdmlhIFwiZGVueS1pbnNlY3VyZVwiIHdpbGwgYmUgZGlzYWJsZWQsIGV2ZW4gaWYgYWxzbyBsaXN0ZWQgaGVyZS4gSWYgc3RyaW5nLCBhIHBhdGggdG8gYSB0ZXh0IGZpbGUgY29udGFpbmluZyBwb2xpY3kgb3IgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdC4nLFxuICAgICAgaXRlbXM6IHt0eXBlOiAnc3RyaW5nJ30sXG4gICAgICB0aXRsZTogJ2FsbG93LWluc2VjdXJlIGNvbmZpZycsXG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgdW5pcXVlSXRlbXM6IHRydWUsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ2Jhc2UtcGF0aCcsXG4gICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgZGVzdDogJ2Jhc2VQYXRoJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdiYXNlLXBhdGgnLFxuICAgICAgcmF3RGVzdDogJ2Jhc2VQYXRoJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2Jhc2UtcGF0aCcsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsncGEnXSxcbiAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdCYXNlIHBhdGggdG8gdXNlIGFzIHRoZSBwcmVmaXggZm9yIGFsbCB3ZWJkcml2ZXIgcm91dGVzIHJ1bm5pbmcgb24gdGhlIHNlcnZlcicsXG4gICAgICB0aXRsZTogJ2Jhc2UtcGF0aCBjb25maWcnLFxuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ2NhbGxiYWNrLWFkZHJlc3MnLFxuICAgICAgZGVmYXVsdFZhbHVlOiB1bmRlZmluZWQsXG4gICAgICBkZXN0OiAnY2FsbGJhY2tBZGRyZXNzJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdjYWxsYmFjay1hZGRyZXNzJyxcbiAgICAgIHJhd0Rlc3Q6ICdjYWxsYmFja0FkZHJlc3MnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvY2FsbGJhY2stYWRkcmVzcycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsnY2EnXSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQ2FsbGJhY2sgSVAgYWRkcmVzcyAoZGVmYXVsdDogc2FtZSBhcyBcImFkZHJlc3NcIiknLFxuICAgICAgdGl0bGU6ICdjYWxsYmFjay1hZGRyZXNzIGNvbmZpZycsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAnY2FsbGJhY2stcG9ydCcsXG4gICAgICBkZWZhdWx0VmFsdWU6IDQ3MjMsXG4gICAgICBkZXN0OiAnY2FsbGJhY2tQb3J0JyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdjYWxsYmFjay1wb3J0JyxcbiAgICAgIHJhd0Rlc3Q6ICdjYWxsYmFja1BvcnQnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvY2FsbGJhY2stcG9ydCcsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsnY3AnXSxcbiAgICAgIGRlZmF1bHQ6IDQ3MjMsXG4gICAgICBkZXNjcmlwdGlvbjogJ0NhbGxiYWNrIHBvcnQgKGRlZmF1bHQ6IHNhbWUgYXMgXCJwb3J0XCIpJyxcbiAgICAgIG1heGltdW06IDY1NTM1LFxuICAgICAgbWluaW11bTogMSxcbiAgICAgIHRpdGxlOiAnY2FsbGJhY2stcG9ydCBjb25maWcnLFxuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdkZWJ1Zy1sb2ctc3BhY2luZycsXG4gICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgICAgZGVzdDogJ2RlYnVnTG9nU3BhY2luZycsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnZGVidWctbG9nLXNwYWNpbmcnLFxuICAgICAgcmF3RGVzdDogJ2RlYnVnTG9nU3BhY2luZycsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9kZWJ1Zy1sb2ctc3BhY2luZycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdBZGQgZXhhZ2dlcmF0ZWQgc3BhY2luZyBpbiBsb2dzIHRvIGhlbHAgd2l0aCB2aXN1YWwgaW5zcGVjdGlvbicsXG4gICAgICB0aXRsZTogJ2RlYnVnLWxvZy1zcGFjaW5nIGNvbmZpZycsXG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ2RlZmF1bHQtY2FwYWJpbGl0aWVzJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogdW5kZWZpbmVkLFxuICAgICAgZGVzdDogJ2RlZmF1bHRDYXBhYmlsaXRpZXMnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ2RlZmF1bHQtY2FwYWJpbGl0aWVzJyxcbiAgICAgIHJhd0Rlc3Q6ICdkZWZhdWx0Q2FwYWJpbGl0aWVzJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2RlZmF1bHQtY2FwYWJpbGl0aWVzJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgJGNvbW1lbnQ6ICdUT0RPJyxcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsnZGMnXSxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnU2V0IHRoZSBkZWZhdWx0IGRlc2lyZWQgY2FwYWJpbGl0aWVzLCB3aGljaCB3aWxsIGJlIHNldCBvbiBlYWNoIHNlc3Npb24gdW5sZXNzIG92ZXJyaWRkZW4gYnkgcmVjZWl2ZWQgY2FwYWJpbGl0aWVzLiBJZiBhIHN0cmluZywgYSBwYXRoIHRvIGEgSlNPTiBmaWxlIGNvbnRhaW5pbmcgdGhlIGNhcGFiaWxpdGllcywgb3IgcmF3IEpTT04uJyxcbiAgICAgIHRpdGxlOiAnZGVmYXVsdC1jYXBhYmlsaXRpZXMgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdkZW55LWluc2VjdXJlJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogW10sXG4gICAgICBkZXN0OiAnZGVueUluc2VjdXJlJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdkZW55LWluc2VjdXJlJyxcbiAgICAgIHJhd0Rlc3Q6ICdkZW55SW5zZWN1cmUnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvZGVueS1pbnNlY3VyZScsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgICRjb21tZW50OiAnQWxsb3dlZCB2YWx1ZXMgYXJlIGRlZmluZWQgYnkgZHJpdmVycycsXG4gICAgICBhcHBpdW1DbGlUcmFuc2Zvcm1lcjogJ2NzdicsXG4gICAgICBkZWZhdWx0OiBbXSxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnU2V0IHdoaWNoIGluc2VjdXJlIGZlYXR1cmVzIGFyZSBub3QgYWxsb3dlZCB0byBydW4gaW4gdGhpcyBzZXJ2ZXJcXCdzIHNlc3Npb25zLiBGZWF0dXJlcyBhcmUgZGVmaW5lZCBvbiBhIGRyaXZlciBsZXZlbDsgc2VlIGRvY3VtZW50YXRpb24gZm9yIG1vcmUgZGV0YWlscy4gRmVhdHVyZXMgbGlzdGVkIGhlcmUgd2lsbCBub3QgYmUgZW5hYmxlZCBldmVuIGlmIGFsc28gbGlzdGVkIGluIFwiYWxsb3ctaW5zZWN1cmVcIiwgYW5kIGV2ZW4gaWYgXCJyZWxheGVkLXNlY3VyaXR5XCIgaXMgZW5hYmxlZC4gSWYgc3RyaW5nLCBhIHBhdGggdG8gYSB0ZXh0IGZpbGUgY29udGFpbmluZyBwb2xpY3kgb3IgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdC4nLFxuICAgICAgaXRlbXM6IHt0eXBlOiAnc3RyaW5nJ30sXG4gICAgICB0aXRsZTogJ2RlbnktaW5zZWN1cmUgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICB1bmlxdWVJdGVtczogdHJ1ZSxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAna2VlcC1hbGl2ZS10aW1lb3V0JyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogNjAwLFxuICAgICAgZGVzdDogJ2tlZXBBbGl2ZVRpbWVvdXQnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ2tlZXAtYWxpdmUtdGltZW91dCcsXG4gICAgICByYXdEZXN0OiAna2VlcEFsaXZlVGltZW91dCcsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9rZWVwLWFsaXZlLXRpbWVvdXQnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBhcHBpdW1DbGlBbGlhc2VzOiBbJ2thJ10sXG4gICAgICBkZWZhdWx0OiA2MDAsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ051bWJlciBvZiBzZWNvbmRzIHRoZSBBcHBpdW0gc2VydmVyIHNob3VsZCBhcHBseSBhcyBib3RoIHRoZSBrZWVwLWFsaXZlIHRpbWVvdXQgYW5kIHRoZSBjb25uZWN0aW9uIHRpbWVvdXQgZm9yIGFsbCByZXF1ZXN0cy4gQSB2YWx1ZSBvZiAwIGRpc2FibGVzIHRoZSB0aW1lb3V0LicsXG4gICAgICBtaW5pbXVtOiAwLFxuICAgICAgdGl0bGU6ICdrZWVwLWFsaXZlLXRpbWVvdXQgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAnbG9jYWwtdGltZXpvbmUnLFxuICAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAgIGRlc3Q6ICdsb2NhbFRpbWV6b25lJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdsb2NhbC10aW1lem9uZScsXG4gICAgICByYXdEZXN0OiAnbG9jYWxUaW1lem9uZScsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9sb2NhbC10aW1lem9uZScsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgZGVzY3JpcHRpb246ICdVc2UgbG9jYWwgdGltZXpvbmUgZm9yIHRpbWVzdGFtcHMnLFxuICAgICAgdGl0bGU6ICdsb2NhbC10aW1lem9uZSBjb25maWcnLFxuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdsb2cnLFxuICAgICAgZGVmYXVsdFZhbHVlOiB1bmRlZmluZWQsXG4gICAgICBkZXN0OiAnbG9nRmlsZScsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnbG9nJyxcbiAgICAgIHJhd0Rlc3Q6ICdsb2dGaWxlJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2xvZycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGFwcGl1bUNsaUFsaWFzZXM6IFsnZyddLFxuICAgICAgYXBwaXVtQ2xpRGVzdDogJ2xvZ0ZpbGUnLFxuICAgICAgZGVzY3JpcHRpb246ICdBbHNvIHNlbmQgbG9nIG91dHB1dCB0byB0aGlzIGZpbGUnLFxuICAgICAgdGl0bGU6ICdsb2cgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdsb2ctZmlsdGVycycsXG4gICAgICBkZWZhdWx0VmFsdWU6IHVuZGVmaW5lZCxcbiAgICAgIGRlc3Q6ICdsb2dGaWx0ZXJzJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdsb2ctZmlsdGVycycsXG4gICAgICByYXdEZXN0OiAnbG9nRmlsdGVycycsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9sb2ctZmlsdGVycycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgICRjb21tZW50OiAnVE9ETycsXG4gICAgICBkZXNjcmlwdGlvbjogJ09uZSBvciBtb3JlIGxvZyBmaWx0ZXJpbmcgcnVsZXMnLFxuICAgICAgaXRlbXM6IHt0eXBlOiAnc3RyaW5nJ30sXG4gICAgICB0aXRsZTogJ2xvZy1maWx0ZXJzIGNvbmZpZycsXG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdsb2ctbGV2ZWwnLFxuICAgICAgZGVmYXVsdFZhbHVlOiAnZGVidWcnLFxuICAgICAgZGVzdDogJ2xvZ2xldmVsJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdsb2ctbGV2ZWwnLFxuICAgICAgcmF3RGVzdDogJ2xvZ2xldmVsJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2xvZy1sZXZlbCcsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGFwcGl1bUNsaURlc3Q6ICdsb2dsZXZlbCcsXG4gICAgICBkZWZhdWx0OiAnZGVidWcnLFxuICAgICAgZGVzY3JpcHRpb246ICdMb2cgbGV2ZWwgKGNvbnNvbGVbOmZpbGVdKScsXG4gICAgICBlbnVtOiBbXG4gICAgICAgICdpbmZvJyxcbiAgICAgICAgJ2luZm86ZGVidWcnLFxuICAgICAgICAnaW5mbzppbmZvJyxcbiAgICAgICAgJ2luZm86d2FybicsXG4gICAgICAgICdpbmZvOmVycm9yJyxcbiAgICAgICAgJ3dhcm4nLFxuICAgICAgICAnd2FybjpkZWJ1ZycsXG4gICAgICAgICd3YXJuOmluZm8nLFxuICAgICAgICAnd2Fybjp3YXJuJyxcbiAgICAgICAgJ3dhcm46ZXJyb3InLFxuICAgICAgICAnZXJyb3InLFxuICAgICAgICAnZXJyb3I6ZGVidWcnLFxuICAgICAgICAnZXJyb3I6aW5mbycsXG4gICAgICAgICdlcnJvcjp3YXJuJyxcbiAgICAgICAgJ2Vycm9yOmVycm9yJyxcbiAgICAgICAgJ2RlYnVnJyxcbiAgICAgICAgJ2RlYnVnOmRlYnVnJyxcbiAgICAgICAgJ2RlYnVnOmluZm8nLFxuICAgICAgICAnZGVidWc6d2FybicsXG4gICAgICAgICdkZWJ1ZzplcnJvcicsXG4gICAgICBdLFxuICAgICAgdGl0bGU6ICdsb2ctbGV2ZWwgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdsb2ctbm8tY29sb3JzJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICBkZXN0OiAnbG9nTm9Db2xvcnMnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ2xvZy1uby1jb2xvcnMnLFxuICAgICAgcmF3RGVzdDogJ2xvZ05vQ29sb3JzJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2xvZy1uby1jb2xvcnMnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRG8gbm90IHVzZSBjb2xvciBpbiBjb25zb2xlIG91dHB1dCcsXG4gICAgICB0aXRsZTogJ2xvZy1uby1jb2xvcnMgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAnbG9nLXRpbWVzdGFtcCcsXG4gICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgICAgZGVzdDogJ2xvZ1RpbWVzdGFtcCcsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnbG9nLXRpbWVzdGFtcCcsXG4gICAgICByYXdEZXN0OiAnbG9nVGltZXN0YW1wJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL2xvZy10aW1lc3RhbXAnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnU2hvdyB0aW1lc3RhbXBzIGluIGNvbnNvbGUgb3V0cHV0JyxcbiAgICAgIHRpdGxlOiAnbG9nLXRpbWVzdGFtcCBjb25maWcnLFxuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdsb25nLXN0YWNrdHJhY2UnLFxuICAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAgIGRlc3Q6ICdsb25nU3RhY2t0cmFjZScsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnbG9uZy1zdGFja3RyYWNlJyxcbiAgICAgIHJhd0Rlc3Q6ICdsb25nU3RhY2t0cmFjZScsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9sb25nLXN0YWNrdHJhY2UnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnQWRkIGxvbmcgc3RhY2sgdHJhY2VzIHRvIGxvZyBlbnRyaWVzLiBSZWNvbW1lbmRlZCBmb3IgZGVidWdnaW5nIG9ubHkuJyxcbiAgICAgIHRpdGxlOiAnbG9uZy1zdGFja3RyYWNlIGNvbmZpZycsXG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ25vLXBlcm1zLWNoZWNrJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICBkZXN0OiAnbm9QZXJtc0NoZWNrJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICduby1wZXJtcy1jaGVjaycsXG4gICAgICByYXdEZXN0OiAnbm9QZXJtc0NoZWNrJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL25vLXBlcm1zLWNoZWNrJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0RvIG5vdCBjaGVjayB0aGF0IG5lZWRlZCBmaWxlcyBhcmUgcmVhZGFibGUgYW5kL29yIHdyaXRhYmxlJyxcbiAgICAgIHRpdGxlOiAnbm8tcGVybXMtY2hlY2sgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAnbm9kZWNvbmZpZycsXG4gICAgICBkZWZhdWx0VmFsdWU6IHVuZGVmaW5lZCxcbiAgICAgIGRlc3Q6ICdub2RlY29uZmlnJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdub2RlY29uZmlnJyxcbiAgICAgIHJhd0Rlc3Q6ICdub2RlY29uZmlnJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL25vZGVjb25maWcnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICAkY29tbWVudDpcbiAgICAgICAgJ1NlbGVuaXVtIEdyaWQgMyBpcyB1bm1haW50YWluZWQgYW5kIFNlbGVuaXVtIEdyaWQgNCBubyBsb25nZXIgc3VwcG9ydHMgdGhpcyBmaWxlLicsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ1BhdGggdG8gY29uZmlndXJhdGlvbiBKU09OIGZpbGUgdG8gcmVnaXN0ZXIgQXBwaXVtIGFzIGEgbm9kZSB3aXRoIFNlbGVuaXVtIEdyaWQgMzsgb3RoZXJ3aXNlIHRoZSBjb25maWd1cmF0aW9uIGl0c2VsZicsXG4gICAgICB0aXRsZTogJ25vZGVjb25maWcgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdwb3J0JyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogNDcyMyxcbiAgICAgIGRlc3Q6ICdwb3J0JyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICdwb3J0JyxcbiAgICAgIHJhd0Rlc3Q6ICdwb3J0JyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL3BvcnQnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBhcHBpdW1DbGlBbGlhc2VzOiBbJ3AnXSxcbiAgICAgIGRlZmF1bHQ6IDQ3MjMsXG4gICAgICBkZXNjcmlwdGlvbjogJ1BvcnQgdG8gbGlzdGVuIG9uJyxcbiAgICAgIG1heGltdW06IDY1NTM1LFxuICAgICAgbWluaW11bTogMSxcbiAgICAgIHRpdGxlOiAncG9ydCBjb25maWcnLFxuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICdyZWxheGVkLXNlY3VyaXR5JyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICBkZXN0OiAncmVsYXhlZFNlY3VyaXR5RW5hYmxlZCcsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAncmVsYXhlZC1zZWN1cml0eScsXG4gICAgICByYXdEZXN0OiAncmVsYXhlZFNlY3VyaXR5RW5hYmxlZCcsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9yZWxheGVkLXNlY3VyaXR5JyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgYXBwaXVtQ2xpRGVzdDogJ3JlbGF4ZWRTZWN1cml0eUVuYWJsZWQnLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Rpc2FibGUgYWRkaXRpb25hbCBzZWN1cml0eSBjaGVja3MsIHNvIGl0IGlzIHBvc3NpYmxlIHRvIHVzZSBzb21lIGFkdmFuY2VkIGZlYXR1cmVzLCBwcm92aWRlZCBieSBkcml2ZXJzIHN1cHBvcnRpbmcgdGhpcyBvcHRpb24uIE9ubHkgZW5hYmxlIGl0IGlmIGFsbCB0aGUgY2xpZW50cyBhcmUgaW4gdGhlIHRydXN0ZWQgbmV0d29yayBhbmQgaXRcXCdzIG5vdCB0aGUgY2FzZSBpZiBhIGNsaWVudCBjb3VsZCBwb3RlbnRpYWxseSBicmVhayBvdXQgb2YgdGhlIHNlc3Npb24gc2FuZGJveC4gU3BlY2lmaWMgZmVhdHVyZXMgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdXNpbmcgXCJkZW55LWluc2VjdXJlXCInLFxuICAgICAgdGl0bGU6ICdyZWxheGVkLXNlY3VyaXR5IGNvbmZpZycsXG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ3Nlc3Npb24tb3ZlcnJpZGUnLFxuICAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAgIGRlc3Q6ICdzZXNzaW9uT3ZlcnJpZGUnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ3Nlc3Npb24tb3ZlcnJpZGUnLFxuICAgICAgcmF3RGVzdDogJ3Nlc3Npb25PdmVycmlkZScsXG4gICAgICByZWY6ICdhcHBpdW0uanNvbiMvcHJvcGVydGllcy9zZXJ2ZXIvcHJvcGVydGllcy9zZXNzaW9uLW92ZXJyaWRlJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICBkZXNjcmlwdGlvbjogJ0VuYWJsZXMgc2Vzc2lvbiBvdmVycmlkZSAoY2xvYmJlcmluZyknLFxuICAgICAgdGl0bGU6ICdzZXNzaW9uLW92ZXJyaWRlIGNvbmZpZycsXG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ3N0cmljdC1jYXBzJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICBkZXN0OiAnc3RyaWN0Q2FwcycsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAnc3RyaWN0LWNhcHMnLFxuICAgICAgcmF3RGVzdDogJ3N0cmljdENhcHMnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvc3RyaWN0LWNhcHMnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnQ2F1c2Ugc2Vzc2lvbnMgdG8gZmFpbCBpZiBkZXNpcmVkIGNhcHMgYXJlIHNlbnQgaW4gdGhhdCBBcHBpdW0gZG9lcyBub3QgcmVjb2duaXplIGFzIHZhbGlkIGZvciB0aGUgc2VsZWN0ZWQgZGV2aWNlJyxcbiAgICAgIHRpdGxlOiAnc3RyaWN0LWNhcHMgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAndG1wJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogdW5kZWZpbmVkLFxuICAgICAgZGVzdDogJ3RtcERpcicsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAndG1wJyxcbiAgICAgIHJhd0Rlc3Q6ICd0bXBEaXInLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvdG1wJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgYXBwaXVtQ2xpRGVzdDogJ3RtcERpcicsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Fic29sdXRlIHBhdGggdG8gZGlyZWN0b3J5IEFwcGl1bSBjYW4gdXNlIHRvIG1hbmFnZSB0ZW1wIGZpbGVzLiBEZWZhdWx0cyB0byBDOlxcXFxXaW5kb3dzXFxcXFRlbXAgb24gV2luZG93cyBhbmQgL3RtcCBvdGhlcndpc2UuJyxcbiAgICAgIHRpdGxlOiAndG1wIGNvbmZpZycsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgYXJnU3BlYzoge1xuICAgICAgYXJnOiAndHJhY2UtZGlyJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogdW5kZWZpbmVkLFxuICAgICAgZGVzdDogJ3RyYWNlRGlyJyxcbiAgICAgIGV4dE5hbWU6IHVuZGVmaW5lZCxcbiAgICAgIGV4dFR5cGU6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6ICd0cmFjZS1kaXInLFxuICAgICAgcmF3RGVzdDogJ3RyYWNlRGlyJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL3RyYWNlLWRpcicsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnQWJzb2x1dGUgcGF0aCB0byBkaXJlY3RvcnkgQXBwaXVtIGNhbiB1c2UgdG8gc2F2ZSBpT1MgaW5zdHJ1bWVudCB0cmFjZXM7IGRlZmF1bHRzIHRvIDx0bXA+L2FwcGl1bS1pbnN0cnVtZW50cycsXG4gICAgICB0aXRsZTogJ3RyYWNlLWRpciBjb25maWcnLFxuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGFyZ1NwZWM6IHtcbiAgICAgIGFyZzogJ3VzZS1kcml2ZXJzJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogW10sXG4gICAgICBkZXN0OiAndXNlRHJpdmVycycsXG4gICAgICBleHROYW1lOiB1bmRlZmluZWQsXG4gICAgICBleHRUeXBlOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiAndXNlLWRyaXZlcnMnLFxuICAgICAgcmF3RGVzdDogJ3VzZURyaXZlcnMnLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvdXNlLWRyaXZlcnMnLFxuICAgIH0sXG4gICAgc2NoZW1hOiB7XG4gICAgICBhcHBpdW1DbGlEZXNjcmlwdGlvbjpcbiAgICAgICAgJ0EgbGlzdCBvZiBkcml2ZXJzIHRvIGFjdGl2YXRlLiBDYW4gYmUgYSBjb21tYS1kZWxpbWl0ZWQgc3RyaW5nIG9yIHBhdGggdG8gQ1NWIGZpbGUuIEJ5IGRlZmF1bHQsIGFsbCBpbnN0YWxsZWQgZHJpdmVycyB3aWxsIGJlIGFjdGl2YXRlZC4nLFxuICAgICAgZGVmYXVsdDogW10sXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0EgbGlzdCBvZiBkcml2ZXJzIHRvIGFjdGl2YXRlLiBCeSBkZWZhdWx0LCBhbGwgaW5zdGFsbGVkIGRyaXZlcnMgd2lsbCBiZSBhY3RpdmF0ZWQuJyxcbiAgICAgIGl0ZW1zOiB7dHlwZTogJ3N0cmluZyd9LFxuICAgICAgdGl0bGU6ICd1c2UtZHJpdmVycyBjb25maWcnLFxuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICd1c2UtcGx1Z2lucycsXG4gICAgICBkZWZhdWx0VmFsdWU6IFtdLFxuICAgICAgZGVzdDogJ3VzZVBsdWdpbnMnLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ3VzZS1wbHVnaW5zJyxcbiAgICAgIHJhd0Rlc3Q6ICd1c2VQbHVnaW5zJyxcbiAgICAgIHJlZjogJ2FwcGl1bS5qc29uIy9wcm9wZXJ0aWVzL3NlcnZlci9wcm9wZXJ0aWVzL3VzZS1wbHVnaW5zJyxcbiAgICB9LFxuICAgIHNjaGVtYToge1xuICAgICAgYXBwaXVtQ2xpRGVzY3JpcHRpb246XG4gICAgICAgICdBIGxpc3Qgb2YgcGx1Z2lucyB0byBhY3RpdmF0ZS4gQ2FuIGJlIGEgY29tbWEtZGVsaW1pdGVkIHN0cmluZywgcGF0aCB0byBDU1YgZmlsZSwgb3IgdGhlIHN0cmluZyBcImFsbFwiIHRvIHVzZSBhbGwgaW5zdGFsbGVkIHBsdWdpbnMuJyxcbiAgICAgIGRlZmF1bHQ6IFtdLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdBIGxpc3Qgb2YgcGx1Z2lucyB0byBhY3RpdmF0ZS4gVG8gYWN0aXZhdGUgYWxsIHBsdWdpbnMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgYW4gYXJyYXkgd2l0aCBhIHNpbmdsZSBpdGVtIFwiYWxsXCIuJyxcbiAgICAgIGl0ZW1zOiB7dHlwZTogJ3N0cmluZyd9LFxuICAgICAgdGl0bGU6ICd1c2UtcGx1Z2lucyBjb25maWcnLFxuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBhcmdTcGVjOiB7XG4gICAgICBhcmc6ICd3ZWJob29rJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogdW5kZWZpbmVkLFxuICAgICAgZGVzdDogJ3dlYmhvb2snLFxuICAgICAgZXh0TmFtZTogdW5kZWZpbmVkLFxuICAgICAgZXh0VHlwZTogdW5kZWZpbmVkLFxuICAgICAgbmFtZTogJ3dlYmhvb2snLFxuICAgICAgcmF3RGVzdDogJ3dlYmhvb2snLFxuICAgICAgcmVmOiAnYXBwaXVtLmpzb24jL3Byb3BlcnRpZXMvc2VydmVyL3Byb3BlcnRpZXMvd2ViaG9vaycsXG4gICAgfSxcbiAgICBzY2hlbWE6IHtcbiAgICAgICRjb21tZW50OlxuICAgICAgICAnVGhpcyBzaG91bGQgcHJvYmFibHkgdXNlIGEgdXJpLXRlbXBsYXRlIGZvcm1hdCB0byByZXN0cmljdCB0aGUgcHJvdG9jb2wgdG8gaHR0cC9odHRwcycsXG4gICAgICBhcHBpdW1DbGlBbGlhc2VzOiBbJ0cnXSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQWxzbyBzZW5kIGxvZyBvdXRwdXQgdG8gdGhpcyBodHRwIGxpc3RlbmVyJyxcbiAgICAgIGZvcm1hdDogJ3VyaScsXG4gICAgICB0aXRsZTogJ3dlYmhvb2sgY29uZmlnJyxcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gIH1cbl07XG4iXSwiZmlsZSI6InRlc3QvZml4dHVyZXMvZmxhdHRlbmVkLXNjaGVtYS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ require("source-map-support/register");
4
+
5
+ module.exports = {
6
+ type: 'object',
7
+ required: ['answer'],
8
+ properties: {
9
+ answer: {
10
+ type: 'number',
11
+ minimum: 0,
12
+ maximum: 100,
13
+ default: 50,
14
+ description: 'The answer to the Ultimate Question of Life, The Universe, and Everything'
15
+ }
16
+ }
17
+ };require('source-map-support').install();
18
+
19
+
20
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvZml4dHVyZXMvcGx1Z2luLnNjaGVtYS5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwidHlwZSIsInJlcXVpcmVkIiwicHJvcGVydGllcyIsImFuc3dlciIsIm1pbmltdW0iLCJtYXhpbXVtIiwiZGVmYXVsdCIsImRlc2NyaXB0aW9uIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUFBLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQjtBQUNmQyxFQUFBQSxJQUFJLEVBQUUsUUFEUztBQUVmQyxFQUFBQSxRQUFRLEVBQUUsQ0FBQyxRQUFELENBRks7QUFHZkMsRUFBQUEsVUFBVSxFQUFFO0FBQ1ZDLElBQUFBLE1BQU0sRUFBRTtBQUNOSCxNQUFBQSxJQUFJLEVBQUUsUUFEQTtBQUVOSSxNQUFBQSxPQUFPLEVBQUUsQ0FGSDtBQUdOQyxNQUFBQSxPQUFPLEVBQUUsR0FISDtBQUlOQyxNQUFBQSxPQUFPLEVBQUUsRUFKSDtBQUtOQyxNQUFBQSxXQUFXLEVBQ1Q7QUFOSTtBQURFO0FBSEcsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHtcbiAgdHlwZTogJ29iamVjdCcsXG4gIHJlcXVpcmVkOiBbJ2Fuc3dlciddLFxuICBwcm9wZXJ0aWVzOiB7XG4gICAgYW5zd2VyOiB7XG4gICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgIG1pbmltdW06IDAsXG4gICAgICBtYXhpbXVtOiAxMDAsXG4gICAgICBkZWZhdWx0OiA1MCxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnVGhlIGFuc3dlciB0byB0aGUgVWx0aW1hdGUgUXVlc3Rpb24gb2YgTGlmZSwgVGhlIFVuaXZlcnNlLCBhbmQgRXZlcnl0aGluZycsXG4gICAgfSxcbiAgfSxcbn07XG4iXSwiZmlsZSI6InRlc3QvZml4dHVyZXMvcGx1Z2luLnNjaGVtYS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ require("source-map-support/register");
11
+
12
+ var _lodash = _interopRequireDefault(require("lodash"));
13
+
14
+ var _appiumConfigSchema = _interopRequireDefault(require("../../lib/schema/appium-config-schema"));
15
+
16
+ const {
17
+ default: fakeDriverSchema
18
+ } = require('@appium/fake-driver/build/lib/fake-driver-schema');
19
+
20
+ const schema = _lodash.default.cloneDeep(_appiumConfigSchema.default);
21
+
22
+ _lodash.default.set(schema, 'properties.driver.properties.fake', fakeDriverSchema);
23
+
24
+ var _default = schema;
25
+ exports.default = _default;require('source-map-support').install();
26
+
27
+
28
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvZml4dHVyZXMvc2NoZW1hLXdpdGgtZXh0ZW5zaW9ucy5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0IiwiZmFrZURyaXZlclNjaGVtYSIsInJlcXVpcmUiLCJzY2hlbWEiLCJfIiwiY2xvbmVEZWVwIiwiYXBwaXVtQ29uZmlnU2NoZW1hIiwic2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUNBOztBQUNBOztBQUlBLE1BQU07QUFBQ0EsRUFBQUEsT0FBTyxFQUFFQztBQUFWLElBQThCQyxPQUFPLENBQUMsa0RBQUQsQ0FBM0M7O0FBRUEsTUFBTUMsTUFBTSxHQUFHQyxnQkFBRUMsU0FBRixDQUFZQywyQkFBWixDQUFmOztBQUNBRixnQkFBRUcsR0FBRixDQUFNSixNQUFOLEVBQWMsbUNBQWQsRUFBbURGLGdCQUFuRDs7ZUFFZUUsTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRoaXMgZml4dHVyZSBjb21iaW5lcyB0aGUgYmFzZSBjb25maWcgc2NoZW1hIGFuZCB0aGUgZmFrZS1kcml2ZXIgc2NoZW1hLCBhcyB3b3VsZCBoYXBwZW4gaW4gYSByZWFsIHVzZSBjYXNlLlxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBhcHBpdW1Db25maWdTY2hlbWEgZnJvbSAnLi4vLi4vbGliL3NjaGVtYS9hcHBpdW0tY29uZmlnLXNjaGVtYSc7XG5cbi8vIHRoaXMgbXVzdCBiZSBhIGByZXF1aXJlYCBiZWNhdXNlIGJhYmVsIHdpbGwgbm90IGNvbXBpbGUgYG5vZGVfbW9kdWxlc2Bcbi8vIFRPT0Q6IGNvbnNpZGVyIGp1c3QgY29weWluZyB0aGlzIGludG8gZml4dHVyZXMgc28gd2UgY2FuIG1ha2UgaXQgRVNNXG5jb25zdCB7ZGVmYXVsdDogZmFrZURyaXZlclNjaGVtYX0gPSByZXF1aXJlKCdAYXBwaXVtL2Zha2UtZHJpdmVyL2J1aWxkL2xpYi9mYWtlLWRyaXZlci1zY2hlbWEnKTtcblxuY29uc3Qgc2NoZW1hID0gXy5jbG9uZURlZXAoYXBwaXVtQ29uZmlnU2NoZW1hKTtcbl8uc2V0KHNjaGVtYSwgJ3Byb3BlcnRpZXMuZHJpdmVyLnByb3BlcnRpZXMuZmFrZScsIGZha2VEcml2ZXJTY2hlbWEpO1xuXG5leHBvcnQgZGVmYXVsdCBzY2hlbWE7XG4iXSwiZmlsZSI6InRlc3QvZml4dHVyZXMvc2NoZW1hLXdpdGgtZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9