@mrgrain/cdk-esbuild 3.1.0 → 3.4.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.
@@ -5,324 +5,127 @@ export declare type LogLevel = 'verbose' | 'debug' | 'info' | 'warning' | 'error
5
5
  export declare type Charset = 'ascii' | 'utf8';
6
6
  export declare type Drop = 'console' | 'debugger';
7
7
  interface CommonOptions {
8
- /**
9
- * Documentation: https://esbuild.github.io/api/#sourcemap.
10
- *
11
- * @stability stable
12
- */
13
- readonly sourcemap?: boolean | 'inline' | 'external' | 'both';
14
- /**
15
- * Documentation: https://esbuild.github.io/api/#legal-comments.
16
- *
17
- * @stability stable
18
- */
8
+ /** Documentation: https://esbuild.github.io/api/#sourcemap */
9
+ readonly sourcemap?: boolean | 'linked' | 'inline' | 'external' | 'both';
10
+ /** Documentation: https://esbuild.github.io/api/#legal-comments */
19
11
  readonly legalComments?: 'none' | 'inline' | 'eof' | 'linked' | 'external';
20
- /**
21
- * Documentation: https://esbuild.github.io/api/#source-root.
22
- *
23
- * @stability stable
24
- */
12
+ /** Documentation: https://esbuild.github.io/api/#source-root */
25
13
  readonly sourceRoot?: string;
26
- /**
27
- * Documentation: https://esbuild.github.io/api/#sources-content.
28
- *
29
- * @stability stable
30
- */
14
+ /** Documentation: https://esbuild.github.io/api/#sources-content */
31
15
  readonly sourcesContent?: boolean;
32
- /**
33
- * Documentation: https://esbuild.github.io/api/#format.
34
- *
35
- * @stability stable
36
- */
16
+ /** Documentation: https://esbuild.github.io/api/#format */
37
17
  readonly format?: Format;
38
- /**
39
- * Documentation: https://esbuild.github.io/api/#globalName.
40
- *
41
- * @stability stable
42
- */
18
+ /** Documentation: https://esbuild.github.io/api/#globalName */
43
19
  readonly globalName?: string;
44
- /**
45
- * Documentation: https://esbuild.github.io/api/#target.
46
- *
47
- * @stability stable
48
- */
20
+ /** Documentation: https://esbuild.github.io/api/#target */
49
21
  readonly target?: string | string[];
50
- /**
51
- * @stability stable
52
- */
22
+ /** Documentation: https://esbuild.github.io/api/#mangle-props */
23
+ readonly mangleProps?: any;
24
+ /** Documentation: https://esbuild.github.io/api/#mangle-props */
25
+ readonly reserveProps?: any;
26
+ /** Documentation: https://esbuild.github.io/api/#mangle-props */
27
+ readonly mangleQuoted?: boolean;
28
+ /** Documentation: https://esbuild.github.io/api/#mangle-props */
29
+ readonly mangleCache?: Record<string, string | false>;
30
+ /** Documentation: https://esbuild.github.io/api/#drop */
53
31
  readonly drop?: Drop[];
54
- /**
55
- * Documentation: https://esbuild.github.io/api/#minify.
56
- *
57
- * @stability stable
58
- */
32
+ /** Documentation: https://esbuild.github.io/api/#minify */
59
33
  readonly minify?: boolean;
60
- /**
61
- * Documentation: https://esbuild.github.io/api/#minify.
62
- *
63
- * @stability stable
64
- */
34
+ /** Documentation: https://esbuild.github.io/api/#minify */
65
35
  readonly minifyWhitespace?: boolean;
66
- /**
67
- * Documentation: https://esbuild.github.io/api/#minify.
68
- *
69
- * @stability stable
70
- */
36
+ /** Documentation: https://esbuild.github.io/api/#minify */
71
37
  readonly minifyIdentifiers?: boolean;
72
- /**
73
- * Documentation: https://esbuild.github.io/api/#minify.
74
- *
75
- * @stability stable
76
- */
38
+ /** Documentation: https://esbuild.github.io/api/#minify */
77
39
  readonly minifySyntax?: boolean;
78
- /**
79
- * Documentation: https://esbuild.github.io/api/#charset.
80
- *
81
- * @stability stable
82
- */
40
+ /** Documentation: https://esbuild.github.io/api/#charset */
83
41
  readonly charset?: Charset;
84
- /**
85
- * Documentation: https://esbuild.github.io/api/#tree-shaking.
86
- *
87
- * @stability stable
88
- */
42
+ /** Documentation: https://esbuild.github.io/api/#tree-shaking */
89
43
  readonly treeShaking?: boolean;
90
- /**
91
- * Documentation: https://esbuild.github.io/api/#ignore-annotations.
92
- *
93
- * @stability stable
94
- */
44
+ /** Documentation: https://esbuild.github.io/api/#ignore-annotations */
95
45
  readonly ignoreAnnotations?: boolean;
96
- /**
97
- * Documentation: https://esbuild.github.io/api/#jsx.
98
- *
99
- * @stability stable
100
- */
46
+ /** Documentation: https://esbuild.github.io/api/#jsx */
101
47
  readonly jsx?: 'transform' | 'preserve';
102
- /**
103
- * Documentation: https://esbuild.github.io/api/#jsx-factory.
104
- *
105
- * @stability stable
106
- */
48
+ /** Documentation: https://esbuild.github.io/api/#jsx-factory */
107
49
  readonly jsxFactory?: string;
108
- /**
109
- * Documentation: https://esbuild.github.io/api/#jsx-fragment.
110
- *
111
- * @stability stable
112
- */
50
+ /** Documentation: https://esbuild.github.io/api/#jsx-fragment */
113
51
  readonly jsxFragment?: string;
114
- /**
115
- * Documentation: https://esbuild.github.io/api/#define.
116
- *
117
- * @stability stable
118
- */
52
+ /** Documentation: https://esbuild.github.io/api/#define */
119
53
  readonly define?: {
120
54
  [key: string]: string;
121
55
  };
122
- /**
123
- * Documentation: https://esbuild.github.io/api/#pure.
124
- *
125
- * @stability stable
126
- */
56
+ /** Documentation: https://esbuild.github.io/api/#pure */
127
57
  readonly pure?: string[];
128
- /**
129
- * Documentation: https://esbuild.github.io/api/#keep-names.
130
- *
131
- * @stability stable
132
- */
58
+ /** Documentation: https://esbuild.github.io/api/#keep-names */
133
59
  readonly keepNames?: boolean;
134
- /**
135
- * Documentation: https://esbuild.github.io/api/#color.
136
- *
137
- * @stability stable
138
- */
60
+ /** Documentation: https://esbuild.github.io/api/#color */
139
61
  readonly color?: boolean;
140
- /**
141
- * Documentation: https://esbuild.github.io/api/#log-level.
142
- *
143
- * @stability stable
144
- */
62
+ /** Documentation: https://esbuild.github.io/api/#log-level */
145
63
  readonly logLevel?: LogLevel;
146
- /**
147
- * Documentation: https://esbuild.github.io/api/#log-limit.
148
- *
149
- * @stability stable
150
- */
64
+ /** Documentation: https://esbuild.github.io/api/#log-limit */
151
65
  readonly logLimit?: number;
152
66
  }
153
- /**
154
- * @stability stable
155
- */
156
67
  export interface BuildOptions extends CommonOptions {
157
- /**
158
- * Documentation: https://esbuild.github.io/api/#bundle.
159
- *
160
- * @stability stable
161
- */
68
+ /** Documentation: https://esbuild.github.io/api/#bundle */
162
69
  readonly bundle?: boolean;
163
- /**
164
- * Documentation: https://esbuild.github.io/api/#splitting.
165
- *
166
- * @stability stable
167
- */
70
+ /** Documentation: https://esbuild.github.io/api/#splitting */
168
71
  readonly splitting?: boolean;
169
- /**
170
- * Documentation: https://esbuild.github.io/api/#preserve-symlinks.
171
- *
172
- * @stability stable
173
- */
72
+ /** Documentation: https://esbuild.github.io/api/#preserve-symlinks */
174
73
  readonly preserveSymlinks?: boolean;
175
- /**
176
- * Documentation: https://esbuild.github.io/api/#outfile.
177
- *
178
- * @stability stable
179
- */
74
+ /** Documentation: https://esbuild.github.io/api/#outfile */
180
75
  readonly outfile?: string;
181
- /**
182
- * Documentation: https://esbuild.github.io/api/#metafile.
183
- *
184
- * @stability stable
185
- */
76
+ /** Documentation: https://esbuild.github.io/api/#metafile */
186
77
  readonly metafile?: boolean;
187
- /**
188
- * Documentation: https://esbuild.github.io/api/#outdir.
189
- *
190
- * @stability stable
191
- */
78
+ /** Documentation: https://esbuild.github.io/api/#outdir */
192
79
  readonly outdir?: string;
193
- /**
194
- * Documentation: https://esbuild.github.io/api/#outbase.
195
- *
196
- * @stability stable
197
- */
80
+ /** Documentation: https://esbuild.github.io/api/#outbase */
198
81
  readonly outbase?: string;
199
- /**
200
- * Documentation: https://esbuild.github.io/api/#platform.
201
- *
202
- * @stability stable
203
- */
82
+ /** Documentation: https://esbuild.github.io/api/#platform */
204
83
  readonly platform?: Platform;
205
- /**
206
- * Documentation: https://esbuild.github.io/api/#external.
207
- *
208
- * @stability stable
209
- */
84
+ /** Documentation: https://esbuild.github.io/api/#external */
210
85
  readonly external?: string[];
211
- /**
212
- * Documentation: https://esbuild.github.io/api/#loader.
213
- *
214
- * @stability stable
215
- */
86
+ /** Documentation: https://esbuild.github.io/api/#loader */
216
87
  readonly loader?: {
217
88
  [ext: string]: Loader;
218
89
  };
219
- /**
220
- * Documentation: https://esbuild.github.io/api/#resolve-extensions.
221
- *
222
- * @stability stable
223
- */
90
+ /** Documentation: https://esbuild.github.io/api/#resolve-extensions */
224
91
  readonly resolveExtensions?: string[];
225
- /**
226
- * Documentation: https://esbuild.github.io/api/#mainFields.
227
- *
228
- * @stability stable
229
- */
92
+ /** Documentation: https://esbuild.github.io/api/#mainFields */
230
93
  readonly mainFields?: string[];
231
- /**
232
- * Documentation: https://esbuild.github.io/api/#conditions.
233
- *
234
- * @stability stable
235
- */
94
+ /** Documentation: https://esbuild.github.io/api/#conditions */
236
95
  readonly conditions?: string[];
237
- /**
238
- * Documentation: https://esbuild.github.io/api/#write.
239
- *
240
- * @stability stable
241
- */
96
+ /** Documentation: https://esbuild.github.io/api/#write */
242
97
  readonly write?: boolean;
243
- /**
244
- * Documentation: https://esbuild.github.io/api/#allow-overwrite.
245
- *
246
- * @stability stable
247
- */
98
+ /** Documentation: https://esbuild.github.io/api/#allow-overwrite */
248
99
  readonly allowOverwrite?: boolean;
249
- /**
250
- * Documentation: https://esbuild.github.io/api/#tsconfig.
251
- *
252
- * @stability stable
253
- */
100
+ /** Documentation: https://esbuild.github.io/api/#tsconfig */
254
101
  readonly tsconfig?: string;
255
- /**
256
- * Documentation: https://esbuild.github.io/api/#out-extension.
257
- *
258
- * @stability stable
259
- */
102
+ /** Documentation: https://esbuild.github.io/api/#out-extension */
260
103
  readonly outExtension?: {
261
104
  [ext: string]: string;
262
105
  };
263
- /**
264
- * Documentation: https://esbuild.github.io/api/#public-path.
265
- *
266
- * @stability stable
267
- */
106
+ /** Documentation: https://esbuild.github.io/api/#public-path */
268
107
  readonly publicPath?: string;
269
- /**
270
- * Documentation: https://esbuild.github.io/api/#entry-names.
271
- *
272
- * @stability stable
273
- */
108
+ /** Documentation: https://esbuild.github.io/api/#entry-names */
274
109
  readonly entryNames?: string;
275
- /**
276
- * Documentation: https://esbuild.github.io/api/#chunk-names.
277
- *
278
- * @stability stable
279
- */
110
+ /** Documentation: https://esbuild.github.io/api/#chunk-names */
280
111
  readonly chunkNames?: string;
281
- /**
282
- * Documentation: https://esbuild.github.io/api/#asset-names.
283
- *
284
- * @stability stable
285
- */
112
+ /** Documentation: https://esbuild.github.io/api/#asset-names */
286
113
  readonly assetNames?: string;
287
- /**
288
- * Documentation: https://esbuild.github.io/api/#inject.
289
- *
290
- * @stability stable
291
- */
114
+ /** Documentation: https://esbuild.github.io/api/#inject */
292
115
  readonly inject?: string[];
293
- /**
294
- * Documentation: https://esbuild.github.io/api/#banner.
295
- *
296
- * @stability stable
297
- */
116
+ /** Documentation: https://esbuild.github.io/api/#banner */
298
117
  readonly banner?: {
299
118
  [type: string]: string;
300
119
  };
301
- /**
302
- * Documentation: https://esbuild.github.io/api/#footer.
303
- *
304
- * @stability stable
305
- */
120
+ /** Documentation: https://esbuild.github.io/api/#footer */
306
121
  readonly footer?: {
307
122
  [type: string]: string;
308
123
  };
309
- /**
310
- * Documentation: https://esbuild.github.io/api/#incremental.
311
- *
312
- * @stability stable
313
- */
124
+ /** Documentation: https://esbuild.github.io/api/#incremental */
314
125
  readonly incremental?: boolean;
315
- /**
316
- * Documentation: https://esbuild.github.io/api/#working-directory.
317
- *
318
- * @stability stable
319
- */
126
+ /** Documentation: https://esbuild.github.io/api/#working-directory */
320
127
  readonly absWorkingDir?: string;
321
- /**
322
- * Documentation: https://esbuild.github.io/api/#node-paths.
323
- *
324
- * @stability stable
325
- */
128
+ /** Documentation: https://esbuild.github.io/api/#node-paths */
326
129
  readonly nodePaths?: string[];
327
130
  }
328
131
  export interface WatchMode {
@@ -386,6 +189,8 @@ export interface BuildResult {
386
189
  stop?: () => void;
387
190
  /** Only when "metafile: true" */
388
191
  metafile?: Metafile;
192
+ /** Only when "mangleCache" is present */
193
+ mangleCache?: Record<string, string | false>;
389
194
  }
390
195
  export interface BuildFailure extends Error {
391
196
  errors: Message[];
@@ -413,35 +218,19 @@ export interface ServeResult {
413
218
  wait: Promise<void>;
414
219
  stop: () => void;
415
220
  }
416
- /**
417
- * @stability stable
418
- */
419
221
  export interface TransformOptions extends CommonOptions {
420
- /**
421
- * @stability stable
422
- */
423
222
  readonly tsconfigRaw?: string;
424
- /**
425
- * @stability stable
426
- */
427
223
  readonly sourcefile?: string;
428
- /**
429
- * @stability stable
430
- */
431
224
  readonly loader?: Loader;
432
- /**
433
- * @stability stable
434
- */
435
225
  readonly banner?: string;
436
- /**
437
- * @stability stable
438
- */
439
226
  readonly footer?: string;
440
227
  }
441
228
  export interface TransformResult {
442
229
  code: string;
443
230
  map: string;
444
231
  warnings: Message[];
232
+ /** Only when "mangleCache" is present */
233
+ mangleCache?: Record<string, string | false>;
445
234
  }
446
235
  export interface TransformFailure extends Error {
447
236
  errors: Message[];
@@ -716,6 +505,15 @@ export interface InitializeOptions {
716
505
  * esbuild in the browser.
717
506
  */
718
507
  wasmURL?: string;
508
+ /**
509
+ * The result of calling "new WebAssembly.Module(buffer)" where "buffer"
510
+ * is a typed array or ArrayBuffer containing the binary code of the
511
+ * "esbuild.wasm" file.
512
+ *
513
+ * You can use this as an alternative to "wasmURL" for environments where it's
514
+ * not possible to download the WebAssembly module.
515
+ */
516
+ wasmModule?: any;
719
517
  /**
720
518
  * By default esbuild runs the WebAssembly-based browser API in a web worker
721
519
  * to avoid blocking the UI thread. This can be disabled by setting "worker"
@@ -2,4 +2,4 @@
2
2
  // ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen".
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.version = void 0;
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNidWlsZC10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lc2J1aWxkLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2RUFBNkUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLmpzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5cbmV4cG9ydCB0eXBlIFBsYXRmb3JtID0gJ2Jyb3dzZXInIHwgJ25vZGUnIHwgJ25ldXRyYWwnO1xuZXhwb3J0IHR5cGUgRm9ybWF0ID0gJ2lpZmUnIHwgJ2NqcycgfCAnZXNtJztcbmV4cG9ydCB0eXBlIExvYWRlciA9ICdqcycgfCAnanN4JyB8ICd0cycgfCAndHN4JyB8ICdjc3MnIHwgJ2pzb24nIHwgJ3RleHQnIHwgJ2Jhc2U2NCcgfCAnZmlsZScgfCAnZGF0YXVybCcgfCAnYmluYXJ5JyB8ICdkZWZhdWx0JztcbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gJ3ZlcmJvc2UnIHwgJ2RlYnVnJyB8ICdpbmZvJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCAnc2lsZW50JztcbmV4cG9ydCB0eXBlIENoYXJzZXQgPSAnYXNjaWknIHwgJ3V0ZjgnO1xuZXhwb3J0IHR5cGUgRHJvcCA9ICdjb25zb2xlJyB8ICdkZWJ1Z2dlcic7XG5cbmludGVyZmFjZSBDb21tb25PcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgc291cmNlbWFwPzogYm9vbGVhbiB8ICdpbmxpbmUnIHwgJ2V4dGVybmFsJyB8ICdib3RoJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsZWdhbENvbW1lbnRzPzogJ25vbmUnIHwgJ2lubGluZScgfCAnZW9mJyB8ICdsaW5rZWQnIHwgJ2V4dGVybmFsJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzb3VyY2VSb290Pzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzb3VyY2VzQ29udGVudD86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZm9ybWF0PzogRm9ybWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZ2xvYmFsTmFtZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdGFyZ2V0Pzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgcmVhZG9ubHkgZHJvcD86IERyb3BbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWluaWZ5PzogYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWluaWZ5V2hpdGVzcGFjZT86IGJvb2xlYW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG1pbmlmeUlkZW50aWZpZXJzPzogYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWluaWZ5U3ludGF4PzogYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNoYXJzZXQ/OiBDaGFyc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB0cmVlU2hha2luZz86IGJvb2xlYW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGlnbm9yZUFubm90YXRpb25zPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBqc3g/OiAndHJhbnNmb3JtJyB8ICdwcmVzZXJ2ZSc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkganN4RmFjdG9yeT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkganN4RnJhZ21lbnQ/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZGVmaW5lPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHB1cmU/OiBzdHJpbmdbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGtlZXBOYW1lcz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjb2xvcj86IGJvb2xlYW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGxvZ0xldmVsPzogTG9nTGV2ZWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGxvZ0xpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkT3B0aW9ucyBleHRlbmRzIENvbW1vbk9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBidW5kbGU/OiBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzcGxpdHRpbmc/OiBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHByZXNlcnZlU3ltbGlua3M/OiBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb3V0ZmlsZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBtZXRhZmlsZT86IGJvb2xlYW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG91dGJhc2U/OiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcGxhdGZvcm0/OiBQbGF0Zm9ybTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleHRlcm5hbD86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb2FkZXI/OiB7IFtleHQ6IHN0cmluZ106IExvYWRlciB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSByZXNvbHZlRXh0ZW5zaW9ucz86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWFpbkZpZWxkcz86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY29uZGl0aW9ucz86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHdyaXRlPzogYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYWxsb3dPdmVyd3JpdGU/OiBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb3V0RXh0ZW5zaW9uPzogeyBbZXh0OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBwdWJsaWNQYXRoPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGVudHJ5TmFtZXM/OiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2h1bmtOYW1lcz86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhc3NldE5hbWVzPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBpbmplY3Q/OiBzdHJpbmdbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYmFubmVyPzogeyBbdHlwZTogc3RyaW5nXTogc3RyaW5nIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGZvb3Rlcj86IHsgW3R5cGU6IHN0cmluZ106IHN0cmluZyB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGluY3JlbWVudGFsPzogYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhYnNXb3JraW5nRGlyPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbm9kZVBhdGhzPzogc3RyaW5nW107IC8vIFRoZSBcIk5PREVfUEFUSFwiIHZhcmlhYmxlIGZyb20gTm9kZS5qc1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhdGNoTW9kZSB7XG4gIG9uUmVidWlsZD86IChlcnJvcjogQnVpbGRGYWlsdXJlIHwgbnVsbCwgcmVzdWx0OiBCdWlsZFJlc3VsdCB8IG51bGwpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RkaW5PcHRpb25zIHtcbiAgY29udGVudHM6IHN0cmluZztcbiAgcmVzb2x2ZURpcj86IHN0cmluZztcbiAgc291cmNlZmlsZT86IHN0cmluZztcbiAgbG9hZGVyPzogTG9hZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lc3NhZ2Uge1xuICBwbHVnaW5OYW1lOiBzdHJpbmc7XG4gIHRleHQ6IHN0cmluZztcbiAgbG9jYXRpb246IExvY2F0aW9uIHwgbnVsbDtcbiAgbm90ZXM6IE5vdGVbXTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgdXNlci1zcGVjaWZpZWQgZGF0YSB0aGF0IGlzIHBhc3NlZCB0aHJvdWdoIHVubW9kaWZpZWQuIFlvdSBjYW5cbiAgICogdXNlIHRoaXMgdG8gc3Rhc2ggdGhlIG9yaWdpbmFsIGVycm9yLCBmb3IgZXhhbXBsZS5cbiAgICovXG4gIGRldGFpbDogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vdGUge1xuICB0ZXh0OiBzdHJpbmc7XG4gIGxvY2F0aW9uOiBMb2NhdGlvbiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb24ge1xuICBmaWxlOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICAvKiogMS1iYXNlZCAqL1xuICBsaW5lOiBudW1iZXI7XG4gIC8qKiAwLWJhc2VkLCBpbiBieXRlcyAqL1xuICBjb2x1bW46IG51bWJlcjtcbiAgLyoqIGluIGJ5dGVzICovXG4gIGxlbmd0aDogbnVtYmVyO1xuICBsaW5lVGV4dDogc3RyaW5nO1xuICBzdWdnZXN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3V0cHV0RmlsZSB7XG4gIHBhdGg6IHN0cmluZztcbiAgLyoqIFwidGV4dFwiIGFzIGJ5dGVzICovXG4gIGNvbnRlbnRzOiBVaW50OEFycmF5O1xuICAvKiogXCJjb250ZW50c1wiIGFzIHRleHQgKi9cbiAgdGV4dDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkSW52YWxpZGF0ZSB7XG4gICgpOiBQcm9taXNlPEJ1aWxkSW5jcmVtZW50YWw+O1xuICBkaXNwb3NlKCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRJbmNyZW1lbnRhbCBleHRlbmRzIEJ1aWxkUmVzdWx0IHtcbiAgcmVidWlsZDogQnVpbGRJbnZhbGlkYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkUmVzdWx0IHtcbiAgZXJyb3JzOiBNZXNzYWdlW107XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG4gIC8qKiBPbmx5IHdoZW4gXCJ3cml0ZTogZmFsc2VcIiAqL1xuICBvdXRwdXRGaWxlcz86IE91dHB1dEZpbGVbXTtcbiAgLyoqIE9ubHkgd2hlbiBcImluY3JlbWVudGFsOiB0cnVlXCIgKi9cbiAgcmVidWlsZD86IEJ1aWxkSW52YWxpZGF0ZTtcbiAgLyoqIE9ubHkgd2hlbiBcIndhdGNoOiB0cnVlXCIgKi9cbiAgc3RvcD86ICgpID0+IHZvaWQ7XG4gIC8qKiBPbmx5IHdoZW4gXCJtZXRhZmlsZTogdHJ1ZVwiICovXG4gIG1ldGFmaWxlPzogTWV0YWZpbGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRGYWlsdXJlIGV4dGVuZHMgRXJyb3Ige1xuICBlcnJvcnM6IE1lc3NhZ2VbXTtcbiAgd2FybmluZ3M6IE1lc3NhZ2VbXTtcbn1cblxuLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNzZXJ2ZS1hcmd1bWVudHMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVPcHRpb25zIHtcbiAgcG9ydD86IG51bWJlcjtcbiAgaG9zdD86IHN0cmluZztcbiAgc2VydmVkaXI/OiBzdHJpbmc7XG4gIG9uUmVxdWVzdD86IChhcmdzOiBTZXJ2ZU9uUmVxdWVzdEFyZ3MpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVPblJlcXVlc3RBcmdzIHtcbiAgcmVtb3RlQWRkcmVzczogc3RyaW5nO1xuICBtZXRob2Q6IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xuICBzdGF0dXM6IG51bWJlcjtcbiAgLyoqIFRoZSB0aW1lIHRvIGdlbmVyYXRlIHRoZSByZXNwb25zZSwgbm90IHRvIHNlbmQgaXQgKi9cbiAgdGltZUluTVM6IG51bWJlcjtcbn1cblxuLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNzZXJ2ZS1yZXR1cm4tdmFsdWVzICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlUmVzdWx0IHtcbiAgcG9ydDogbnVtYmVyO1xuICBob3N0OiBzdHJpbmc7XG4gIHdhaXQ6IFByb21pc2U8dm9pZD47XG4gIHN0b3A6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmb3JtT3B0aW9ucyBleHRlbmRzIENvbW1vbk9wdGlvbnMge1xuICByZWFkb25seSB0c2NvbmZpZ1Jhdz86IHN0cmluZztcblxuICByZWFkb25seSBzb3VyY2VmaWxlPzogc3RyaW5nO1xuICByZWFkb25seSBsb2FkZXI/OiBMb2FkZXI7XG4gIHJlYWRvbmx5IGJhbm5lcj86IHN0cmluZztcbiAgcmVhZG9ubHkgZm9vdGVyPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybVJlc3VsdCB7XG4gIGNvZGU6IHN0cmluZztcbiAgbWFwOiBzdHJpbmc7XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmb3JtRmFpbHVyZSBleHRlbmRzIEVycm9yIHtcbiAgZXJyb3JzOiBNZXNzYWdlW107XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGx1Z2luIHtcbiAgbmFtZTogc3RyaW5nO1xuICBzZXR1cDogKGJ1aWxkOiBQbHVnaW5CdWlsZCkgPT4gKHZvaWQgfCBQcm9taXNlPHZvaWQ+KTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQbHVnaW5CdWlsZCB7XG4gIGluaXRpYWxPcHRpb25zOiBCdWlsZE9wdGlvbnM7XG4gIHJlc29sdmUocGF0aDogc3RyaW5nLCBvcHRpb25zPzogUmVzb2x2ZU9wdGlvbnMpOiBQcm9taXNlPFJlc29sdmVSZXN1bHQ+O1xuXG4gIG9uU3RhcnQoY2FsbGJhY2s6ICgpID0+XG4gIChPblN0YXJ0UmVzdWx0IHwgbnVsbCB8IHZvaWQgfCBQcm9taXNlPE9uU3RhcnRSZXN1bHQgfCBudWxsIHwgdm9pZD4pKTogdm9pZDtcbiAgb25FbmQoY2FsbGJhY2s6IChyZXN1bHQ6IEJ1aWxkUmVzdWx0KSA9PlxuICAodm9pZCB8IFByb21pc2U8dm9pZD4pKTogdm9pZDtcbiAgb25SZXNvbHZlKG9wdGlvbnM6IE9uUmVzb2x2ZU9wdGlvbnMsIGNhbGxiYWNrOiAoYXJnczogT25SZXNvbHZlQXJncykgPT5cbiAgKE9uUmVzb2x2ZVJlc3VsdCB8IG51bGwgfCB1bmRlZmluZWQgfCBQcm9taXNlPE9uUmVzb2x2ZVJlc3VsdCB8IG51bGwgfCB1bmRlZmluZWQ+KSk6IHZvaWQ7XG4gIG9uTG9hZChvcHRpb25zOiBPbkxvYWRPcHRpb25zLCBjYWxsYmFjazogKGFyZ3M6IE9uTG9hZEFyZ3MpID0+XG4gIChPbkxvYWRSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkIHwgUHJvbWlzZTxPbkxvYWRSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkPikpOiB2b2lkO1xuXG4gIC8vIFRoaXMgaXMgYSBmdWxsIGNvcHkgb2YgdGhlIGVzYnVpbGQgbGlicmFyeSBpbiBjYXNlIHlvdSBuZWVkIGl0XG4gIGVzYnVpbGQ6IHtcbiAgICBzZXJ2ZTogdHlwZW9mIHNlcnZlO1xuICAgIGJ1aWxkOiB0eXBlb2YgYnVpbGQ7XG4gICAgYnVpbGRTeW5jOiB0eXBlb2YgYnVpbGRTeW5jO1xuICAgIHRyYW5zZm9ybTogdHlwZW9mIHRyYW5zZm9ybTtcbiAgICB0cmFuc2Zvcm1TeW5jOiB0eXBlb2YgdHJhbnNmb3JtU3luYztcbiAgICBmb3JtYXRNZXNzYWdlczogdHlwZW9mIGZvcm1hdE1lc3NhZ2VzO1xuICAgIGZvcm1hdE1lc3NhZ2VzU3luYzogdHlwZW9mIGZvcm1hdE1lc3NhZ2VzU3luYztcbiAgICBhbmFseXplTWV0YWZpbGU6IHR5cGVvZiBhbmFseXplTWV0YWZpbGU7XG4gICAgYW5hbHl6ZU1ldGFmaWxlU3luYzogdHlwZW9mIGFuYWx5emVNZXRhZmlsZVN5bmM7XG4gICAgaW5pdGlhbGl6ZTogdHlwZW9mIGluaXRpYWxpemU7XG4gICAgdmVyc2lvbjogdHlwZW9mIHZlcnNpb247XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZU9wdGlvbnMge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuICBpbXBvcnRlcj86IHN0cmluZztcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICByZXNvbHZlRGlyPzogc3RyaW5nO1xuICBraW5kPzogSW1wb3J0S2luZDtcbiAgcGx1Z2luRGF0YT86IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvbHZlUmVzdWx0IHtcbiAgZXJyb3JzOiBNZXNzYWdlW107XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG5cbiAgcGF0aDogc3RyaW5nO1xuICBleHRlcm5hbDogYm9vbGVhbjtcbiAgc2lkZUVmZmVjdHM6IGJvb2xlYW47XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICBzdWZmaXg6IHN0cmluZztcbiAgcGx1Z2luRGF0YTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uU3RhcnRSZXN1bHQge1xuICBlcnJvcnM/OiBQYXJ0aWFsTWVzc2FnZVtdO1xuICB3YXJuaW5ncz86IFBhcnRpYWxNZXNzYWdlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25SZXNvbHZlT3B0aW9ucyB7XG4gIGZpbHRlcjogUmVnRXhwO1xuICBuYW1lc3BhY2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25SZXNvbHZlQXJncyB7XG4gIHBhdGg6IHN0cmluZztcbiAgaW1wb3J0ZXI6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIHJlc29sdmVEaXI6IHN0cmluZztcbiAga2luZDogSW1wb3J0S2luZDtcbiAgcGx1Z2luRGF0YTogYW55O1xufVxuXG5leHBvcnQgdHlwZSBJbXBvcnRLaW5kID1cbiAgfCAnZW50cnktcG9pbnQnXG5cbiAgLy8gSlNcbiAgfCAnaW1wb3J0LXN0YXRlbWVudCdcbiAgfCAncmVxdWlyZS1jYWxsJ1xuICB8ICdkeW5hbWljLWltcG9ydCdcbiAgfCAncmVxdWlyZS1yZXNvbHZlJ1xuXG4gIC8vIENTU1xuICB8ICdpbXBvcnQtcnVsZSdcbiAgfCAndXJsLXRva2VuJ1xuXG5leHBvcnQgaW50ZXJmYWNlIE9uUmVzb2x2ZVJlc3VsdCB7XG4gIHBsdWdpbk5hbWU/OiBzdHJpbmc7XG5cbiAgZXJyb3JzPzogUGFydGlhbE1lc3NhZ2VbXTtcbiAgd2FybmluZ3M/OiBQYXJ0aWFsTWVzc2FnZVtdO1xuXG4gIHBhdGg/OiBzdHJpbmc7XG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbiAgc2lkZUVmZmVjdHM/OiBib29sZWFuO1xuICBuYW1lc3BhY2U/OiBzdHJpbmc7XG4gIHN1ZmZpeD86IHN0cmluZztcbiAgcGx1Z2luRGF0YT86IGFueTtcblxuICB3YXRjaEZpbGVzPzogc3RyaW5nW107XG4gIHdhdGNoRGlycz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uTG9hZE9wdGlvbnMge1xuICBmaWx0ZXI6IFJlZ0V4cDtcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uTG9hZEFyZ3Mge1xuICBwYXRoOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICBzdWZmaXg6IHN0cmluZztcbiAgcGx1Z2luRGF0YTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uTG9hZFJlc3VsdCB7XG4gIHBsdWdpbk5hbWU/OiBzdHJpbmc7XG5cbiAgZXJyb3JzPzogUGFydGlhbE1lc3NhZ2VbXTtcbiAgd2FybmluZ3M/OiBQYXJ0aWFsTWVzc2FnZVtdO1xuXG4gIGNvbnRlbnRzPzogc3RyaW5nIHwgVWludDhBcnJheTtcbiAgcmVzb2x2ZURpcj86IHN0cmluZztcbiAgbG9hZGVyPzogTG9hZGVyO1xuICBwbHVnaW5EYXRhPzogYW55O1xuXG4gIHdhdGNoRmlsZXM/OiBzdHJpbmdbXTtcbiAgd2F0Y2hEaXJzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFydGlhbE1lc3NhZ2Uge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuICB0ZXh0Pzogc3RyaW5nO1xuICBsb2NhdGlvbj86IFBhcnRpYWw8TG9jYXRpb24+IHwgbnVsbDtcbiAgbm90ZXM/OiBQYXJ0aWFsTm90ZVtdO1xuICBkZXRhaWw/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFydGlhbE5vdGUge1xuICB0ZXh0Pzogc3RyaW5nO1xuICBsb2NhdGlvbj86IFBhcnRpYWw8TG9jYXRpb24+IHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXRhZmlsZSB7XG4gIGlucHV0czoge1xuICAgIFtwYXRoOiBzdHJpbmddOiB7XG4gICAgICBieXRlczogbnVtYmVyO1xuICAgICAgaW1wb3J0czoge1xuICAgICAgICBwYXRoOiBzdHJpbmc7XG4gICAgICAgIGtpbmQ6IEltcG9ydEtpbmQ7XG4gICAgICB9W107XG4gICAgfTtcbiAgfTtcbiAgb3V0cHV0czoge1xuICAgIFtwYXRoOiBzdHJpbmddOiB7XG4gICAgICBieXRlczogbnVtYmVyO1xuICAgICAgaW5wdXRzOiB7XG4gICAgICAgIFtwYXRoOiBzdHJpbmddOiB7XG4gICAgICAgICAgYnl0ZXNJbk91dHB1dDogbnVtYmVyO1xuICAgICAgICB9O1xuICAgICAgfTtcbiAgICAgIGltcG9ydHM6IHtcbiAgICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgICBraW5kOiBJbXBvcnRLaW5kO1xuICAgICAgfVtdO1xuICAgICAgZXhwb3J0czogc3RyaW5nW107XG4gICAgICBlbnRyeVBvaW50Pzogc3RyaW5nO1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWF0TWVzc2FnZXNPcHRpb25zIHtcbiAga2luZDogJ2Vycm9yJyB8ICd3YXJuaW5nJztcbiAgY29sb3I/OiBib29sZWFuO1xuICB0ZXJtaW5hbFdpZHRoPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFuYWx5emVNZXRhZmlsZU9wdGlvbnMge1xuICBjb2xvcj86IGJvb2xlYW47XG4gIHZlcmJvc2U/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaW52b2tlcyB0aGUgXCJlc2J1aWxkXCIgY29tbWFuZC1saW5lIHRvb2wgZm9yIHlvdS4gSXQgcmV0dXJucyBhXG4gKiBwcm9taXNlIHRoYXQgZWl0aGVyIHJlc29sdmVzIHdpdGggYSBcIkJ1aWxkUmVzdWx0XCIgb2JqZWN0IG9yIHJlamVjdHMgd2l0aCBhXG4gKiBcIkJ1aWxkRmFpbHVyZVwiIG9iamVjdC5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiB5ZXNcbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYnVpbGQtYXBpXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgd3JpdGU6IGZhbHNlIH0pOiBQcm9taXNlPEJ1aWxkUmVzdWx0ICYgeyBvdXRwdXRGaWxlczogT3V0cHV0RmlsZVtdIH0+O1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGQob3B0aW9uczogQnVpbGRPcHRpb25zICYgeyBpbmNyZW1lbnRhbDogdHJ1ZTsgbWV0YWZpbGU6IHRydWUgfSk6IFByb21pc2U8QnVpbGRJbmNyZW1lbnRhbCAmIHsgbWV0YWZpbGU6IE1ldGFmaWxlIH0+O1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGQob3B0aW9uczogQnVpbGRPcHRpb25zICYgeyBpbmNyZW1lbnRhbDogdHJ1ZSB9KTogUHJvbWlzZTxCdWlsZEluY3JlbWVudGFsPjtcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgbWV0YWZpbGU6IHRydWUgfSk6IFByb21pc2U8QnVpbGRSZXN1bHQgJiB7IG1ldGFmaWxlOiBNZXRhZmlsZSB9PjtcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyk6IFByb21pc2U8QnVpbGRSZXN1bHQ+O1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaXMgc2ltaWxhciB0byBcImJ1aWxkXCIgYnV0IGl0IHNlcnZlcyB0aGUgcmVzdWx0aW5nIGZpbGVzIG92ZXJcbiAqIEhUVFAgb24gYSBsb2NhbGhvc3QgYWRkcmVzcyB3aXRoIHRoZSBzcGVjaWZpZWQgcG9ydC5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiBub1xuICpcbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNzZXJ2ZVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBzZXJ2ZShzZXJ2ZU9wdGlvbnM6IFNlcnZlT3B0aW9ucywgYnVpbGRPcHRpb25zOiBCdWlsZE9wdGlvbnMpOiBQcm9taXNlPFNlcnZlUmVzdWx0PjtcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHRyYW5zZm9ybXMgYSBzaW5nbGUgSmF2YVNjcmlwdCBmaWxlLiBJdCBjYW4gYmUgdXNlZCB0byBtaW5pZnlcbiAqIEphdmFTY3JpcHQsIGNvbnZlcnQgVHlwZVNjcmlwdC9KU1ggdG8gSmF2YVNjcmlwdCwgb3IgY29udmVydCBuZXdlciBKYXZhU2NyaXB0XG4gKiB0byBvbGRlciBKYXZhU2NyaXB0LiBJdCByZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGlzIGVpdGhlciByZXNvbHZlZCB3aXRoIGFcbiAqIFwiVHJhbnNmb3JtUmVzdWx0XCIgb2JqZWN0IG9yIHJlamVjdGVkIHdpdGggYSBcIlRyYW5zZm9ybUZhaWx1cmVcIiBvYmplY3QuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3NlcjogeWVzXG4gKlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RyYW5zZm9ybS1hcGlcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gdHJhbnNmb3JtKGlucHV0OiBzdHJpbmcsIG9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKTogUHJvbWlzZTxUcmFuc2Zvcm1SZXN1bHQ+O1xuXG4vKipcbiAqIENvbnZlcnRzIGxvZyBtZXNzYWdlcyB0byBmb3JtYXR0ZWQgbWVzc2FnZSBzdHJpbmdzIHN1aXRhYmxlIGZvciBwcmludGluZyBpblxuICogdGhlIHRlcm1pbmFsLiBUaGlzIGFsbG93cyB5b3UgdG8gcmV1c2UgdGhlIGJ1aWx0LWluIGJlaGF2aW9yIG9mIGVzYnVpbGQnc1xuICogbG9nIG1lc3NhZ2UgZm9ybWF0dGVyLiBUaGlzIGlzIGEgYmF0Y2gtb3JpZW50ZWQgQVBJIGZvciBlZmZpY2llbmN5LlxuICpcbiAqIC0gV29ya3MgaW4gbm9kZTogeWVzXG4gKiAtIFdvcmtzIGluIGJyb3dzZXI6IHllc1xuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBmb3JtYXRNZXNzYWdlcyhtZXNzYWdlczogUGFydGlhbE1lc3NhZ2VbXSwgb3B0aW9uczogRm9ybWF0TWVzc2FnZXNPcHRpb25zKTogUHJvbWlzZTxzdHJpbmdbXT47XG5cbi8qKlxuICogUHJldHR5LXByaW50cyBhbiBhbmFseXNpcyBvZiB0aGUgbWV0YWZpbGUgSlNPTiB0byBhIHN0cmluZy4gVGhpcyBpcyBqdXN0IGZvclxuICogY29udmVuaWVuY2UgdG8gYmUgYWJsZSB0byBtYXRjaCBlc2J1aWxkJ3MgcHJldHR5LXByaW50aW5nIGV4YWN0bHkuIElmIHlvdSB3YW50XG4gKiB0byBjdXN0b21pemUgaXQsIHlvdSBjYW4ganVzdCBpbnNwZWN0IHRoZSBkYXRhIGluIHRoZSBtZXRhZmlsZSB5b3Vyc2VsZi5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiB5ZXNcbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYW5hbHl6ZVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBhbmFseXplTWV0YWZpbGUobWV0YWZpbGU6IE1ldGFmaWxlIHwgc3RyaW5nLCBvcHRpb25zPzogQW5hbHl6ZU1ldGFmaWxlT3B0aW9ucyk6IFByb21pc2U8c3RyaW5nPjtcblxuLyoqXG4gKiBBIHN5bmNocm9ub3VzIHZlcnNpb24gb2YgXCJidWlsZFwiLlxuICpcbiAqIC0gV29ya3MgaW4gbm9kZTogeWVzXG4gKiAtIFdvcmtzIGluIGJyb3dzZXI6IG5vXG4gKlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2J1aWxkLWFwaVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZFN5bmMob3B0aW9uczogQnVpbGRPcHRpb25zICYgeyB3cml0ZTogZmFsc2UgfSk6IEJ1aWxkUmVzdWx0ICYgeyBvdXRwdXRGaWxlczogT3V0cHV0RmlsZVtdIH07XG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZFN5bmMob3B0aW9uczogQnVpbGRPcHRpb25zKTogQnVpbGRSZXN1bHQ7XG5cbi8qKlxuICogQSBzeW5jaHJvbm91cyB2ZXJzaW9uIG9mIFwidHJhbnNmb3JtXCIuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3Nlcjogbm9cbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jdHJhbnNmb3JtLWFwaVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiB0cmFuc2Zvcm1TeW5jKGlucHV0OiBzdHJpbmcsIG9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKTogVHJhbnNmb3JtUmVzdWx0O1xuXG4vKipcbiAqIEEgc3luY2hyb25vdXMgdmVyc2lvbiBvZiBcImZvcm1hdE1lc3NhZ2VzXCIuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3Nlcjogbm9cbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gZm9ybWF0TWVzc2FnZXNTeW5jKG1lc3NhZ2VzOiBQYXJ0aWFsTWVzc2FnZVtdLCBvcHRpb25zOiBGb3JtYXRNZXNzYWdlc09wdGlvbnMpOiBzdHJpbmdbXTtcblxuLyoqXG4gKiBBIHN5bmNocm9ub3VzIHZlcnNpb24gb2YgXCJhbmFseXplTWV0YWZpbGVcIi5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiBub1xuICpcbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNhbmFseXplXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGFuYWx5emVNZXRhZmlsZVN5bmMobWV0YWZpbGU6IE1ldGFmaWxlIHwgc3RyaW5nLCBvcHRpb25zPzogQW5hbHl6ZU1ldGFmaWxlT3B0aW9ucyk6IHN0cmluZztcblxuLyoqXG4gKiBUaGlzIGNvbmZpZ3VyZXMgdGhlIGJyb3dzZXItYmFzZWQgdmVyc2lvbiBvZiBlc2J1aWxkLiBJdCBpcyBuZWNlc3NhcnkgdG9cbiAqIGNhbGwgdGhpcyBmaXJzdCBhbmQgd2FpdCBmb3IgdGhlIHJldHVybmVkIHByb21pc2UgdG8gYmUgcmVzb2x2ZWQgYmVmb3JlXG4gKiBtYWtpbmcgb3RoZXIgQVBJIGNhbGxzIHdoZW4gdXNpbmcgZXNidWlsZCBpbiB0aGUgYnJvd3Nlci5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiB5ZXMgKFwib3B0aW9uc1wiIGlzIHJlcXVpcmVkKVxuICpcbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNydW5uaW5nLWluLXRoZS1icm93c2VyXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGluaXRpYWxpemUob3B0aW9uczogSW5pdGlhbGl6ZU9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBVUkwgb2YgdGhlIFwiZXNidWlsZC53YXNtXCIgZmlsZS4gVGhpcyBtdXN0IGJlIHByb3ZpZGVkIHdoZW4gcnVubmluZ1xuICAgKiBlc2J1aWxkIGluIHRoZSBicm93c2VyLlxuICAgKi9cbiAgd2FzbVVSTD86IHN0cmluZztcblxuICAvKipcbiAgICogQnkgZGVmYXVsdCBlc2J1aWxkIHJ1bnMgdGhlIFdlYkFzc2VtYmx5LWJhc2VkIGJyb3dzZXIgQVBJIGluIGEgd2ViIHdvcmtlclxuICAgKiB0byBhdm9pZCBibG9ja2luZyB0aGUgVUkgdGhyZWFkLiBUaGlzIGNhbiBiZSBkaXNhYmxlZCBieSBzZXR0aW5nIFwid29ya2VyXCJcbiAgICogdG8gZmFsc2UuXG4gICAqL1xuICB3b3JrZXI/OiBib29sZWFuO1xufVxuXG5leHBvcnQgbGV0IHZlcnNpb246IHN0cmluZztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNidWlsZC10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lc2J1aWxkLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2RUFBNkUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLmpzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5cbmV4cG9ydCB0eXBlIFBsYXRmb3JtID0gJ2Jyb3dzZXInIHwgJ25vZGUnIHwgJ25ldXRyYWwnO1xuZXhwb3J0IHR5cGUgRm9ybWF0ID0gJ2lpZmUnIHwgJ2NqcycgfCAnZXNtJztcbmV4cG9ydCB0eXBlIExvYWRlciA9ICdqcycgfCAnanN4JyB8ICd0cycgfCAndHN4JyB8ICdjc3MnIHwgJ2pzb24nIHwgJ3RleHQnIHwgJ2Jhc2U2NCcgfCAnZmlsZScgfCAnZGF0YXVybCcgfCAnYmluYXJ5JyB8ICdkZWZhdWx0JztcbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gJ3ZlcmJvc2UnIHwgJ2RlYnVnJyB8ICdpbmZvJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCAnc2lsZW50JztcbmV4cG9ydCB0eXBlIENoYXJzZXQgPSAnYXNjaWknIHwgJ3V0ZjgnO1xuZXhwb3J0IHR5cGUgRHJvcCA9ICdjb25zb2xlJyB8ICdkZWJ1Z2dlcic7XG5cbmludGVyZmFjZSBDb21tb25PcHRpb25zIHtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNzb3VyY2VtYXAgKi9cbiAgcmVhZG9ubHkgc291cmNlbWFwPzogYm9vbGVhbiB8ICdsaW5rZWQnIHwgJ2lubGluZScgfCAnZXh0ZXJuYWwnIHwgJ2JvdGgnO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2xlZ2FsLWNvbW1lbnRzICovXG4gIHJlYWRvbmx5IGxlZ2FsQ29tbWVudHM/OiAnbm9uZScgfCAnaW5saW5lJyB8ICdlb2YnIHwgJ2xpbmtlZCcgfCAnZXh0ZXJuYWwnO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3NvdXJjZS1yb290ICovXG4gIHJlYWRvbmx5IHNvdXJjZVJvb3Q/OiBzdHJpbmc7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jc291cmNlcy1jb250ZW50ICovXG4gIHJlYWRvbmx5IHNvdXJjZXNDb250ZW50PzogYm9vbGVhbjtcblxuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2Zvcm1hdCAqL1xuICByZWFkb25seSBmb3JtYXQ/OiBGb3JtYXQ7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jZ2xvYmFsTmFtZSAqL1xuICByZWFkb25seSBnbG9iYWxOYW1lPzogc3RyaW5nO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RhcmdldCAqL1xuICByZWFkb25seSB0YXJnZXQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI21hbmdsZS1wcm9wcyAqL1xuICByZWFkb25seSBtYW5nbGVQcm9wcz86IGFueTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNtYW5nbGUtcHJvcHMgKi9cbiAgcmVhZG9ubHkgcmVzZXJ2ZVByb3BzPzogYW55O1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI21hbmdsZS1wcm9wcyAqL1xuICByZWFkb25seSBtYW5nbGVRdW90ZWQ/OiBib29sZWFuO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI21hbmdsZS1wcm9wcyAqL1xuICByZWFkb25seSBtYW5nbGVDYWNoZT86IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IGZhbHNlPjtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNkcm9wICovXG4gIHJlYWRvbmx5IGRyb3A/OiBEcm9wW107XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jbWluaWZ5ICovXG4gIHJlYWRvbmx5IG1pbmlmeT86IGJvb2xlYW47XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jbWluaWZ5ICovXG4gIHJlYWRvbmx5IG1pbmlmeVdoaXRlc3BhY2U/OiBib29sZWFuO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI21pbmlmeSAqL1xuICByZWFkb25seSBtaW5pZnlJZGVudGlmaWVycz86IGJvb2xlYW47XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jbWluaWZ5ICovXG4gIHJlYWRvbmx5IG1pbmlmeVN5bnRheD86IGJvb2xlYW47XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jY2hhcnNldCAqL1xuICByZWFkb25seSBjaGFyc2V0PzogQ2hhcnNldDtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyN0cmVlLXNoYWtpbmcgKi9cbiAgcmVhZG9ubHkgdHJlZVNoYWtpbmc/OiBib29sZWFuO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2lnbm9yZS1hbm5vdGF0aW9ucyAqL1xuICByZWFkb25seSBpZ25vcmVBbm5vdGF0aW9ucz86IGJvb2xlYW47XG5cbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNqc3ggKi9cbiAgcmVhZG9ubHkganN4PzogJ3RyYW5zZm9ybScgfCAncHJlc2VydmUnO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2pzeC1mYWN0b3J5ICovXG4gIHJlYWRvbmx5IGpzeEZhY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8janN4LWZyYWdtZW50ICovXG4gIHJlYWRvbmx5IGpzeEZyYWdtZW50Pzogc3RyaW5nO1xuXG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jZGVmaW5lICovXG4gIHJlYWRvbmx5IGRlZmluZT86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jcHVyZSAqL1xuICByZWFkb25seSBwdXJlPzogc3RyaW5nW107XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8ja2VlcC1uYW1lcyAqL1xuICByZWFkb25seSBrZWVwTmFtZXM/OiBib29sZWFuO1xuXG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jY29sb3IgKi9cbiAgcmVhZG9ubHkgY29sb3I/OiBib29sZWFuO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2xvZy1sZXZlbCAqL1xuICByZWFkb25seSBsb2dMZXZlbD86IExvZ0xldmVsO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2xvZy1saW1pdCAqL1xuICByZWFkb25seSBsb2dMaW1pdD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZE9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zIHtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNidW5kbGUgKi9cbiAgcmVhZG9ubHkgYnVuZGxlPzogYm9vbGVhbjtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNzcGxpdHRpbmcgKi9cbiAgcmVhZG9ubHkgc3BsaXR0aW5nPzogYm9vbGVhbjtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNwcmVzZXJ2ZS1zeW1saW5rcyAqL1xuICByZWFkb25seSBwcmVzZXJ2ZVN5bWxpbmtzPzogYm9vbGVhbjtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNvdXRmaWxlICovXG4gIHJlYWRvbmx5IG91dGZpbGU/OiBzdHJpbmc7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jbWV0YWZpbGUgKi9cbiAgcmVhZG9ubHkgbWV0YWZpbGU/OiBib29sZWFuO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI291dGRpciAqL1xuICByZWFkb25seSBvdXRkaXI/OiBzdHJpbmc7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jb3V0YmFzZSAqL1xuICByZWFkb25seSBvdXRiYXNlPzogc3RyaW5nO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3BsYXRmb3JtICovXG4gIHJlYWRvbmx5IHBsYXRmb3JtPzogUGxhdGZvcm07XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jZXh0ZXJuYWwgKi9cbiAgcmVhZG9ubHkgZXh0ZXJuYWw/OiBzdHJpbmdbXTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNsb2FkZXIgKi9cbiAgcmVhZG9ubHkgbG9hZGVyPzogeyBbZXh0OiBzdHJpbmddOiBMb2FkZXIgfTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNyZXNvbHZlLWV4dGVuc2lvbnMgKi9cbiAgcmVhZG9ubHkgcmVzb2x2ZUV4dGVuc2lvbnM/OiBzdHJpbmdbXTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNtYWluRmllbGRzICovXG4gIHJlYWRvbmx5IG1haW5GaWVsZHM/OiBzdHJpbmdbXTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNjb25kaXRpb25zICovXG4gIHJlYWRvbmx5IGNvbmRpdGlvbnM/OiBzdHJpbmdbXTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyN3cml0ZSAqL1xuICByZWFkb25seSB3cml0ZT86IGJvb2xlYW47XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYWxsb3ctb3ZlcndyaXRlICovXG4gIHJlYWRvbmx5IGFsbG93T3ZlcndyaXRlPzogYm9vbGVhbjtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyN0c2NvbmZpZyAqL1xuICByZWFkb25seSB0c2NvbmZpZz86IHN0cmluZztcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNvdXQtZXh0ZW5zaW9uICovXG4gIHJlYWRvbmx5IG91dEV4dGVuc2lvbj86IHsgW2V4dDogc3RyaW5nXTogc3RyaW5nIH07XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jcHVibGljLXBhdGggKi9cbiAgcmVhZG9ubHkgcHVibGljUGF0aD86IHN0cmluZztcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNlbnRyeS1uYW1lcyAqL1xuICByZWFkb25seSBlbnRyeU5hbWVzPzogc3RyaW5nO1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2NodW5rLW5hbWVzICovXG4gIHJlYWRvbmx5IGNodW5rTmFtZXM/OiBzdHJpbmc7XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYXNzZXQtbmFtZXMgKi9cbiAgcmVhZG9ubHkgYXNzZXROYW1lcz86IHN0cmluZztcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNpbmplY3QgKi9cbiAgcmVhZG9ubHkgaW5qZWN0Pzogc3RyaW5nW107XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYmFubmVyICovXG4gIHJlYWRvbmx5IGJhbm5lcj86IHsgW3R5cGU6IHN0cmluZ106IHN0cmluZyB9O1xuICAvKiogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2Zvb3RlciAqL1xuICByZWFkb25seSBmb290ZXI/OiB7IFt0eXBlOiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNpbmNyZW1lbnRhbCAqL1xuICByZWFkb25seSBpbmNyZW1lbnRhbD86IGJvb2xlYW47XG4gIC8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jd29ya2luZy1kaXJlY3RvcnkgKi9cbiAgcmVhZG9ubHkgYWJzV29ya2luZ0Rpcj86IHN0cmluZztcbiAgLyoqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNub2RlLXBhdGhzICovXG4gIHJlYWRvbmx5IG5vZGVQYXRocz86IHN0cmluZ1tdOyAvLyBUaGUgXCJOT0RFX1BBVEhcIiB2YXJpYWJsZSBmcm9tIE5vZGUuanNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYXRjaE1vZGUge1xuICBvblJlYnVpbGQ/OiAoZXJyb3I6IEJ1aWxkRmFpbHVyZSB8IG51bGwsIHJlc3VsdDogQnVpbGRSZXN1bHQgfCBudWxsKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0ZGluT3B0aW9ucyB7XG4gIGNvbnRlbnRzOiBzdHJpbmc7XG4gIHJlc29sdmVEaXI/OiBzdHJpbmc7XG4gIHNvdXJjZWZpbGU/OiBzdHJpbmc7XG4gIGxvYWRlcj86IExvYWRlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXNzYWdlIHtcbiAgcGx1Z2luTmFtZTogc3RyaW5nO1xuICB0ZXh0OiBzdHJpbmc7XG4gIGxvY2F0aW9uOiBMb2NhdGlvbiB8IG51bGw7XG4gIG5vdGVzOiBOb3RlW107XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHVzZXItc3BlY2lmaWVkIGRhdGEgdGhhdCBpcyBwYXNzZWQgdGhyb3VnaCB1bm1vZGlmaWVkLiBZb3UgY2FuXG4gICAqIHVzZSB0aGlzIHRvIHN0YXNoIHRoZSBvcmlnaW5hbCBlcnJvciwgZm9yIGV4YW1wbGUuXG4gICAqL1xuICBkZXRhaWw6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb3RlIHtcbiAgdGV4dDogc3RyaW5nO1xuICBsb2NhdGlvbjogTG9jYXRpb24gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uIHtcbiAgZmlsZTogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgLyoqIDEtYmFzZWQgKi9cbiAgbGluZTogbnVtYmVyO1xuICAvKiogMC1iYXNlZCwgaW4gYnl0ZXMgKi9cbiAgY29sdW1uOiBudW1iZXI7XG4gIC8qKiBpbiBieXRlcyAqL1xuICBsZW5ndGg6IG51bWJlcjtcbiAgbGluZVRleHQ6IHN0cmluZztcbiAgc3VnZ2VzdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE91dHB1dEZpbGUge1xuICBwYXRoOiBzdHJpbmc7XG4gIC8qKiBcInRleHRcIiBhcyBieXRlcyAqL1xuICBjb250ZW50czogVWludDhBcnJheTtcbiAgLyoqIFwiY29udGVudHNcIiBhcyB0ZXh0ICovXG4gIHRleHQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZEludmFsaWRhdGUge1xuICAoKTogUHJvbWlzZTxCdWlsZEluY3JlbWVudGFsPjtcbiAgZGlzcG9zZSgpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkSW5jcmVtZW50YWwgZXh0ZW5kcyBCdWlsZFJlc3VsdCB7XG4gIHJlYnVpbGQ6IEJ1aWxkSW52YWxpZGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZFJlc3VsdCB7XG4gIGVycm9yczogTWVzc2FnZVtdO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xuICAvKiogT25seSB3aGVuIFwid3JpdGU6IGZhbHNlXCIgKi9cbiAgb3V0cHV0RmlsZXM/OiBPdXRwdXRGaWxlW107XG4gIC8qKiBPbmx5IHdoZW4gXCJpbmNyZW1lbnRhbDogdHJ1ZVwiICovXG4gIHJlYnVpbGQ/OiBCdWlsZEludmFsaWRhdGU7XG4gIC8qKiBPbmx5IHdoZW4gXCJ3YXRjaDogdHJ1ZVwiICovXG4gIHN0b3A/OiAoKSA9PiB2b2lkO1xuICAvKiogT25seSB3aGVuIFwibWV0YWZpbGU6IHRydWVcIiAqL1xuICBtZXRhZmlsZT86IE1ldGFmaWxlO1xuICAvKiogT25seSB3aGVuIFwibWFuZ2xlQ2FjaGVcIiBpcyBwcmVzZW50ICovXG4gIG1hbmdsZUNhY2hlPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgZmFsc2U+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkRmFpbHVyZSBleHRlbmRzIEVycm9yIHtcbiAgZXJyb3JzOiBNZXNzYWdlW107XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG59XG5cbi8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jc2VydmUtYXJndW1lbnRzICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlT3B0aW9ucyB7XG4gIHBvcnQ/OiBudW1iZXI7XG4gIGhvc3Q/OiBzdHJpbmc7XG4gIHNlcnZlZGlyPzogc3RyaW5nO1xuICBvblJlcXVlc3Q/OiAoYXJnczogU2VydmVPblJlcXVlc3RBcmdzKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlT25SZXF1ZXN0QXJncyB7XG4gIHJlbW90ZUFkZHJlc3M6IHN0cmluZztcbiAgbWV0aG9kOiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbiAgc3RhdHVzOiBudW1iZXI7XG4gIC8qKiBUaGUgdGltZSB0byBnZW5lcmF0ZSB0aGUgcmVzcG9uc2UsIG5vdCB0byBzZW5kIGl0ICovXG4gIHRpbWVJbk1TOiBudW1iZXI7XG59XG5cbi8qKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jc2VydmUtcmV0dXJuLXZhbHVlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZVJlc3VsdCB7XG4gIHBvcnQ6IG51bWJlcjtcbiAgaG9zdDogc3RyaW5nO1xuICB3YWl0OiBQcm9taXNlPHZvaWQ+O1xuICBzdG9wOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybU9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zIHtcbiAgcmVhZG9ubHkgdHNjb25maWdSYXc/OiBzdHJpbmc7XG5cbiAgcmVhZG9ubHkgc291cmNlZmlsZT86IHN0cmluZztcbiAgcmVhZG9ubHkgbG9hZGVyPzogTG9hZGVyO1xuICByZWFkb25seSBiYW5uZXI/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGZvb3Rlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1SZXN1bHQge1xuICBjb2RlOiBzdHJpbmc7XG4gIG1hcDogc3RyaW5nO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xuICAvKiogT25seSB3aGVuIFwibWFuZ2xlQ2FjaGVcIiBpcyBwcmVzZW50ICovXG4gIG1hbmdsZUNhY2hlPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgZmFsc2U+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybUZhaWx1cmUgZXh0ZW5kcyBFcnJvciB7XG4gIGVycm9yczogTWVzc2FnZVtdO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2V0dXA6IChidWlsZDogUGx1Z2luQnVpbGQpID0+ICh2b2lkIHwgUHJvbWlzZTx2b2lkPik7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGx1Z2luQnVpbGQge1xuICBpbml0aWFsT3B0aW9uczogQnVpbGRPcHRpb25zO1xuICByZXNvbHZlKHBhdGg6IHN0cmluZywgb3B0aW9ucz86IFJlc29sdmVPcHRpb25zKTogUHJvbWlzZTxSZXNvbHZlUmVzdWx0PjtcblxuICBvblN0YXJ0KGNhbGxiYWNrOiAoKSA9PlxuICAoT25TdGFydFJlc3VsdCB8IG51bGwgfCB2b2lkIHwgUHJvbWlzZTxPblN0YXJ0UmVzdWx0IHwgbnVsbCB8IHZvaWQ+KSk6IHZvaWQ7XG4gIG9uRW5kKGNhbGxiYWNrOiAocmVzdWx0OiBCdWlsZFJlc3VsdCkgPT5cbiAgKHZvaWQgfCBQcm9taXNlPHZvaWQ+KSk6IHZvaWQ7XG4gIG9uUmVzb2x2ZShvcHRpb25zOiBPblJlc29sdmVPcHRpb25zLCBjYWxsYmFjazogKGFyZ3M6IE9uUmVzb2x2ZUFyZ3MpID0+XG4gIChPblJlc29sdmVSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkIHwgUHJvbWlzZTxPblJlc29sdmVSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkPikpOiB2b2lkO1xuICBvbkxvYWQob3B0aW9uczogT25Mb2FkT3B0aW9ucywgY2FsbGJhY2s6IChhcmdzOiBPbkxvYWRBcmdzKSA9PlxuICAoT25Mb2FkUmVzdWx0IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8T25Mb2FkUmVzdWx0IHwgbnVsbCB8IHVuZGVmaW5lZD4pKTogdm9pZDtcblxuICAvLyBUaGlzIGlzIGEgZnVsbCBjb3B5IG9mIHRoZSBlc2J1aWxkIGxpYnJhcnkgaW4gY2FzZSB5b3UgbmVlZCBpdFxuICBlc2J1aWxkOiB7XG4gICAgc2VydmU6IHR5cGVvZiBzZXJ2ZTtcbiAgICBidWlsZDogdHlwZW9mIGJ1aWxkO1xuICAgIGJ1aWxkU3luYzogdHlwZW9mIGJ1aWxkU3luYztcbiAgICB0cmFuc2Zvcm06IHR5cGVvZiB0cmFuc2Zvcm07XG4gICAgdHJhbnNmb3JtU3luYzogdHlwZW9mIHRyYW5zZm9ybVN5bmM7XG4gICAgZm9ybWF0TWVzc2FnZXM6IHR5cGVvZiBmb3JtYXRNZXNzYWdlcztcbiAgICBmb3JtYXRNZXNzYWdlc1N5bmM6IHR5cGVvZiBmb3JtYXRNZXNzYWdlc1N5bmM7XG4gICAgYW5hbHl6ZU1ldGFmaWxlOiB0eXBlb2YgYW5hbHl6ZU1ldGFmaWxlO1xuICAgIGFuYWx5emVNZXRhZmlsZVN5bmM6IHR5cGVvZiBhbmFseXplTWV0YWZpbGVTeW5jO1xuICAgIGluaXRpYWxpemU6IHR5cGVvZiBpbml0aWFsaXplO1xuICAgIHZlcnNpb246IHR5cGVvZiB2ZXJzaW9uO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVPcHRpb25zIHtcbiAgcGx1Z2luTmFtZT86IHN0cmluZztcbiAgaW1wb3J0ZXI/OiBzdHJpbmc7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbiAgcmVzb2x2ZURpcj86IHN0cmluZztcbiAga2luZD86IEltcG9ydEtpbmQ7XG4gIHBsdWdpbkRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZVJlc3VsdCB7XG4gIGVycm9yczogTWVzc2FnZVtdO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xuXG4gIHBhdGg6IHN0cmluZztcbiAgZXh0ZXJuYWw6IGJvb2xlYW47XG4gIHNpZGVFZmZlY3RzOiBib29sZWFuO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgc3VmZml4OiBzdHJpbmc7XG4gIHBsdWdpbkRhdGE6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPblN0YXJ0UmVzdWx0IHtcbiAgZXJyb3JzPzogUGFydGlhbE1lc3NhZ2VbXTtcbiAgd2FybmluZ3M/OiBQYXJ0aWFsTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uUmVzb2x2ZU9wdGlvbnMge1xuICBmaWx0ZXI6IFJlZ0V4cDtcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uUmVzb2x2ZUFyZ3Mge1xuICBwYXRoOiBzdHJpbmc7XG4gIGltcG9ydGVyOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICByZXNvbHZlRGlyOiBzdHJpbmc7XG4gIGtpbmQ6IEltcG9ydEtpbmQ7XG4gIHBsdWdpbkRhdGE6IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgSW1wb3J0S2luZCA9XG4gIHwgJ2VudHJ5LXBvaW50J1xuXG4gIC8vIEpTXG4gIHwgJ2ltcG9ydC1zdGF0ZW1lbnQnXG4gIHwgJ3JlcXVpcmUtY2FsbCdcbiAgfCAnZHluYW1pYy1pbXBvcnQnXG4gIHwgJ3JlcXVpcmUtcmVzb2x2ZSdcblxuICAvLyBDU1NcbiAgfCAnaW1wb3J0LXJ1bGUnXG4gIHwgJ3VybC10b2tlbidcblxuZXhwb3J0IGludGVyZmFjZSBPblJlc29sdmVSZXN1bHQge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuXG4gIGVycm9ycz86IFBhcnRpYWxNZXNzYWdlW107XG4gIHdhcm5pbmdzPzogUGFydGlhbE1lc3NhZ2VbXTtcblxuICBwYXRoPzogc3RyaW5nO1xuICBleHRlcm5hbD86IGJvb2xlYW47XG4gIHNpZGVFZmZlY3RzPzogYm9vbGVhbjtcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICBzdWZmaXg/OiBzdHJpbmc7XG4gIHBsdWdpbkRhdGE/OiBhbnk7XG5cbiAgd2F0Y2hGaWxlcz86IHN0cmluZ1tdO1xuICB3YXRjaERpcnM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbkxvYWRPcHRpb25zIHtcbiAgZmlsdGVyOiBSZWdFeHA7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbkxvYWRBcmdzIHtcbiAgcGF0aDogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgc3VmZml4OiBzdHJpbmc7XG4gIHBsdWdpbkRhdGE6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbkxvYWRSZXN1bHQge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuXG4gIGVycm9ycz86IFBhcnRpYWxNZXNzYWdlW107XG4gIHdhcm5pbmdzPzogUGFydGlhbE1lc3NhZ2VbXTtcblxuICBjb250ZW50cz86IHN0cmluZyB8IFVpbnQ4QXJyYXk7XG4gIHJlc29sdmVEaXI/OiBzdHJpbmc7XG4gIGxvYWRlcj86IExvYWRlcjtcbiAgcGx1Z2luRGF0YT86IGFueTtcblxuICB3YXRjaEZpbGVzPzogc3RyaW5nW107XG4gIHdhdGNoRGlycz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpYWxNZXNzYWdlIHtcbiAgcGx1Z2luTmFtZT86IHN0cmluZztcbiAgdGV4dD86IHN0cmluZztcbiAgbG9jYXRpb24/OiBQYXJ0aWFsPExvY2F0aW9uPiB8IG51bGw7XG4gIG5vdGVzPzogUGFydGlhbE5vdGVbXTtcbiAgZGV0YWlsPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpYWxOb3RlIHtcbiAgdGV4dD86IHN0cmluZztcbiAgbG9jYXRpb24/OiBQYXJ0aWFsPExvY2F0aW9uPiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWZpbGUge1xuICBpbnB1dHM6IHtcbiAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgYnl0ZXM6IG51bWJlcjtcbiAgICAgIGltcG9ydHM6IHtcbiAgICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgICBraW5kOiBJbXBvcnRLaW5kO1xuICAgICAgfVtdO1xuICAgIH07XG4gIH07XG4gIG91dHB1dHM6IHtcbiAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgYnl0ZXM6IG51bWJlcjtcbiAgICAgIGlucHV0czoge1xuICAgICAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgICAgIGJ5dGVzSW5PdXRwdXQ6IG51bWJlcjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgICBpbXBvcnRzOiB7XG4gICAgICAgIHBhdGg6IHN0cmluZztcbiAgICAgICAga2luZDogSW1wb3J0S2luZDtcbiAgICAgIH1bXTtcbiAgICAgIGV4cG9ydHM6IHN0cmluZ1tdO1xuICAgICAgZW50cnlQb2ludD86IHN0cmluZztcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1hdE1lc3NhZ2VzT3B0aW9ucyB7XG4gIGtpbmQ6ICdlcnJvcicgfCAnd2FybmluZyc7XG4gIGNvbG9yPzogYm9vbGVhbjtcbiAgdGVybWluYWxXaWR0aD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbmFseXplTWV0YWZpbGVPcHRpb25zIHtcbiAgY29sb3I/OiBib29sZWFuO1xuICB2ZXJib3NlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGludm9rZXMgdGhlIFwiZXNidWlsZFwiIGNvbW1hbmQtbGluZSB0b29sIGZvciB5b3UuIEl0IHJldHVybnMgYVxuICogcHJvbWlzZSB0aGF0IGVpdGhlciByZXNvbHZlcyB3aXRoIGEgXCJCdWlsZFJlc3VsdFwiIG9iamVjdCBvciByZWplY3RzIHdpdGggYVxuICogXCJCdWlsZEZhaWx1cmVcIiBvYmplY3QuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3NlcjogeWVzXG4gKlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2J1aWxkLWFwaVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZChvcHRpb25zOiBCdWlsZE9wdGlvbnMgJiB7IHdyaXRlOiBmYWxzZSB9KTogUHJvbWlzZTxCdWlsZFJlc3VsdCAmIHsgb3V0cHV0RmlsZXM6IE91dHB1dEZpbGVbXSB9PjtcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgaW5jcmVtZW50YWw6IHRydWU7IG1ldGFmaWxlOiB0cnVlIH0pOiBQcm9taXNlPEJ1aWxkSW5jcmVtZW50YWwgJiB7IG1ldGFmaWxlOiBNZXRhZmlsZSB9PjtcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgaW5jcmVtZW50YWw6IHRydWUgfSk6IFByb21pc2U8QnVpbGRJbmNyZW1lbnRhbD47XG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZChvcHRpb25zOiBCdWlsZE9wdGlvbnMgJiB7IG1ldGFmaWxlOiB0cnVlIH0pOiBQcm9taXNlPEJ1aWxkUmVzdWx0ICYgeyBtZXRhZmlsZTogTWV0YWZpbGUgfT47XG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZChvcHRpb25zOiBCdWlsZE9wdGlvbnMpOiBQcm9taXNlPEJ1aWxkUmVzdWx0PjtcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGlzIHNpbWlsYXIgdG8gXCJidWlsZFwiIGJ1dCBpdCBzZXJ2ZXMgdGhlIHJlc3VsdGluZyBmaWxlcyBvdmVyXG4gKiBIVFRQIG9uIGEgbG9jYWxob3N0IGFkZHJlc3Mgd2l0aCB0aGUgc3BlY2lmaWVkIHBvcnQuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3Nlcjogbm9cbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jc2VydmVcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gc2VydmUoc2VydmVPcHRpb25zOiBTZXJ2ZU9wdGlvbnMsIGJ1aWxkT3B0aW9uczogQnVpbGRPcHRpb25zKTogUHJvbWlzZTxTZXJ2ZVJlc3VsdD47XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiB0cmFuc2Zvcm1zIGEgc2luZ2xlIEphdmFTY3JpcHQgZmlsZS4gSXQgY2FuIGJlIHVzZWQgdG8gbWluaWZ5XG4gKiBKYXZhU2NyaXB0LCBjb252ZXJ0IFR5cGVTY3JpcHQvSlNYIHRvIEphdmFTY3JpcHQsIG9yIGNvbnZlcnQgbmV3ZXIgSmF2YVNjcmlwdFxuICogdG8gb2xkZXIgSmF2YVNjcmlwdC4gSXQgcmV0dXJucyBhIHByb21pc2UgdGhhdCBpcyBlaXRoZXIgcmVzb2x2ZWQgd2l0aCBhXG4gKiBcIlRyYW5zZm9ybVJlc3VsdFwiIG9iamVjdCBvciByZWplY3RlZCB3aXRoIGEgXCJUcmFuc2Zvcm1GYWlsdXJlXCIgb2JqZWN0LlxuICpcbiAqIC0gV29ya3MgaW4gbm9kZTogeWVzXG4gKiAtIFdvcmtzIGluIGJyb3dzZXI6IHllc1xuICpcbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyN0cmFuc2Zvcm0tYXBpXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIHRyYW5zZm9ybShpbnB1dDogc3RyaW5nLCBvcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucyk6IFByb21pc2U8VHJhbnNmb3JtUmVzdWx0PjtcblxuLyoqXG4gKiBDb252ZXJ0cyBsb2cgbWVzc2FnZXMgdG8gZm9ybWF0dGVkIG1lc3NhZ2Ugc3RyaW5ncyBzdWl0YWJsZSBmb3IgcHJpbnRpbmcgaW5cbiAqIHRoZSB0ZXJtaW5hbC4gVGhpcyBhbGxvd3MgeW91IHRvIHJldXNlIHRoZSBidWlsdC1pbiBiZWhhdmlvciBvZiBlc2J1aWxkJ3NcbiAqIGxvZyBtZXNzYWdlIGZvcm1hdHRlci4gVGhpcyBpcyBhIGJhdGNoLW9yaWVudGVkIEFQSSBmb3IgZWZmaWNpZW5jeS5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiB5ZXNcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gZm9ybWF0TWVzc2FnZXMobWVzc2FnZXM6IFBhcnRpYWxNZXNzYWdlW10sIG9wdGlvbnM6IEZvcm1hdE1lc3NhZ2VzT3B0aW9ucyk6IFByb21pc2U8c3RyaW5nW10+O1xuXG4vKipcbiAqIFByZXR0eS1wcmludHMgYW4gYW5hbHlzaXMgb2YgdGhlIG1ldGFmaWxlIEpTT04gdG8gYSBzdHJpbmcuIFRoaXMgaXMganVzdCBmb3JcbiAqIGNvbnZlbmllbmNlIHRvIGJlIGFibGUgdG8gbWF0Y2ggZXNidWlsZCdzIHByZXR0eS1wcmludGluZyBleGFjdGx5LiBJZiB5b3Ugd2FudFxuICogdG8gY3VzdG9taXplIGl0LCB5b3UgY2FuIGp1c3QgaW5zcGVjdCB0aGUgZGF0YSBpbiB0aGUgbWV0YWZpbGUgeW91cnNlbGYuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3NlcjogeWVzXG4gKlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI2FuYWx5emVcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYW5hbHl6ZU1ldGFmaWxlKG1ldGFmaWxlOiBNZXRhZmlsZSB8IHN0cmluZywgb3B0aW9ucz86IEFuYWx5emVNZXRhZmlsZU9wdGlvbnMpOiBQcm9taXNlPHN0cmluZz47XG5cbi8qKlxuICogQSBzeW5jaHJvbm91cyB2ZXJzaW9uIG9mIFwiYnVpbGRcIi5cbiAqXG4gKiAtIFdvcmtzIGluIG5vZGU6IHllc1xuICogLSBXb3JrcyBpbiBicm93c2VyOiBub1xuICpcbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNidWlsZC1hcGlcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGRTeW5jKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgd3JpdGU6IGZhbHNlIH0pOiBCdWlsZFJlc3VsdCAmIHsgb3V0cHV0RmlsZXM6IE91dHB1dEZpbGVbXSB9O1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGRTeW5jKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyk6IEJ1aWxkUmVzdWx0O1xuXG4vKipcbiAqIEEgc3luY2hyb25vdXMgdmVyc2lvbiBvZiBcInRyYW5zZm9ybVwiLlxuICpcbiAqIC0gV29ya3MgaW4gbm9kZTogeWVzXG4gKiAtIFdvcmtzIGluIGJyb3dzZXI6IG5vXG4gKlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RyYW5zZm9ybS1hcGlcbiAqL1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gdHJhbnNmb3JtU3luYyhpbnB1dDogc3RyaW5nLCBvcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucyk6IFRyYW5zZm9ybVJlc3VsdDtcblxuLyoqXG4gKiBBIHN5bmNocm9ub3VzIHZlcnNpb24gb2YgXCJmb3JtYXRNZXNzYWdlc1wiLlxuICpcbiAqIC0gV29ya3MgaW4gbm9kZTogeWVzXG4gKiAtIFdvcmtzIGluIGJyb3dzZXI6IG5vXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGZvcm1hdE1lc3NhZ2VzU3luYyhtZXNzYWdlczogUGFydGlhbE1lc3NhZ2VbXSwgb3B0aW9uczogRm9ybWF0TWVzc2FnZXNPcHRpb25zKTogc3RyaW5nW107XG5cbi8qKlxuICogQSBzeW5jaHJvbm91cyB2ZXJzaW9uIG9mIFwiYW5hbHl6ZU1ldGFmaWxlXCIuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3Nlcjogbm9cbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jYW5hbHl6ZVxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBhbmFseXplTWV0YWZpbGVTeW5jKG1ldGFmaWxlOiBNZXRhZmlsZSB8IHN0cmluZywgb3B0aW9ucz86IEFuYWx5emVNZXRhZmlsZU9wdGlvbnMpOiBzdHJpbmc7XG5cbi8qKlxuICogVGhpcyBjb25maWd1cmVzIHRoZSBicm93c2VyLWJhc2VkIHZlcnNpb24gb2YgZXNidWlsZC4gSXQgaXMgbmVjZXNzYXJ5IHRvXG4gKiBjYWxsIHRoaXMgZmlyc3QgYW5kIHdhaXQgZm9yIHRoZSByZXR1cm5lZCBwcm9taXNlIHRvIGJlIHJlc29sdmVkIGJlZm9yZVxuICogbWFraW5nIG90aGVyIEFQSSBjYWxscyB3aGVuIHVzaW5nIGVzYnVpbGQgaW4gdGhlIGJyb3dzZXIuXG4gKlxuICogLSBXb3JrcyBpbiBub2RlOiB5ZXNcbiAqIC0gV29ya3MgaW4gYnJvd3NlcjogeWVzIChcIm9wdGlvbnNcIiBpcyByZXF1aXJlZClcbiAqXG4gKiBEb2N1bWVudGF0aW9uOiBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jcnVubmluZy1pbi10aGUtYnJvd3NlclxuICovXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBpbml0aWFsaXplKG9wdGlvbnM6IEluaXRpYWxpemVPcHRpb25zKTogUHJvbWlzZTx2b2lkPjtcblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWFsaXplT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgVVJMIG9mIHRoZSBcImVzYnVpbGQud2FzbVwiIGZpbGUuIFRoaXMgbXVzdCBiZSBwcm92aWRlZCB3aGVuIHJ1bm5pbmdcbiAgICogZXNidWlsZCBpbiB0aGUgYnJvd3Nlci5cbiAgICovXG4gIHdhc21VUkw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZXN1bHQgb2YgY2FsbGluZyBcIm5ldyBXZWJBc3NlbWJseS5Nb2R1bGUoYnVmZmVyKVwiIHdoZXJlIFwiYnVmZmVyXCJcbiAgICogaXMgYSB0eXBlZCBhcnJheSBvciBBcnJheUJ1ZmZlciBjb250YWluaW5nIHRoZSBiaW5hcnkgY29kZSBvZiB0aGVcbiAgICogXCJlc2J1aWxkLndhc21cIiBmaWxlLlxuICAgKlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIGFzIGFuIGFsdGVybmF0aXZlIHRvIFwid2FzbVVSTFwiIGZvciBlbnZpcm9ubWVudHMgd2hlcmUgaXQnc1xuICAgKiBub3QgcG9zc2libGUgdG8gZG93bmxvYWQgdGhlIFdlYkFzc2VtYmx5IG1vZHVsZS5cbiAgICovXG4gIHdhc21Nb2R1bGU/OiBhbnk7XG5cbiAgLyoqXG4gICAqIEJ5IGRlZmF1bHQgZXNidWlsZCBydW5zIHRoZSBXZWJBc3NlbWJseS1iYXNlZCBicm93c2VyIEFQSSBpbiBhIHdlYiB3b3JrZXJcbiAgICogdG8gYXZvaWQgYmxvY2tpbmcgdGhlIFVJIHRocmVhZC4gVGhpcyBjYW4gYmUgZGlzYWJsZWQgYnkgc2V0dGluZyBcIndvcmtlclwiXG4gICAqIHRvIGZhbHNlLlxuICAgKi9cbiAgd29ya2VyPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGxldCB2ZXJzaW9uOiBzdHJpbmc7XG4iXX0=
@@ -1,29 +1,26 @@
1
1
  import { InlineCode } from 'aws-cdk-lib/aws-lambda';
2
2
  import { TransformOptions } from './esbuild-types';
3
3
  /**
4
- * @experimental
4
+ * @stability experimental
5
5
  */
6
6
  export interface TransformerProps {
7
7
  /**
8
- * Transform options passed on to esbuild.
9
- *
10
- * Please refer to the esbuild Transform API docs for details.
8
+ * Transform options passed on to esbuild. Please refer to the esbuild Transform API docs for details.
11
9
  *
12
10
  * @see https://esbuild.github.io/api/#transform-api
13
11
  * @stability stable
14
12
  */
15
13
  readonly transformOptions?: TransformOptions;
16
14
  /**
17
- * (experimental) Escape hatch to provide the bundler with a custom transform function.
18
- *
15
+ * Escape hatch to provide the bundler with a custom transform function.
19
16
  * The function will receive the computed options from the bundler. It can use with these options as it wishes, however a TransformResult must be returned to integrate with CDK.
20
17
  * Must throw a `TransformFailure` on failure to correctly inform the bundler.
21
18
  *
22
- * @returns esbuild.TransformResult
23
- * @default esbuild.transformSync
24
- * @experimental
19
+ * @stability experimental
25
20
  * @type esbuild.transformSync
21
+ * @returns esbuild.TransformResult
26
22
  * @throws esbuild.TransformFailure
23
+ * @default esbuild.transformSync
27
24
  */
28
25
  readonly transformFn?: any;
29
26
  }
@@ -31,16 +28,11 @@ declare abstract class BaseInlineCode extends InlineCode {
31
28
  constructor(code: string, props: TransformerProps);
32
29
  }
33
30
  /**
34
- * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
31
+ * An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
35
32
  *
36
- * @experimental
33
+ * @stability experimental
37
34
  */
38
35
  export declare class InlineJavaScriptCode extends BaseInlineCode {
39
- /**
40
- * @param code The inline code to be transformed.
41
- * @param props Support for `TransformOptions` is deprecated. Please provide `TransformerProps`!
42
- * @experimental
43
- */
44
36
  constructor(
45
37
  /**
46
38
  * The inline code to be transformed.
@@ -62,16 +54,11 @@ export declare class InlineJavaScriptCode extends BaseInlineCode {
62
54
  props?: TransformerProps | TransformOptions);
63
55
  }
64
56
  /**
65
- * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
57
+ * An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
66
58
  *
67
- * @experimental
59
+ * @stability experimental
68
60
  */
69
61
  export declare class InlineJsxCode extends BaseInlineCode {
70
- /**
71
- * @param code The inline code to be transformed.
72
- * @param props Support for `TransformOptions` is deprecated. Please provide `TransformerProps`!
73
- * @experimental
74
- */
75
62
  constructor(
76
63
  /**
77
64
  * The inline code to be transformed.
@@ -93,16 +80,11 @@ export declare class InlineJsxCode extends BaseInlineCode {
93
80
  props?: TransformerProps | TransformOptions);
94
81
  }
95
82
  /**
96
- * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
83
+ * An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
97
84
  *
98
- * @experimental
85
+ * @stability experimental
99
86
  */
100
87
  export declare class InlineTypeScriptCode extends BaseInlineCode {
101
- /**
102
- * @param code The inline code to be transformed.
103
- * @param props Support for `TransformOptions` is deprecated. Please provide `TransformerProps`!
104
- * @experimental
105
- */
106
88
  constructor(
107
89
  /**
108
90
  * The inline code to be transformed.
@@ -124,16 +106,11 @@ export declare class InlineTypeScriptCode extends BaseInlineCode {
124
106
  props?: TransformerProps | TransformOptions);
125
107
  }
126
108
  /**
127
- * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
109
+ * An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
128
110
  *
129
- * @experimental
111
+ * @stability experimental
130
112
  */
131
113
  export declare class InlineTsxCode extends BaseInlineCode {
132
- /**
133
- * @param code The inline code to be transformed.
134
- * @param props Support for `TransformOptions` is deprecated. Please provide `TransformerProps`!
135
- * @experimental
136
- */
137
114
  constructor(
138
115
  /**
139
116
  * The inline code to be transformed.