@angular/compiler 18.1.0-next.1 → 18.1.0-next.3

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 (35) hide show
  1. package/esm2022/src/expression_parser/ast.mjs +1 -1
  2. package/esm2022/src/expression_parser/parser.mjs +4 -2
  3. package/esm2022/src/render3/partial/class_metadata.mjs +2 -2
  4. package/esm2022/src/render3/partial/directive.mjs +1 -1
  5. package/esm2022/src/render3/partial/factory.mjs +1 -1
  6. package/esm2022/src/render3/partial/injectable.mjs +1 -1
  7. package/esm2022/src/render3/partial/injector.mjs +1 -1
  8. package/esm2022/src/render3/partial/ng_module.mjs +1 -1
  9. package/esm2022/src/render3/partial/pipe.mjs +1 -1
  10. package/esm2022/src/render3/r3_identifiers.mjs +4 -1
  11. package/esm2022/src/template/pipeline/ir/src/enums.mjs +45 -29
  12. package/esm2022/src/template/pipeline/ir/src/expression.mjs +60 -12
  13. package/esm2022/src/template/pipeline/ir/src/ops/create.mjs +15 -1
  14. package/esm2022/src/template/pipeline/ir/src/ops/update.mjs +16 -1
  15. package/esm2022/src/template/pipeline/ir/src/traits.mjs +3 -6
  16. package/esm2022/src/template/pipeline/src/emit.mjs +7 -1
  17. package/esm2022/src/template/pipeline/src/ingest.mjs +8 -3
  18. package/esm2022/src/template/pipeline/src/instruction.mjs +10 -1
  19. package/esm2022/src/template/pipeline/src/phases/chaining.mjs +2 -1
  20. package/esm2022/src/template/pipeline/src/phases/generate_advance.mjs +17 -7
  21. package/esm2022/src/template/pipeline/src/phases/generate_local_let_references.mjs +28 -0
  22. package/esm2022/src/template/pipeline/src/phases/generate_variables.mjs +22 -7
  23. package/esm2022/src/template/pipeline/src/phases/next_context_merging.mjs +2 -1
  24. package/esm2022/src/template/pipeline/src/phases/reify.mjs +10 -1
  25. package/esm2022/src/template/pipeline/src/phases/remove_illegal_let_references.mjs +36 -0
  26. package/esm2022/src/template/pipeline/src/phases/resolve_names.mjs +1 -1
  27. package/esm2022/src/template/pipeline/src/phases/save_restore_view.mjs +2 -2
  28. package/esm2022/src/template/pipeline/src/phases/store_let_optimization.mjs +35 -0
  29. package/esm2022/src/template/pipeline/src/phases/var_counting.mjs +4 -1
  30. package/esm2022/src/template/pipeline/src/phases/variable_optimization.mjs +4 -1
  31. package/esm2022/src/version.mjs +1 -1
  32. package/fesm2022/compiler.mjs +304 -69
  33. package/fesm2022/compiler.mjs.map +1 -1
  34. package/index.d.ts +5 -1
  35. package/package.json +2 -2
@@ -24,7 +24,7 @@ const MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION = '18.0.0';
24
24
  export function compileDeclareClassMetadata(metadata) {
25
25
  const definitionMap = new DefinitionMap();
26
26
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
27
- definitionMap.set('version', o.literal('18.1.0-next.1'));
27
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
28
28
  definitionMap.set('ngImport', o.importExpr(R3.core));
29
29
  definitionMap.set('type', metadata.type);
30
30
  definitionMap.set('decorators', metadata.decorators);
@@ -42,7 +42,7 @@ export function compileComponentDeclareClassMetadata(metadata, dependencies) {
42
42
  callbackReturnDefinitionMap.set('ctorParameters', metadata.ctorParameters ?? o.literal(null));
43
43
  callbackReturnDefinitionMap.set('propDecorators', metadata.propDecorators ?? o.literal(null));
44
44
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_DEFER_SUPPORT_VERSION));
45
- definitionMap.set('version', o.literal('18.1.0-next.1'));
45
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
46
46
  definitionMap.set('ngImport', o.importExpr(R3.core));
47
47
  definitionMap.set('type', metadata.type);
48
48
  definitionMap.set('resolveDeferredDeps', compileComponentMetadataAsyncResolver(dependencies));
@@ -28,7 +28,7 @@ export function createDirectiveDefinitionMap(meta) {
28
28
  const definitionMap = new DefinitionMap();
29
29
  const minVersion = getMinimumVersionForPartialOutput(meta);
30
30
  definitionMap.set('minVersion', o.literal(minVersion));
31
- definitionMap.set('version', o.literal('18.1.0-next.1'));
31
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
32
32
  // e.g. `type: MyDirective`
33
33
  definitionMap.set('type', meta.type.value);
34
34
  if (meta.isStandalone) {
@@ -21,7 +21,7 @@ const MINIMUM_PARTIAL_LINKER_VERSION = '12.0.0';
21
21
  export function compileDeclareFactoryFunction(meta) {
22
22
  const definitionMap = new DefinitionMap();
23
23
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
24
- definitionMap.set('version', o.literal('18.1.0-next.1'));
24
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
25
25
  definitionMap.set('ngImport', o.importExpr(R3.core));
26
26
  definitionMap.set('type', meta.type.value);
27
27
  definitionMap.set('deps', compileDependencies(meta.deps));
@@ -34,7 +34,7 @@ export function compileDeclareInjectableFromMetadata(meta) {
34
34
  export function createInjectableDefinitionMap(meta) {
35
35
  const definitionMap = new DefinitionMap();
36
36
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
37
- definitionMap.set('version', o.literal('18.1.0-next.1'));
37
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
38
38
  definitionMap.set('ngImport', o.importExpr(R3.core));
39
39
  definitionMap.set('type', meta.type.value);
40
40
  // Only generate providedIn property if it has a non-null value
@@ -29,7 +29,7 @@ export function compileDeclareInjectorFromMetadata(meta) {
29
29
  function createInjectorDefinitionMap(meta) {
30
30
  const definitionMap = new DefinitionMap();
31
31
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
32
- definitionMap.set('version', o.literal('18.1.0-next.1'));
32
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
33
33
  definitionMap.set('ngImport', o.importExpr(R3.core));
34
34
  definitionMap.set('type', meta.type.value);
35
35
  definitionMap.set('providers', meta.providers);
@@ -33,7 +33,7 @@ function createNgModuleDefinitionMap(meta) {
33
33
  throw new Error('Invalid path! Local compilation mode should not get into the partial compilation path');
34
34
  }
35
35
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
36
- definitionMap.set('version', o.literal('18.1.0-next.1'));
36
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
37
37
  definitionMap.set('ngImport', o.importExpr(R3.core));
38
38
  definitionMap.set('type', meta.type.value);
39
39
  // We only generate the keys in the metadata if the arrays contain values.
@@ -32,7 +32,7 @@ export function compileDeclarePipeFromMetadata(meta) {
32
32
  export function createPipeDefinitionMap(meta) {
33
33
  const definitionMap = new DefinitionMap();
34
34
  definitionMap.set('minVersion', o.literal(MINIMUM_PARTIAL_LINKER_VERSION));
35
- definitionMap.set('version', o.literal('18.1.0-next.1'));
35
+ definitionMap.set('version', o.literal('18.1.0-next.3'));
36
36
  definitionMap.set('ngImport', o.importExpr(R3.core));
37
37
  // e.g. `type: MyPipe`
38
38
  definitionMap.set('type', meta.type.value);
@@ -423,6 +423,9 @@ export class Identifiers {
423
423
  static { this.twoWayProperty = { name: 'ɵɵtwoWayProperty', moduleName: CORE }; }
424
424
  static { this.twoWayBindingSet = { name: 'ɵɵtwoWayBindingSet', moduleName: CORE }; }
425
425
  static { this.twoWayListener = { name: 'ɵɵtwoWayListener', moduleName: CORE }; }
426
+ static { this.declareLet = { name: 'ɵɵdeclareLet', moduleName: CORE }; }
427
+ static { this.storeLet = { name: 'ɵɵstoreLet', moduleName: CORE }; }
428
+ static { this.readContextLet = { name: 'ɵɵreadContextLet', moduleName: CORE }; }
426
429
  static { this.NgOnChangesFeature = { name: 'ɵɵNgOnChangesFeature', moduleName: CORE }; }
427
430
  static { this.InheritDefinitionFeature = {
428
431
  name: 'ɵɵInheritDefinitionFeature',
@@ -474,4 +477,4 @@ export class Identifiers {
474
477
  static { this.UnwrapDirectiveSignalInputs = { name: 'ɵUnwrapDirectiveSignalInputs', moduleName: CORE }; }
475
478
  static { this.unwrapWritableSignal = { name: 'ɵunwrapWritableSignal', moduleName: CORE }; }
476
479
  }
477
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfaWRlbnRpZmllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci9zcmMvcmVuZGVyMy9yM19pZGVudGlmaWVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxNQUFNLElBQUksR0FBRyxlQUFlLENBQUM7QUFFN0IsTUFBTSxPQUFPLFdBQVc7SUFDdEIsYUFBYTthQUNOLGVBQVUsR0FBRyxTQUFTLENBQUM7YUFDdkIscUJBQWdCLEdBQUcsV0FBVyxDQUFDO2FBQy9CLGVBQVUsR0FBRyxhQUFhLENBQUM7YUFFM0IsU0FBSSxHQUF3QixFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO0lBRWxFLGtCQUFrQjthQUNYLGtCQUFhLEdBQXdCLEVBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVqRixvQkFBZSxHQUF3QixFQUFDLElBQUksRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFFckYsaUJBQVksR0FBd0IsRUFBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO2FBRS9FLFlBQU8sR0FBd0IsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVyRSxpQkFBWSxHQUF3QixFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFFL0UsZUFBVSxHQUF3QixFQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO2FBRTNFLFlBQU8sR0FBd0IsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVyRSwwQkFBcUIsR0FBd0I7UUFD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RCxJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLFVBQVUsRUFBRSxJQUFJO0tBQ2pCLENBQUM7YUFDSyxtQkFBYyxHQUF3QixFQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFDbkYsZ0JBQVcsR0FBd0IsRUFBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUM3RSw2QkFBd0IsR0FBd0I7UUFDckQsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxVQUFVLEVBQUUsSUFBSTtLQUNqQixDQUFDO2FBQ0ssc0JBQWlCLEdBQXdCLEVBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUN6Riw2QkFBd0IsR0FBd0I7UUFDckQsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxVQUFVLEVBQUUsSUFBSTtLQUNqQixDQUFDO2FBQ0ssNEJBQXVCLEdBQXdCO1FBQ3BELElBQUksRUFBRSwyQkFBMkI7UUFDakMsVUFBVSxFQUFFLElBQUk7S0FDakIsQ0FBQztJQUVGLGdCQUFnQjthQUNULDhCQUF5QixHQUFHLEVBQUMsSUFBSSxFQUFFLGdDQUFnQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUN2RixnQ0FBMkIsR0FBRyxFQUFDLElBQUksRUFBRSw4QkFBOEIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFDdkYseUJBQW9CLEdBQUcsRUFBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIG8gZnJvbSAnLi4vb3V0cHV0L291dHB1dF9hc3QnO1xuXG5jb25zdCBDT1JFID0gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgSWRlbnRpZmllcnMge1xuICAvKiBNZXRob2RzICovXG4gIHN0YXRpYyBORVdfTUVUSE9EID0gJ2ZhY3RvcnknO1xuICBzdGF0aWMgVFJBTlNGT1JNX01FVEhPRCA9ICd0cmFuc2Zvcm0nO1xuICBzdGF0aWMgUEFUQ0hfREVQUyA9ICdwYXRjaGVkRGVwcyc7XG5cbiAgc3RhdGljIGNvcmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogbnVsbCwgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgLyogSW5zdHJ1Y3Rpb25zICovXG4gIHN0YXRpYyBuYW1lc3BhY2VIVE1MOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmFtZXNwYWNlSFRNTCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBuYW1lc3BhY2VNYXRoTUw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuYW1lc3BhY2VNYXRoTUwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgbmFtZXNwYWNlU1ZHOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmFtZXNwYWNlU1ZHJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVlbGVtZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnRTdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWVsZW1lbnRTdGFydCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBlbGVtZW50RW5kOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZWxlbWVudEVuZCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBhZHZhbmNlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1YWR2YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBzeW50aGV0aWNIb3N0UHJvcGVydHk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzeW50aGV0aWNIb3N0UHJvcGVydHknLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIHN5bnRoZXRpY0hvc3RMaXN0ZW5lcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN5bnRoZXRpY0hvc3RMaXN0ZW5lcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgYXR0cmlidXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1YXR0cmlidXRlJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlOCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgY2xhc3NQcm9wOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1Y2xhc3NQcm9wJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnRDb250YWluZXJTdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWVsZW1lbnRDb250YWluZXJTdGFydCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZWxlbWVudENvbnRhaW5lckVuZDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWVsZW1lbnRDb250YWluZXJFbmQnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGVsZW1lbnRDb250YWluZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVlbGVtZW50Q29udGFpbmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHN0eWxlTWFwOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c3R5bGVNYXAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGUyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGUzJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGU1OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGU2JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGU4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGVWJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBjbGFzc01hcDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWNsYXNzTWFwJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGUxOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTEnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGUyJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZTM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGU0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTQnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGU1JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZTY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGU3OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTcnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGU4JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZVY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgc3R5bGVQcm9wOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c3R5bGVQcm9wJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlOCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgbmV4dENvbnRleHQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuZXh0Q29udGV4dCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZXNldFZpZXc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNldFZpZXcnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgdGVtcGxhdGVDcmVhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZW1wbGF0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBkZWZlcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlcldoZW46IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlcldoZW4nLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25JZGxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJPbklkbGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25JbW1lZGlhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uSW1tZWRpYXRlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlck9uVGltZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uVGltZXInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25Ib3Zlcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmVyT25Ib3ZlcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVmZXJPbkludGVyYWN0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJPbkludGVyYWN0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlck9uVmlld3BvcnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uVmlld3BvcnQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hXaGVuOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaFdoZW4nLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hPbklkbGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25JZGxlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uSW1tZWRpYXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaE9uSW1tZWRpYXRlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uVGltZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25UaW1lcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hPbkhvdmVyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaE9uSG92ZXInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBkZWZlclByZWZldGNoT25JbnRlcmFjdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWRlZmVyUHJlZmV0Y2hPbkludGVyYWN0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uVmlld3BvcnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25WaWV3cG9ydCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGRlZmVyRW5hYmxlVGltZXJTY2hlZHVsaW5nOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJFbmFibGVUaW1lclNjaGVkdWxpbmcnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGNvbmRpdGlvbmFsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1Y29uZGl0aW9uYWwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVwZWF0ZXInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyQ3JlYXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVwZWF0ZXJDcmVhdGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyVHJhY2tCeUluZGV4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cmVwZWF0ZXJUcmFja0J5SW5kZXgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyByZXBlYXRlclRyYWNrQnlJZGVudGl0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXJlcGVhdGVyVHJhY2tCeUlkZW50aXR5JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY29tcG9uZW50SW5zdGFuY2U6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb21wb25lbnRJbnN0YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyB0ZXh0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBlbmFibGVCaW5kaW5nczogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWVuYWJsZUJpbmRpbmdzJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRpc2FibGVCaW5kaW5nczogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRpc2FibGVCaW5kaW5ncycsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBnZXRDdXJyZW50Vmlldzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWdldEN1cnJlbnRWaWV3JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTEnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGUyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGUzOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlMycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGU1JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGU2OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlNicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTcnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTg6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGU4JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGVWOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlVicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZXN0b3JlVmlldzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXJlc3RvcmVWaWV3JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHB1cmVGdW5jdGlvbjA6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb24wJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb24xOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uMScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvbjM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb24zJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb240OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uNCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvbjY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb242JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb243OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uNycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjgnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvblY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb25WJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHBpcGVCaW5kMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXBpcGVCaW5kMScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcGlwZUJpbmQyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cGlwZUJpbmQyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwaXBlQmluZDM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwaXBlQmluZDMnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHBpcGVCaW5kNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXBpcGVCaW5kNCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcGlwZUJpbmRWOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cGlwZUJpbmRWJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGhvc3RQcm9wZXJ0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWhvc3RQcm9wZXJ0eScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBwcm9wZXJ0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXByb3BlcnR5JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGUyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGUzJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU1OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGU2JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGVWJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBpMThuOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aTE4bicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkF0dHJpYnV0ZXM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVpMThuQXR0cmlidXRlcycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkV4cDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5FeHAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGkxOG5TdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5TdGFydCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkVuZDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5FbmQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGkxOG5BcHBseTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5BcHBseScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4blBvc3Rwcm9jZXNzOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aTE4blBvc3Rwcm9jZXNzJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHBpcGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwaXBlJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHByb2plY3Rpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwcm9qZWN0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwcm9qZWN0aW9uRGVmOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHJvamVjdGlvbkRlZicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZWZlcmVuY2U6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZWZlcmVuY2UnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgaW5qZWN0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW5qZWN0JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGluamVjdEF0dHJpYnV0ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWluamVjdEF0dHJpYnV0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBkaXJlY3RpdmVJbmplY3Q6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkaXJlY3RpdmVJbmplY3QnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGludmFsaWRGYWN0b3J5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW52YWxpZEZhY3RvcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGludmFsaWRGYWN0b3J5RGVwOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW52YWxpZEZhY3RvcnlEZXAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgdGVtcGxhdGVSZWZFeHRyYWN0b3I6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybV0ZW1wbGF0ZVJlZkV4dHJhY3RvcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZm9yd2FyZFJlZjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnZm9yd2FyZFJlZicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcmVzb2x2ZUZvcndhcmRSZWY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ3Jlc29sdmVGb3J3YXJkUmVmJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIMm1ybVkZWZpbmVJbmplY3RhYmxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lSW5qZWN0YWJsZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZUluamVjdGFibGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuZ0RlY2xhcmVJbmplY3RhYmxlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBJbmplY3RhYmxlRGVjbGFyYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVJbmplY3RhYmxlRGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIHJlc29sdmVXaW5kb3c6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNvbHZlV2luZG93JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyByZXNvbHZlRG9jdW1lbnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNvbHZlRG9jdW1lbnQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlc29sdmVCb2R5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVzb2x2ZUJvZHknLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgZ2V0Q29tcG9uZW50RGVwc0ZhY3Rvcnk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVnZXRDb21wb25lbnREZXBzRmFjdG9yeScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZGVmaW5lQ29tcG9uZW50OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lQ29tcG9uZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWNsYXJlQ29tcG9uZW50OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmdEZWNsYXJlQ29tcG9uZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHNldENvbXBvbmVudFNjb3BlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c2V0Q29tcG9uZW50U2NvcGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3k6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ0NoYW5nZURldGVjdGlvblN0cmF0ZWd5JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgVmlld0VuY2Fwc3VsYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ1ZpZXdFbmNhcHN1bGF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBDb21wb25lbnREZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtUNvbXBvbmVudERlY2xhcmF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBGYWN0b3J5RGVjbGFyYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVGYWN0b3J5RGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBkZWNsYXJlRmFjdG9yeTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZUZhY3RvcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIEZhY3RvcnlUYXJnZXQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVGYWN0b3J5VGFyZ2V0JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRlZmluZURpcmVjdGl2ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmluZURpcmVjdGl2ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZURpcmVjdGl2ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZURpcmVjdGl2ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBEaXJlY3RpdmVEZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtURpcmVjdGl2ZURlY2xhcmF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBJbmplY3RvckRlZjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtUluamVjdG9yRGVmJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBJbmplY3RvckRlY2xhcmF0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1SW5qZWN0b3JEZWNsYXJhdGlvbicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZGVmaW5lSW5qZWN0b3I6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZpbmVJbmplY3RvcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZUluamVjdG9yOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmdEZWNsYXJlSW5qZWN0b3InLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgTmdNb2R1bGVEZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtU5nTW9kdWxlRGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIE1vZHVsZVdpdGhQcm92aWRlcnM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ01vZHVsZVdpdGhQcm92aWRlcnMnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGRlZmluZU5nTW9kdWxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lTmdNb2R1bGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlY2xhcmVOZ01vZHVsZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZU5nTW9kdWxlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBzZXROZ01vZHVsZVNjb3BlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c2V0TmdNb2R1bGVTY29wZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcmVnaXN0ZXJOZ01vZHVsZVR5cGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVyZWdpc3Rlck5nTW9kdWxlVHlwZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgUGlwZURlY2xhcmF0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1UGlwZURlY2xhcmF0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRlZmluZVBpcGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZpbmVQaXBlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWNsYXJlUGlwZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZVBpcGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgZGVjbGFyZUNsYXNzTWV0YWRhdGE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVuZ0RlY2xhcmVDbGFzc01ldGFkYXRhJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVjbGFyZUNsYXNzTWV0YWRhdGFBc3luYzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtW5nRGVjbGFyZUNsYXNzTWV0YWRhdGFBc3luYycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHNldENsYXNzTWV0YWRhdGE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1c2V0Q2xhc3NNZXRhZGF0YScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2V0Q2xhc3NNZXRhZGF0YUFzeW5jOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtXNldENsYXNzTWV0YWRhdGFBc3luYycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHNldENsYXNzRGVidWdJbmZvOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtXNldENsYXNzRGVidWdJbmZvJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBxdWVyeVJlZnJlc2g6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVxdWVyeVJlZnJlc2gnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHZpZXdRdWVyeTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXZpZXdRdWVyeScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgbG9hZFF1ZXJ5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bG9hZFF1ZXJ5JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBjb250ZW50UXVlcnk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb250ZW50UXVlcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICAvLyBTaWduYWwgcXVlcmllc1xuICBzdGF0aWMgdmlld1F1ZXJ5U2lnbmFsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dmlld1F1ZXJ5U2lnbmFsJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBjb250ZW50UXVlcnlTaWduYWw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb250ZW50UXVlcnlTaWduYWwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHF1ZXJ5QWR2YW5jZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXF1ZXJ5QWR2YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIC8vIFR3by13YXkgYmluZGluZ3NcbiAgc3RhdGljIHR3b1dheVByb3BlcnR5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dHdvV2F5UHJvcGVydHknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHR3b1dheUJpbmRpbmdTZXQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0d29XYXlCaW5kaW5nU2V0JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0d29XYXlMaXN0ZW5lcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXR3b1dheUxpc3RlbmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIE5nT25DaGFuZ2VzRmVhdHVyZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtU5nT25DaGFuZ2VzRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBJbmhlcml0RGVmaW5pdGlvbkZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVJbmhlcml0RGVmaW5pdGlvbkZlYXR1cmUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIENvcHlEZWZpbml0aW9uRmVhdHVyZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtUNvcHlEZWZpbml0aW9uRmVhdHVyZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgU3RhbmRhbG9uZUZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVTdGFuZGFsb25lRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBQcm92aWRlcnNGZWF0dXJlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1UHJvdmlkZXJzRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBIb3N0RGlyZWN0aXZlc0ZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVIb3N0RGlyZWN0aXZlc0ZlYXR1cmUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIElucHV0VHJhbnNmb3Jtc0ZlYXR1cmVGZWF0dXJlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1SW5wdXRUcmFuc2Zvcm1zRmVhdHVyZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgbGlzdGVuZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVsaXN0ZW5lcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBnZXRJbmhlcml0ZWRGYWN0b3J5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Z2V0SW5oZXJpdGVkRmFjdG9yeScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICAvLyBzYW5pdGl6YXRpb24tcmVsYXRlZCBmdW5jdGlvbnNcbiAgc3RhdGljIHNhbml0aXplSHRtbDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXNhbml0aXplSHRtbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVTdHlsZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXNhbml0aXplU3R5bGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHNhbml0aXplUmVzb3VyY2VVcmw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzYW5pdGl6ZVJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc2FuaXRpemVTY3JpcHQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVzYW5pdGl6ZVNjcmlwdCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVVcmw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVzYW5pdGl6ZVVybCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVVcmxPclJlc291cmNlVXJsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c2FuaXRpemVVcmxPclJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgdHJ1c3RDb25zdGFudEh0bWw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0cnVzdENvbnN0YW50SHRtbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdHJ1c3RDb25zdGFudFJlc291cmNlVXJsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1dHJ1c3RDb25zdGFudFJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgdmFsaWRhdGVJZnJhbWVBdHRyaWJ1dGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybV2YWxpZGF0ZUlmcmFtZUF0dHJpYnV0ZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICAvLyB0eXBlLWNoZWNraW5nXG4gIHN0YXRpYyBJbnB1dFNpZ25hbEJyYW5kV3JpdGVUeXBlID0ge25hbWU6ICfJtUlOUFVUX1NJR05BTF9CUkFORF9XUklURV9UWVBFJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBVbndyYXBEaXJlY3RpdmVTaWduYWxJbnB1dHMgPSB7bmFtZTogJ8m1VW53cmFwRGlyZWN0aXZlU2lnbmFsSW5wdXRzJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB1bndyYXBXcml0YWJsZVNpZ25hbCA9IHtuYW1lOiAnybV1bndyYXBXcml0YWJsZVNpZ25hbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xufVxuIl19
480
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfaWRlbnRpZmllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci9zcmMvcmVuZGVyMy9yM19pZGVudGlmaWVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxNQUFNLElBQUksR0FBRyxlQUFlLENBQUM7QUFFN0IsTUFBTSxPQUFPLFdBQVc7SUFDdEIsYUFBYTthQUNOLGVBQVUsR0FBRyxTQUFTLENBQUM7YUFDdkIscUJBQWdCLEdBQUcsV0FBVyxDQUFDO2FBQy9CLGVBQVUsR0FBRyxhQUFhLENBQUM7YUFFM0IsU0FBSSxHQUF3QixFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO0lBRWxFLGtCQUFrQjthQUNYLGtCQUFhLEdBQXdCLEVBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVqRixvQkFBZSxHQUF3QixFQUFDLElBQUksRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFFckYsaUJBQVksR0FBd0IsRUFBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO2FBRS9FLFlBQU8sR0FBd0IsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVyRSxpQkFBWSxHQUF3QixFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7YUFFL0UsZUFBVSxHQUF3QixFQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDO2FBRTNFLFlBQU8sR0FBd0IsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQzthQUVyRSwwQkFBcUIsR0FBd0I7UUFD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QUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIG8gZnJvbSAnLi4vb3V0cHV0L291dHB1dF9hc3QnO1xuXG5jb25zdCBDT1JFID0gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgSWRlbnRpZmllcnMge1xuICAvKiBNZXRob2RzICovXG4gIHN0YXRpYyBORVdfTUVUSE9EID0gJ2ZhY3RvcnknO1xuICBzdGF0aWMgVFJBTlNGT1JNX01FVEhPRCA9ICd0cmFuc2Zvcm0nO1xuICBzdGF0aWMgUEFUQ0hfREVQUyA9ICdwYXRjaGVkRGVwcyc7XG5cbiAgc3RhdGljIGNvcmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogbnVsbCwgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgLyogSW5zdHJ1Y3Rpb25zICovXG4gIHN0YXRpYyBuYW1lc3BhY2VIVE1MOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmFtZXNwYWNlSFRNTCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBuYW1lc3BhY2VNYXRoTUw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuYW1lc3BhY2VNYXRoTUwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgbmFtZXNwYWNlU1ZHOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmFtZXNwYWNlU1ZHJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVlbGVtZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnRTdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWVsZW1lbnRTdGFydCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBlbGVtZW50RW5kOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZWxlbWVudEVuZCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBhZHZhbmNlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1YWR2YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBzeW50aGV0aWNIb3N0UHJvcGVydHk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzeW50aGV0aWNIb3N0UHJvcGVydHknLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIHN5bnRoZXRpY0hvc3RMaXN0ZW5lcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN5bnRoZXRpY0hvc3RMaXN0ZW5lcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgYXR0cmlidXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1YXR0cmlidXRlJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlOCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGF0dHJpYnV0ZUludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWF0dHJpYnV0ZUludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgY2xhc3NQcm9wOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1Y2xhc3NQcm9wJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGVsZW1lbnRDb250YWluZXJTdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWVsZW1lbnRDb250YWluZXJTdGFydCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZWxlbWVudENvbnRhaW5lckVuZDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWVsZW1lbnRDb250YWluZXJFbmQnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGVsZW1lbnRDb250YWluZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVlbGVtZW50Q29udGFpbmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHN0eWxlTWFwOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c3R5bGVNYXAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGUyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGUzJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGU1OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGU2JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc3R5bGVNYXBJbnRlcnBvbGF0ZTc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzdHlsZU1hcEludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlTWFwSW50ZXJwb2xhdGU4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c3R5bGVNYXBJbnRlcnBvbGF0ZTgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBzdHlsZU1hcEludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlTWFwSW50ZXJwb2xhdGVWJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBjbGFzc01hcDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWNsYXNzTWFwJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGUxOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTEnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGUyJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZTM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGU0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTQnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGU1JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZTY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGNsYXNzTWFwSW50ZXJwb2xhdGU3OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Y2xhc3NNYXBJbnRlcnBvbGF0ZTcnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBjbGFzc01hcEludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWNsYXNzTWFwSW50ZXJwb2xhdGU4JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY2xhc3NNYXBJbnRlcnBvbGF0ZVY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVjbGFzc01hcEludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgc3R5bGVQcm9wOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c3R5bGVQcm9wJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlMycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlOCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHN0eWxlUHJvcEludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXN0eWxlUHJvcEludGVycG9sYXRlVicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgbmV4dENvbnRleHQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuZXh0Q29udGV4dCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZXNldFZpZXc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNldFZpZXcnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgdGVtcGxhdGVDcmVhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZW1wbGF0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBkZWZlcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlcldoZW46IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlcldoZW4nLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25JZGxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJPbklkbGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25JbW1lZGlhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uSW1tZWRpYXRlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlck9uVGltZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uVGltZXInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyT25Ib3Zlcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmVyT25Ib3ZlcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVmZXJPbkludGVyYWN0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJPbkludGVyYWN0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWZlck9uVmlld3BvcnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZlck9uVmlld3BvcnQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hXaGVuOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaFdoZW4nLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hPbklkbGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25JZGxlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uSW1tZWRpYXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaE9uSW1tZWRpYXRlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uVGltZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25UaW1lcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGRlZmVyUHJlZmV0Y2hPbkhvdmVyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJQcmVmZXRjaE9uSG92ZXInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBkZWZlclByZWZldGNoT25JbnRlcmFjdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtWRlZmVyUHJlZmV0Y2hPbkludGVyYWN0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVmZXJQcmVmZXRjaE9uVmlld3BvcnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVkZWZlclByZWZldGNoT25WaWV3cG9ydCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIGRlZmVyRW5hYmxlVGltZXJTY2hlZHVsaW5nOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1ZGVmZXJFbmFibGVUaW1lclNjaGVkdWxpbmcnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGNvbmRpdGlvbmFsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1Y29uZGl0aW9uYWwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVwZWF0ZXInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyQ3JlYXRlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVwZWF0ZXJDcmVhdGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlcGVhdGVyVHJhY2tCeUluZGV4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cmVwZWF0ZXJUcmFja0J5SW5kZXgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyByZXBlYXRlclRyYWNrQnlJZGVudGl0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXJlcGVhdGVyVHJhY2tCeUlkZW50aXR5JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgY29tcG9uZW50SW5zdGFuY2U6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb21wb25lbnRJbnN0YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyB0ZXh0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBlbmFibGVCaW5kaW5nczogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWVuYWJsZUJpbmRpbmdzJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRpc2FibGVCaW5kaW5nczogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRpc2FibGVCaW5kaW5ncycsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBnZXRDdXJyZW50Vmlldzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWdldEN1cnJlbnRWaWV3JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTEnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGUyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGUzOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlMycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGU1JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGU2OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlNicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdGV4dEludGVycG9sYXRlNzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXRleHRJbnRlcnBvbGF0ZTcnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHRleHRJbnRlcnBvbGF0ZTg6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0ZXh0SW50ZXJwb2xhdGU4JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0ZXh0SW50ZXJwb2xhdGVWOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dGV4dEludGVycG9sYXRlVicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZXN0b3JlVmlldzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXJlc3RvcmVWaWV3JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHB1cmVGdW5jdGlvbjA6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb24wJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb24xOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uMScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uMjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjInLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvbjM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb24zJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb240OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uNCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uNTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvbjY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb242JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwdXJlRnVuY3Rpb243OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHVyZUZ1bmN0aW9uNycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcHVyZUZ1bmN0aW9uODogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXB1cmVGdW5jdGlvbjgnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHB1cmVGdW5jdGlvblY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwdXJlRnVuY3Rpb25WJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHBpcGVCaW5kMTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXBpcGVCaW5kMScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcGlwZUJpbmQyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cGlwZUJpbmQyJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwaXBlQmluZDM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwaXBlQmluZDMnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHBpcGVCaW5kNDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXBpcGVCaW5kNCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcGlwZUJpbmRWOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cGlwZUJpbmRWJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGhvc3RQcm9wZXJ0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWhvc3RQcm9wZXJ0eScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBwcm9wZXJ0eTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXByb3BlcnR5JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlMScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGUyOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTInLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlMzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGUzJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlNCcsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU1OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlNjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGU2JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgcHJvcGVydHlJbnRlcnBvbGF0ZTc6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVwcm9wZXJ0eUludGVycG9sYXRlNycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHByb3BlcnR5SW50ZXJwb2xhdGU4OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1cHJvcGVydHlJbnRlcnBvbGF0ZTgnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBwcm9wZXJ0eUludGVycG9sYXRlVjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtXByb3BlcnR5SW50ZXJwb2xhdGVWJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBpMThuOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aTE4bicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkF0dHJpYnV0ZXM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVpMThuQXR0cmlidXRlcycsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkV4cDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5FeHAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGkxOG5TdGFydDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5TdGFydCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4bkVuZDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5FbmQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGkxOG5BcHBseTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWkxOG5BcHBseScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgaTE4blBvc3Rwcm9jZXNzOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aTE4blBvc3Rwcm9jZXNzJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHBpcGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwaXBlJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHByb2plY3Rpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVwcm9qZWN0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBwcm9qZWN0aW9uRGVmOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cHJvamVjdGlvbkRlZicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyByZWZlcmVuY2U6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZWZlcmVuY2UnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgaW5qZWN0OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW5qZWN0JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGluamVjdEF0dHJpYnV0ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWluamVjdEF0dHJpYnV0ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBkaXJlY3RpdmVJbmplY3Q6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkaXJlY3RpdmVJbmplY3QnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGludmFsaWRGYWN0b3J5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW52YWxpZEZhY3RvcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGludmFsaWRGYWN0b3J5RGVwOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1aW52YWxpZEZhY3RvcnlEZXAnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgdGVtcGxhdGVSZWZFeHRyYWN0b3I6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybV0ZW1wbGF0ZVJlZkV4dHJhY3RvcicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZm9yd2FyZFJlZjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnZm9yd2FyZFJlZicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcmVzb2x2ZUZvcndhcmRSZWY6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ3Jlc29sdmVGb3J3YXJkUmVmJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIMm1ybVkZWZpbmVJbmplY3RhYmxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lSW5qZWN0YWJsZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZUluamVjdGFibGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVuZ0RlY2xhcmVJbmplY3RhYmxlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBJbmplY3RhYmxlRGVjbGFyYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVJbmplY3RhYmxlRGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIHJlc29sdmVXaW5kb3c6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNvbHZlV2luZG93JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyByZXNvbHZlRG9jdW1lbnQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVyZXNvbHZlRG9jdW1lbnQnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHJlc29sdmVCb2R5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1cmVzb2x2ZUJvZHknLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgZ2V0Q29tcG9uZW50RGVwc0ZhY3Rvcnk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVnZXRDb21wb25lbnREZXBzRmFjdG9yeScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZGVmaW5lQ29tcG9uZW50OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lQ29tcG9uZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWNsYXJlQ29tcG9uZW50OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmdEZWNsYXJlQ29tcG9uZW50JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIHNldENvbXBvbmVudFNjb3BlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c2V0Q29tcG9uZW50U2NvcGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3k6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ0NoYW5nZURldGVjdGlvblN0cmF0ZWd5JyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgVmlld0VuY2Fwc3VsYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ1ZpZXdFbmNhcHN1bGF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBDb21wb25lbnREZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtUNvbXBvbmVudERlY2xhcmF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBGYWN0b3J5RGVjbGFyYXRpb246IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVGYWN0b3J5RGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG4gIHN0YXRpYyBkZWNsYXJlRmFjdG9yeTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZUZhY3RvcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIEZhY3RvcnlUYXJnZXQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVGYWN0b3J5VGFyZ2V0JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRlZmluZURpcmVjdGl2ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtWRlZmluZURpcmVjdGl2ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZURpcmVjdGl2ZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZURpcmVjdGl2ZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBEaXJlY3RpdmVEZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtURpcmVjdGl2ZURlY2xhcmF0aW9uJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuXG4gIHN0YXRpYyBJbmplY3RvckRlZjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtUluamVjdG9yRGVmJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBJbmplY3RvckRlY2xhcmF0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1SW5qZWN0b3JEZWNsYXJhdGlvbicsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgZGVmaW5lSW5qZWN0b3I6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZpbmVJbmplY3RvcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgZGVjbGFyZUluamVjdG9yOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bmdEZWNsYXJlSW5qZWN0b3InLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgTmdNb2R1bGVEZWNsYXJhdGlvbjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtU5nTW9kdWxlRGVjbGFyYXRpb24nLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIE1vZHVsZVdpdGhQcm92aWRlcnM6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ01vZHVsZVdpdGhQcm92aWRlcnMnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIGRlZmluZU5nTW9kdWxlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1ZGVmaW5lTmdNb2R1bGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIGRlY2xhcmVOZ01vZHVsZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZU5nTW9kdWxlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBzZXROZ01vZHVsZVNjb3BlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1c2V0TmdNb2R1bGVTY29wZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgcmVnaXN0ZXJOZ01vZHVsZVR5cGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVyZWdpc3Rlck5nTW9kdWxlVHlwZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgUGlwZURlY2xhcmF0aW9uOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1UGlwZURlY2xhcmF0aW9uJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRlZmluZVBpcGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWZpbmVQaXBlJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBkZWNsYXJlUGlwZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtW5nRGVjbGFyZVBpcGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICBzdGF0aWMgZGVjbGFyZUNsYXNzTWV0YWRhdGE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVuZ0RlY2xhcmVDbGFzc01ldGFkYXRhJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgZGVjbGFyZUNsYXNzTWV0YWRhdGFBc3luYzogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtW5nRGVjbGFyZUNsYXNzTWV0YWRhdGFBc3luYycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHNldENsYXNzTWV0YWRhdGE6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1c2V0Q2xhc3NNZXRhZGF0YScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2V0Q2xhc3NNZXRhZGF0YUFzeW5jOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtXNldENsYXNzTWV0YWRhdGFBc3luYycsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcbiAgc3RhdGljIHNldENsYXNzRGVidWdJbmZvOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtXNldENsYXNzRGVidWdJbmZvJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBxdWVyeVJlZnJlc2g6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVxdWVyeVJlZnJlc2gnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHZpZXdRdWVyeTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXZpZXdRdWVyeScsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgbG9hZFF1ZXJ5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1bG9hZFF1ZXJ5JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBjb250ZW50UXVlcnk6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb250ZW50UXVlcnknLCBtb2R1bGVOYW1lOiBDT1JFfTtcblxuICAvLyBTaWduYWwgcXVlcmllc1xuICBzdGF0aWMgdmlld1F1ZXJ5U2lnbmFsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dmlld1F1ZXJ5U2lnbmFsJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBjb250ZW50UXVlcnlTaWduYWw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVjb250ZW50UXVlcnlTaWduYWwnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHF1ZXJ5QWR2YW5jZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXF1ZXJ5QWR2YW5jZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIC8vIFR3by13YXkgYmluZGluZ3NcbiAgc3RhdGljIHR3b1dheVByb3BlcnR5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1dHdvV2F5UHJvcGVydHknLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHR3b1dheUJpbmRpbmdTZXQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0d29XYXlCaW5kaW5nU2V0JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB0d29XYXlMaXN0ZW5lcjogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXR3b1dheUxpc3RlbmVyJywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIGRlY2xhcmVMZXQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVkZWNsYXJlTGV0JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBzdG9yZUxldDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXN0b3JlTGV0JywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyByZWFkQ29udGV4dExldDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXJlYWRDb250ZXh0TGV0JywgbW9kdWxlTmFtZTogQ09SRX07XG5cbiAgc3RhdGljIE5nT25DaGFuZ2VzRmVhdHVyZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtU5nT25DaGFuZ2VzRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBJbmhlcml0RGVmaW5pdGlvbkZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVJbmhlcml0RGVmaW5pdGlvbkZlYXR1cmUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIENvcHlEZWZpbml0aW9uRmVhdHVyZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtcbiAgICBuYW1lOiAnybXJtUNvcHlEZWZpbml0aW9uRmVhdHVyZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgU3RhbmRhbG9uZUZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVTdGFuZGFsb25lRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBQcm92aWRlcnNGZWF0dXJlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge25hbWU6ICfJtcm1UHJvdmlkZXJzRmVhdHVyZScsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBIb3N0RGlyZWN0aXZlc0ZlYXR1cmU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVIb3N0RGlyZWN0aXZlc0ZlYXR1cmUnLFxuICAgIG1vZHVsZU5hbWU6IENPUkUsXG4gIH07XG5cbiAgc3RhdGljIElucHV0VHJhbnNmb3Jtc0ZlYXR1cmVGZWF0dXJlOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1SW5wdXRUcmFuc2Zvcm1zRmVhdHVyZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICBzdGF0aWMgbGlzdGVuZXI6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVsaXN0ZW5lcicsIG1vZHVsZU5hbWU6IENPUkV9O1xuXG4gIHN0YXRpYyBnZXRJbmhlcml0ZWRGYWN0b3J5OiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1Z2V0SW5oZXJpdGVkRmFjdG9yeScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICAvLyBzYW5pdGl6YXRpb24tcmVsYXRlZCBmdW5jdGlvbnNcbiAgc3RhdGljIHNhbml0aXplSHRtbDogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXNhbml0aXplSHRtbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVTdHlsZTogby5FeHRlcm5hbFJlZmVyZW5jZSA9IHtuYW1lOiAnybXJtXNhbml0aXplU3R5bGUnLCBtb2R1bGVOYW1lOiBDT1JFfTtcbiAgc3RhdGljIHNhbml0aXplUmVzb3VyY2VVcmw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybVzYW5pdGl6ZVJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgc2FuaXRpemVTY3JpcHQ6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVzYW5pdGl6ZVNjcmlwdCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVVcmw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybVzYW5pdGl6ZVVybCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgc2FuaXRpemVVcmxPclJlc291cmNlVXJsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1c2FuaXRpemVVcmxPclJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgdHJ1c3RDb25zdGFudEh0bWw6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7bmFtZTogJ8m1ybV0cnVzdENvbnN0YW50SHRtbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xuICBzdGF0aWMgdHJ1c3RDb25zdGFudFJlc291cmNlVXJsOiBvLkV4dGVybmFsUmVmZXJlbmNlID0ge1xuICAgIG5hbWU6ICfJtcm1dHJ1c3RDb25zdGFudFJlc291cmNlVXJsJyxcbiAgICBtb2R1bGVOYW1lOiBDT1JFLFxuICB9O1xuICBzdGF0aWMgdmFsaWRhdGVJZnJhbWVBdHRyaWJ1dGU6IG8uRXh0ZXJuYWxSZWZlcmVuY2UgPSB7XG4gICAgbmFtZTogJ8m1ybV2YWxpZGF0ZUlmcmFtZUF0dHJpYnV0ZScsXG4gICAgbW9kdWxlTmFtZTogQ09SRSxcbiAgfTtcblxuICAvLyB0eXBlLWNoZWNraW5nXG4gIHN0YXRpYyBJbnB1dFNpZ25hbEJyYW5kV3JpdGVUeXBlID0ge25hbWU6ICfJtUlOUFVUX1NJR05BTF9CUkFORF9XUklURV9UWVBFJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyBVbndyYXBEaXJlY3RpdmVTaWduYWxJbnB1dHMgPSB7bmFtZTogJ8m1VW53cmFwRGlyZWN0aXZlU2lnbmFsSW5wdXRzJywgbW9kdWxlTmFtZTogQ09SRX07XG4gIHN0YXRpYyB1bndyYXBXcml0YWJsZVNpZ25hbCA9IHtuYW1lOiAnybV1bndyYXBXcml0YWJsZVNpZ25hbCcsIG1vZHVsZU5hbWU6IENPUkV9O1xufVxuIl19
@@ -167,46 +167,54 @@ export var OpKind;
167
167
  * An operation declaring the event side of a two-way binding.
168
168
  */
169
169
  OpKind[OpKind["TwoWayListener"] = 37] = "TwoWayListener";
170
+ /**
171
+ * A creation-time operation that initializes the slot for a `@let` declaration.
172
+ */
173
+ OpKind[OpKind["DeclareLet"] = 38] = "DeclareLet";
174
+ /**
175
+ * An update-time operation that stores the current value of a `@let` declaration.
176
+ */
177
+ OpKind[OpKind["StoreLet"] = 39] = "StoreLet";
170
178
  /**
171
179
  * The start of an i18n block.
172
180
  */
173
- OpKind[OpKind["I18nStart"] = 38] = "I18nStart";
181
+ OpKind[OpKind["I18nStart"] = 40] = "I18nStart";
174
182
  /**
175
183
  * A self-closing i18n on a single element.
176
184
  */
177
- OpKind[OpKind["I18n"] = 39] = "I18n";
185
+ OpKind[OpKind["I18n"] = 41] = "I18n";
178
186
  /**
179
187
  * The end of an i18n block.
180
188
  */
181
- OpKind[OpKind["I18nEnd"] = 40] = "I18nEnd";
189
+ OpKind[OpKind["I18nEnd"] = 42] = "I18nEnd";
182
190
  /**
183
191
  * An expression in an i18n message.
184
192
  */
185
- OpKind[OpKind["I18nExpression"] = 41] = "I18nExpression";
193
+ OpKind[OpKind["I18nExpression"] = 43] = "I18nExpression";
186
194
  /**
187
195
  * An instruction that applies a set of i18n expressions.
188
196
  */
189
- OpKind[OpKind["I18nApply"] = 42] = "I18nApply";
197
+ OpKind[OpKind["I18nApply"] = 44] = "I18nApply";
190
198
  /**
191
199
  * An instruction to create an ICU expression.
192
200
  */
193
- OpKind[OpKind["IcuStart"] = 43] = "IcuStart";
201
+ OpKind[OpKind["IcuStart"] = 45] = "IcuStart";
194
202
  /**
195
203
  * An instruction to update an ICU expression.
196
204
  */
197
- OpKind[OpKind["IcuEnd"] = 44] = "IcuEnd";
205
+ OpKind[OpKind["IcuEnd"] = 46] = "IcuEnd";
198
206
  /**
199
207
  * An instruction representing a placeholder in an ICU expression.
200
208
  */
201
- OpKind[OpKind["IcuPlaceholder"] = 45] = "IcuPlaceholder";
209
+ OpKind[OpKind["IcuPlaceholder"] = 47] = "IcuPlaceholder";
202
210
  /**
203
211
  * An i18n context containing information needed to generate an i18n message.
204
212
  */
205
- OpKind[OpKind["I18nContext"] = 46] = "I18nContext";
213
+ OpKind[OpKind["I18nContext"] = 48] = "I18nContext";
206
214
  /**
207
215
  * A creation op that corresponds to i18n attributes on an element.
208
216
  */
209
- OpKind[OpKind["I18nAttributes"] = 47] = "I18nAttributes";
217
+ OpKind[OpKind["I18nAttributes"] = 49] = "I18nAttributes";
210
218
  })(OpKind || (OpKind = {}));
211
219
  /**
212
220
  * Distinguishes different kinds of IR expressions.
@@ -237,78 +245,86 @@ export var ExpressionKind;
237
245
  * Runtime operation to retrieve the value of a local reference.
238
246
  */
239
247
  ExpressionKind[ExpressionKind["Reference"] = 5] = "Reference";
248
+ /**
249
+ * A call storing the value of a `@let` declaration.
250
+ */
251
+ ExpressionKind[ExpressionKind["StoreLet"] = 6] = "StoreLet";
252
+ /**
253
+ * A reference to a `@let` declaration read from the context view.
254
+ */
255
+ ExpressionKind[ExpressionKind["ContextLetReference"] = 7] = "ContextLetReference";
240
256
  /**
241
257
  * Runtime operation to snapshot the current view context.
242
258
  */
243
- ExpressionKind[ExpressionKind["GetCurrentView"] = 6] = "GetCurrentView";
259
+ ExpressionKind[ExpressionKind["GetCurrentView"] = 8] = "GetCurrentView";
244
260
  /**
245
261
  * Runtime operation to restore a snapshotted view.
246
262
  */
247
- ExpressionKind[ExpressionKind["RestoreView"] = 7] = "RestoreView";
263
+ ExpressionKind[ExpressionKind["RestoreView"] = 9] = "RestoreView";
248
264
  /**
249
265
  * Runtime operation to reset the current view context after `RestoreView`.
250
266
  */
251
- ExpressionKind[ExpressionKind["ResetView"] = 8] = "ResetView";
267
+ ExpressionKind[ExpressionKind["ResetView"] = 10] = "ResetView";
252
268
  /**
253
269
  * Defines and calls a function with change-detected arguments.
254
270
  */
255
- ExpressionKind[ExpressionKind["PureFunctionExpr"] = 9] = "PureFunctionExpr";
271
+ ExpressionKind[ExpressionKind["PureFunctionExpr"] = 11] = "PureFunctionExpr";
256
272
  /**
257
273
  * Indicates a positional parameter to a pure function definition.
258
274
  */
259
- ExpressionKind[ExpressionKind["PureFunctionParameterExpr"] = 10] = "PureFunctionParameterExpr";
275
+ ExpressionKind[ExpressionKind["PureFunctionParameterExpr"] = 12] = "PureFunctionParameterExpr";
260
276
  /**
261
277
  * Binding to a pipe transformation.
262
278
  */
263
- ExpressionKind[ExpressionKind["PipeBinding"] = 11] = "PipeBinding";
279
+ ExpressionKind[ExpressionKind["PipeBinding"] = 13] = "PipeBinding";
264
280
  /**
265
281
  * Binding to a pipe transformation with a variable number of arguments.
266
282
  */
267
- ExpressionKind[ExpressionKind["PipeBindingVariadic"] = 12] = "PipeBindingVariadic";
283
+ ExpressionKind[ExpressionKind["PipeBindingVariadic"] = 14] = "PipeBindingVariadic";
268
284
  /*
269
285
  * A safe property read requiring expansion into a null check.
270
286
  */
271
- ExpressionKind[ExpressionKind["SafePropertyRead"] = 13] = "SafePropertyRead";
287
+ ExpressionKind[ExpressionKind["SafePropertyRead"] = 15] = "SafePropertyRead";
272
288
  /**
273
289
  * A safe keyed read requiring expansion into a null check.
274
290
  */
275
- ExpressionKind[ExpressionKind["SafeKeyedRead"] = 14] = "SafeKeyedRead";
291
+ ExpressionKind[ExpressionKind["SafeKeyedRead"] = 16] = "SafeKeyedRead";
276
292
  /**
277
293
  * A safe function call requiring expansion into a null check.
278
294
  */
279
- ExpressionKind[ExpressionKind["SafeInvokeFunction"] = 15] = "SafeInvokeFunction";
295
+ ExpressionKind[ExpressionKind["SafeInvokeFunction"] = 17] = "SafeInvokeFunction";
280
296
  /**
281
297
  * An intermediate expression that will be expanded from a safe read into an explicit ternary.
282
298
  */
283
- ExpressionKind[ExpressionKind["SafeTernaryExpr"] = 16] = "SafeTernaryExpr";
299
+ ExpressionKind[ExpressionKind["SafeTernaryExpr"] = 18] = "SafeTernaryExpr";
284
300
  /**
285
301
  * An empty expression that will be stipped before generating the final output.
286
302
  */
287
- ExpressionKind[ExpressionKind["EmptyExpr"] = 17] = "EmptyExpr";
303
+ ExpressionKind[ExpressionKind["EmptyExpr"] = 19] = "EmptyExpr";
288
304
  /*
289
305
  * An assignment to a temporary variable.
290
306
  */
291
- ExpressionKind[ExpressionKind["AssignTemporaryExpr"] = 18] = "AssignTemporaryExpr";
307
+ ExpressionKind[ExpressionKind["AssignTemporaryExpr"] = 20] = "AssignTemporaryExpr";
292
308
  /**
293
309
  * A reference to a temporary variable.
294
310
  */
295
- ExpressionKind[ExpressionKind["ReadTemporaryExpr"] = 19] = "ReadTemporaryExpr";
311
+ ExpressionKind[ExpressionKind["ReadTemporaryExpr"] = 21] = "ReadTemporaryExpr";
296
312
  /**
297
313
  * An expression that will cause a literal slot index to be emitted.
298
314
  */
299
- ExpressionKind[ExpressionKind["SlotLiteralExpr"] = 20] = "SlotLiteralExpr";
315
+ ExpressionKind[ExpressionKind["SlotLiteralExpr"] = 22] = "SlotLiteralExpr";
300
316
  /**
301
317
  * A test expression for a conditional op.
302
318
  */
303
- ExpressionKind[ExpressionKind["ConditionalCase"] = 21] = "ConditionalCase";
319
+ ExpressionKind[ExpressionKind["ConditionalCase"] = 23] = "ConditionalCase";
304
320
  /**
305
321
  * An expression that will be automatically extracted to the component const array.
306
322
  */
307
- ExpressionKind[ExpressionKind["ConstCollected"] = 22] = "ConstCollected";
323
+ ExpressionKind[ExpressionKind["ConstCollected"] = 24] = "ConstCollected";
308
324
  /**
309
325
  * Operation that sets the value of a two-way binding.
310
326
  */
311
- ExpressionKind[ExpressionKind["TwoWayBindingSet"] = 23] = "TwoWayBindingSet";
327
+ ExpressionKind[ExpressionKind["TwoWayBindingSet"] = 25] = "TwoWayBindingSet";
312
328
  })(ExpressionKind || (ExpressionKind = {}));
313
329
  export var VariableFlags;
314
330
  (function (VariableFlags) {
@@ -484,4 +500,4 @@ export var TemplateKind;
484
500
  TemplateKind[TemplateKind["Structural"] = 1] = "Structural";
485
501
  TemplateKind[TemplateKind["Block"] = 2] = "Block";
486
502
  })(TemplateKind || (TemplateKind = {}));
487
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci9zcmMvdGVtcGxhdGUvcGlwZWxpbmUvaXIvc3JjL2VudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVIOzs7O0dBSUc7QUFDSCxNQUFNLENBQU4sSUFBWSxNQW1QWDtBQW5QRCxXQUFZLE1BQU07SUFDaEI7OztPQUdHO0lBQ0gseUNBQU8sQ0FBQTtJQUVQOztPQUVHO0lBQ0gsNkNBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsMkNBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gsbURBQVksQ0FBQTtJQUVaOztPQUVHO0lBQ0gseUNBQU8sQ0FBQTtJQUVQOztPQUVHO0lBQ0gsMkNBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gsK0NBQVUsQ0FBQTtJQUVWOztPQUVHO0lBQ0gsdURBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsNkNBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsbURBQVksQ0FBQTtJQUVaOzs7T0FHRztJQUNILDBEQUFlLENBQUE7SUFFZjs7T0FFRztJQUNILGtEQUFXLENBQUE7SUFFWDs7T0FFRztJQUNILHdEQUFjLENBQUE7SUFFZDs7T0FFRztJQUNILG9DQUFJLENBQUE7SUFFSjs7T0FFRztJQUNILDRDQUFRLENBQUE7SUFFUjs7T0FFRztJQUNILDBEQUFlLENBQUE7SUFFZjs7O09BR0c7SUFDSCwwQ0FBTyxDQUFBO0lBRVA7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCw4Q0FBUyxDQUFBO0lBRVQ7O09BRUc7SUFDSCw4Q0FBUyxDQUFBO0lBRVQ7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCwwQ0FBTyxDQUFBO0lBRVA7O09BRUc7SUFDSCxvQ0FBSSxDQUFBO0lBRUo7O09B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QTtJQUVqQjs7T0FFRztJQUNILG9GQUF5QixDQUFBO0FBQzNCLENBQUMsRUEzQlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQTJCOUI7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDbkIseUNBQUksQ0FBQTtJQUNKLHVDQUFHLENBQUE7SUFDSCx5Q0FBSSxDQUFBO0FBQ04sQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxnQkFPWDtBQVBELFdBQVksZ0JBQWdCO0lBQzFCLHVEQUFJLENBQUE7SUFDSixpRUFBUyxDQUFBO0lBQ1QseURBQUssQ0FBQTtJQUNMLHlEQUFLLENBQUE7SUFDTCxxRUFBVyxDQUFBO0lBQ1gsK0RBQVEsQ0FBQTtBQUNWLENBQUMsRUFQVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBTzNCO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3pCLDZEQUFRLENBQUE7SUFDUixtREFBRyxDQUFBO0lBQ0gscURBQUksQ0FBQTtBQUNOLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQjtBQUVELE1BQU0sQ0FBTixJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDdEIsMkRBQVUsQ0FBQTtJQUNWLDJEQUFVLENBQUE7SUFDVixpREFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKlxuICogRGlzdGluZ3Vpc2hlcyBkaWZmZXJlbnQga2luZHMgb2YgSVIgb3BlcmF0aW9ucy5cbiAqXG4gKiBJbmNsdWRlcyBib3RoIGNyZWF0aW9uIGFuZCB1cGRhdGUgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gT3BLaW5kIHtcbiAgLyoqXG4gICAqIEEgc3BlY2lhbCBvcGVyYXRpb24gdHlwZSB3aGljaCBpcyB1c2VkIHRvIHJlcHJlc2VudCB0aGUgYmVnaW5uaW5nIGFuZCBlbmQgbm9kZXMgb2YgYSBsaW5rZWRcbiAgICogbGlzdCBvZiBvcGVyYXRpb25zLlxuICAgKi9cbiAgTGlzdEVuZCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHdoaWNoIHdyYXBzIGFuIG91dHB1dCBBU1Qgc3RhdGVtZW50LlxuICAgKi9cbiAgU3RhdGVtZW50LFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gd2hpY2ggZGVjbGFyZXMgYW5kIGluaXRpYWxpemVzIGEgYFNlbWFudGljVmFyaWFibGVgLlxuICAgKi9cbiAgVmFyaWFibGUsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBiZWdpbiByZW5kZXJpbmcgb2YgYW4gZWxlbWVudC5cbiAgICovXG4gIEVsZW1lbnRTdGFydCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIHJlbmRlciBhbiBlbGVtZW50IHdpdGggbm8gY2hpbGRyZW4uXG4gICAqL1xuICBFbGVtZW50LFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gd2hpY2ggZGVjbGFyZXMgYW4gZW1iZWRkZWQgdmlldy5cbiAgICovXG4gIFRlbXBsYXRlLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gZW5kIHJlbmRlcmluZyBvZiBhbiBlbGVtZW50IHByZXZpb3VzbHkgc3RhcnRlZCB3aXRoIGBFbGVtZW50U3RhcnRgLlxuICAgKi9cbiAgRWxlbWVudEVuZCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJlZ2luIGFuIGBuZy1jb250YWluZXJgLlxuICAgKi9cbiAgQ29udGFpbmVyU3RhcnQsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiBmb3IgYW4gYG5nLWNvbnRhaW5lcmAgd2l0aCBubyBjaGlsZHJlbi5cbiAgICovXG4gIENvbnRhaW5lcixcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGVuZCBhbiBgbmctY29udGFpbmVyYC5cbiAgICovXG4gIENvbnRhaW5lckVuZCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIGRpc2FibGUgYmluZGluZyBmb3Igc3Vic2VxdWVudCBlbGVtZW50cywgd2hpY2ggYXJlIGRlc2NlbmRhbnRzIG9mIGEgbm9uLWJpbmRhYmxlXG4gICAqIG5vZGUuXG4gICAqL1xuICBEaXNhYmxlQmluZGluZ3MsXG5cbiAgLyoqXG4gICAqIEFuIG9wIHRvIGNvbmRpdGlvbmFsbHkgcmVuZGVyIGEgdGVtcGxhdGUuXG4gICAqL1xuICBDb25kaXRpb25hbCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIHJlLWVuYWJsZSBiaW5kaW5nLCBhZnRlciBpdCB3YXMgcHJldmlvdXNseSBkaXNhYmxlZC5cbiAgICovXG4gIEVuYWJsZUJpbmRpbmdzLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gcmVuZGVyIGEgdGV4dCBub2RlLlxuICAgKi9cbiAgVGV4dCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIGRlY2xhcmluZyBhbiBldmVudCBsaXN0ZW5lciBmb3IgYW4gZWxlbWVudC5cbiAgICovXG4gIExpc3RlbmVyLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gaW50ZXJwb2xhdGUgdGV4dCBpbnRvIGEgdGV4dCBub2RlLlxuICAgKi9cbiAgSW50ZXJwb2xhdGVUZXh0LFxuXG4gIC8qKlxuICAgKiBBbiBpbnRlcm1lZGlhdGUgYmluZGluZyBvcCwgdGhhdCBoYXMgbm90IHlldCBiZWVuIHByb2Nlc3NlZCBpbnRvIGFuIGluZGl2aWR1YWwgcHJvcGVydHksXG4gICAqIGF0dHJpYnV0ZSwgc3R5bGUsIGV0Yy5cbiAgICovXG4gIEJpbmRpbmcsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBiaW5kIGFuIGV4cHJlc3Npb24gdG8gYSBwcm9wZXJ0eSBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgUHJvcGVydHksXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBiaW5kIGFuIGV4cHJlc3Npb24gdG8gYSBzdHlsZSBwcm9wZXJ0eSBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgU3R5bGVQcm9wLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYmluZCBhbiBleHByZXNzaW9uIHRvIGEgY2xhc3MgcHJvcGVydHkgb2YgYW4gZWxlbWVudC5cbiAgICovXG4gIENsYXNzUHJvcCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJpbmQgYW4gZXhwcmVzc2lvbiB0byB0aGUgc3R5bGVzIG9mIGFuIGVsZW1lbnQuXG4gICAqL1xuICBTdHlsZU1hcCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJpbmQgYW4gZXhwcmVzc2lvbiB0byB0aGUgY2xhc3NlcyBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgQ2xhc3NNYXAsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBhZHZhbmNlIHRoZSBydW50aW1lJ3MgaW1wbGljaXQgc2xvdCBjb250ZXh0IGR1cmluZyB0aGUgdXBkYXRlIHBoYXNlIG9mIGEgdmlldy5cbiAgICovXG4gIEFkdmFuY2UsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBpbnN0YW50aWF0ZSBhIHBpcGUuXG4gICAqL1xuICBQaXBlLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYXNzb2NpYXRlIGFuIGF0dHJpYnV0ZSB3aXRoIGFuIGVsZW1lbnQuXG4gICAqL1xuICBBdHRyaWJ1dGUsXG5cbiAgLyoqXG4gICAqIEFuIGF0dHJpYnV0ZSB0aGF0IGhhcyBiZWVuIGV4dHJhY3RlZCBmb3IgaW5jbHVzaW9uIGluIHRoZSBjb25zdHMgYXJyYXkuXG4gICAqL1xuICBFeHRyYWN0ZWRBdHRyaWJ1dGUsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0aGF0IGNvbmZpZ3VyZXMgYSBgQGRlZmVyYCBibG9jay5cbiAgICovXG4gIERlZmVyLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdGhhdCBjb250cm9scyB3aGVuIGEgYEBkZWZlcmAgbG9hZHMuXG4gICAqL1xuICBEZWZlck9uLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdGhhdCBjb250cm9scyB3aGVuIGEgYEBkZWZlcmAgbG9hZHMsIHVzaW5nIGEgY3VzdG9tIGV4cHJlc3Npb24gYXMgdGhlIGNvbmRpdGlvbi5cbiAgICovXG4gIERlZmVyV2hlbixcblxuICAvKipcbiAgICogQW4gaTE4biBtZXNzYWdlIHRoYXQgaGFzIGJlZW4gZXh0cmFjdGVkIGZvciBpbmNsdXNpb24gaW4gdGhlIGNvbnN0cyBhcnJheS5cbiAgICovXG4gIEkxOG5NZXNzYWdlLFxuXG4gIC8qKlxuICAgKiBBIGhvc3QgYmluZGluZyBwcm9wZXJ0eS5cbiAgICovXG4gIEhvc3RQcm9wZXJ0eSxcblxuICAvKipcbiAgICogQSBuYW1lc3BhY2UgY2hhbmdlLCB3aGljaCBjYXVzZXMgdGhlIHN1YnNlcXVlbnQgZWxlbWVudHMgdG8gYmUgcHJvY2Vzc2VkIGFzIGVpdGhlciBIVE1MIG9yIFNWRy5cbiAgICovXG4gIE5hbWVzcGFjZSxcblxuICAvKipcbiAgICogQ29uZmlndXJlIGEgY29udGVudCBwcm9qZWNpdG9uIGRlZmluaXRpb24gZm9yIHRoZSB2aWV3LlxuICAgKi9cbiAgUHJvamVjdGlvbkRlZixcblxuICAvKipcbiAgICogQ3JlYXRlIGEgY29udGVudCBwcm9qZWN0aW9uIHNsb3QuXG4gICAqL1xuICBQcm9qZWN0aW9uLFxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSByZXBlYXRlciBjcmVhdGlvbiBpbnN0cnVjdGlvbiBvcC5cbiAgICovXG4gIFJlcGVhdGVyQ3JlYXRlLFxuXG4gIC8qKlxuICAgKiBBbiB1cGRhdGUgdXAgZm9yIGEgcmVwZWF0ZXIuXG4gICAqL1xuICBSZXBlYXRlcixcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJpbmQgYW4gZXhwcmVzc2lvbiB0byB0aGUgcHJvcGVydHkgc2lkZSBvZiBhIHR3by13YXkgYmluZGluZy5cbiAgICovXG4gIFR3b1dheVByb3BlcnR5LFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gZGVjbGFyaW5nIHRoZSBldmVudCBzaWRlIG9mIGEgdHdvLXdheSBiaW5kaW5nLlxuICAgKi9cbiAgVHdvV2F5TGlzdGVuZXIsXG5cbiAgLyoqXG4gICAqIFRoZSBzdGFydCBvZiBhbiBpMThuIGJsb2NrLlxuICAgKi9cbiAgSTE4blN0YXJ0LFxuXG4gIC8qKlxuICAgKiBBIHNlbGYtY2xvc2luZyBpMThuIG9uIGEgc2luZ2xlIGVsZW1lbnQuXG4gICAqL1xuICBJMThuLFxuXG4gIC8qKlxuICAgKiBUaGUgZW5kIG9mIGFuIGkxOG4gYmxvY2suXG4gICAqL1xuICBJMThuRW5kLFxuXG4gIC8qKlxuICAgKiBBbiBleHByZXNzaW9uIGluIGFuIGkxOG4gbWVzc2FnZS5cbiAgICovXG4gIEkxOG5FeHByZXNzaW9uLFxuXG4gIC8qKlxuICAgKiBBbiBpbnN0cnVjdGlvbiB0aGF0IGFwcGxpZXMgYSBzZXQgb2YgaTE4biBleHByZXNzaW9ucy5cbiAgICovXG4gIEkxOG5BcHBseSxcblxuICAvKipcbiAgICogQW4gaW5zdHJ1Y3Rpb24gdG8gY3JlYXRlIGFuIElDVSBleHByZXNzaW9uLlxuICAgKi9cbiAgSWN1U3RhcnQsXG5cbiAgLyoqXG4gICAqIEFuIGluc3RydWN0aW9uIHRvIHVwZGF0ZSBhbiBJQ1UgZXhwcmVzc2lvbi5cbiAgICovXG4gIEljdUVuZCxcblxuICAvKipcbiAgICogQW4gaW5zdHJ1Y3Rpb24gcmVwcmVzZW50aW5nIGEgcGxhY2Vob2xkZXIgaW4gYW4gSUNVIGV4cHJlc3Npb24uXG4gICAqL1xuICBJY3VQbGFjZWhvbGRlcixcblxuICAvKipcbiAgICogQW4gaTE4biBjb250ZXh0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gbmVlZGVkIHRvIGdlbmVyYXRlIGFuIGkxOG4gbWVzc2FnZS5cbiAgICovXG4gIEkxOG5Db250ZXh0LFxuXG4gIC8qKlxuICAgKiBBIGNyZWF0aW9uIG9wIHRoYXQgY29ycmVzcG9uZHMgdG8gaTE4biBhdHRyaWJ1dGVzIG9uIGFuIGVsZW1lbnQuXG4gICAqL1xuICBJMThuQXR0cmlidXRlcyxcbn1cblxuLyoqXG4gKiBEaXN0aW5ndWlzaGVzIGRpZmZlcmVudCBraW5kcyBvZiBJUiBleHByZXNzaW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gRXhwcmVzc2lvbktpbmQge1xuICAvKipcbiAgICogUmVhZCBvZiBhIHZhcmlhYmxlIGluIGEgbGV4aWNhbCBzY29wZS5cbiAgICovXG4gIExleGljYWxSZWFkLFxuXG4gIC8qKlxuICAgKiBBIHJlZmVyZW5jZSB0byB0aGUgY3VycmVudCB2aWV3IGNvbnRleHQuXG4gICAqL1xuICBDb250ZXh0LFxuXG4gIC8qKlxuICAgKiBBIHJlZmVyZW5jZSB0byB0aGUgdmlldyBjb250ZXh0LCBmb3IgdXNlIGluc2lkZSBhIHRyYWNrIGZ1bmN0aW9uLlxuICAgKi9cbiAgVHJhY2tDb250ZXh0LFxuXG4gIC8qKlxuICAgKiBSZWFkIG9mIGEgdmFyaWFibGUgZGVjbGFyZWQgaW4gYSBgVmFyaWFibGVPcGAuXG4gICAqL1xuICBSZWFkVmFyaWFibGUsXG5cbiAgLyoqXG4gICAqIFJ1bnRpbWUgb3BlcmF0aW9uIHRvIG5hdmlnYXRlIHRvIHRoZSBuZXh0IHZpZXcgY29udGV4dCBpbiB0aGUgdmlldyBoaWVyYXJjaHkuXG4gICAqL1xuICBOZXh0Q29udGV4dCxcblxuICAvKipcbiAgICogUnVudGltZSBvcGVyYXRpb24gdG8gcmV0cmlldmUgdGhlIHZhbHVlIG9mIGEgbG9jYWwgcmVmZXJlbmNlLlxuICAgKi9cbiAgUmVmZXJlbmNlLFxuXG4gIC8qKlxuICAgKiBSdW50aW1lIG9wZXJhdGlvbiB0byBzbmFwc2hvdCB0aGUgY3VycmVudCB2aWV3IGNvbnRleHQuXG4gICAqL1xuICBHZXRDdXJyZW50VmlldyxcblxuICAvKipcbiAgICogUnVudGltZSBvcGVyYXRpb24gdG8gcmVzdG9yZSBhIHNuYXBzaG90dGVkIHZpZXcuXG4gICAqL1xuICBSZXN0b3JlVmlldyxcblxuICAvKipcbiAgICogUnVudGltZSBvcGVyYXRpb24gdG8gcmVzZXQgdGhlIGN1cnJlbnQgdmlldyBjb250ZXh0IGFmdGVyIGBSZXN0b3JlVmlld2AuXG4gICAqL1xuICBSZXNldFZpZXcsXG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW5kIGNhbGxzIGEgZnVuY3Rpb24gd2l0aCBjaGFuZ2UtZGV0ZWN0ZWQgYXJndW1lbnRzLlxuICAgKi9cbiAgUHVyZUZ1bmN0aW9uRXhwcixcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGEgcG9zaXRpb25hbCBwYXJhbWV0ZXIgdG8gYSBwdXJlIGZ1bmN0aW9uIGRlZmluaXRpb24uXG4gICAqL1xuICBQdXJlRnVuY3Rpb25QYXJhbWV0ZXJFeHByLFxuXG4gIC8qKlxuICAgKiBCaW5kaW5nIHRvIGEgcGlwZSB0cmFuc2Zvcm1hdGlvbi5cbiAgICovXG4gIFBpcGVCaW5kaW5nLFxuXG4gIC8qKlxuICAgKiBCaW5kaW5nIHRvIGEgcGlwZSB0cmFuc2Zvcm1hdGlvbiB3aXRoIGEgdmFyaWFibGUgbnVtYmVyIG9mIGFyZ3VtZW50cy5cbiAgICovXG4gIFBpcGVCaW5kaW5nVmFyaWFkaWMsXG5cbiAgLypcbiAgICogQSBzYWZlIHByb3BlcnR5IHJlYWQgcmVxdWlyaW5nIGV4cGFuc2lvbiBpbnRvIGEgbnVsbCBjaGVjay5cbiAgICovXG4gIFNhZmVQcm9wZXJ0eVJlYWQsXG5cbiAgLyoqXG4gICAqIEEgc2FmZSBrZXllZCByZWFkIHJlcXVpcmluZyBleHBhbnNpb24gaW50byBhIG51bGwgY2hlY2suXG4gICAqL1xuICBTYWZlS2V5ZWRSZWFkLFxuXG4gIC8qKlxuICAgKiBBIHNhZmUgZnVuY3Rpb24gY2FsbCByZXF1aXJpbmcgZXhwYW5zaW9uIGludG8gYSBudWxsIGNoZWNrLlxuICAgKi9cbiAgU2FmZUludm9rZUZ1bmN0aW9uLFxuXG4gIC8qKlxuICAgKiBBbiBpbnRlcm1lZGlhdGUgZXhwcmVzc2lvbiB0aGF0IHdpbGwgYmUgZXhwYW5kZWQgZnJvbSBhIHNhZmUgcmVhZCBpbnRvIGFuIGV4cGxpY2l0IHRlcm5hcnkuXG4gICAqL1xuICBTYWZlVGVybmFyeUV4cHIsXG5cbiAgLyoqXG4gICAqIEFuIGVtcHR5IGV4cHJlc3Npb24gdGhhdCB3aWxsIGJlIHN0aXBwZWQgYmVmb3JlIGdlbmVyYXRpbmcgdGhlIGZpbmFsIG91dHB1dC5cbiAgICovXG4gIEVtcHR5RXhwcixcblxuICAvKlxuICAgKiBBbiBhc3NpZ25tZW50IHRvIGEgdGVtcG9yYXJ5IHZhcmlhYmxlLlxuICAgKi9cbiAgQXNzaWduVGVtcG9yYXJ5RXhwcixcblxuICAvKipcbiAgICogQSByZWZlcmVuY2UgdG8gYSB0ZW1wb3JhcnkgdmFyaWFibGUuXG4gICAqL1xuICBSZWFkVGVtcG9yYXJ5RXhwcixcblxuICAvKipcbiAgICogQW4gZXhwcmVzc2lvbiB0aGF0IHdpbGwgY2F1c2UgYSBsaXRlcmFsIHNsb3QgaW5kZXggdG8gYmUgZW1pdHRlZC5cbiAgICovXG4gIFNsb3RMaXRlcmFsRXhwcixcblxuICAvKipcbiAgICogQSB0ZXN0IGV4cHJlc3Npb24gZm9yIGEgY29uZGl0aW9uYWwgb3AuXG4gICAqL1xuICBDb25kaXRpb25hbENhc2UsXG5cbiAgLyoqXG4gICAqIEFuIGV4cHJlc3Npb24gdGhhdCB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgZXh0cmFjdGVkIHRvIHRoZSBjb21wb25lbnQgY29uc3QgYXJyYXkuXG4gICAqL1xuICBDb25zdENvbGxlY3RlZCxcblxuICAvKipcbiAgICogT3BlcmF0aW9uIHRoYXQgc2V0cyB0aGUgdmFsdWUgb2YgYSB0d28td2F5IGJpbmRpbmcuXG4gICAqL1xuICBUd29XYXlCaW5kaW5nU2V0LFxufVxuXG5leHBvcnQgZW51bSBWYXJpYWJsZUZsYWdzIHtcbiAgTm9uZSA9IDBiMDAwMCxcblxuICAvKipcbiAgICogQWx3YXlzIGlubGluZSB0aGlzIHZhcmlhYmxlLCByZWdhcmRsZXNzIG9mIHRoZSBudW1iZXIgb2YgdGltZXMgaXQncyB1c2VkLlxuICAgKiBBbiBgQWx3YXlzSW5saW5lYCB2YXJpYWJsZSBtYXkgbm90IGRlcGVuZCBvbiBjb250ZXh0LCBiZWNhdXNlIGRvaW5nIHNvIG1heSBjYXVzZSBzaWRlIGVmZmVjdHNcbiAgICogdGhhdCBhcmUgaWxsZWdhbCB3aGVuIG11bHRpLWlubGluZWQuIChUaGUgb3B0aW1pemVyIHdpbGwgZW5mb3JjZSB0aGlzIGNvbnN0cmFpbnQuKVxuICAgKi9cbiAgQWx3YXlzSW5saW5lID0gMGIwMDAxLFxufVxuLyoqXG4gKiBEaXN0aW5ndWlzaGVzIGJldHdlZW4gZGlmZmVyZW50IGtpbmRzIG9mIGBTZW1hbnRpY1ZhcmlhYmxlYHMuXG4gKi9cbmV4cG9ydCBlbnVtIFNlbWFudGljVmFyaWFibGVLaW5kIHtcbiAgLyoqXG4gICAqIFJlcHJlc2VudHMgdGhlIGNvbnRleHQgb2YgYSBwYXJ0aWN1bGFyIHZpZXcuXG4gICAqL1xuICBDb250ZXh0LFxuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGFuIGlkZW50aWZpZXIgZGVjbGFyZWQgaW4gdGhlIGxleGljYWwgc2NvcGUgb2YgYSB2aWV3LlxuICAgKi9cbiAgSWRlbnRpZmllcixcblxuICAvKipcbiAgICogUmVwcmVzZW50cyBhIHNhdmVkIHN0YXRlIHRoYXQgY2FuIGJlIHVzZWQgdG8gcmVzdG9yZSBhIHZpZXcgaW4gYSBsaXN0ZW5lciBoYW5kbGVyIGZ1bmN0aW9uLlxuICAgKi9cbiAgU2F2ZWRWaWV3LFxuXG4gIC8qKlxuICAgKiBBbiBhbGlhcyBnZW5lcmF0ZWQgYnkgYSBzcGVjaWFsIGVtYmVkZGVkIHZpZXcgdHlwZSAoZS5nLiBhIGBAZm9yYCBibG9jaykuXG4gICAqL1xuICBBbGlhcyxcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRvIGNvbXBpbGUgaW4gY29tcGF0aWJpbHR5IG1vZGUuIEluIGNvbXBhdGliaWxpdHkgbW9kZSwgdGhlIHRlbXBsYXRlIHBpcGVsaW5lIHdpbGxcbiAqIGF0dGVtcHQgdG8gbWF0Y2ggdGhlIG91dHB1dCBvZiBgVGVtcGxhdGVEZWZpbml0aW9uQnVpbGRlcmAgYXMgZXhhY3RseSBhcyBwb3NzaWJsZSwgYXQgdGhlIGNvc3RcbiAqIG9mIHByb2R1Y2luZyBxdWlya3kgb3IgbGFyZ2VyIGNvZGUgaW4gc29tZSBjYXNlcy5cbiAqL1xuZXhwb3J0IGVudW0gQ29tcGF0aWJpbGl0eU1vZGUge1xuICBOb3JtYWwsXG4gIFRlbXBsYXRlRGVmaW5pdGlvbkJ1aWxkZXIsXG59XG5cbi8qKlxuICogRW51bWVyYXRpb24gb2YgdGhlIHR5cGVzIG9mIGF0dHJpYnV0ZXMgd2hpY2ggY2FuIGJlIGFwcGxpZWQgdG8gYW4gZWxlbWVudC5cbiAqL1xuZXhwb3J0IGVudW0gQmluZGluZ0tpbmQge1xuICAvKipcbiAgICogU3RhdGljIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBBdHRyaWJ1dGUsXG5cbiAgLyoqXG4gICAqIENsYXNzIGJpbmRpbmdzLlxuICAgKi9cbiAgQ2xhc3NOYW1lLFxuXG4gIC8qKlxuICAgKiBTdHlsZSBiaW5kaW5ncy5cbiAgICovXG4gIFN0eWxlUHJvcGVydHksXG5cbiAgLyoqXG4gICAqIER5bmFtaWMgcHJvcGVydHkgYmluZGluZ3MuXG4gICAqL1xuICBQcm9wZXJ0eSxcblxuICAvKipcbiAgICogUHJvcGVydHkgb3IgYXR0cmlidXRlIGJpbmRpbmdzIG9uIGEgdGVtcGxhdGUuXG4gICAqL1xuICBUZW1wbGF0ZSxcblxuICAvKipcbiAgICogSW50ZXJuYXRpb25hbGl6ZWQgYXR0cmlidXRlcy5cbiAgICovXG4gIEkxOG4sXG5cbiAgLyoqXG4gICAqIEFuaW1hdGlvbiBwcm9wZXJ0eSBiaW5kaW5ncy5cbiAgICovXG4gIEFuaW1hdGlvbixcblxuICAvKipcbiAgICogUHJvcGVydHkgc2lkZSBvZiBhIHR3by13YXkgYmluZGluZy5cbiAgICovXG4gIFR3b1dheVByb3BlcnR5LFxufVxuXG4vKipcbiAqIEVudW1lcmF0aW9uIG9mIHBvc3NpYmxlIHRpbWVzIGkxOG4gcGFyYW1zIGNhbiBiZSByZXNvbHZlZC5cbiAqL1xuZXhwb3J0IGVudW0gSTE4blBhcmFtUmVzb2x1dGlvblRpbWUge1xuICAvKipcbiAgICogUGFyYW0gaXMgcmVzb2x2ZWQgYXQgbWVzc2FnZSBjcmVhdGlvbiB0aW1lLiBNb3N0IHBhcmFtcyBzaG91bGQgYmUgcmVzb2x2ZWQgYXQgbWVzc2FnZSBjcmVhdGlvblxuICAgKiB0aW1lLiBIb3dldmVyLCBJQ1UgcGFyYW1zIG5lZWQgdG8gYmUgaGFuZGxlZCBpbiBwb3N0LXByb2Nlc3NpbmcuXG4gICAqL1xuICBDcmVhdGlvbixcblxuICAvKipcbiAgICogUGFyYW0gaXMgcmVzb2x2ZWQgZHVyaW5nIHBvc3QtcHJvY2Vzc2luZy4gVGhpcyBzaG91bGQgYmUgdXNlZCBmb3IgcGFyYW1zIHdob3NlIHZhbHVlIGNvbWVzIGZyb21cbiAgICogYW4gSUNVLlxuICAgKi9cbiAgUG9zdHByb2NjZXNzaW5nLFxufVxuXG4vKipcbiAqIFRoZSBjb250ZXh0cyBpbiB3aGljaCBhbiBpMThuIGV4cHJlc3Npb24gY2FuIGJlIHVzZWQuXG4gKi9cbmV4cG9ydCBlbnVtIEkxOG5FeHByZXNzaW9uRm9yIHtcbiAgLyoqXG4gICAqIFRoaXMgZXhwcmVzc2lvbiBpcyB1c2VkIGFzIGEgdmFsdWUgKGkuZS4gaW5zaWRlIGFuIGkxOG4gYmxvY2spLlxuICAgKi9cbiAgSTE4blRleHQsXG5cbiAgLyoqXG4gICAqIFRoaXMgZXhwcmVzc2lvbiBpcyB1c2VkIGluIGEgYmluZGluZy5cbiAgICovXG4gIEkxOG5BdHRyaWJ1dGUsXG59XG5cbi8qKlxuICogRmxhZ3MgdGhhdCBkZXNjcmliZSB3aGF0IGFuIGkxOG4gcGFyYW0gdmFsdWUuIFRoZXNlIGRldGVybWluZSBob3cgdGhlIHZhbHVlIGlzIHNlcmlhbGl6ZWQgaW50b1xuICogdGhlIGZpbmFsIG1hcC5cbiAqL1xuZXhwb3J0IGVudW0gSTE4blBhcmFtVmFsdWVGbGFncyB7XG4gIE5vbmUgPSAwYjAwMDAsXG5cbiAgLyoqXG4gICAqICBUaGlzIHZhbHVlIHJlcHJlc2VudHMgYW4gZWxlbWVudCB0YWcuXG4gICAqL1xuICBFbGVtZW50VGFnID0gMGIxLFxuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHJlcHJlc2VudHMgYSB0ZW1wbGF0ZSB0YWcuXG4gICAqL1xuICBUZW1wbGF0ZVRhZyA9IDBiMTAsXG5cbiAgLyoqXG4gICAqIFRoaXMgdmFsdWUgcmVwcmVzZW50cyB0aGUgb3BlbmluZyBvZiBhIHRhZy5cbiAgICovXG4gIE9wZW5UYWcgPSAwYjAxMDAsXG5cbiAgLyoqXG4gICAqIFRoaXMgdmFsdWUgcmVwcmVzZW50cyB0aGUgY2xvc2luZyBvZiBhIHRhZy5cbiAgICovXG4gIENsb3NlVGFnID0gMGIxMDAwLFxuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHJlcHJlc2VudHMgYW4gaTE4biBleHByZXNzaW9uIGluZGV4LlxuICAgKi9cbiAgRXhwcmVzc2lvbkluZGV4ID0gMGIxMDAwMCxcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBhY3RpdmUgbmFtZXNwYWNlIGlzIEhUTUwsIE1hdGhNTCwgb3IgU1ZHIG1vZGUuXG4gKi9cbmV4cG9ydCBlbnVtIE5hbWVzcGFjZSB7XG4gIEhUTUwsXG4gIFNWRyxcbiAgTWF0aCxcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiBhIGBAZGVmZXJgIHRyaWdnZXIsIGZvciB1c2UgaW4gdGhlIGlyLlxuICovXG5leHBvcnQgZW51bSBEZWZlclRyaWdnZXJLaW5kIHtcbiAgSWRsZSxcbiAgSW1tZWRpYXRlLFxuICBUaW1lcixcbiAgSG92ZXIsXG4gIEludGVyYWN0aW9uLFxuICBWaWV3cG9ydCxcbn1cblxuLyoqXG4gKiBLaW5kcyBvZiBpMThuIGNvbnRleHRzLiBUaGV5IGNhbiBiZSBjcmVhdGVkIGJlY2F1c2Ugb2Ygcm9vdCBpMThuIGJsb2Nrcywgb3IgSUNVcy5cbiAqL1xuZXhwb3J0IGVudW0gSTE4bkNvbnRleHRLaW5kIHtcbiAgUm9vdEkxOG4sXG4gIEljdSxcbiAgQXR0cixcbn1cblxuZXhwb3J0IGVudW0gVGVtcGxhdGVLaW5kIHtcbiAgTmdUZW1wbGF0ZSxcbiAgU3RydWN0dXJhbCxcbiAgQmxvY2ssXG59XG4iXX0=
503
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci9zcmMvdGVtcGxhdGUvcGlwZWxpbmUvaXIvc3JjL2VudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVIOzs7O0dBSUc7QUFDSCxNQUFNLENBQU4sSUFBWSxNQTZQWDtBQTdQRCxXQUFZLE1BQU07SUFDaEI7OztPQUdHO0lBQ0gseUNBQU8sQ0FBQTtJQUVQOztPQUVHO0lBQ0gsNkNBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsMkNBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gsbURBQVksQ0FBQTtJQUVaOztPQUVHO0lBQ0gseUNBQU8sQ0FBQTtJQUVQOztPQUVHO0lBQ0gsMkNBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gsK0NBQVUsQ0FBQTtJQUVWOztPQUVHO0lBQ0gsdURBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsNkNBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsbURBQVksQ0FBQTtJQUVaOzs7T0FHRztJQUNILDBEQUFlLENBQUE7SUFFZjs7T0FFRztJQUNILGtEQUFXLENBQUE7SUFFWDs7T0FFRztJQUNILHdEQUFjLENBQUE7SUFFZDs7T0FFRztJQUNILG9DQUFJLENBQUE7SUFFSjs7T0FFRztJQUNILDRDQUFRLENBQUE7SUFFUjs7T0FFRztJQUNILDBEQUFlLENBQUE7SUFFZjs7O09BR0c7SUFDSCwwQ0FBTyxDQUFBO0lBRVA7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCw4Q0FBUyxDQUFBO0lBRVQ7O09BRUc7SUFDSCw4Q0FBUyxDQUFBO0lBRVQ7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCw0Q0FBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCwwQ0FBTyxDQUFBO0lBRVA7O09BRUc7SUFDSCxvQ0FBSSxDQUFBO0lBRUo7O09B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Yjs7T0FFRztJQUNILHlFQUFnQixDQUFBO0lBRWhCOztPQUVHO0lBQ0gsMkVBQWtCLENBQUE7SUFFbEI7O09BRUc7SUFDSCxtRUFBZ0IsQ0FBQTtJQUVoQjs7T0FFRztJQUNILHFFQUFpQixDQUFBO0lBRWpCOztPQUVHO0lBQ0gsb0ZBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQTNCVyxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBMkI5QjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNuQix5Q0FBSSxDQUFBO0lBQ0osdUNBQUcsQ0FBQTtJQUNILHlDQUFJLENBQUE7QUFDTixDQUFDLEVBSlcsU0FBUyxLQUFULFNBQVMsUUFJcEI7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLGdCQU9YO0FBUEQsV0FBWSxnQkFBZ0I7SUFDMUIsdURBQUksQ0FBQTtJQUNKLGlFQUFTLENBQUE7SUFDVCx5REFBSyxDQUFBO0lBQ0wseURBQUssQ0FBQTtJQUNMLHFFQUFXLENBQUE7SUFDWCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQVBXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFPM0I7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsNkRBQVEsQ0FBQTtJQUNSLG1EQUFHLENBQUE7SUFDSCxxREFBSSxDQUFBO0FBQ04sQ0FBQyxFQUpXLGVBQWUsS0FBZixlQUFlLFFBSTFCO0FBRUQsTUFBTSxDQUFOLElBQVksWUFJWDtBQUpELFdBQVksWUFBWTtJQUN0QiwyREFBVSxDQUFBO0lBQ1YsMkRBQVUsQ0FBQTtJQUNWLGlEQUFLLENBQUE7QUFDUCxDQUFDLEVBSlcsWUFBWSxLQUFaLFlBQVksUUFJdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBEaXN0aW5ndWlzaGVzIGRpZmZlcmVudCBraW5kcyBvZiBJUiBvcGVyYXRpb25zLlxuICpcbiAqIEluY2x1ZGVzIGJvdGggY3JlYXRpb24gYW5kIHVwZGF0ZSBvcGVyYXRpb25zLlxuICovXG5leHBvcnQgZW51bSBPcEtpbmQge1xuICAvKipcbiAgICogQSBzcGVjaWFsIG9wZXJhdGlvbiB0eXBlIHdoaWNoIGlzIHVzZWQgdG8gcmVwcmVzZW50IHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBub2RlcyBvZiBhIGxpbmtlZFxuICAgKiBsaXN0IG9mIG9wZXJhdGlvbnMuXG4gICAqL1xuICBMaXN0RW5kLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gd2hpY2ggd3JhcHMgYW4gb3V0cHV0IEFTVCBzdGF0ZW1lbnQuXG4gICAqL1xuICBTdGF0ZW1lbnQsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB3aGljaCBkZWNsYXJlcyBhbmQgaW5pdGlhbGl6ZXMgYSBgU2VtYW50aWNWYXJpYWJsZWAuXG4gICAqL1xuICBWYXJpYWJsZSxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJlZ2luIHJlbmRlcmluZyBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgRWxlbWVudFN0YXJ0LFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gcmVuZGVyIGFuIGVsZW1lbnQgd2l0aCBubyBjaGlsZHJlbi5cbiAgICovXG4gIEVsZW1lbnQsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB3aGljaCBkZWNsYXJlcyBhbiBlbWJlZGRlZCB2aWV3LlxuICAgKi9cbiAgVGVtcGxhdGUsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBlbmQgcmVuZGVyaW5nIG9mIGFuIGVsZW1lbnQgcHJldmlvdXNseSBzdGFydGVkIHdpdGggYEVsZW1lbnRTdGFydGAuXG4gICAqL1xuICBFbGVtZW50RW5kLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYmVnaW4gYW4gYG5nLWNvbnRhaW5lcmAuXG4gICAqL1xuICBDb250YWluZXJTdGFydCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIGZvciBhbiBgbmctY29udGFpbmVyYCB3aXRoIG5vIGNoaWxkcmVuLlxuICAgKi9cbiAgQ29udGFpbmVyLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gZW5kIGFuIGBuZy1jb250YWluZXJgLlxuICAgKi9cbiAgQ29udGFpbmVyRW5kLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gZGlzYWJsZSBiaW5kaW5nIGZvciBzdWJzZXF1ZW50IGVsZW1lbnRzLCB3aGljaCBhcmUgZGVzY2VuZGFudHMgb2YgYSBub24tYmluZGFibGVcbiAgICogbm9kZS5cbiAgICovXG4gIERpc2FibGVCaW5kaW5ncyxcblxuICAvKipcbiAgICogQW4gb3AgdG8gY29uZGl0aW9uYWxseSByZW5kZXIgYSB0ZW1wbGF0ZS5cbiAgICovXG4gIENvbmRpdGlvbmFsLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gcmUtZW5hYmxlIGJpbmRpbmcsIGFmdGVyIGl0IHdhcyBwcmV2aW91c2x5IGRpc2FibGVkLlxuICAgKi9cbiAgRW5hYmxlQmluZGluZ3MsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byByZW5kZXIgYSB0ZXh0IG5vZGUuXG4gICAqL1xuICBUZXh0LFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gZGVjbGFyaW5nIGFuIGV2ZW50IGxpc3RlbmVyIGZvciBhbiBlbGVtZW50LlxuICAgKi9cbiAgTGlzdGVuZXIsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBpbnRlcnBvbGF0ZSB0ZXh0IGludG8gYSB0ZXh0IG5vZGUuXG4gICAqL1xuICBJbnRlcnBvbGF0ZVRleHQsXG5cbiAgLyoqXG4gICAqIEFuIGludGVybWVkaWF0ZSBiaW5kaW5nIG9wLCB0aGF0IGhhcyBub3QgeWV0IGJlZW4gcHJvY2Vzc2VkIGludG8gYW4gaW5kaXZpZHVhbCBwcm9wZXJ0eSxcbiAgICogYXR0cmlidXRlLCBzdHlsZSwgZXRjLlxuICAgKi9cbiAgQmluZGluZyxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJpbmQgYW4gZXhwcmVzc2lvbiB0byBhIHByb3BlcnR5IG9mIGFuIGVsZW1lbnQuXG4gICAqL1xuICBQcm9wZXJ0eSxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGJpbmQgYW4gZXhwcmVzc2lvbiB0byBhIHN0eWxlIHByb3BlcnR5IG9mIGFuIGVsZW1lbnQuXG4gICAqL1xuICBTdHlsZVByb3AsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBiaW5kIGFuIGV4cHJlc3Npb24gdG8gYSBjbGFzcyBwcm9wZXJ0eSBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgQ2xhc3NQcm9wLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYmluZCBhbiBleHByZXNzaW9uIHRvIHRoZSBzdHlsZXMgb2YgYW4gZWxlbWVudC5cbiAgICovXG4gIFN0eWxlTWFwLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYmluZCBhbiBleHByZXNzaW9uIHRvIHRoZSBjbGFzc2VzIG9mIGFuIGVsZW1lbnQuXG4gICAqL1xuICBDbGFzc01hcCxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGFkdmFuY2UgdGhlIHJ1bnRpbWUncyBpbXBsaWNpdCBzbG90IGNvbnRleHQgZHVyaW5nIHRoZSB1cGRhdGUgcGhhc2Ugb2YgYSB2aWV3LlxuICAgKi9cbiAgQWR2YW5jZSxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRvIGluc3RhbnRpYXRlIGEgcGlwZS5cbiAgICovXG4gIFBpcGUsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0byBhc3NvY2lhdGUgYW4gYXR0cmlidXRlIHdpdGggYW4gZWxlbWVudC5cbiAgICovXG4gIEF0dHJpYnV0ZSxcblxuICAvKipcbiAgICogQW4gYXR0cmlidXRlIHRoYXQgaGFzIGJlZW4gZXh0cmFjdGVkIGZvciBpbmNsdXNpb24gaW4gdGhlIGNvbnN0cyBhcnJheS5cbiAgICovXG4gIEV4dHJhY3RlZEF0dHJpYnV0ZSxcblxuICAvKipcbiAgICogQW4gb3BlcmF0aW9uIHRoYXQgY29uZmlndXJlcyBhIGBAZGVmZXJgIGJsb2NrLlxuICAgKi9cbiAgRGVmZXIsXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0aGF0IGNvbnRyb2xzIHdoZW4gYSBgQGRlZmVyYCBsb2Fkcy5cbiAgICovXG4gIERlZmVyT24sXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiB0aGF0IGNvbnRyb2xzIHdoZW4gYSBgQGRlZmVyYCBsb2FkcywgdXNpbmcgYSBjdXN0b20gZXhwcmVzc2lvbiBhcyB0aGUgY29uZGl0aW9uLlxuICAgKi9cbiAgRGVmZXJXaGVuLFxuXG4gIC8qKlxuICAgKiBBbiBpMThuIG1lc3NhZ2UgdGhhdCBoYXMgYmVlbiBleHRyYWN0ZWQgZm9yIGluY2x1c2lvbiBpbiB0aGUgY29uc3RzIGFycmF5LlxuICAgKi9cbiAgSTE4bk1lc3NhZ2UsXG5cbiAgLyoqXG4gICAqIEEgaG9zdCBiaW5kaW5nIHByb3BlcnR5LlxuICAgKi9cbiAgSG9zdFByb3BlcnR5LFxuXG4gIC8qKlxuICAgKiBBIG5hbWVzcGFjZSBjaGFuZ2UsIHdoaWNoIGNhdXNlcyB0aGUgc3Vic2VxdWVudCBlbGVtZW50cyB0byBiZSBwcm9jZXNzZWQgYXMgZWl0aGVyIEhUTUwgb3IgU1ZHLlxuICAgKi9cbiAgTmFtZXNwYWNlLFxuXG4gIC8qKlxuICAgKiBDb25maWd1cmUgYSBjb250ZW50IHByb2plY2l0b24gZGVmaW5pdGlvbiBmb3IgdGhlIHZpZXcuXG4gICAqL1xuICBQcm9qZWN0aW9uRGVmLFxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBjb250ZW50IHByb2plY3Rpb24gc2xvdC5cbiAgICovXG4gIFByb2plY3Rpb24sXG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIHJlcGVhdGVyIGNyZWF0aW9uIGluc3RydWN0aW9uIG9wLlxuICAgKi9cbiAgUmVwZWF0ZXJDcmVhdGUsXG5cbiAgLyoqXG4gICAqIEFuIHVwZGF0ZSB1cCBmb3IgYSByZXBlYXRlci5cbiAgICovXG4gIFJlcGVhdGVyLFxuXG4gIC8qKlxuICAgKiBBbiBvcGVyYXRpb24gdG8gYmluZCBhbiBleHByZXNzaW9uIHRvIHRoZSBwcm9wZXJ0eSBzaWRlIG9mIGEgdHdvLXdheSBiaW5kaW5nLlxuICAgKi9cbiAgVHdvV2F5UHJvcGVydHksXG5cbiAgLyoqXG4gICAqIEFuIG9wZXJhdGlvbiBkZWNsYXJpbmcgdGhlIGV2ZW50IHNpZGUgb2YgYSB0d28td2F5IGJpbmRpbmcuXG4gICAqL1xuICBUd29XYXlMaXN0ZW5lcixcblxuICAvKipcbiAgICogQSBjcmVhdGlvbi10aW1lIG9wZXJhdGlvbiB0aGF0IGluaXRpYWxpemVzIHRoZSBzbG90IGZvciBhIGBAbGV0YCBkZWNsYXJhdGlvbi5cbiAgICovXG4gIERlY2xhcmVMZXQsXG5cbiAgLyoqXG4gICAqIEFuIHVwZGF0ZS10aW1lIG9wZXJhdGlvbiB0aGF0IHN0b3JlcyB0aGUgY3VycmVudCB2YWx1ZSBvZiBhIGBAbGV0YCBkZWNsYXJhdGlvbi5cbiAgICovXG4gIFN0b3JlTGV0LFxuXG4gIC8qKlxuICAgKiBUaGUgc3RhcnQgb2YgYW4gaTE4biBibG9jay5cbiAgICovXG4gIEkxOG5TdGFydCxcblxuICAvKipcbiAgICogQSBzZWxmLWNsb3NpbmcgaTE4biBvbiBhIHNpbmdsZSBlbGVtZW50LlxuICAgKi9cbiAgSTE4bixcblxuICAvKipcbiAgICogVGhlIGVuZCBvZiBhbiBpMThuIGJsb2NrLlxuICAgKi9cbiAgSTE4bkVuZCxcblxuICAvKipcbiAgICogQW4gZXhwcmVzc2lvbiBpbiBhbiBpMThuIG1lc3NhZ2UuXG4gICAqL1xuICBJMThuRXhwcmVzc2lvbixcblxuICAvKipcbiAgICogQW4gaW5zdHJ1Y3Rpb24gdGhhdCBhcHBsaWVzIGEgc2V0IG9mIGkxOG4gZXhwcmVzc2lvbnMuXG4gICAqL1xuICBJMThuQXBwbHksXG5cbiAgLyoqXG4gICAqIEFuIGluc3RydWN0aW9uIHRvIGNyZWF0ZSBhbiBJQ1UgZXhwcmVzc2lvbi5cbiAgICovXG4gIEljdVN0YXJ0LFxuXG4gIC8qKlxuICAgKiBBbiBpbnN0cnVjdGlvbiB0byB1cGRhdGUgYW4gSUNVIGV4cHJlc3Npb24uXG4gICAqL1xuICBJY3VFbmQsXG5cbiAgLyoqXG4gICAqIEFuIGluc3RydWN0aW9uIHJlcHJlc2VudGluZyBhIHBsYWNlaG9sZGVyIGluIGFuIElDVSBleHByZXNzaW9uLlxuICAgKi9cbiAgSWN1UGxhY2Vob2xkZXIsXG5cbiAgLyoqXG4gICAqIEFuIGkxOG4gY29udGV4dCBjb250YWluaW5nIGluZm9ybWF0aW9uIG5lZWRlZCB0byBnZW5lcmF0ZSBhbiBpMThuIG1lc3NhZ2UuXG4gICAqL1xuICBJMThuQ29udGV4dCxcblxuICAvKipcbiAgICogQSBjcmVhdGlvbiBvcCB0aGF0IGNvcnJlc3BvbmRzIHRvIGkxOG4gYXR0cmlidXRlcyBvbiBhbiBlbGVtZW50LlxuICAgKi9cbiAgSTE4bkF0dHJpYnV0ZXMsXG59XG5cbi8qKlxuICogRGlzdGluZ3Vpc2hlcyBkaWZmZXJlbnQga2luZHMgb2YgSVIgZXhwcmVzc2lvbnMuXG4gKi9cbmV4cG9ydCBlbnVtIEV4cHJlc3Npb25LaW5kIHtcbiAgLyoqXG4gICAqIFJlYWQgb2YgYSB2YXJpYWJsZSBpbiBhIGxleGljYWwgc2NvcGUuXG4gICAqL1xuICBMZXhpY2FsUmVhZCxcblxuICAvKipcbiAgICogQSByZWZlcmVuY2UgdG8gdGhlIGN1cnJlbnQgdmlldyBjb250ZXh0LlxuICAgKi9cbiAgQ29udGV4dCxcblxuICAvKipcbiAgICogQSByZWZlcmVuY2UgdG8gdGhlIHZpZXcgY29udGV4dCwgZm9yIHVzZSBpbnNpZGUgYSB0cmFjayBmdW5jdGlvbi5cbiAgICovXG4gIFRyYWNrQ29udGV4dCxcblxuICAvKipcbiAgICogUmVhZCBvZiBhIHZhcmlhYmxlIGRlY2xhcmVkIGluIGEgYFZhcmlhYmxlT3BgLlxuICAgKi9cbiAgUmVhZFZhcmlhYmxlLFxuXG4gIC8qKlxuICAgKiBSdW50aW1lIG9wZXJhdGlvbiB0byBuYXZpZ2F0ZSB0byB0aGUgbmV4dCB2aWV3IGNvbnRleHQgaW4gdGhlIHZpZXcgaGllcmFyY2h5LlxuICAgKi9cbiAgTmV4dENvbnRleHQsXG5cbiAgLyoqXG4gICAqIFJ1bnRpbWUgb3BlcmF0aW9uIHRvIHJldHJpZXZlIHRoZSB2YWx1ZSBvZiBhIGxvY2FsIHJlZmVyZW5jZS5cbiAgICovXG4gIFJlZmVyZW5jZSxcblxuICAvKipcbiAgICogQSBjYWxsIHN0b3JpbmcgdGhlIHZhbHVlIG9mIGEgYEBsZXRgIGRlY2xhcmF0aW9uLlxuICAgKi9cbiAgU3RvcmVMZXQsXG5cbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIGEgYEBsZXRgIGRlY2xhcmF0aW9uIHJlYWQgZnJvbSB0aGUgY29udGV4dCB2aWV3LlxuICAgKi9cbiAgQ29udGV4dExldFJlZmVyZW5jZSxcblxuICAvKipcbiAgICogUnVudGltZSBvcGVyYXRpb24gdG8gc25hcHNob3QgdGhlIGN1cnJlbnQgdmlldyBjb250ZXh0LlxuICAgKi9cbiAgR2V0Q3VycmVudFZpZXcsXG5cbiAgLyoqXG4gICAqIFJ1bnRpbWUgb3BlcmF0aW9uIHRvIHJlc3RvcmUgYSBzbmFwc2hvdHRlZCB2aWV3LlxuICAgKi9cbiAgUmVzdG9yZVZpZXcsXG5cbiAgLyoqXG4gICAqIFJ1bnRpbWUgb3BlcmF0aW9uIHRvIHJlc2V0IHRoZSBjdXJyZW50IHZpZXcgY29udGV4dCBhZnRlciBgUmVzdG9yZVZpZXdgLlxuICAgKi9cbiAgUmVzZXRWaWV3LFxuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGFuZCBjYWxscyBhIGZ1bmN0aW9uIHdpdGggY2hhbmdlLWRldGVjdGVkIGFyZ3VtZW50cy5cbiAgICovXG4gIFB1cmVGdW5jdGlvbkV4cHIsXG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBhIHBvc2l0aW9uYWwgcGFyYW1ldGVyIHRvIGEgcHVyZSBmdW5jdGlvbiBkZWZpbml0aW9uLlxuICAgKi9cbiAgUHVyZUZ1bmN0aW9uUGFyYW1ldGVyRXhwcixcblxuICAvKipcbiAgICogQmluZGluZyB0byBhIHBpcGUgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBQaXBlQmluZGluZyxcblxuICAvKipcbiAgICogQmluZGluZyB0byBhIHBpcGUgdHJhbnNmb3JtYXRpb24gd2l0aCBhIHZhcmlhYmxlIG51bWJlciBvZiBhcmd1bWVudHMuXG4gICAqL1xuICBQaXBlQmluZGluZ1ZhcmlhZGljLFxuXG4gIC8qXG4gICAqIEEgc2FmZSBwcm9wZXJ0eSByZWFkIHJlcXVpcmluZyBleHBhbnNpb24gaW50byBhIG51bGwgY2hlY2suXG4gICAqL1xuICBTYWZlUHJvcGVydHlSZWFkLFxuXG4gIC8qKlxuICAgKiBBIHNhZmUga2V5ZWQgcmVhZCByZXF1aXJpbmcgZXhwYW5zaW9uIGludG8gYSBudWxsIGNoZWNrLlxuICAgKi9cbiAgU2FmZUtleWVkUmVhZCxcblxuICAvKipcbiAgICogQSBzYWZlIGZ1bmN0aW9uIGNhbGwgcmVxdWlyaW5nIGV4cGFuc2lvbiBpbnRvIGEgbnVsbCBjaGVjay5cbiAgICovXG4gIFNhZmVJbnZva2VGdW5jdGlvbixcblxuICAvKipcbiAgICogQW4gaW50ZXJtZWRpYXRlIGV4cHJlc3Npb24gdGhhdCB3aWxsIGJlIGV4cGFuZGVkIGZyb20gYSBzYWZlIHJlYWQgaW50byBhbiBleHBsaWNpdCB0ZXJuYXJ5LlxuICAgKi9cbiAgU2FmZVRlcm5hcnlFeHByLFxuXG4gIC8qKlxuICAgKiBBbiBlbXB0eSBleHByZXNzaW9uIHRoYXQgd2lsbCBiZSBzdGlwcGVkIGJlZm9yZSBnZW5lcmF0aW5nIHRoZSBmaW5hbCBvdXRwdXQuXG4gICAqL1xuICBFbXB0eUV4cHIsXG5cbiAgLypcbiAgICogQW4gYXNzaWdubWVudCB0byBhIHRlbXBvcmFyeSB2YXJpYWJsZS5cbiAgICovXG4gIEFzc2lnblRlbXBvcmFyeUV4cHIsXG5cbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIGEgdGVtcG9yYXJ5IHZhcmlhYmxlLlxuICAgKi9cbiAgUmVhZFRlbXBvcmFyeUV4cHIsXG5cbiAgLyoqXG4gICAqIEFuIGV4cHJlc3Npb24gdGhhdCB3aWxsIGNhdXNlIGEgbGl0ZXJhbCBzbG90IGluZGV4IHRvIGJlIGVtaXR0ZWQuXG4gICAqL1xuICBTbG90TGl0ZXJhbEV4cHIsXG5cbiAgLyoqXG4gICAqIEEgdGVzdCBleHByZXNzaW9uIGZvciBhIGNvbmRpdGlvbmFsIG9wLlxuICAgKi9cbiAgQ29uZGl0aW9uYWxDYXNlLFxuXG4gIC8qKlxuICAgKiBBbiBleHByZXNzaW9uIHRoYXQgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGV4dHJhY3RlZCB0byB0aGUgY29tcG9uZW50IGNvbnN0IGFycmF5LlxuICAgKi9cbiAgQ29uc3RDb2xsZWN0ZWQsXG5cbiAgLyoqXG4gICAqIE9wZXJhdGlvbiB0aGF0IHNldHMgdGhlIHZhbHVlIG9mIGEgdHdvLXdheSBiaW5kaW5nLlxuICAgKi9cbiAgVHdvV2F5QmluZGluZ1NldCxcbn1cblxuZXhwb3J0IGVudW0gVmFyaWFibGVGbGFncyB7XG4gIE5vbmUgPSAwYjAwMDAsXG5cbiAgLyoqXG4gICAqIEFsd2F5cyBpbmxpbmUgdGhpcyB2YXJpYWJsZSwgcmVnYXJkbGVzcyBvZiB0aGUgbnVtYmVyIG9mIHRpbWVzIGl0J3MgdXNlZC5cbiAgICogQW4gYEFsd2F5c0lubGluZWAgdmFyaWFibGUgbWF5IG5vdCBkZXBlbmQgb24gY29udGV4dCwgYmVjYXVzZSBkb2luZyBzbyBtYXkgY2F1c2Ugc2lkZSBlZmZlY3RzXG4gICAqIHRoYXQgYXJlIGlsbGVnYWwgd2hlbiBtdWx0aS1pbmxpbmVkLiAoVGhlIG9wdGltaXplciB3aWxsIGVuZm9yY2UgdGhpcyBjb25zdHJhaW50LilcbiAgICovXG4gIEFsd2F5c0lubGluZSA9IDBiMDAwMSxcbn1cbi8qKlxuICogRGlzdGluZ3Vpc2hlcyBiZXR3ZWVuIGRpZmZlcmVudCBraW5kcyBvZiBgU2VtYW50aWNWYXJpYWJsZWBzLlxuICovXG5leHBvcnQgZW51bSBTZW1hbnRpY1ZhcmlhYmxlS2luZCB7XG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIHRoZSBjb250ZXh0IG9mIGEgcGFydGljdWxhciB2aWV3LlxuICAgKi9cbiAgQ29udGV4dCxcblxuICAvKipcbiAgICogUmVwcmVzZW50cyBhbiBpZGVudGlmaWVyIGRlY2xhcmVkIGluIHRoZSBsZXhpY2FsIHNjb3BlIG9mIGEgdmlldy5cbiAgICovXG4gIElkZW50aWZpZXIsXG5cbiAgLyoqXG4gICAqIFJlcHJlc2VudHMgYSBzYXZlZCBzdGF0ZSB0aGF0IGNhbiBiZSB1c2VkIHRvIHJlc3RvcmUgYSB2aWV3IGluIGEgbGlzdGVuZXIgaGFuZGxlciBmdW5jdGlvbi5cbiAgICovXG4gIFNhdmVkVmlldyxcblxuICAvKipcbiAgICogQW4gYWxpYXMgZ2VuZXJhdGVkIGJ5IGEgc3BlY2lhbCBlbWJlZGRlZCB2aWV3IHR5cGUgKGUuZy4gYSBgQGZvcmAgYmxvY2spLlxuICAgKi9cbiAgQWxpYXMsXG59XG5cbi8qKlxuICogV2hldGhlciB0byBjb21waWxlIGluIGNvbXBhdGliaWx0eSBtb2RlLiBJbiBjb21wYXRpYmlsaXR5IG1vZGUsIHRoZSB0ZW1wbGF0ZSBwaXBlbGluZSB3aWxsXG4gKiBhdHRlbXB0IHRvIG1hdGNoIHRoZSBvdXRwdXQgb2YgYFRlbXBsYXRlRGVmaW5pdGlvbkJ1aWxkZXJgIGFzIGV4YWN0bHkgYXMgcG9zc2libGUsIGF0IHRoZSBjb3N0XG4gKiBvZiBwcm9kdWNpbmcgcXVpcmt5IG9yIGxhcmdlciBjb2RlIGluIHNvbWUgY2FzZXMuXG4gKi9cbmV4cG9ydCBlbnVtIENvbXBhdGliaWxpdHlNb2RlIHtcbiAgTm9ybWFsLFxuICBUZW1wbGF0ZURlZmluaXRpb25CdWlsZGVyLFxufVxuXG4vKipcbiAqIEVudW1lcmF0aW9uIG9mIHRoZSB0eXBlcyBvZiBhdHRyaWJ1dGVzIHdoaWNoIGNhbiBiZSBhcHBsaWVkIHRvIGFuIGVsZW1lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIEJpbmRpbmdLaW5kIHtcbiAgLyoqXG4gICAqIFN0YXRpYyBhdHRyaWJ1dGVzLlxuICAgKi9cbiAgQXR0cmlidXRlLFxuXG4gIC8qKlxuICAgKiBDbGFzcyBiaW5kaW5ncy5cbiAgICovXG4gIENsYXNzTmFtZSxcblxuICAvKipcbiAgICogU3R5bGUgYmluZGluZ3MuXG4gICAqL1xuICBTdHlsZVByb3BlcnR5LFxuXG4gIC8qKlxuICAgKiBEeW5hbWljIHByb3BlcnR5IGJpbmRpbmdzLlxuICAgKi9cbiAgUHJvcGVydHksXG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IG9yIGF0dHJpYnV0ZSBiaW5kaW5ncyBvbiBhIHRlbXBsYXRlLlxuICAgKi9cbiAgVGVtcGxhdGUsXG5cbiAgLyoqXG4gICAqIEludGVybmF0aW9uYWxpemVkIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBJMThuLFxuXG4gIC8qKlxuICAgKiBBbmltYXRpb24gcHJvcGVydHkgYmluZGluZ3MuXG4gICAqL1xuICBBbmltYXRpb24sXG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IHNpZGUgb2YgYSB0d28td2F5IGJpbmRpbmcuXG4gICAqL1xuICBUd29XYXlQcm9wZXJ0eSxcbn1cblxuLyoqXG4gKiBFbnVtZXJhdGlvbiBvZiBwb3NzaWJsZSB0aW1lcyBpMThuIHBhcmFtcyBjYW4gYmUgcmVzb2x2ZWQuXG4gKi9cbmV4cG9ydCBlbnVtIEkxOG5QYXJhbVJlc29sdXRpb25UaW1lIHtcbiAgLyoqXG4gICAqIFBhcmFtIGlzIHJlc29sdmVkIGF0IG1lc3NhZ2UgY3JlYXRpb24gdGltZS4gTW9zdCBwYXJhbXMgc2hvdWxkIGJlIHJlc29sdmVkIGF0IG1lc3NhZ2UgY3JlYXRpb25cbiAgICogdGltZS4gSG93ZXZlciwgSUNVIHBhcmFtcyBuZWVkIHRvIGJlIGhhbmRsZWQgaW4gcG9zdC1wcm9jZXNzaW5nLlxuICAgKi9cbiAgQ3JlYXRpb24sXG5cbiAgLyoqXG4gICAqIFBhcmFtIGlzIHJlc29sdmVkIGR1cmluZyBwb3N0LXByb2Nlc3NpbmcuIFRoaXMgc2hvdWxkIGJlIHVzZWQgZm9yIHBhcmFtcyB3aG9zZSB2YWx1ZSBjb21lcyBmcm9tXG4gICAqIGFuIElDVS5cbiAgICovXG4gIFBvc3Rwcm9jY2Vzc2luZyxcbn1cblxuLyoqXG4gKiBUaGUgY29udGV4dHMgaW4gd2hpY2ggYW4gaTE4biBleHByZXNzaW9uIGNhbiBiZSB1c2VkLlxuICovXG5leHBvcnQgZW51bSBJMThuRXhwcmVzc2lvbkZvciB7XG4gIC8qKlxuICAgKiBUaGlzIGV4cHJlc3Npb24gaXMgdXNlZCBhcyBhIHZhbHVlIChpLmUuIGluc2lkZSBhbiBpMThuIGJsb2NrKS5cbiAgICovXG4gIEkxOG5UZXh0LFxuXG4gIC8qKlxuICAgKiBUaGlzIGV4cHJlc3Npb24gaXMgdXNlZCBpbiBhIGJpbmRpbmcuXG4gICAqL1xuICBJMThuQXR0cmlidXRlLFxufVxuXG4vKipcbiAqIEZsYWdzIHRoYXQgZGVzY3JpYmUgd2hhdCBhbiBpMThuIHBhcmFtIHZhbHVlLiBUaGVzZSBkZXRlcm1pbmUgaG93IHRoZSB2YWx1ZSBpcyBzZXJpYWxpemVkIGludG9cbiAqIHRoZSBmaW5hbCBtYXAuXG4gKi9cbmV4cG9ydCBlbnVtIEkxOG5QYXJhbVZhbHVlRmxhZ3Mge1xuICBOb25lID0gMGIwMDAwLFxuXG4gIC8qKlxuICAgKiAgVGhpcyB2YWx1ZSByZXByZXNlbnRzIGFuIGVsZW1lbnQgdGFnLlxuICAgKi9cbiAgRWxlbWVudFRhZyA9IDBiMSxcblxuICAvKipcbiAgICogVGhpcyB2YWx1ZSByZXByZXNlbnRzIGEgdGVtcGxhdGUgdGFnLlxuICAgKi9cbiAgVGVtcGxhdGVUYWcgPSAwYjEwLFxuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHJlcHJlc2VudHMgdGhlIG9wZW5pbmcgb2YgYSB0YWcuXG4gICAqL1xuICBPcGVuVGFnID0gMGIwMTAwLFxuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHJlcHJlc2VudHMgdGhlIGNsb3Npbmcgb2YgYSB0YWcuXG4gICAqL1xuICBDbG9zZVRhZyA9IDBiMTAwMCxcblxuICAvKipcbiAgICogVGhpcyB2YWx1ZSByZXByZXNlbnRzIGFuIGkxOG4gZXhwcmVzc2lvbiBpbmRleC5cbiAgICovXG4gIEV4cHJlc3Npb25JbmRleCA9IDBiMTAwMDAsXG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgYWN0aXZlIG5hbWVzcGFjZSBpcyBIVE1MLCBNYXRoTUwsIG9yIFNWRyBtb2RlLlxuICovXG5leHBvcnQgZW51bSBOYW1lc3BhY2Uge1xuICBIVE1MLFxuICBTVkcsXG4gIE1hdGgsXG59XG5cbi8qKlxuICogVGhlIHR5cGUgb2YgYSBgQGRlZmVyYCB0cmlnZ2VyLCBmb3IgdXNlIGluIHRoZSBpci5cbiAqL1xuZXhwb3J0IGVudW0gRGVmZXJUcmlnZ2VyS2luZCB7XG4gIElkbGUsXG4gIEltbWVkaWF0ZSxcbiAgVGltZXIsXG4gIEhvdmVyLFxuICBJbnRlcmFjdGlvbixcbiAgVmlld3BvcnQsXG59XG5cbi8qKlxuICogS2luZHMgb2YgaTE4biBjb250ZXh0cy4gVGhleSBjYW4gYmUgY3JlYXRlZCBiZWNhdXNlIG9mIHJvb3QgaTE4biBibG9ja3MsIG9yIElDVXMuXG4gKi9cbmV4cG9ydCBlbnVtIEkxOG5Db250ZXh0S2luZCB7XG4gIFJvb3RJMThuLFxuICBJY3UsXG4gIEF0dHIsXG59XG5cbmV4cG9ydCBlbnVtIFRlbXBsYXRlS2luZCB7XG4gIE5nVGVtcGxhdGUsXG4gIFN0cnVjdHVyYWwsXG4gIEJsb2NrLFxufVxuIl19