@angular/core 9.0.3 → 9.0.7

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 (74) hide show
  1. package/bundles/core-testing.umd.js +1 -1
  2. package/bundles/core-testing.umd.min.js +1 -1
  3. package/bundles/core-testing.umd.min.js.map +1 -1
  4. package/bundles/core.umd.js +613 -579
  5. package/bundles/core.umd.js.map +1 -1
  6. package/bundles/core.umd.min.js +157 -156
  7. package/bundles/core.umd.min.js.map +1 -1
  8. package/core.d.ts +45 -45
  9. package/core.metadata.json +1 -1
  10. package/esm2015/core.js +2 -2
  11. package/esm2015/src/di/jit/injectable.js +2 -2
  12. package/esm2015/src/di/r3_injector.js +27 -9
  13. package/esm2015/src/render3/assert.js +4 -1
  14. package/esm2015/src/render3/definition.js +60 -60
  15. package/esm2015/src/render3/di.js +25 -19
  16. package/esm2015/src/render3/errors.js +1 -3
  17. package/esm2015/src/render3/features/ng_onchanges_feature.js +8 -13
  18. package/esm2015/src/render3/i18n.js +14 -7
  19. package/esm2015/src/render3/instructions/attribute.js +6 -6
  20. package/esm2015/src/render3/instructions/attribute_interpolation.js +29 -47
  21. package/esm2015/src/render3/instructions/host_property.js +13 -10
  22. package/esm2015/src/render3/instructions/property.js +8 -9
  23. package/esm2015/src/render3/instructions/property_interpolation.js +40 -39
  24. package/esm2015/src/render3/instructions/shared.js +18 -27
  25. package/esm2015/src/render3/jit/module.js +18 -18
  26. package/esm2015/src/render3/ng_module_ref.js +7 -3
  27. package/esm2015/src/render3/node_assert.js +1 -1
  28. package/esm2015/src/render3/pure_function.js +23 -6
  29. package/esm2015/src/render3/query.js +2 -5
  30. package/esm2015/src/render3/state.js +11 -1
  31. package/esm2015/src/util/assert.js +1 -3
  32. package/esm2015/src/util/closure.js +2 -2
  33. package/esm2015/src/util/decorators.js +87 -80
  34. package/esm2015/src/util/ng_dev_mode.js +1 -1
  35. package/esm2015/src/util/ng_i18n_closure_mode.js +1 -1
  36. package/esm2015/src/version.js +1 -1
  37. package/esm5/core.js +2 -2
  38. package/esm5/src/di/jit/injectable.js +2 -2
  39. package/esm5/src/di/r3_injector.js +19 -5
  40. package/esm5/src/render3/assert.js +3 -1
  41. package/esm5/src/render3/definition.js +51 -51
  42. package/esm5/src/render3/di.js +16 -13
  43. package/esm5/src/render3/errors.js +1 -3
  44. package/esm5/src/render3/features/ng_onchanges_feature.js +8 -9
  45. package/esm5/src/render3/i18n.js +13 -6
  46. package/esm5/src/render3/instructions/attribute.js +5 -5
  47. package/esm5/src/render3/instructions/attribute_interpolation.js +29 -38
  48. package/esm5/src/render3/instructions/host_property.js +10 -8
  49. package/esm5/src/render3/instructions/property.js +7 -7
  50. package/esm5/src/render3/instructions/property_interpolation.js +31 -30
  51. package/esm5/src/render3/instructions/shared.js +10 -14
  52. package/esm5/src/render3/jit/module.js +12 -12
  53. package/esm5/src/render3/ng_module_ref.js +7 -3
  54. package/esm5/src/render3/node_assert.js +1 -1
  55. package/esm5/src/render3/pure_function.js +19 -6
  56. package/esm5/src/render3/query.js +2 -4
  57. package/esm5/src/render3/state.js +9 -1
  58. package/esm5/src/util/assert.js +1 -3
  59. package/esm5/src/util/closure.js +2 -2
  60. package/esm5/src/util/decorators.js +101 -94
  61. package/esm5/src/util/ng_dev_mode.js +1 -1
  62. package/esm5/src/util/ng_i18n_closure_mode.js +1 -1
  63. package/esm5/src/version.js +1 -1
  64. package/fesm2015/core.js +1130 -1101
  65. package/fesm2015/core.js.map +1 -1
  66. package/fesm2015/testing.js +1 -1
  67. package/fesm5/core.js +613 -579
  68. package/fesm5/core.js.map +1 -1
  69. package/fesm5/testing.js +1 -1
  70. package/package.json +1 -1
  71. package/schematics/migrations/undecorated-classes-with-di/create_ngc_program.js +13 -1
  72. package/src/r3_symbols.d.ts +1 -1
  73. package/testing/testing.d.ts +1 -1
  74. package/testing.d.ts +1 -1
@@ -5,6 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
+ import { noSideEffects } from './closure';
8
9
  export const ANNOTATIONS = '__annotations__';
9
10
  export const PARAMETERS = '__parameters__';
10
11
  export const PROP_METADATA = '__prop__metadata__';
@@ -12,33 +13,35 @@ export const PROP_METADATA = '__prop__metadata__';
12
13
  * @suppress {globalThis}
13
14
  */
14
15
  export function makeDecorator(name, props, parentClass, additionalProcessing, typeFn) {
15
- const metaCtor = makeMetadataCtor(props);
16
- function DecoratorFactory(...args) {
17
- if (this instanceof DecoratorFactory) {
18
- metaCtor.call(this, ...args);
19
- return this;
16
+ return noSideEffects(() => {
17
+ const metaCtor = makeMetadataCtor(props);
18
+ function DecoratorFactory(...args) {
19
+ if (this instanceof DecoratorFactory) {
20
+ metaCtor.call(this, ...args);
21
+ return this;
22
+ }
23
+ const annotationInstance = new DecoratorFactory(...args);
24
+ return function TypeDecorator(cls) {
25
+ if (typeFn)
26
+ typeFn(cls, ...args);
27
+ // Use of Object.defineProperty is important since it creates non-enumerable property which
28
+ // prevents the property is copied during subclassing.
29
+ const annotations = cls.hasOwnProperty(ANNOTATIONS) ?
30
+ cls[ANNOTATIONS] :
31
+ Object.defineProperty(cls, ANNOTATIONS, { value: [] })[ANNOTATIONS];
32
+ annotations.push(annotationInstance);
33
+ if (additionalProcessing)
34
+ additionalProcessing(cls);
35
+ return cls;
36
+ };
37
+ }
38
+ if (parentClass) {
39
+ DecoratorFactory.prototype = Object.create(parentClass.prototype);
20
40
  }
21
- const annotationInstance = new DecoratorFactory(...args);
22
- return function TypeDecorator(cls) {
23
- if (typeFn)
24
- typeFn(cls, ...args);
25
- // Use of Object.defineProperty is important since it creates non-enumerable property which
26
- // prevents the property is copied during subclassing.
27
- const annotations = cls.hasOwnProperty(ANNOTATIONS) ?
28
- cls[ANNOTATIONS] :
29
- Object.defineProperty(cls, ANNOTATIONS, { value: [] })[ANNOTATIONS];
30
- annotations.push(annotationInstance);
31
- if (additionalProcessing)
32
- additionalProcessing(cls);
33
- return cls;
34
- };
35
- }
36
- if (parentClass) {
37
- DecoratorFactory.prototype = Object.create(parentClass.prototype);
38
- }
39
- DecoratorFactory.prototype.ngMetadataName = name;
40
- DecoratorFactory.annotationCls = DecoratorFactory;
41
- return DecoratorFactory;
41
+ DecoratorFactory.prototype.ngMetadataName = name;
42
+ DecoratorFactory.annotationCls = DecoratorFactory;
43
+ return DecoratorFactory;
44
+ });
42
45
  }
43
46
  function makeMetadataCtor(props) {
44
47
  return function ctor(...args) {
@@ -51,64 +54,68 @@ function makeMetadataCtor(props) {
51
54
  };
52
55
  }
53
56
  export function makeParamDecorator(name, props, parentClass) {
54
- const metaCtor = makeMetadataCtor(props);
55
- function ParamDecoratorFactory(...args) {
56
- if (this instanceof ParamDecoratorFactory) {
57
- metaCtor.apply(this, args);
58
- return this;
59
- }
60
- const annotationInstance = new ParamDecoratorFactory(...args);
61
- ParamDecorator.annotation = annotationInstance;
62
- return ParamDecorator;
63
- function ParamDecorator(cls, unusedKey, index) {
64
- // Use of Object.defineProperty is important since it creates non-enumerable property which
65
- // prevents the property is copied during subclassing.
66
- const parameters = cls.hasOwnProperty(PARAMETERS) ?
67
- cls[PARAMETERS] :
68
- Object.defineProperty(cls, PARAMETERS, { value: [] })[PARAMETERS];
69
- // there might be gaps if some in between parameters do not have annotations.
70
- // we pad with nulls.
71
- while (parameters.length <= index) {
72
- parameters.push(null);
57
+ return noSideEffects(() => {
58
+ const metaCtor = makeMetadataCtor(props);
59
+ function ParamDecoratorFactory(...args) {
60
+ if (this instanceof ParamDecoratorFactory) {
61
+ metaCtor.apply(this, args);
62
+ return this;
63
+ }
64
+ const annotationInstance = new ParamDecoratorFactory(...args);
65
+ ParamDecorator.annotation = annotationInstance;
66
+ return ParamDecorator;
67
+ function ParamDecorator(cls, unusedKey, index) {
68
+ // Use of Object.defineProperty is important since it creates non-enumerable property which
69
+ // prevents the property is copied during subclassing.
70
+ const parameters = cls.hasOwnProperty(PARAMETERS) ?
71
+ cls[PARAMETERS] :
72
+ Object.defineProperty(cls, PARAMETERS, { value: [] })[PARAMETERS];
73
+ // there might be gaps if some in between parameters do not have annotations.
74
+ // we pad with nulls.
75
+ while (parameters.length <= index) {
76
+ parameters.push(null);
77
+ }
78
+ (parameters[index] = parameters[index] || []).push(annotationInstance);
79
+ return cls;
73
80
  }
74
- (parameters[index] = parameters[index] || []).push(annotationInstance);
75
- return cls;
76
81
  }
77
- }
78
- if (parentClass) {
79
- ParamDecoratorFactory.prototype = Object.create(parentClass.prototype);
80
- }
81
- ParamDecoratorFactory.prototype.ngMetadataName = name;
82
- ParamDecoratorFactory.annotationCls = ParamDecoratorFactory;
83
- return ParamDecoratorFactory;
82
+ if (parentClass) {
83
+ ParamDecoratorFactory.prototype = Object.create(parentClass.prototype);
84
+ }
85
+ ParamDecoratorFactory.prototype.ngMetadataName = name;
86
+ ParamDecoratorFactory.annotationCls = ParamDecoratorFactory;
87
+ return ParamDecoratorFactory;
88
+ });
84
89
  }
85
90
  export function makePropDecorator(name, props, parentClass, additionalProcessing) {
86
- const metaCtor = makeMetadataCtor(props);
87
- function PropDecoratorFactory(...args) {
88
- if (this instanceof PropDecoratorFactory) {
89
- metaCtor.apply(this, args);
90
- return this;
91
+ return noSideEffects(() => {
92
+ const metaCtor = makeMetadataCtor(props);
93
+ function PropDecoratorFactory(...args) {
94
+ if (this instanceof PropDecoratorFactory) {
95
+ metaCtor.apply(this, args);
96
+ return this;
97
+ }
98
+ const decoratorInstance = new PropDecoratorFactory(...args);
99
+ function PropDecorator(target, name) {
100
+ const constructor = target.constructor;
101
+ // Use of Object.defineProperty is important since it creates non-enumerable property which
102
+ // prevents the property is copied during subclassing.
103
+ const meta = constructor.hasOwnProperty(PROP_METADATA) ?
104
+ constructor[PROP_METADATA] :
105
+ Object.defineProperty(constructor, PROP_METADATA, { value: {} })[PROP_METADATA];
106
+ meta[name] = meta.hasOwnProperty(name) && meta[name] || [];
107
+ meta[name].unshift(decoratorInstance);
108
+ if (additionalProcessing)
109
+ additionalProcessing(target, name, ...args);
110
+ }
111
+ return PropDecorator;
91
112
  }
92
- const decoratorInstance = new PropDecoratorFactory(...args);
93
- function PropDecorator(target, name) {
94
- const constructor = target.constructor;
95
- // Use of Object.defineProperty is important since it creates non-enumerable property which
96
- // prevents the property is copied during subclassing.
97
- const meta = constructor.hasOwnProperty(PROP_METADATA) ?
98
- constructor[PROP_METADATA] :
99
- Object.defineProperty(constructor, PROP_METADATA, { value: {} })[PROP_METADATA];
100
- meta[name] = meta.hasOwnProperty(name) && meta[name] || [];
101
- meta[name].unshift(decoratorInstance);
102
- if (additionalProcessing)
103
- additionalProcessing(target, name, ...args);
113
+ if (parentClass) {
114
+ PropDecoratorFactory.prototype = Object.create(parentClass.prototype);
104
115
  }
105
- return PropDecorator;
106
- }
107
- if (parentClass) {
108
- PropDecoratorFactory.prototype = Object.create(parentClass.prototype);
109
- }
110
- PropDecoratorFactory.prototype.ngMetadataName = name;
111
- PropDecoratorFactory.annotationCls = PropDecoratorFactory;
112
- return PropDecoratorFactory;
116
+ PropDecoratorFactory.prototype.ngMetadataName = name;
117
+ PropDecoratorFactory.annotationCls = PropDecoratorFactory;
118
+ return PropDecoratorFactory;
119
+ });
113
120
  }
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3V0aWwvZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUE0QkgsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztBQUMzQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsb0JBQW9CLENBQUM7QUFFbEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUN6QixJQUFZLEVBQUUsS0FBK0IsRUFBRSxXQUFpQixFQUNoRSxvQkFBOEMsRUFDOUMsTUFBZ0Q7SUFFbEQsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFekMsU0FBUyxnQkFBZ0IsQ0FDb0IsR0FBRyxJQUFXO1FBQ3pELElBQUksSUFBSSxZQUFZLGdCQUFnQixFQUFFO1lBQ3BDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDN0IsT0FBTyxJQUErQixDQUFDO1NBQ3hDO1FBRUQsTUFBTSxrQkFBa0IsR0FBRyxJQUFLLGdCQUF3QixDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDbEUsT0FBTyxTQUFTLGFBQWEsQ0FBQyxHQUFZO1lBQ3hDLElBQUksTUFBTTtnQkFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDakMsMkZBQTJGO1lBQzNGLHNEQUFzRDtZQUN0RCxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELEdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2dCQUMzQixNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxXQUFXLEVB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UUFDZixvQkFBb0IsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDdkU7SUFFRCxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztJQUMvQyxvQkFBcUIsQ0FBQyxhQUFhLEdBQUcsb0JBQW9CLENBQUM7SUFDakUsT0FBTyxvQkFBb0IsQ0FBQztBQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1R5cGV9IGZyb20gJy4uL2ludGVyZmFjZS90eXBlJztcblxuLyoqXG4gKiBBbiBpbnRlcmZhY2UgaW1wbGVtZW50ZWQgYnkgYWxsIEFuZ3VsYXIgdHlwZSBkZWNvcmF0b3JzLCB3aGljaCBhbGxvd3MgdGhlbSB0byBiZSB1c2VkIGFzXG4gKiBkZWNvcmF0b3JzIGFzIHdlbGwgYXMgQW5ndWxhciBzeW50YXguXG4gKlxuICogYGBgXG4gKiBAbmcuQ29tcG9uZW50KHsuLi59KVxuICogY2xhc3MgTXlDbGFzcyB7Li4ufVxuICogYGBgXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVEZWNvcmF0b3Ige1xuICAvKipcbiAgICogSW52b2tlIGFzIGRlY29yYXRvci5cbiAgICovXG4gIDxUIGV4dGVuZHMgVHlwZTxhbnk+Pih0eXBlOiBUKTogVDtcblxuICAvLyBNYWtlIFR5cGVEZWNvcmF0b3IgYXNzaWduYWJsZSB0byBidWlsdC1pbiBQYXJhbWV0ZXJEZWNvcmF0b3IgdHlwZS5cbiAgLy8gUGFyYW1ldGVyRGVjb3JhdG9yIGlzIGRlY2xhcmVkIGluIGxpYi5kLnRzIGFzIGEgYGRlY2xhcmUgdHlwZWBcbiAgLy8gc28gd2UgY2Fubm90IGRlY2xhcmUgdGhpcyBpbnRlcmZhY2UgYXMgYSBzdWJ0eXBlLlxuICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMzM3OSNpc3N1ZWNvbW1lbnQtMTI2MTY5NDE3XG4gICh0YXJnZXQ6IE9iamVjdCwgcHJvcGVydHlLZXk/OiBzdHJpbmd8c3ltYm9sLCBwYXJhbWV0ZXJJbmRleD86IG51bWJlcik6IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBBTk5PVEFUSU9OUyA9ICdfX2Fubm90YXRpb25zX18nO1xuZXhwb3J0IGNvbnN0IFBBUkFNRVRFUlMgPSAnX19wYXJhbWV0ZXJzX18nO1xuZXhwb3J0IGNvbnN0IFBST1BfTUVUQURBVEEgPSAnX19wcm9wX19tZXRhZGF0YV9fJztcblxuLyoqXG4gKiBAc3VwcHJlc3Mge2dsb2JhbFRoaXN9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYWtlRGVjb3JhdG9yPFQ+KFxuICAgIG5hbWU6IHN0cmluZywgcHJvcHM/OiAoLi4uYXJnczogYW55W10pID0+IGFueSwgcGFyZW50Q2xhc3M/OiBhbnksXG4gICAgYWRkaXRpb25hbFByb2Nlc3Npbmc/OiAodHlwZTogVHlwZTxUPikgPT4gdm9pZCxcbiAgICB0eXBlRm4/OiAodHlwZTogVHlwZTxUPiwgLi4uYXJnczogYW55W10pID0+IHZvaWQpOlxuICAgIHtuZXcgKC4uLmFyZ3M6IGFueVtdKTogYW55OyAoLi4uYXJnczogYW55W10pOiBhbnk7ICguLi5hcmdzOiBhbnlbXSk6IChjbHM6IGFueSkgPT4gYW55O30ge1xuICBjb25zdCBtZXRhQ3RvciA9IG1ha2VNZXRhZGF0YUN0b3IocHJvcHMpO1xuXG4gIGZ1bmN0aW9uIERlY29yYXRvckZhY3RvcnkoXG4gICAgICB0aGlzOiB1bmtub3duIHwgdHlwZW9mIERlY29yYXRvckZhY3RvcnksIC4uLmFyZ3M6IGFueVtdKTogKGNsczogVHlwZTxUPikgPT4gYW55IHtcbiAgICBpZiAodGhpcyBpbnN0YW5jZW9mIERlY29yYXRvckZhY3RvcnkpIHtcbiAgICAgIG1ldGFDdG9yLmNhbGwodGhpcywgLi4uYXJncyk7XG4gICAgICByZXR1cm4gdGhpcyBhcyB0eXBlb2YgRGVjb3JhdG9yRmFjdG9yeTtcbiAgICB9XG5cbiAgICBjb25zdCBhbm5vdGF0aW9uSW5zdGFuY2UgPSBuZXcgKERlY29yYXRvckZhY3RvcnkgYXMgYW55KSguLi5hcmdzKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gVHlwZURlY29yYXRvcihjbHM6IFR5cGU8VD4pIHtcbiAgICAgIGlmICh0eXBlRm4pIHR5cGVGbihjbHMsIC4uLmFyZ3MpO1xuICAgICAgLy8gVXNlIG9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSBpcyBpbXBvcnRhbnQgc2luY2UgaXQgY3JlYXRlcyBub24tZW51bWVyYWJsZSBwcm9wZXJ0eSB3aGljaFxuICAgICAgLy8gcHJldmVudHMgdGhlIHByb3BlcnR5IGlzIGNvcGllZCBkdXJpbmcgc3ViY2xhc3NpbmcuXG4gICAgICBjb25zdCBhbm5vdGF0aW9ucyA9IGNscy5oYXNPd25Qcm9wZXJ0eShBTk5PVEFUSU9OUykgP1xuICAgICAgICAgIChjbHMgYXMgYW55KVtBTk5PVEFUSU9OU10gOlxuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShjbHMsIEFOTk9UQVRJT05TLCB7dmFsdWU6IFtdfSlbQU5OT1RBVElPTlNdO1xuICAgICAgYW5ub3RhdGlvbnMucHVzaChhbm5vdGF0aW9uSW5zdGFuY2UpO1xuXG5cbiAgICAgIGlmIChhZGRpdGlvbmFsUHJvY2Vzc2luZykgYWRkaXRpb25hbFByb2Nlc3NpbmcoY2xzKTtcblxuICAgICAgcmV0dXJuIGNscztcbiAgICB9O1xuICB9XG5cbiAgaWYgKHBhcmVudENsYXNzKSB7XG4gICAgRGVjb3JhdG9yRmFjdG9yeS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHBhcmVudENsYXNzLnByb3RvdHlwZSk7XG4gIH1cblxuICBEZWNvcmF0b3JGYWN0b3J5LnByb3RvdHlwZS5uZ01ldGFkYXRhTmFtZSA9IG5hbWU7XG4gIChEZWNvcmF0b3JGYWN0b3J5IGFzIGFueSkuYW5ub3RhdGlvbkNscyA9IERlY29yYXRvckZhY3Rvcnk7XG4gIHJldHVybiBEZWNvcmF0b3JGYWN0b3J5IGFzIGFueTtcbn1cblxuZnVuY3Rpb24gbWFrZU1ldGFkYXRhQ3Rvcihwcm9wcz86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogYW55IHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGN0b3IodGhpczogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xuICAgIGlmIChwcm9wcykge1xuICAgICAgY29uc3QgdmFsdWVzID0gcHJvcHMoLi4uYXJncyk7XG4gICAgICBmb3IgKGNvbnN0IHByb3BOYW1lIGluIHZhbHVlcykge1xuICAgICAgICB0aGlzW3Byb3BOYW1lXSA9IHZhbHVlc1twcm9wTmFtZV07XG4gICAgICB9XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZVBhcmFtRGVjb3JhdG9yKFxuICAgIG5hbWU6IHN0cmluZywgcHJvcHM/OiAoLi4uYXJnczogYW55W10pID0+IGFueSwgcGFyZW50Q2xhc3M/OiBhbnkpOiBhbnkge1xuICBjb25zdCBtZXRhQ3RvciA9IG1ha2VNZXRhZGF0YUN0b3IocHJvcHMpO1xuICBmdW5jdGlvbiBQYXJhbURlY29yYXRvckZhY3RvcnkoXG4gICAgICB0aGlzOiB1bmtub3duIHwgdHlwZW9mIFBhcmFtRGVjb3JhdG9yRmFjdG9yeSwgLi4uYXJnczogYW55W10pOiBhbnkge1xuICAgIGlmICh0aGlzIGluc3RhbmNlb2YgUGFyYW1EZWNvcmF0b3JGYWN0b3J5KSB7XG4gICAgICBtZXRhQ3Rvci5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICBjb25zdCBhbm5vdGF0aW9uSW5zdGFuY2UgPSBuZXcgKDxhbnk+UGFyYW1EZWNvcmF0b3JGYWN0b3J5KSguLi5hcmdzKTtcblxuICAgICg8YW55PlBhcmFtRGVjb3JhdG9yKS5hbm5vdGF0aW9uID0gYW5ub3RhdGlvbkluc3RhbmNlO1xuICAgIHJldHVybiBQYXJhbURlY29yYXRvcjtcblxuICAgIGZ1bmN0aW9uIFBhcmFtRGVjb3JhdG9yKGNsczogYW55LCB1bnVzZWRLZXk6IGFueSwgaW5kZXg6IG51bWJlcik6IGFueSB7XG4gICAgICAvLyBVc2Ugb2YgT2JqZWN0LmRlZmluZVByb3BlcnR5IGlzIGltcG9ydGFudCBzaW5jZSBpdCBjcmVhdGVzIG5vbi1lbnVtZXJhYmxlIHByb3BlcnR5IHdoaWNoXG4gICAgICAvLyBwcmV2ZW50cyB0aGUgcHJvcGVydHkgaXMgY29waWVkIGR1cmluZyBzdWJjbGFzc2luZy5cbiAgICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBjbHMuaGFzT3duUHJvcGVydHkoUEFSQU1FVEVSUykgP1xuICAgICAgICAgIChjbHMgYXMgYW55KVtQQVJBTUVURVJTXSA6XG4gICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNscywgUEFSQU1FVEVSUywge3ZhbHVlOiBbXX0pW1BBUkFNRVRFUlNdO1xuXG4gICAgICAvLyB0aGVyZSBtaWdodCBiZSBnYXBzIGlmIHNvbWUgaW4gYmV0d2VlbiBwYXJhbWV0ZXJzIGRvIG5vdCBoYXZlIGFubm90YXRpb25zLlxuICAgICAgLy8gd2UgcGFkIHdpdGggbnVsbHMuXG4gICAgICB3aGlsZSAocGFyYW1ldGVycy5sZW5ndGggPD0gaW5kZXgpIHtcbiAgICAgICAgcGFyYW1ldGVycy5wdXNoKG51bGwpO1xuICAgICAgfVxuXG4gICAgICAocGFyYW1ldGVyc1tpbmRleF0gPSBwYXJhbWV0ZXJzW2luZGV4XSB8fCBbXSkucHVzaChhbm5vdGF0aW9uSW5zdGFuY2UpO1xuICAgICAgcmV0dXJuIGNscztcbiAgICB9XG4gIH1cbiAgaWYgKHBhcmVudENsYXNzKSB7XG4gICAgUGFyYW1EZWNvcmF0b3JGYWN0b3J5LnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUocGFyZW50Q2xhc3MucHJvdG90eXBlKTtcbiAgfVxuICBQYXJhbURlY29yYXRvckZhY3RvcnkucHJvdG90eXBlLm5nTWV0YWRhdGFOYW1lID0gbmFtZTtcbiAgKDxhbnk+UGFyYW1EZWNvcmF0b3JGYWN0b3J5KS5hbm5vdGF0aW9uQ2xzID0gUGFyYW1EZWNvcmF0b3JGYWN0b3J5O1xuICByZXR1cm4gUGFyYW1EZWNvcmF0b3JGYWN0b3J5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZVByb3BEZWNvcmF0b3IoXG4gICAgbmFtZTogc3RyaW5nLCBwcm9wcz86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55LCBwYXJlbnRDbGFzcz86IGFueSxcbiAgICBhZGRpdGlvbmFsUHJvY2Vzc2luZz86ICh0YXJnZXQ6IGFueSwgbmFtZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCk6IGFueSB7XG4gIGNvbnN0IG1ldGFDdG9yID0gbWFrZU1ldGFkYXRhQ3Rvcihwcm9wcyk7XG5cbiAgZnVuY3Rpb24gUHJvcERlY29yYXRvckZhY3RvcnkodGhpczogdW5rbm93biB8IHR5cGVvZiBQcm9wRGVjb3JhdG9yRmFjdG9yeSwgLi4uYXJnczogYW55W10pOiBhbnkge1xuICAgIGlmICh0aGlzIGluc3RhbmNlb2YgUHJvcERlY29yYXRvckZhY3RvcnkpIHtcbiAgICAgIG1ldGFDdG9yLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgY29uc3QgZGVjb3JhdG9ySW5zdGFuY2UgPSBuZXcgKDxhbnk+UHJvcERlY29yYXRvckZhY3RvcnkpKC4uLmFyZ3MpO1xuXG4gICAgZnVuY3Rpb24gUHJvcERlY29yYXRvcih0YXJnZXQ6IGFueSwgbmFtZTogc3RyaW5nKSB7XG4gICAgICBjb25zdCBjb25zdHJ1Y3RvciA9IHRhcmdldC5jb25zdHJ1Y3RvcjtcbiAgICAgIC8vIFVzZSBvZiBPYmplY3QuZGVmaW5lUHJvcGVydHkgaXMgaW1wb3J0YW50IHNpbmNlIGl0IGNyZWF0ZXMgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgd2hpY2hcbiAgICAgIC8vIHByZXZlbnRzIHRoZSBwcm9wZXJ0eSBpcyBjb3BpZWQgZHVyaW5nIHN1YmNsYXNzaW5nLlxuICAgICAgY29uc3QgbWV0YSA9IGNvbnN0cnVjdG9yLmhhc093blByb3BlcnR5KFBST1BfTUVUQURBVEEpID9cbiAgICAgICAgICAoY29uc3RydWN0b3IgYXMgYW55KVtQUk9QX01FVEFEQVRBXSA6XG4gICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbnN0cnVjdG9yLCBQUk9QX01FVEFEQVRBLCB7dmFsdWU6IHt9fSlbUFJPUF9NRVRBREFUQV07XG4gICAgICBtZXRhW25hbWVdID0gbWV0YS5oYXNPd25Qcm9wZXJ0eShuYW1lKSAmJiBtZXRhW25hbWVdIHx8IFtdO1xuICAgICAgbWV0YVtuYW1lXS51bnNoaWZ0KGRlY29yYXRvckluc3RhbmNlKTtcblxuICAgICAgaWYgKGFkZGl0aW9uYWxQcm9jZXNzaW5nKSBhZGRpdGlvbmFsUHJvY2Vzc2luZyh0YXJnZXQsIG5hbWUsIC4uLmFyZ3MpO1xuICAgIH1cblxuICAgIHJldHVybiBQcm9wRGVjb3JhdG9yO1xuICB9XG5cbiAgaWYgKHBhcmVudENsYXNzKSB7XG4gICAgUHJvcERlY29yYXRvckZhY3RvcnkucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShwYXJlbnRDbGFzcy5wcm90b3R5cGUpO1xuICB9XG5cbiAgUHJvcERlY29yYXRvckZhY3RvcnkucHJvdG90eXBlLm5nTWV0YWRhdGFOYW1lID0gbmFtZTtcbiAgKDxhbnk+UHJvcERlY29yYXRvckZhY3RvcnkpLmFubm90YXRpb25DbHMgPSBQcm9wRGVjb3JhdG9yRmFjdG9yeTtcbiAgcmV0dXJuIFByb3BEZWNvcmF0b3JGYWN0b3J5O1xufVxuIl19
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3V0aWwvZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBNEJ4QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUM7QUFDN0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxvQkFBb0IsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQ3pCLElBQVksRUFBRSxLQUErQixFQUFFLFdBQWlCLEVBQ2hFLG9CQUE4QyxFQUM5QyxNQUFnRDtJQUVsRCxPQUFPLGFBQWEsQ0FBQyxHQUFHLEVBQUU7UUFDeEIsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFekMsU0FBUyxnQkFBZ0IsQ0FDb0IsR0FBRyxJQUFXO1lBQ3pELElBQUksSUFBSSxZQUFZLGdCQUFnQixFQUFFO2dCQUNwQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUM3QixPQUFPLElBQStCLENBQUM7YUFDeEM7WUFFRCxNQUFNLGtCQUFrQixHQUFHLElBQUssZ0JBQXdCLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNsRSxPQUFPLFNBQVMsYUFBYSxDQUFDLEdBQVk7Z0JBQ3hDLElBQUksTUFBTTtvQkFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ2pDLDJGQUEyRjtnQkFDM0Ysc0RBQXNEO2dCQUN0RCxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7b0JB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Q0FBQztnQkFDM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO2dCQUV0QyxJQUFJLG9CQUFvQjtvQkFBRSxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDeEUsQ0FBQztZQUVELE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLENBQUM7UUFFRCxJQUFJLFdBQVcsRUFBRTtZQUNmLG9CQUFvQixDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN2RTtRQUVELG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQy9DLG9CQUFxQixDQUFDLGFBQWEsR0FBRyxvQkFBb0IsQ0FBQztRQUNqRSxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtUeXBlfSBmcm9tICcuLi9pbnRlcmZhY2UvdHlwZSc7XG5cbmltcG9ydCB7bm9TaWRlRWZmZWN0c30gZnJvbSAnLi9jbG9zdXJlJztcblxuXG5cbi8qKlxuICogQW4gaW50ZXJmYWNlIGltcGxlbWVudGVkIGJ5IGFsbCBBbmd1bGFyIHR5cGUgZGVjb3JhdG9ycywgd2hpY2ggYWxsb3dzIHRoZW0gdG8gYmUgdXNlZCBhc1xuICogZGVjb3JhdG9ycyBhcyB3ZWxsIGFzIEFuZ3VsYXIgc3ludGF4LlxuICpcbiAqIGBgYFxuICogQG5nLkNvbXBvbmVudCh7Li4ufSlcbiAqIGNsYXNzIE15Q2xhc3Mgey4uLn1cbiAqIGBgYFxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeXBlRGVjb3JhdG9yIHtcbiAgLyoqXG4gICAqIEludm9rZSBhcyBkZWNvcmF0b3IuXG4gICAqL1xuICA8VCBleHRlbmRzIFR5cGU8YW55Pj4odHlwZTogVCk6IFQ7XG5cbiAgLy8gTWFrZSBUeXBlRGVjb3JhdG9yIGFzc2lnbmFibGUgdG8gYnVpbHQtaW4gUGFyYW1ldGVyRGVjb3JhdG9yIHR5cGUuXG4gIC8vIFBhcmFtZXRlckRlY29yYXRvciBpcyBkZWNsYXJlZCBpbiBsaWIuZC50cyBhcyBhIGBkZWNsYXJlIHR5cGVgXG4gIC8vIHNvIHdlIGNhbm5vdCBkZWNsYXJlIHRoaXMgaW50ZXJmYWNlIGFzIGEgc3VidHlwZS5cbiAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzMzNzkjaXNzdWVjb21tZW50LTEyNjE2OTQxN1xuICAodGFyZ2V0OiBPYmplY3QsIHByb3BlcnR5S2V5Pzogc3RyaW5nfHN5bWJvbCwgcGFyYW1ldGVySW5kZXg/OiBudW1iZXIpOiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgQU5OT1RBVElPTlMgPSAnX19hbm5vdGF0aW9uc19fJztcbmV4cG9ydCBjb25zdCBQQVJBTUVURVJTID0gJ19fcGFyYW1ldGVyc19fJztcbmV4cG9ydCBjb25zdCBQUk9QX01FVEFEQVRBID0gJ19fcHJvcF9fbWV0YWRhdGFfXyc7XG5cbi8qKlxuICogQHN1cHByZXNzIHtnbG9iYWxUaGlzfVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZURlY29yYXRvcjxUPihcbiAgICBuYW1lOiBzdHJpbmcsIHByb3BzPzogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnksIHBhcmVudENsYXNzPzogYW55LFxuICAgIGFkZGl0aW9uYWxQcm9jZXNzaW5nPzogKHR5cGU6IFR5cGU8VD4pID0+IHZvaWQsXG4gICAgdHlwZUZuPzogKHR5cGU6IFR5cGU8VD4sIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkKTpcbiAgICB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IGFueTsgKC4uLmFyZ3M6IGFueVtdKTogYW55OyAoLi4uYXJnczogYW55W10pOiAoY2xzOiBhbnkpID0+IGFueTt9IHtcbiAgcmV0dXJuIG5vU2lkZUVmZmVjdHMoKCkgPT4ge1xuICAgIGNvbnN0IG1ldGFDdG9yID0gbWFrZU1ldGFkYXRhQ3Rvcihwcm9wcyk7XG5cbiAgICBmdW5jdGlvbiBEZWNvcmF0b3JGYWN0b3J5KFxuICAgICAgICB0aGlzOiB1bmtub3duIHwgdHlwZW9mIERlY29yYXRvckZhY3RvcnksIC4uLmFyZ3M6IGFueVtdKTogKGNsczogVHlwZTxUPikgPT4gYW55IHtcbiAgICAgIGlmICh0aGlzIGluc3RhbmNlb2YgRGVjb3JhdG9yRmFjdG9yeSkge1xuICAgICAgICBtZXRhQ3Rvci5jYWxsKHRoaXMsIC4uLmFyZ3MpO1xuICAgICAgICByZXR1cm4gdGhpcyBhcyB0eXBlb2YgRGVjb3JhdG9yRmFjdG9yeTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgYW5ub3RhdGlvbkluc3RhbmNlID0gbmV3IChEZWNvcmF0b3JGYWN0b3J5IGFzIGFueSkoLi4uYXJncyk7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gVHlwZURlY29yYXRvcihjbHM6IFR5cGU8VD4pIHtcbiAgICAgICAgaWYgKHR5cGVGbikgdHlwZUZuKGNscywgLi4uYXJncyk7XG4gICAgICAgIC8vIFVzZSBvZiBPYmplY3QuZGVmaW5lUHJvcGVydHkgaXMgaW1wb3J0YW50IHNpbmNlIGl0IGNyZWF0ZXMgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgd2hpY2hcbiAgICAgICAgLy8gcHJldmVudHMgdGhlIHByb3BlcnR5IGlzIGNvcGllZCBkdXJpbmcgc3ViY2xhc3NpbmcuXG4gICAgICAgIGNvbnN0IGFubm90YXRpb25zID0gY2xzLmhhc093blByb3BlcnR5KEFOTk9UQVRJT05TKSA/XG4gICAgICAgICAgICAoY2xzIGFzIGFueSlbQU5OT1RBVElPTlNdIDpcbiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShjbHMsIEFOTk9UQVRJT05TLCB7dmFsdWU6IFtdfSlbQU5OT1RBVElPTlNdO1xuICAgICAgICBhbm5vdGF0aW9ucy5wdXNoKGFubm90YXRpb25JbnN0YW5jZSk7XG5cblxuICAgICAgICBpZiAoYWRkaXRpb25hbFByb2Nlc3NpbmcpIGFkZGl0aW9uYWxQcm9jZXNzaW5nKGNscyk7XG5cbiAgICAgICAgcmV0dXJuIGNscztcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKHBhcmVudENsYXNzKSB7XG4gICAgICBEZWNvcmF0b3JGYWN0b3J5LnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUocGFyZW50Q2xhc3MucHJvdG90eXBlKTtcbiAgICB9XG5cbiAgICBEZWNvcmF0b3JGYWN0b3J5LnByb3RvdHlwZS5uZ01ldGFkYXRhTmFtZSA9IG5hbWU7XG4gICAgKERlY29yYXRvckZhY3RvcnkgYXMgYW55KS5hbm5vdGF0aW9uQ2xzID0gRGVjb3JhdG9yRmFjdG9yeTtcbiAgICByZXR1cm4gRGVjb3JhdG9yRmFjdG9yeSBhcyBhbnk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBtYWtlTWV0YWRhdGFDdG9yKHByb3BzPzogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiBhbnkge1xuICByZXR1cm4gZnVuY3Rpb24gY3Rvcih0aGlzOiBhbnksIC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgaWYgKHByb3BzKSB7XG4gICAgICBjb25zdCB2YWx1ZXMgPSBwcm9wcyguLi5hcmdzKTtcbiAgICAgIGZvciAoY29uc3QgcHJvcE5hbWUgaW4gdmFsdWVzKSB7XG4gICAgICAgIHRoaXNbcHJvcE5hbWVdID0gdmFsdWVzW3Byb3BOYW1lXTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlUGFyYW1EZWNvcmF0b3IoXG4gICAgbmFtZTogc3RyaW5nLCBwcm9wcz86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55LCBwYXJlbnRDbGFzcz86IGFueSk6IGFueSB7XG4gIHJldHVybiBub1NpZGVFZmZlY3RzKCgpID0+IHtcbiAgICBjb25zdCBtZXRhQ3RvciA9IG1ha2VNZXRhZGF0YUN0b3IocHJvcHMpO1xuICAgIGZ1bmN0aW9uIFBhcmFtRGVjb3JhdG9yRmFjdG9yeShcbiAgICAgICAgdGhpczogdW5rbm93biB8IHR5cGVvZiBQYXJhbURlY29yYXRvckZhY3RvcnksIC4uLmFyZ3M6IGFueVtdKTogYW55IHtcbiAgICAgIGlmICh0aGlzIGluc3RhbmNlb2YgUGFyYW1EZWNvcmF0b3JGYWN0b3J5KSB7XG4gICAgICAgIG1ldGFDdG9yLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFubm90YXRpb25JbnN0YW5jZSA9IG5ldyAoPGFueT5QYXJhbURlY29yYXRvckZhY3RvcnkpKC4uLmFyZ3MpO1xuXG4gICAgICAoPGFueT5QYXJhbURlY29yYXRvcikuYW5ub3RhdGlvbiA9IGFubm90YXRpb25JbnN0YW5jZTtcbiAgICAgIHJldHVybiBQYXJhbURlY29yYXRvcjtcblxuICAgICAgZnVuY3Rpb24gUGFyYW1EZWNvcmF0b3IoY2xzOiBhbnksIHVudXNlZEtleTogYW55LCBpbmRleDogbnVtYmVyKTogYW55IHtcbiAgICAgICAgLy8gVXNlIG9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSBpcyBpbXBvcnRhbnQgc2luY2UgaXQgY3JlYXRlcyBub24tZW51bWVyYWJsZSBwcm9wZXJ0eSB3aGljaFxuICAgICAgICAvLyBwcmV2ZW50cyB0aGUgcHJvcGVydHkgaXMgY29waWVkIGR1cmluZyBzdWJjbGFzc2luZy5cbiAgICAgICAgY29uc3QgcGFyYW1ldGVycyA9IGNscy5oYXNPd25Qcm9wZXJ0eShQQVJBTUVURVJTKSA/XG4gICAgICAgICAgICAoY2xzIGFzIGFueSlbUEFSQU1FVEVSU10gOlxuICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNscywgUEFSQU1FVEVSUywge3ZhbHVlOiBbXX0pW1BBUkFNRVRFUlNdO1xuXG4gICAgICAgIC8vIHRoZXJlIG1pZ2h0IGJlIGdhcHMgaWYgc29tZSBpbiBiZXR3ZWVuIHBhcmFtZXRlcnMgZG8gbm90IGhhdmUgYW5ub3RhdGlvbnMuXG4gICAgICAgIC8vIHdlIHBhZCB3aXRoIG51bGxzLlxuICAgICAgICB3aGlsZSAocGFyYW1ldGVycy5sZW5ndGggPD0gaW5kZXgpIHtcbiAgICAgICAgICBwYXJhbWV0ZXJzLnB1c2gobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICAocGFyYW1ldGVyc1tpbmRleF0gPSBwYXJhbWV0ZXJzW2luZGV4XSB8fCBbXSkucHVzaChhbm5vdGF0aW9uSW5zdGFuY2UpO1xuICAgICAgICByZXR1cm4gY2xzO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAocGFyZW50Q2xhc3MpIHtcbiAgICAgIFBhcmFtRGVjb3JhdG9yRmFjdG9yeS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHBhcmVudENsYXNzLnByb3RvdHlwZSk7XG4gICAgfVxuICAgIFBhcmFtRGVjb3JhdG9yRmFjdG9yeS5wcm90b3R5cGUubmdNZXRhZGF0YU5hbWUgPSBuYW1lO1xuICAgICg8YW55PlBhcmFtRGVjb3JhdG9yRmFjdG9yeSkuYW5ub3RhdGlvbkNscyA9IFBhcmFtRGVjb3JhdG9yRmFjdG9yeTtcbiAgICByZXR1cm4gUGFyYW1EZWNvcmF0b3JGYWN0b3J5O1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VQcm9wRGVjb3JhdG9yKFxuICAgIG5hbWU6IHN0cmluZywgcHJvcHM/OiAoLi4uYXJnczogYW55W10pID0+IGFueSwgcGFyZW50Q2xhc3M/OiBhbnksXG4gICAgYWRkaXRpb25hbFByb2Nlc3Npbmc/OiAodGFyZ2V0OiBhbnksIG5hbWU6IHN0cmluZywgLi4uYXJnczogYW55W10pID0+IHZvaWQpOiBhbnkge1xuICByZXR1cm4gbm9TaWRlRWZmZWN0cygoKSA9PiB7XG4gICAgY29uc3QgbWV0YUN0b3IgPSBtYWtlTWV0YWRhdGFDdG9yKHByb3BzKTtcblxuICAgIGZ1bmN0aW9uIFByb3BEZWNvcmF0b3JGYWN0b3J5KFxuICAgICAgICB0aGlzOiB1bmtub3duIHwgdHlwZW9mIFByb3BEZWNvcmF0b3JGYWN0b3J5LCAuLi5hcmdzOiBhbnlbXSk6IGFueSB7XG4gICAgICBpZiAodGhpcyBpbnN0YW5jZW9mIFByb3BEZWNvcmF0b3JGYWN0b3J5KSB7XG4gICAgICAgIG1ldGFDdG9yLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGVjb3JhdG9ySW5zdGFuY2UgPSBuZXcgKDxhbnk+UHJvcERlY29yYXRvckZhY3RvcnkpKC4uLmFyZ3MpO1xuXG4gICAgICBmdW5jdGlvbiBQcm9wRGVjb3JhdG9yKHRhcmdldDogYW55LCBuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgY29uc3RydWN0b3IgPSB0YXJnZXQuY29uc3RydWN0b3I7XG4gICAgICAgIC8vIFVzZSBvZiBPYmplY3QuZGVmaW5lUHJvcGVydHkgaXMgaW1wb3J0YW50IHNpbmNlIGl0IGNyZWF0ZXMgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgd2hpY2hcbiAgICAgICAgLy8gcHJldmVudHMgdGhlIHByb3BlcnR5IGlzIGNvcGllZCBkdXJpbmcgc3ViY2xhc3NpbmcuXG4gICAgICAgIGNvbnN0IG1ldGEgPSBjb25zdHJ1Y3Rvci5oYXNPd25Qcm9wZXJ0eShQUk9QX01FVEFEQVRBKSA/XG4gICAgICAgICAgICAoY29uc3RydWN0b3IgYXMgYW55KVtQUk9QX01FVEFEQVRBXSA6XG4gICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY29uc3RydWN0b3IsIFBST1BfTUVUQURBVEEsIHt2YWx1ZToge319KVtQUk9QX01FVEFEQVRBXTtcbiAgICAgICAgbWV0YVtuYW1lXSA9IG1ldGEuaGFzT3duUHJvcGVydHkobmFtZSkgJiYgbWV0YVtuYW1lXSB8fCBbXTtcbiAgICAgICAgbWV0YVtuYW1lXS51bnNoaWZ0KGRlY29yYXRvckluc3RhbmNlKTtcblxuICAgICAgICBpZiAoYWRkaXRpb25hbFByb2Nlc3NpbmcpIGFkZGl0aW9uYWxQcm9jZXNzaW5nKHRhcmdldCwgbmFtZSwgLi4uYXJncyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBQcm9wRGVjb3JhdG9yO1xuICAgIH1cblxuICAgIGlmIChwYXJlbnRDbGFzcykge1xuICAgICAgUHJvcERlY29yYXRvckZhY3RvcnkucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShwYXJlbnRDbGFzcy5wcm90b3R5cGUpO1xuICAgIH1cblxuICAgIFByb3BEZWNvcmF0b3JGYWN0b3J5LnByb3RvdHlwZS5uZ01ldGFkYXRhTmFtZSA9IG5hbWU7XG4gICAgKDxhbnk+UHJvcERlY29yYXRvckZhY3RvcnkpLmFubm90YXRpb25DbHMgPSBQcm9wRGVjb3JhdG9yRmFjdG9yeTtcbiAgICByZXR1cm4gUHJvcERlY29yYXRvckZhY3Rvcnk7XG4gIH0pO1xufVxuIl19
@@ -72,4 +72,4 @@ export function initNgDevMode() {
72
72
  }
73
73
  return false;
74
74
  }
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdfZGV2X21vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlsL25nX2Rldl9tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFnRGhDLE1BQU0sVUFBVSwwQkFBMEI7SUFDeEMsTUFBTSxjQUFjLEdBQUcsT0FBTyxRQUFRLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRixNQUFNLFdBQVcsR0FBMEI7UUFDekMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RSxlQUFlLEVBQUUsQ0FBQztRQUNsQixLQUFLLEVBQUUsQ0FBQztRQUNSLEtBQUssRUFBRSxDQUFDO1FBQ1Isc0JBQXNCLEVBQUUsQ0FBQztRQUN6QixlQUFlLEVBQUUsQ0FBQztRQUNsQixxQkFBcUIsRUFBRSxDQUFDO1FBQ3hCLHdCQUF3QixFQUFFLENBQUM7UUFDM0Isb0JBQW9CLEVBQUUsQ0FBQztRQUN2Qix1QkFBdUIsRUFBRSxDQUFDO1FBQzFCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QixnQkFBZ0IsRUFBRSxDQUFDO1FBQ25CLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixtQkFBbUIsRUFBRSxDQUFDO1FBQ3RCLGVBQWUsRUFBRSxDQUFDO1FBQ2xCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixrQkFBa0IsRUFBRSxDQUFDO1FBQ3JCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QixxQkFBcUIsRUFBRSxDQUFDO0tBQ3pCLENBQUM7SUFFRixnRUFBZ0U7SUFDaEUsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLGtCQUFrQixJQUFJLFdBQVcsQ0FBQztJQUN4RCxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsTUFBTSxVQUFVLGFBQWE7SUFDM0Isc0ZBQXNGO0lBQ3RGLHNCQUFzQjtJQUN0QiwyRkFBMkY7SUFDM0YsT0FBTztJQUNQLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsRUFBRTtRQUNqRCxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUNqQywwQkFBMEIsRUFBRSxDQUFDO1NBQzlCO1FBQ0QsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDO0tBQ3BCO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2dsb2JhbH0gZnJvbSAnLi9nbG9iYWwnO1xuXG4vLyBEbyBub3QgcmVtb3ZlOiBuZWVkZWQgZm9yIGNsb3N1cmUgdG8gYmUgYWJsZSB0byBwcm9wZXJseSB0cmVlLXNoYWtlIG5nRGV2TW9kZS5cbi8vIGdvb2cuZGVmaW5lXG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLyoqXG4gICAqIFZhbHVlcyBvZiBuZ0Rldk1vZGVcbiAgICogRGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBhcHBsaWNhdGlvbiwgbmdEZXZNb2RlIG1heSBoYXZlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcy5cbiAgICpcbiAgICogRm9yIGNvbnZlbmllbmNlLCB0aGUg4oCcdHJ1dGh54oCdIHZhbHVlIHdoaWNoIGVuYWJsZXMgZGV2IG1vZGUgaXMgYWxzbyBhbiBvYmplY3Qgd2hpY2ggY29udGFpbnNcbiAgICogQW5ndWxhcuKAmXMgcGVyZm9ybWFuY2UgY291bnRlcnMuIFRoaXMgaXMgbm90IG5lY2Vzc2FyeSwgYnV0IGN1dHMgZG93biBvbiBib2lsZXJwbGF0ZSBmb3IgdGhlXG4gICAqIHBlcmYgY291bnRlcnMuXG4gICAqXG4gICAqIG5nRGV2TW9kZSBtYXkgYWxzbyBiZSBzZXQgdG8gZmFsc2UuIFRoaXMgY2FuIGhhcHBlbiBpbiBvbmUgb2YgYSBmZXcgd2F5czpcbiAgICogLSBUaGUgdXNlciBleHBsaWNpdGx5IHNldHMgYHdpbmRvdy5uZ0Rldk1vZGUgPSBmYWxzZWAgc29tZXdoZXJlIGluIHRoZWlyIGFwcC5cbiAgICogLSBUaGUgdXNlciBjYWxscyBgZW5hYmxlUHJvZE1vZGUoKWAuXG4gICAqIC0gVGhlIFVSTCBjb250YWlucyBhIGBuZ0Rldk1vZGU9ZmFsc2VgIHRleHQuXG4gICAqIEZpbmFsbHksIG5nRGV2TW9kZSBtYXkgbm90IGhhdmUgYmVlbiBkZWZpbmVkIGF0IGFsbC5cbiAgICovXG4gIGNvbnN0IG5nRGV2TW9kZTogbnVsbHxOZ0Rldk1vZGVQZXJmQ291bnRlcnM7XG4gIGludGVyZmFjZSBOZ0Rldk1vZGVQZXJmQ291bnRlcnMge1xuICAgIG5hbWVkQ29uc3RydWN0b3JzOiBib29sZWFuO1xuICAgIGZpcnN0Q3JlYXRlUGFzczogbnVtYmVyO1xuICAgIHROb2RlOiBudW1iZXI7XG4gICAgdFZpZXc6IG51bWJlcjtcbiAgICByZW5kZXJlckNyZWF0ZVRleHROb2RlOiBudW1iZXI7XG4gICAgcmVuZGVyZXJTZXRUZXh0OiBudW1iZXI7XG4gICAgcmVuZGVyZXJDcmVhdGVFbGVtZW50OiBudW1iZXI7XG4gICAgcmVuZGVyZXJBZGRFdmVudExpc3RlbmVyOiBudW1iZXI7XG4gICAgcmVuZGVyZXJTZXRBdHRyaWJ1dGU6IG51bWJlcjtcbiAgICByZW5kZXJlclJlbW92ZUF0dHJpYnV0ZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyU2V0UHJvcGVydHk6IG51bWJlcjtcbiAgICByZW5kZXJlclNldENsYXNzTmFtZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyQWRkQ2xhc3M6IG51bWJlcjtcbiAgICByZW5kZXJlclJlbW92ZUNsYXNzOiBudW1iZXI7XG4gICAgcmVuZGVyZXJTZXRTdHlsZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyUmVtb3ZlU3R5bGU6IG51bWJlcjtcbiAgICByZW5kZXJlckRlc3Ryb3k6IG51bWJlcjtcbiAgICByZW5kZXJlckRlc3Ryb3lOb2RlOiBudW1iZXI7XG4gICAgcmVuZGVyZXJNb3ZlTm9kZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyUmVtb3ZlTm9kZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyQXBwZW5kQ2hpbGQ6IG51bWJlcjtcbiAgICByZW5kZXJlckluc2VydEJlZm9yZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyQ3JlYXRlQ29tbWVudDogbnVtYmVyO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBuZ0Rldk1vZGVSZXNldFBlcmZDb3VudGVycygpOiBOZ0Rldk1vZGVQZXJmQ291bnRlcnMge1xuICBjb25zdCBsb2NhdGlvblN0cmluZyA9IHR5cGVvZiBsb2NhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgPyBsb2NhdGlvbi50b1N0cmluZygpIDogJyc7XG4gIGNvbnN0IG5ld0NvdW50ZXJzOiBOZ0Rldk1vZGVQZXJmQ291bnRlcnMgPSB7XG4gICAgbmFtZWRDb25zdHJ1Y3RvcnM6IGxvY2F0aW9uU3RyaW5nLmluZGV4T2YoJ25nRGV2TW9kZT1uYW1lZENvbnN0cnVjdG9ycycpICE9IC0xLFxuICAgIGZpcnN0Q3JlYXRlUGFzczogMCxcbiAgICB0Tm9kZTogMCxcbiAgICB0VmlldzogMCxcbiAgICByZW5kZXJlckNyZWF0ZVRleHROb2RlOiAwLFxuICAgIHJlbmRlcmVyU2V0VGV4dDogMCxcbiAgICByZW5kZXJlckNyZWF0ZUVsZW1lbnQ6IDAsXG4gICAgcmVuZGVyZXJBZGRFdmVudExpc3RlbmVyOiAwLFxuICAgIHJlbmRlcmVyU2V0QXR0cmlidXRlOiAwLFxuICAgIHJlbmRlcmVyUmVtb3ZlQXR0cmlidXRlOiAwLFxuICAgIHJlbmRlcmVyU2V0UHJvcGVydHk6IDAsXG4gICAgcmVuZGVyZXJTZXRDbGFzc05hbWU6IDAsXG4gICAgcmVuZGVyZXJBZGRDbGFzczogMCxcbiAgICByZW5kZXJlclJlbW92ZUNsYXNzOiAwLFxuICAgIHJlbmRlcmVyU2V0U3R5bGU6IDAsXG4gICAgcmVuZGVyZXJSZW1vdmVTdHlsZTogMCxcbiAgICByZW5kZXJlckRlc3Ryb3k6IDAsXG4gICAgcmVuZGVyZXJEZXN0cm95Tm9kZTogMCxcbiAgICByZW5kZXJlck1vdmVOb2RlOiAwLFxuICAgIHJlbmRlcmVyUmVtb3ZlTm9kZTogMCxcbiAgICByZW5kZXJlckFwcGVuZENoaWxkOiAwLFxuICAgIHJlbmRlcmVySW5zZXJ0QmVmb3JlOiAwLFxuICAgIHJlbmRlcmVyQ3JlYXRlQ29tbWVudDogMCxcbiAgfTtcblxuICAvLyBNYWtlIHN1cmUgdG8gcmVmZXIgdG8gbmdEZXZNb2RlIGFzIFsnbmdEZXZNb2RlJ10gZm9yIGNsb3N1cmUuXG4gIGNvbnN0IGFsbG93TmdEZXZNb2RlVHJ1ZSA9IGxvY2F0aW9uU3RyaW5nLmluZGV4T2YoJ25nRGV2TW9kZT1mYWxzZScpID09PSAtMTtcbiAgZ2xvYmFsWyduZ0Rldk1vZGUnXSA9IGFsbG93TmdEZXZNb2RlVHJ1ZSAmJiBuZXdDb3VudGVycztcbiAgcmV0dXJuIG5ld0NvdW50ZXJzO1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gY2hlY2tzIHRvIHNlZSBpZiB0aGUgYG5nRGV2TW9kZWAgaGFzIGJlZW4gc2V0LiBJZiB5ZXMsXG4gKiB0aGVuIHdlIGhvbm9yIGl0LCBvdGhlcndpc2Ugd2UgZGVmYXVsdCB0byBkZXYgbW9kZSB3aXRoIGFkZGl0aW9uYWwgY2hlY2tzLlxuICpcbiAqIFRoZSBpZGVhIGlzIHRoYXQgdW5sZXNzIHdlIGFyZSBkb2luZyBwcm9kdWN0aW9uIGJ1aWxkIHdoZXJlIHdlIGV4cGxpY2l0bHlcbiAqIHNldCBgbmdEZXZNb2RlID09IGZhbHNlYCB3ZSBzaG91bGQgYmUgaGVscGluZyB0aGUgZGV2ZWxvcGVyIGJ5IHByb3ZpZGluZ1xuICogYXMgbXVjaCBlYXJseSB3YXJuaW5nIGFuZCBlcnJvcnMgYXMgcG9zc2libGUuXG4gKlxuICogYMm1ybVkZWZpbmVDb21wb25lbnRgIGlzIGd1YXJhbnRlZWQgdG8gaGF2ZSBiZWVuIGNhbGxlZCBiZWZvcmUgYW55IGNvbXBvbmVudCB0ZW1wbGF0ZSBmdW5jdGlvbnNcbiAqIChhbmQgdGh1cyBJdnkgaW5zdHJ1Y3Rpb25zKSwgc28gYSBzaW5nbGUgaW5pdGlhbGl6YXRpb24gdGhlcmUgaXMgc3VmZmljaWVudCB0byBlbnN1cmUgbmdEZXZNb2RlXG4gKiBpcyBkZWZpbmVkIGZvciB0aGUgZW50aXJlIGluc3RydWN0aW9uIHNldC5cbiAqXG4gKiBXaGVuIHVzaW5nIGNoZWNraW5nIGBuZ0Rldk1vZGVgIG9uIHRvcGxldmVsLCBhbHdheXMgaW5pdCBpdCBiZWZvcmUgcmVmZXJlbmNpbmcgaXRcbiAqIChlLmcuIGAoKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkgJiYgaW5pdE5nRGV2TW9kZSgpKWApLCBvdGhlcndpc2UgeW91IGNhblxuICogIGdldCBhIGBSZWZlcmVuY2VFcnJvcmAgbGlrZSBpbiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8zMTU5NS5cbiAqXG4gKiBEZXRhaWxzIG9uIHBvc3NpYmxlIHZhbHVlcyBmb3IgYG5nRGV2TW9kZWAgY2FuIGJlIGZvdW5kIG9uIGl0cyBkb2NzdHJpbmcuXG4gKlxuICogTk9URTpcbiAqIC0gY2hhbmdlcyB0byB0aGUgYG5nRGV2TW9kZWAgbmFtZSBtdXN0IGJlIHN5bmNlZCB3aXRoIGBjb21waWxlci1jbGkvc3JjL3Rvb2xpbmcudHNgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5pdE5nRGV2TW9kZSgpOiBib29sZWFuIHtcbiAgLy8gVGhlIGJlbG93IGNoZWNrcyBhcmUgdG8gZW5zdXJlIHRoYXQgY2FsbGluZyBgaW5pdE5nRGV2TW9kZWAgbXVsdGlwbGUgdGltZXMgZG9lcyBub3RcbiAgLy8gcmVzZXQgdGhlIGNvdW50ZXJzLlxuICAvLyBJZiB0aGUgYG5nRGV2TW9kZWAgaXMgbm90IGFuIG9iamVjdCwgdGhlbiBpdCBtZWFucyB3ZSBoYXZlIG5vdCBjcmVhdGVkIHRoZSBwZXJmIGNvdW50ZXJzXG4gIC8vIHlldC5cbiAgaWYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkge1xuICAgIGlmICh0eXBlb2YgbmdEZXZNb2RlICE9PSAnb2JqZWN0Jykge1xuICAgICAgbmdEZXZNb2RlUmVzZXRQZXJmQ291bnRlcnMoKTtcbiAgICB9XG4gICAgcmV0dXJuICEhbmdEZXZNb2RlO1xuICB9XG4gIHJldHVybiBmYWxzZTtcbn1cbiJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdfZGV2X21vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlsL25nX2Rldl9tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxVQUFVLENBQUM7QUE2Q2hDLE1BQU0sVUFBVSwwQkFBMEI7SUFDeEMsTUFBTSxjQUFjLEdBQUcsT0FBTyxRQUFRLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRixNQUFNLFdBQVcsR0FBMEI7UUFDekMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RSxlQUFlLEVBQUUsQ0FBQztRQUNsQixLQUFLLEVBQUUsQ0FBQztRQUNSLEtBQUssRUFBRSxDQUFDO1FBQ1Isc0JBQXNCLEVBQUUsQ0FBQztRQUN6QixlQUFlLEVBQUUsQ0FBQztRQUNsQixxQkFBcUIsRUFBRSxDQUFDO1FBQ3hCLHdCQUF3QixFQUFFLENBQUM7UUFDM0Isb0JBQW9CLEVBQUUsQ0FBQztRQUN2Qix1QkFBdUIsRUFBRSxDQUFDO1FBQzFCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QixnQkFBZ0IsRUFBRSxDQUFDO1FBQ25CLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixtQkFBbUIsRUFBRSxDQUFDO1FBQ3RCLGVBQWUsRUFBRSxDQUFDO1FBQ2xCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixrQkFBa0IsRUFBRSxDQUFDO1FBQ3JCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsb0JBQW9CLEVBQUUsQ0FBQztRQUN2QixxQkFBcUIsRUFBRSxDQUFDO0tBQ3pCLENBQUM7SUFFRixnRUFBZ0U7SUFDaEUsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLGtCQUFrQixJQUFJLFdBQVcsQ0FBQztJQUN4RCxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsTUFBTSxVQUFVLGFBQWE7SUFDM0Isc0ZBQXNGO0lBQ3RGLHNCQUFzQjtJQUN0QiwyRkFBMkY7SUFDM0YsT0FBTztJQUNQLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsRUFBRTtRQUNqRCxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUNqQywwQkFBMEIsRUFBRSxDQUFDO1NBQzlCO1FBQ0QsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDO0tBQ3BCO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2dsb2JhbH0gZnJvbSAnLi9nbG9iYWwnO1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIC8qKlxuICAgKiBWYWx1ZXMgb2YgbmdEZXZNb2RlXG4gICAqIERlcGVuZGluZyBvbiB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgYXBwbGljYXRpb24sIG5nRGV2TW9kZSBtYXkgaGF2ZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMuXG4gICAqXG4gICAqIEZvciBjb252ZW5pZW5jZSwgdGhlIOKAnHRydXRoeeKAnSB2YWx1ZSB3aGljaCBlbmFibGVzIGRldiBtb2RlIGlzIGFsc28gYW4gb2JqZWN0IHdoaWNoIGNvbnRhaW5zXG4gICAqIEFuZ3VsYXLigJlzIHBlcmZvcm1hbmNlIGNvdW50ZXJzLiBUaGlzIGlzIG5vdCBuZWNlc3NhcnksIGJ1dCBjdXRzIGRvd24gb24gYm9pbGVycGxhdGUgZm9yIHRoZVxuICAgKiBwZXJmIGNvdW50ZXJzLlxuICAgKlxuICAgKiBuZ0Rldk1vZGUgbWF5IGFsc28gYmUgc2V0IHRvIGZhbHNlLiBUaGlzIGNhbiBoYXBwZW4gaW4gb25lIG9mIGEgZmV3IHdheXM6XG4gICAqIC0gVGhlIHVzZXIgZXhwbGljaXRseSBzZXRzIGB3aW5kb3cubmdEZXZNb2RlID0gZmFsc2VgIHNvbWV3aGVyZSBpbiB0aGVpciBhcHAuXG4gICAqIC0gVGhlIHVzZXIgY2FsbHMgYGVuYWJsZVByb2RNb2RlKClgLlxuICAgKiAtIFRoZSBVUkwgY29udGFpbnMgYSBgbmdEZXZNb2RlPWZhbHNlYCB0ZXh0LlxuICAgKiBGaW5hbGx5LCBuZ0Rldk1vZGUgbWF5IG5vdCBoYXZlIGJlZW4gZGVmaW5lZCBhdCBhbGwuXG4gICAqL1xuICBjb25zdCBuZ0Rldk1vZGU6IG51bGx8TmdEZXZNb2RlUGVyZkNvdW50ZXJzO1xuICBpbnRlcmZhY2UgTmdEZXZNb2RlUGVyZkNvdW50ZXJzIHtcbiAgICBuYW1lZENvbnN0cnVjdG9yczogYm9vbGVhbjtcbiAgICBmaXJzdENyZWF0ZVBhc3M6IG51bWJlcjtcbiAgICB0Tm9kZTogbnVtYmVyO1xuICAgIHRWaWV3OiBudW1iZXI7XG4gICAgcmVuZGVyZXJDcmVhdGVUZXh0Tm9kZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyU2V0VGV4dDogbnVtYmVyO1xuICAgIHJlbmRlcmVyQ3JlYXRlRWxlbWVudDogbnVtYmVyO1xuICAgIHJlbmRlcmVyQWRkRXZlbnRMaXN0ZW5lcjogbnVtYmVyO1xuICAgIHJlbmRlcmVyU2V0QXR0cmlidXRlOiBudW1iZXI7XG4gICAgcmVuZGVyZXJSZW1vdmVBdHRyaWJ1dGU6IG51bWJlcjtcbiAgICByZW5kZXJlclNldFByb3BlcnR5OiBudW1iZXI7XG4gICAgcmVuZGVyZXJTZXRDbGFzc05hbWU6IG51bWJlcjtcbiAgICByZW5kZXJlckFkZENsYXNzOiBudW1iZXI7XG4gICAgcmVuZGVyZXJSZW1vdmVDbGFzczogbnVtYmVyO1xuICAgIHJlbmRlcmVyU2V0U3R5bGU6IG51bWJlcjtcbiAgICByZW5kZXJlclJlbW92ZVN0eWxlOiBudW1iZXI7XG4gICAgcmVuZGVyZXJEZXN0cm95OiBudW1iZXI7XG4gICAgcmVuZGVyZXJEZXN0cm95Tm9kZTogbnVtYmVyO1xuICAgIHJlbmRlcmVyTW92ZU5vZGU6IG51bWJlcjtcbiAgICByZW5kZXJlclJlbW92ZU5vZGU6IG51bWJlcjtcbiAgICByZW5kZXJlckFwcGVuZENoaWxkOiBudW1iZXI7XG4gICAgcmVuZGVyZXJJbnNlcnRCZWZvcmU6IG51bWJlcjtcbiAgICByZW5kZXJlckNyZWF0ZUNvbW1lbnQ6IG51bWJlcjtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbmdEZXZNb2RlUmVzZXRQZXJmQ291bnRlcnMoKTogTmdEZXZNb2RlUGVyZkNvdW50ZXJzIHtcbiAgY29uc3QgbG9jYXRpb25TdHJpbmcgPSB0eXBlb2YgbG9jYXRpb24gIT09ICd1bmRlZmluZWQnID8gbG9jYXRpb24udG9TdHJpbmcoKSA6ICcnO1xuICBjb25zdCBuZXdDb3VudGVyczogTmdEZXZNb2RlUGVyZkNvdW50ZXJzID0ge1xuICAgIG5hbWVkQ29uc3RydWN0b3JzOiBsb2NhdGlvblN0cmluZy5pbmRleE9mKCduZ0Rldk1vZGU9bmFtZWRDb25zdHJ1Y3RvcnMnKSAhPSAtMSxcbiAgICBmaXJzdENyZWF0ZVBhc3M6IDAsXG4gICAgdE5vZGU6IDAsXG4gICAgdFZpZXc6IDAsXG4gICAgcmVuZGVyZXJDcmVhdGVUZXh0Tm9kZTogMCxcbiAgICByZW5kZXJlclNldFRleHQ6IDAsXG4gICAgcmVuZGVyZXJDcmVhdGVFbGVtZW50OiAwLFxuICAgIHJlbmRlcmVyQWRkRXZlbnRMaXN0ZW5lcjogMCxcbiAgICByZW5kZXJlclNldEF0dHJpYnV0ZTogMCxcbiAgICByZW5kZXJlclJlbW92ZUF0dHJpYnV0ZTogMCxcbiAgICByZW5kZXJlclNldFByb3BlcnR5OiAwLFxuICAgIHJlbmRlcmVyU2V0Q2xhc3NOYW1lOiAwLFxuICAgIHJlbmRlcmVyQWRkQ2xhc3M6IDAsXG4gICAgcmVuZGVyZXJSZW1vdmVDbGFzczogMCxcbiAgICByZW5kZXJlclNldFN0eWxlOiAwLFxuICAgIHJlbmRlcmVyUmVtb3ZlU3R5bGU6IDAsXG4gICAgcmVuZGVyZXJEZXN0cm95OiAwLFxuICAgIHJlbmRlcmVyRGVzdHJveU5vZGU6IDAsXG4gICAgcmVuZGVyZXJNb3ZlTm9kZTogMCxcbiAgICByZW5kZXJlclJlbW92ZU5vZGU6IDAsXG4gICAgcmVuZGVyZXJBcHBlbmRDaGlsZDogMCxcbiAgICByZW5kZXJlckluc2VydEJlZm9yZTogMCxcbiAgICByZW5kZXJlckNyZWF0ZUNvbW1lbnQ6IDAsXG4gIH07XG5cbiAgLy8gTWFrZSBzdXJlIHRvIHJlZmVyIHRvIG5nRGV2TW9kZSBhcyBbJ25nRGV2TW9kZSddIGZvciBjbG9zdXJlLlxuICBjb25zdCBhbGxvd05nRGV2TW9kZVRydWUgPSBsb2NhdGlvblN0cmluZy5pbmRleE9mKCduZ0Rldk1vZGU9ZmFsc2UnKSA9PT0gLTE7XG4gIGdsb2JhbFsnbmdEZXZNb2RlJ10gPSBhbGxvd05nRGV2TW9kZVRydWUgJiYgbmV3Q291bnRlcnM7XG4gIHJldHVybiBuZXdDb3VudGVycztcbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGNoZWNrcyB0byBzZWUgaWYgdGhlIGBuZ0Rldk1vZGVgIGhhcyBiZWVuIHNldC4gSWYgeWVzLFxuICogdGhlbiB3ZSBob25vciBpdCwgb3RoZXJ3aXNlIHdlIGRlZmF1bHQgdG8gZGV2IG1vZGUgd2l0aCBhZGRpdGlvbmFsIGNoZWNrcy5cbiAqXG4gKiBUaGUgaWRlYSBpcyB0aGF0IHVubGVzcyB3ZSBhcmUgZG9pbmcgcHJvZHVjdGlvbiBidWlsZCB3aGVyZSB3ZSBleHBsaWNpdGx5XG4gKiBzZXQgYG5nRGV2TW9kZSA9PSBmYWxzZWAgd2Ugc2hvdWxkIGJlIGhlbHBpbmcgdGhlIGRldmVsb3BlciBieSBwcm92aWRpbmdcbiAqIGFzIG11Y2ggZWFybHkgd2FybmluZyBhbmQgZXJyb3JzIGFzIHBvc3NpYmxlLlxuICpcbiAqIGDJtcm1ZGVmaW5lQ29tcG9uZW50YCBpcyBndWFyYW50ZWVkIHRvIGhhdmUgYmVlbiBjYWxsZWQgYmVmb3JlIGFueSBjb21wb25lbnQgdGVtcGxhdGUgZnVuY3Rpb25zXG4gKiAoYW5kIHRodXMgSXZ5IGluc3RydWN0aW9ucyksIHNvIGEgc2luZ2xlIGluaXRpYWxpemF0aW9uIHRoZXJlIGlzIHN1ZmZpY2llbnQgdG8gZW5zdXJlIG5nRGV2TW9kZVxuICogaXMgZGVmaW5lZCBmb3IgdGhlIGVudGlyZSBpbnN0cnVjdGlvbiBzZXQuXG4gKlxuICogV2hlbiB1c2luZyBjaGVja2luZyBgbmdEZXZNb2RlYCBvbiB0b3BsZXZlbCwgYWx3YXlzIGluaXQgaXQgYmVmb3JlIHJlZmVyZW5jaW5nIGl0XG4gKiAoZS5nLiBgKCh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpICYmIGluaXROZ0Rldk1vZGUoKSlgKSwgb3RoZXJ3aXNlIHlvdSBjYW5cbiAqICBnZXQgYSBgUmVmZXJlbmNlRXJyb3JgIGxpa2UgaW4gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMzE1OTUuXG4gKlxuICogRGV0YWlscyBvbiBwb3NzaWJsZSB2YWx1ZXMgZm9yIGBuZ0Rldk1vZGVgIGNhbiBiZSBmb3VuZCBvbiBpdHMgZG9jc3RyaW5nLlxuICpcbiAqIE5PVEU6XG4gKiAtIGNoYW5nZXMgdG8gdGhlIGBuZ0Rldk1vZGVgIG5hbWUgbXVzdCBiZSBzeW5jZWQgd2l0aCBgY29tcGlsZXItY2xpL3NyYy90b29saW5nLnRzYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluaXROZ0Rldk1vZGUoKTogYm9vbGVhbiB7XG4gIC8vIFRoZSBiZWxvdyBjaGVja3MgYXJlIHRvIGVuc3VyZSB0aGF0IGNhbGxpbmcgYGluaXROZ0Rldk1vZGVgIG11bHRpcGxlIHRpbWVzIGRvZXMgbm90XG4gIC8vIHJlc2V0IHRoZSBjb3VudGVycy5cbiAgLy8gSWYgdGhlIGBuZ0Rldk1vZGVgIGlzIG5vdCBhbiBvYmplY3QsIHRoZW4gaXQgbWVhbnMgd2UgaGF2ZSBub3QgY3JlYXRlZCB0aGUgcGVyZiBjb3VudGVyc1xuICAvLyB5ZXQuXG4gIGlmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICBpZiAodHlwZW9mIG5nRGV2TW9kZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIG5nRGV2TW9kZVJlc2V0UGVyZkNvdW50ZXJzKCk7XG4gICAgfVxuICAgIHJldHVybiAhIW5nRGV2TW9kZTtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG4iXX0=
@@ -22,4 +22,4 @@ if (typeof ngI18nClosureMode === 'undefined') {
22
22
  typeof goog !== 'undefined' && typeof goog.getMsg === 'function';
23
23
  })();
24
24
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdfaTE4bl9jbG9zdXJlX21vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlsL25nX2kxOG5fY2xvc3VyZV9tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFTaEM7O0dBRUc7QUFDSCxJQUFJLE9BQU8saUJBQWlCLEtBQUssV0FBVyxFQUFFO0lBQzVDLHdGQUF3RjtJQUN4RixtRUFBbUU7SUFDbkUsZ0ZBQWdGO0lBQ2hGLHFFQUFxRTtJQUNyRSxDQUFDO1FBQ0MsdURBQXVEO1FBQ3ZELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQztZQUN2QiwrREFBK0Q7WUFDL0QsdURBQXVEO1lBQ3ZELE9BQU8sSUFBSSxLQUFLLFdBQVcsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDO0lBQ3ZFLENBQUMsQ0FBQyxFQUFFLENBQUM7Q0FDTiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtnbG9iYWx9IGZyb20gJy4vZ2xvYmFsJztcblxuLy8gRG8gbm90IHJlbW92ZTogbmVlZGVkIGZvciBjbG9zdXJlIHRvIGJlIGFibGUgdG8gcHJvcGVybHkgdHJlZS1zaGFrZSBuZ0kxOG5DbG9zdXJlTW9kZS5cbi8vIGdvb2cuZGVmaW5lXG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgY29uc3QgbmdJMThuQ2xvc3VyZU1vZGU6IGJvb2xlYW47XG59XG5cbi8qKlxuICogTk9URTogY2hhbmdlcyB0byB0aGUgYG5nSTE4bkNsb3N1cmVNb2RlYCBuYW1lIG11c3QgYmUgc3luY2VkIHdpdGggYGNvbXBpbGVyLWNsaS9zcmMvdG9vbGluZy50c2AuXG4gKi9cbmlmICh0eXBlb2YgbmdJMThuQ2xvc3VyZU1vZGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIC8vIFRoZXNlIHByb3BlcnR5IGFjY2Vzc2VzIGNhbiBiZSBpZ25vcmVkIGJlY2F1c2UgbmdJMThuQ2xvc3VyZU1vZGUgd2lsbCBiZSBzZXQgdG8gZmFsc2VcbiAgLy8gd2hlbiBvcHRpbWl6aW5nIGNvZGUgYW5kIHRoZSB3aG9sZSBpZiBzdGF0ZW1lbnQgd2lsbCBiZSBkcm9wcGVkLlxuICAvLyBNYWtlIHN1cmUgdG8gcmVmZXIgdG8gbmdJMThuQ2xvc3VyZU1vZGUgYXMgWyduZ0kxOG5DbG9zdXJlTW9kZSddIGZvciBjbG9zdXJlLlxuICAvLyBOT1RFOiB3ZSBuZWVkIHRvIGhhdmUgaXQgaW4gSUlGRSBzbyB0aGF0IHRoZSB0cmVlLXNoYWtlciBpcyBoYXBweS5cbiAgKGZ1bmN0aW9uKCkge1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby10b3BsZXZlbC1wcm9wZXJ0eS1hY2Nlc3NcbiAgICBnbG9iYWxbJ25nSTE4bkNsb3N1cmVNb2RlJ10gPVxuICAgICAgICAvLyBUT0RPKEZXLTEyNTApOiB2YWxpZGF0ZSB0aGF0IHRoaXMgYWN0dWFsbHksIHlvdSBrbm93LCB3b3Jrcy5cbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLXRvcGxldmVsLXByb3BlcnR5LWFjY2Vzc1xuICAgICAgICB0eXBlb2YgZ29vZyAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIGdvb2cuZ2V0TXNnID09PSAnZnVuY3Rpb24nO1xuICB9KSgpO1xufVxuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdfaTE4bl9jbG9zdXJlX21vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlsL25nX2kxOG5fY2xvc3VyZV9tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFNaEM7O0dBRUc7QUFDSCxJQUFJLE9BQU8saUJBQWlCLEtBQUssV0FBVyxFQUFFO0lBQzVDLHdGQUF3RjtJQUN4RixtRUFBbUU7SUFDbkUsZ0ZBQWdGO0lBQ2hGLHFFQUFxRTtJQUNyRSxDQUFDO1FBQ0MsdURBQXVEO1FBQ3ZELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQztZQUN2QiwrREFBK0Q7WUFDL0QsdURBQXVEO1lBQ3ZELE9BQU8sSUFBSSxLQUFLLFdBQVcsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDO0lBQ3ZFLENBQUMsQ0FBQyxFQUFFLENBQUM7Q0FDTiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtnbG9iYWx9IGZyb20gJy4vZ2xvYmFsJztcblxuZGVjbGFyZSBnbG9iYWwge1xuICBjb25zdCBuZ0kxOG5DbG9zdXJlTW9kZTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBOT1RFOiBjaGFuZ2VzIHRvIHRoZSBgbmdJMThuQ2xvc3VyZU1vZGVgIG5hbWUgbXVzdCBiZSBzeW5jZWQgd2l0aCBgY29tcGlsZXItY2xpL3NyYy90b29saW5nLnRzYC5cbiAqL1xuaWYgKHR5cGVvZiBuZ0kxOG5DbG9zdXJlTW9kZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgLy8gVGhlc2UgcHJvcGVydHkgYWNjZXNzZXMgY2FuIGJlIGlnbm9yZWQgYmVjYXVzZSBuZ0kxOG5DbG9zdXJlTW9kZSB3aWxsIGJlIHNldCB0byBmYWxzZVxuICAvLyB3aGVuIG9wdGltaXppbmcgY29kZSBhbmQgdGhlIHdob2xlIGlmIHN0YXRlbWVudCB3aWxsIGJlIGRyb3BwZWQuXG4gIC8vIE1ha2Ugc3VyZSB0byByZWZlciB0byBuZ0kxOG5DbG9zdXJlTW9kZSBhcyBbJ25nSTE4bkNsb3N1cmVNb2RlJ10gZm9yIGNsb3N1cmUuXG4gIC8vIE5PVEU6IHdlIG5lZWQgdG8gaGF2ZSBpdCBpbiBJSUZFIHNvIHRoYXQgdGhlIHRyZWUtc2hha2VyIGlzIGhhcHB5LlxuICAoZnVuY3Rpb24oKSB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLXRvcGxldmVsLXByb3BlcnR5LWFjY2Vzc1xuICAgIGdsb2JhbFsnbmdJMThuQ2xvc3VyZU1vZGUnXSA9XG4gICAgICAgIC8vIFRPRE8oRlctMTI1MCk6IHZhbGlkYXRlIHRoYXQgdGhpcyBhY3R1YWxseSwgeW91IGtub3csIHdvcmtzLlxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tdG9wbGV2ZWwtcHJvcGVydHktYWNjZXNzXG4gICAgICAgIHR5cGVvZiBnb29nICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgZ29vZy5nZXRNc2cgPT09ICdmdW5jdGlvbic7XG4gIH0pKCk7XG59XG4iXX0=
@@ -40,5 +40,5 @@ if (false) {
40
40
  * \@publicApi
41
41
  * @type {?}
42
42
  */
43
- export const VERSION = new Version('9.0.3');
43
+ export const VERSION = new Version('9.0.7');
44
44
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFhQSxNQUFNLE9BQU8sT0FBTzs7OztJQUtsQixZQUFtQixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDRjs7O0lBVEMsd0JBQThCOztJQUM5Qix3QkFBOEI7O0lBQzlCLHdCQUE4Qjs7SUFFbEIsdUJBQW1COzs7Ozs7QUFVakMsTUFBTSxPQUFPLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gUmVwcmVzZW50cyB0aGUgdmVyc2lvbiBvZiBBbmd1bGFyXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY2xhc3MgVmVyc2lvbiB7XG4gIHB1YmxpYyByZWFkb25seSBtYWpvcjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgbWlub3I6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHBhdGNoOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZ1bGw6IHN0cmluZykge1xuICAgIHRoaXMubWFqb3IgPSBmdWxsLnNwbGl0KCcuJylbMF07XG4gICAgdGhpcy5taW5vciA9IGZ1bGwuc3BsaXQoJy4nKVsxXTtcbiAgICB0aGlzLnBhdGNoID0gZnVsbC5zcGxpdCgnLicpLnNsaWNlKDIpLmpvaW4oJy4nKTtcbiAgfVxufVxuXG4vKipcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNvbnN0IFZFUlNJT04gPSBuZXcgVmVyc2lvbignMC4wLjAtUExBQ0VIT0xERVInKTtcbiJdfQ==
package/esm5/core.js CHANGED
@@ -20,9 +20,9 @@ export { getBindingRoot as ɵangular_packages_core_core_bc, getLView as ɵangula
20
20
  export { getRootContext as ɵangular_packages_core_core_bq } from './src/render3/util/view_traversal_utils';
21
21
  export { createElementRef as ɵangular_packages_core_core_h, createTemplateRef as ɵangular_packages_core_core_i } from './src/render3/view_engine_compatibility';
22
22
  export { getUrlSanitizer as ɵangular_packages_core_core_bk } from './src/sanitization/sanitization';
23
- export { noSideEffects as ɵangular_packages_core_core_bp } from './src/util/closure';
23
+ export { noSideEffects as ɵangular_packages_core_core_bo } from './src/util/closure';
24
24
  export { makeParamDecorator as ɵangular_packages_core_core_bl, makePropDecorator as ɵangular_packages_core_core_bm } from './src/util/decorators';
25
25
  export { getClosureSafeProperty as ɵangular_packages_core_core_bn } from './src/util/property';
26
26
  export { _def as ɵangular_packages_core_core_v } from './src/view/provider';
27
27
  export { DebugContext as ɵangular_packages_core_core_w } from './src/view/types';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyw0QkFBNEIsSUFBSSw2QkFBNkIsRUFBQyx1QkFBdUIsSUFBSSw2QkFBNkIsRUFBQyx1QkFBdUIsSUFBSSw2QkFBNkIsRUFBQyxjQUFjLElBQUksNkJBQTZCLEVBQUMsb0JBQW9CLElBQUksNkJBQTZCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMvVCxPQUFPLEVBQUMsMkJBQTJCLElBQUksNkJBQTZCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RyxPQUFPLEVBQUMsNEJBQTRCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNySSxPQUFPLEVBQUMsNEJBQTRCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNySSxPQUFPLEVBQUMsc0JBQXNCLElBQUksNkJBQTZCLEVBQUMsbUJBQW1CLElBQUksNkJBQTZCLEVBQUMsd0JBQXdCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM5TSxPQUFPLEVBQUMsWUFBWSxJQUFJLDZCQUE2QixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFlBQVksSUFBSSw2QkFBNkIsRUFBQyxrQkFBa0IsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xKLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2xHLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSw2QkFBNkIsRUFBQywwQkFBMEIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQy9KLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNGLE9BQU8sRUFBQywwQkFBMEIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2xILE9BQU8sRUFBQyxTQUFTLElBQUksNkJBQTZCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RixPQUFPLEVBQUMsbUJBQW1CLElBQUksNkJBQTZCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUd0RixPQUFPLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNwVSxPQUFPLEVBQUMsY0FBYyxJQUFJLDhCQUE4QixFQUFDLFFBQVEsSUFBSSw4QkFBOEIsRUFBQyx3QkFBd0IsSUFBSSw4QkFBOEIsRUFBQyxnQkFBZ0IsSUFBSSw2QkFBNkIsRUFBQyxlQUFlLElBQUksOEJBQThCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMvUixPQUFPLEVBQUMsY0FBYyxJQUFJLDhCQUE4QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDekcsT0FBTyxFQUFDLGdCQUFnQixJQUFJLDZCQUE2QixFQUFDLGlCQUFpQixJQUFJLDZCQUE2QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0osT0FBTyxFQUFDLGVBQWUsSUFBSSw4QkFBOEIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxhQUFhLElBQUksOEJBQThCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLElBQUksOEJBQThCLEVBQUMsaUJBQWlCLElBQUksOEJBQThCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvSSxPQUFPLEVBQUMsc0JBQXNCLElBQUksOEJBQThCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RixPQUFPLEVBQUMsSUFBSSxJQUFJLDZCQUE2QixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFDLFlBQVksSUFBSSw2QkFBNkIsRUFBQyxNQUFNLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtBUFBMSUNBVElPTl9NT0RVTEVfUFJPVklERVJTIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfcyxfaXRlcmFibGVEaWZmZXJzRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3AsX2tleVZhbHVlRGlmZmVyc0ZhY3RvcnkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9xLF9sb2NhbGVGYWN0b3J5IGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfcix6b25lU2NoZWR1bGVyRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3R9IGZyb20gJy4vc3JjL2FwcGxpY2F0aW9uX21vZHVsZSc7XG5leHBvcnQge19hcHBJZFJhbmRvbVByb3ZpZGVyRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2d9IGZyb20gJy4vc3JjL2FwcGxpY2F0aW9uX3Rva2Vucyc7XG5leHBvcnQge0RlZmF1bHRJdGVyYWJsZURpZmZlckZhY3RvcnkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ufSBmcm9tICcuL3NyYy9jaGFuZ2VfZGV0ZWN0aW9uL2RpZmZlcnMvZGVmYXVsdF9pdGVyYWJsZV9kaWZmZXInO1xuZXhwb3J0IHtEZWZhdWx0S2V5VmFsdWVEaWZmZXJGYWN0b3J5IGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfb30gZnJvbSAnLi9zcmMvY2hhbmdlX2RldGVjdGlvbi9kaWZmZXJzL2RlZmF1bHRfa2V5dmFsdWVfZGlmZmVyJztcbmV4cG9ydCB7RGVidWdFbGVtZW50X19QUkVfUjNfXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2wsRGVidWdOb2RlX19QUkVfUjNfXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2ssZ2V0RGVidWdOb2RlUjJfX1BSRV9SM19fIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfbX0gZnJvbSAnLi9zcmMvZGVidWcvZGVidWdfbm9kZSc7XG5leHBvcnQge2lzRm9yd2FyZFJlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2F9IGZyb20gJy4vc3JjL2RpL2ZvcndhcmRfcmVmJztcbmV4cG9ydCB7TnVsbEluamVjdG9yIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYyxpbmplY3RJbmplY3Rvck9ubHkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ifSBmcm9tICcuL3NyYy9kaS9pbmplY3Rvcl9jb21wYXRpYmlsaXR5JztcbmV4cG9ydCB7UmVmbGVjdGl2ZUluamVjdG9yXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2R9IGZyb20gJy4vc3JjL2RpL3JlZmxlY3RpdmVfaW5qZWN0b3InO1xuZXhwb3J0IHtSZWZsZWN0aXZlRGVwZW5kZW5jeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2UscmVzb2x2ZVJlZmxlY3RpdmVQcm92aWRlcnMgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9mfSBmcm9tICcuL3NyYy9kaS9yZWZsZWN0aXZlX3Byb3ZpZGVyJztcbmV4cG9ydCB7VVNEX0NVUlJFTkNZX0NPREUgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV91fSBmcm9tICcuL3NyYy9pMThuL2xvY2FsaXphdGlvbic7XG5leHBvcnQge2dldE1vZHVsZUZhY3RvcnlfX1BSRV9SM19fIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfan0gZnJvbSAnLi9zcmMvbGlua2VyL25nX21vZHVsZV9mYWN0b3J5X2xvYWRlcic7XG5leHBvcnQge1NDSEVEVUxFUiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3h9IGZyb20gJy4vc3JjL3JlbmRlcjMvY29tcG9uZW50X3JlZic7XG5leHBvcnQge2luamVjdEF0dHJpYnV0ZUltcGwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV95fSBmcm9tICcuL3NyYy9yZW5kZXIzL2RpJztcbmV4cG9ydCB7VEVsZW1lbnROb2RlIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYmV9IGZyb20gJy4vc3JjL3JlbmRlcjMvaW50ZXJmYWNlcy9ub2RlJztcbmV4cG9ydCB7TFZpZXcgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ib30gZnJvbSAnLi9zcmMvcmVuZGVyMy9pbnRlcmZhY2VzL3ZpZXcnO1xuZXhwb3J0IHtwdXJlRnVuY3Rpb24xSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iZixwdXJlRnVuY3Rpb24ySW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iZyxwdXJlRnVuY3Rpb24zSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iaCxwdXJlRnVuY3Rpb240SW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iaSxwdXJlRnVuY3Rpb25WSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ian0gZnJvbSAnLi9zcmMvcmVuZGVyMy9wdXJlX2Z1bmN0aW9uJztcbmV4cG9ydCB7Z2V0QmluZGluZ1Jvb3QgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iYyxnZXRMVmlldyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JhLGdldFByZXZpb3VzT3JQYXJlbnRUTm9kZSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JiLGluc3RydWN0aW9uU3RhdGUgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV96LG5leHRDb250ZXh0SW1wbCBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JkfSBmcm9tICcuL3NyYy9yZW5kZXIzL3N0YXRlJztcbmV4cG9ydCB7Z2V0Um9vdENvbnRleHQgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9icX0gZnJvbSAnLi9zcmMvcmVuZGVyMy91dGlsL3ZpZXdfdHJhdmVyc2FsX3V0aWxzJztcbmV4cG9ydCB7Y3JlYXRlRWxlbWVudFJlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2gsY3JlYXRlVGVtcGxhdGVSZWYgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9pfSBmcm9tICcuL3NyYy9yZW5kZXIzL3ZpZXdfZW5naW5lX2NvbXBhdGliaWxpdHknO1xuZXhwb3J0IHtnZXRVcmxTYW5pdGl6ZXIgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ia30gZnJvbSAnLi9zcmMvc2FuaXRpemF0aW9uL3Nhbml0aXphdGlvbic7XG5leHBvcnQge25vU2lkZUVmZmVjdHMgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9icH0gZnJvbSAnLi9zcmMvdXRpbC9jbG9zdXJlJztcbmV4cG9ydCB7bWFrZVBhcmFtRGVjb3JhdG9yIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYmwsbWFrZVByb3BEZWNvcmF0b3IgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ibX0gZnJvbSAnLi9zcmMvdXRpbC9kZWNvcmF0b3JzJztcbmV4cG9ydCB7Z2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JufSBmcm9tICcuL3NyYy91dGlsL3Byb3BlcnR5JztcbmV4cG9ydCB7X2RlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3Z9IGZyb20gJy4vc3JjL3ZpZXcvcHJvdmlkZXInO1xuZXhwb3J0IHtEZWJ1Z0NvbnRleHQgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV93fSBmcm9tICcuL3NyYy92aWV3L3R5cGVzJzsiXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyw0QkFBNEIsSUFBSSw2QkFBNkIsRUFBQyx1QkFBdUIsSUFBSSw2QkFBNkIsRUFBQyx1QkFBdUIsSUFBSSw2QkFBNkIsRUFBQyxjQUFjLElBQUksNkJBQTZCLEVBQUMsb0JBQW9CLElBQUksNkJBQTZCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMvVCxPQUFPLEVBQUMsMkJBQTJCLElBQUksNkJBQTZCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RyxPQUFPLEVBQUMsNEJBQTRCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNySSxPQUFPLEVBQUMsNEJBQTRCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNySSxPQUFPLEVBQUMsc0JBQXNCLElBQUksNkJBQTZCLEVBQUMsbUJBQW1CLElBQUksNkJBQTZCLEVBQUMsd0JBQXdCLElBQUksNkJBQTZCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM5TSxPQUFPLEVBQUMsWUFBWSxJQUFJLDZCQUE2QixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFlBQVksSUFBSSw2QkFBNkIsRUFBQyxrQkFBa0IsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xKLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2xHLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSw2QkFBNkIsRUFBQywwQkFBMEIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQy9KLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNGLE9BQU8sRUFBQywwQkFBMEIsSUFBSSw2QkFBNkIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2xILE9BQU8sRUFBQyxTQUFTLElBQUksNkJBQTZCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RixPQUFPLEVBQUMsbUJBQW1CLElBQUksNkJBQTZCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUd0RixPQUFPLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMscUJBQXFCLElBQUksOEJBQThCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNwVSxPQUFPLEVBQUMsY0FBYyxJQUFJLDhCQUE4QixFQUFDLFFBQVEsSUFBSSw4QkFBOEIsRUFBQyx3QkFBd0IsSUFBSSw4QkFBOEIsRUFBQyxnQkFBZ0IsSUFBSSw2QkFBNkIsRUFBQyxlQUFlLElBQUksOEJBQThCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMvUixPQUFPLEVBQUMsY0FBYyxJQUFJLDhCQUE4QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDekcsT0FBTyxFQUFDLGdCQUFnQixJQUFJLDZCQUE2QixFQUFDLGlCQUFpQixJQUFJLDZCQUE2QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0osT0FBTyxFQUFDLGVBQWUsSUFBSSw4QkFBOEIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxhQUFhLElBQUksOEJBQThCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLElBQUksOEJBQThCLEVBQUMsaUJBQWlCLElBQUksOEJBQThCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvSSxPQUFPLEVBQUMsc0JBQXNCLElBQUksOEJBQThCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RixPQUFPLEVBQUMsSUFBSSxJQUFJLDZCQUE2QixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFDLFlBQVksSUFBSSw2QkFBNkIsRUFBQyxNQUFNLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtBUFBMSUNBVElPTl9NT0RVTEVfUFJPVklERVJTIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfcyxfaXRlcmFibGVEaWZmZXJzRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3AsX2tleVZhbHVlRGlmZmVyc0ZhY3RvcnkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9xLF9sb2NhbGVGYWN0b3J5IGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfcix6b25lU2NoZWR1bGVyRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3R9IGZyb20gJy4vc3JjL2FwcGxpY2F0aW9uX21vZHVsZSc7XG5leHBvcnQge19hcHBJZFJhbmRvbVByb3ZpZGVyRmFjdG9yeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2d9IGZyb20gJy4vc3JjL2FwcGxpY2F0aW9uX3Rva2Vucyc7XG5leHBvcnQge0RlZmF1bHRJdGVyYWJsZURpZmZlckZhY3RvcnkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ufSBmcm9tICcuL3NyYy9jaGFuZ2VfZGV0ZWN0aW9uL2RpZmZlcnMvZGVmYXVsdF9pdGVyYWJsZV9kaWZmZXInO1xuZXhwb3J0IHtEZWZhdWx0S2V5VmFsdWVEaWZmZXJGYWN0b3J5IGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfb30gZnJvbSAnLi9zcmMvY2hhbmdlX2RldGVjdGlvbi9kaWZmZXJzL2RlZmF1bHRfa2V5dmFsdWVfZGlmZmVyJztcbmV4cG9ydCB7RGVidWdFbGVtZW50X19QUkVfUjNfXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2wsRGVidWdOb2RlX19QUkVfUjNfXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2ssZ2V0RGVidWdOb2RlUjJfX1BSRV9SM19fIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfbX0gZnJvbSAnLi9zcmMvZGVidWcvZGVidWdfbm9kZSc7XG5leHBvcnQge2lzRm9yd2FyZFJlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2F9IGZyb20gJy4vc3JjL2RpL2ZvcndhcmRfcmVmJztcbmV4cG9ydCB7TnVsbEluamVjdG9yIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYyxpbmplY3RJbmplY3Rvck9ubHkgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ifSBmcm9tICcuL3NyYy9kaS9pbmplY3Rvcl9jb21wYXRpYmlsaXR5JztcbmV4cG9ydCB7UmVmbGVjdGl2ZUluamVjdG9yXyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2R9IGZyb20gJy4vc3JjL2RpL3JlZmxlY3RpdmVfaW5qZWN0b3InO1xuZXhwb3J0IHtSZWZsZWN0aXZlRGVwZW5kZW5jeSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2UscmVzb2x2ZVJlZmxlY3RpdmVQcm92aWRlcnMgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9mfSBmcm9tICcuL3NyYy9kaS9yZWZsZWN0aXZlX3Byb3ZpZGVyJztcbmV4cG9ydCB7VVNEX0NVUlJFTkNZX0NPREUgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV91fSBmcm9tICcuL3NyYy9pMThuL2xvY2FsaXphdGlvbic7XG5leHBvcnQge2dldE1vZHVsZUZhY3RvcnlfX1BSRV9SM19fIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfan0gZnJvbSAnLi9zcmMvbGlua2VyL25nX21vZHVsZV9mYWN0b3J5X2xvYWRlcic7XG5leHBvcnQge1NDSEVEVUxFUiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3h9IGZyb20gJy4vc3JjL3JlbmRlcjMvY29tcG9uZW50X3JlZic7XG5leHBvcnQge2luamVjdEF0dHJpYnV0ZUltcGwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV95fSBmcm9tICcuL3NyYy9yZW5kZXIzL2RpJztcbmV4cG9ydCB7VEVsZW1lbnROb2RlIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYmV9IGZyb20gJy4vc3JjL3JlbmRlcjMvaW50ZXJmYWNlcy9ub2RlJztcbmV4cG9ydCB7TFZpZXcgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9icH0gZnJvbSAnLi9zcmMvcmVuZGVyMy9pbnRlcmZhY2VzL3ZpZXcnO1xuZXhwb3J0IHtwdXJlRnVuY3Rpb24xSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iZixwdXJlRnVuY3Rpb24ySW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iZyxwdXJlRnVuY3Rpb24zSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iaCxwdXJlRnVuY3Rpb240SW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iaSxwdXJlRnVuY3Rpb25WSW50ZXJuYWwgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ian0gZnJvbSAnLi9zcmMvcmVuZGVyMy9wdXJlX2Z1bmN0aW9uJztcbmV4cG9ydCB7Z2V0QmluZGluZ1Jvb3QgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9iYyxnZXRMVmlldyBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JhLGdldFByZXZpb3VzT3JQYXJlbnRUTm9kZSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JiLGluc3RydWN0aW9uU3RhdGUgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV96LG5leHRDb250ZXh0SW1wbCBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JkfSBmcm9tICcuL3NyYy9yZW5kZXIzL3N0YXRlJztcbmV4cG9ydCB7Z2V0Um9vdENvbnRleHQgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9icX0gZnJvbSAnLi9zcmMvcmVuZGVyMy91dGlsL3ZpZXdfdHJhdmVyc2FsX3V0aWxzJztcbmV4cG9ydCB7Y3JlYXRlRWxlbWVudFJlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2gsY3JlYXRlVGVtcGxhdGVSZWYgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9pfSBmcm9tICcuL3NyYy9yZW5kZXIzL3ZpZXdfZW5naW5lX2NvbXBhdGliaWxpdHknO1xuZXhwb3J0IHtnZXRVcmxTYW5pdGl6ZXIgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ia30gZnJvbSAnLi9zcmMvc2FuaXRpemF0aW9uL3Nhbml0aXphdGlvbic7XG5leHBvcnQge25vU2lkZUVmZmVjdHMgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ib30gZnJvbSAnLi9zcmMvdXRpbC9jbG9zdXJlJztcbmV4cG9ydCB7bWFrZVBhcmFtRGVjb3JhdG9yIGFzIMm1YW5ndWxhcl9wYWNrYWdlc19jb3JlX2NvcmVfYmwsbWFrZVByb3BEZWNvcmF0b3IgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV9ibX0gZnJvbSAnLi9zcmMvdXRpbC9kZWNvcmF0b3JzJztcbmV4cG9ydCB7Z2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eSBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX2JufSBmcm9tICcuL3NyYy91dGlsL3Byb3BlcnR5JztcbmV4cG9ydCB7X2RlZiBhcyDJtWFuZ3VsYXJfcGFja2FnZXNfY29yZV9jb3JlX3Z9IGZyb20gJy4vc3JjL3ZpZXcvcHJvdmlkZXInO1xuZXhwb3J0IHtEZWJ1Z0NvbnRleHQgYXMgybVhbmd1bGFyX3BhY2thZ2VzX2NvcmVfY29yZV93fSBmcm9tICcuL3NyYy92aWV3L3R5cGVzJzsiXX0=
@@ -52,7 +52,7 @@ export function compileInjectable(type, srcMeta) {
52
52
  typeArgumentCount: metadata.typeArgumentCount,
53
53
  deps: reflectDependencies(type),
54
54
  injectFn: 'inject',
55
- target: compiler.R3FactoryTarget.Pipe
55
+ target: compiler.R3FactoryTarget.Injectable
56
56
  });
57
57
  }
58
58
  return ngFactoryDef;
@@ -108,4 +108,4 @@ function getInjectableMetadata(type, srcMeta) {
108
108
  return compilerMeta;
109
109
  }
110
110
  export { ɵ0 };
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2RpL2ppdC9pbmplY3RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBNkIsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU3RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFDLFdBQVcsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBR3BFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFJaEU7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLElBQWUsRUFBRSxPQUFvQjtJQUNyRSxJQUFJLGVBQWUsR0FBUSxJQUFJLENBQUM7SUFDaEMsSUFBSSxZQUFZLEdBQVEsSUFBSSxDQUFDO0lBRTdCLDBFQUEwRTtJQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNyQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDdkMsR0FBRyxFQUFFO2dCQUNILElBQUksZUFBZSxLQUFLLElBQUksRUFBRTtvQkFDNUIsZUFBZSxHQUFHLGlCQUFpQixFQUFFLENBQUMsaUJBQWlCLENBQ25ELGdCQUFnQixFQUFFLFdBQVMsSUFBSSxDQUFDLElBQUksbUJBQVcsRUFDL0MscUJBQXFCLENBQUMsSUFBSSxFQUFFLE9BQU8s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O0lBQ0QsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM1QixpRkFBaUY7UUFDakYsWUFBWSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDMUQ7U0FBTSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ25DLDBDQUEwQztRQUMxQyxZQUFZLENBQUMsUUFBUSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUMxRDtTQUFNLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDckMsNENBQTRDO1FBQzVDLFlBQVksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztLQUMzQztTQUFNLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEMsNkNBQTZDO1FBQzdDLFlBQVksQ0FBQyxXQUFXLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBQ2hFO0lBQ0QsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtSM0luamVjdGFibGVNZXRhZGF0YUZhY2FkZSwgZ2V0Q29tcGlsZXJGYWNhZGV9IGZyb20gJy4uLy4uL2NvbXBpbGVyL2NvbXBpbGVyX2ZhY2FkZSc7XG5pbXBvcnQge1R5cGV9IGZyb20gJy4uLy4uL2ludGVyZmFjZS90eXBlJztcbmltcG9ydCB7TkdfRkFDVE9SWV9ERUZ9IGZyb20gJy4uLy4uL3JlbmRlcjMvZmllbGRzJztcbmltcG9ydCB7Z2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0gZnJvbSAnLi4vLi4vdXRpbC9wcm9wZXJ0eSc7XG5pbXBvcnQge3Jlc29sdmVGb3J3YXJkUmVmfSBmcm9tICcuLi9mb3J3YXJkX3JlZic7XG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJy4uL2luamVjdGFibGUnO1xuaW1wb3J0IHtOR19QUk9WX0RFRiwgTkdfUFJPVl9ERUZfRkFMTEJBQ0t9IGZyb20gJy4uL2ludGVyZmFjZS9kZWZzJztcbmltcG9ydCB7Q2xhc3NTYW5zUHJvdmlkZXIsIEV4aXN0aW5nU2Fuc1Byb3ZpZGVyLCBGYWN0b3J5U2Fuc1Byb3ZpZGVyLCBWYWx1ZVByb3ZpZGVyLCBWYWx1ZVNhbnNQcm92aWRlcn0gZnJvbSAnLi4vaW50ZXJmYWNlL3Byb3ZpZGVyJztcblxuaW1wb3J0IHthbmd1bGFyQ29yZURpRW52fSBmcm9tICcuL2Vudmlyb25tZW50JztcbmltcG9ydCB7Y29udmVydERlcGVuZGVuY2llcywgcmVmbGVjdERlcGVuZGVuY2llc30gZnJvbSAnLi91dGlsJztcblxuXG5cbi8qKlxuICogQ29tcGlsZSBhbiBBbmd1bGFyIGluamVjdGFibGUgYWNjb3JkaW5nIHRvIGl0cyBgSW5qZWN0YWJsZWAgbWV0YWRhdGEsIGFuZCBwYXRjaCB0aGUgcmVzdWx0aW5nXG4gKiBpbmplY3RhYmxlIGRlZiAoYMm1cHJvdmApIG9udG8gdGhlIGluamVjdGFibGUgdHlwZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbXBpbGVJbmplY3RhYmxlKHR5cGU6IFR5cGU8YW55Piwgc3JjTWV0YT86IEluamVjdGFibGUpOiB2b2lkIHtcbiAgbGV0IG5nSW5qZWN0YWJsZURlZjogYW55ID0gbnVsbDtcbiAgbGV0IG5nRmFjdG9yeURlZjogYW55ID0gbnVsbDtcblxuICAvLyBpZiBOR19QUk9WX0RFRiBpcyBhbHJlYWR5IGRlZmluZWQgb24gdGhpcyBjbGFzcyB0aGVuIGRvbid0IG92ZXJ3cml0ZSBpdFxuICBpZiAoIXR5cGUuaGFzT3duUHJvcGVydHkoTkdfUFJPVl9ERUYpKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX1BST1ZfREVGLCB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgaWYgKG5nSW5qZWN0YWJsZURlZiA9PT0gbnVsbCkge1xuICAgICAgICAgIG5nSW5qZWN0YWJsZURlZiA9IGdldENvbXBpbGVyRmFjYWRlKCkuY29tcGlsZUluamVjdGFibGUoXG4gICAgICAgICAgICAgIGFuZ3VsYXJDb3JlRGlFbnYsIGBuZzovLy8ke3R5cGUubmFtZX0vybVwcm92LmpzYCxcbiAgICAgICAgICAgICAgZ2V0SW5qZWN0YWJsZU1ldGFkYXRhKHR5cGUsIHNyY01ldGEpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmdJbmplY3RhYmxlRGVmO1xuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIE9uIElFMTAgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBgZGVmaW5lUHJvcGVydHlgIHdvbid0IGJlIGluaGVyaXRlZCBieSBjaGlsZCBjbGFzc2VzLFxuICAgIC8vIHdoaWNoIHdpbGwgYnJlYWsgaW5oZXJpdGluZyB0aGUgaW5qZWN0YWJsZSBkZWZpbml0aW9uIGZyb20gYSBncmFuZHBhcmVudCB0aHJvdWdoIGFuXG4gICAgLy8gdW5kZWNvcmF0ZWQgcGFyZW50IGNsYXNzLiBXZSB3b3JrIGFyb3VuZCBpdCBieSBkZWZpbmluZyBhIG1ldGhvZCB3aGljaCBzaG91bGQgYmUgdXNlZFxuICAgIC8vIGFzIGEgZmFsbGJhY2suIFRoaXMgc2hvdWxkIG9ubHkgYmUgYSBwcm9ibGVtIGluIEpJVCBtb2RlLCBiZWNhdXNlIGluIEFPVCBUeXBlU2NyaXB0XG4gICAgLy8gc2VlbXMgdG8gaGF2ZSBhIHdvcmthcm91bmQgZm9yIHN0YXRpYyBwcm9wZXJ0aWVzLiBXaGVuIGluaGVyaXRpbmcgZnJvbSBhbiB1bmRlY29yYXRlZFxuICAgIC8vIHBhcmVudCBpcyBubyBsb25nZXIgc3VwcG9ydGVkIGluIHYxMCwgdGhpcyBjYW4gc2FmZWx5IGJlIHJlbW92ZWQuXG4gICAgaWYgKCF0eXBlLmhhc093blByb3BlcnR5KE5HX1BST1ZfREVGX0ZBTExCQUNLKSkge1xuICAgICAgKHR5cGUgYXMgYW55KVtOR19QUk9WX0RFRl9GQUxMQkFDS10gPSAoKSA9PiAodHlwZSBhcyBhbnkpW05HX1BST1ZfREVGXTtcbiAgICB9XG4gIH1cblxuICAvLyBpZiBOR19GQUNUT1JZX0RFRiBpcyBhbHJlYWR5IGRlZmluZWQgb24gdGhpcyBjbGFzcyB0aGVuIGRvbid0IG92ZXJ3cml0ZSBpdFxuICBpZiAoIXR5cGUuaGFzT3duUHJvcGVydHkoTkdfRkFDVE9SWV9ERUYpKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX0ZBQ1RPUllfREVGLCB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgaWYgKG5nRmFjdG9yeURlZiA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IG1ldGFkYXRhID0gZ2V0SW5qZWN0YWJsZU1ldGFkYXRhKHR5cGUsIHNyY01ldGEpO1xuICAgICAgICAgIGNvbnN0IGNvbXBpbGVyID0gZ2V0Q29tcGlsZXJGYWNhZGUoKTtcbiAgICAgICAgICBuZ0ZhY3RvcnlEZWYgPSBjb21waWxlci5jb21waWxlRmFjdG9yeShhbmd1bGFyQ29yZURpRW52LCBgbmc6Ly8vJHt0eXBlLm5hbWV9L8m1ZmFjLmpzYCwge1xuICAgICAgICAgICAgbmFtZTogbWV0YWRhdGEubmFtZSxcbiAgICAgICAgICAgIHR5cGU6IG1ldGFkYXRhLnR5cGUsXG4gICAgICAgICAgICB0eXBlQXJndW1lbnRDb3VudDogbWV0YWRhdGEudHlwZUFyZ3VtZW50Q291bnQsXG4gICAgICAgICAgICBkZXBzOiByZWZsZWN0RGVwZW5kZW5jaWVzKHR5cGUpLFxuICAgICAgICAgICAgaW5qZWN0Rm46ICdpbmplY3QnLFxuICAgICAgICAgICAgdGFyZ2V0OiBjb21waWxlci5SM0ZhY3RvcnlUYXJnZXQuUGlwZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZ0ZhY3RvcnlEZWY7XG4gICAgICB9LFxuICAgICAgLy8gTGVhdmUgdGhpcyBjb25maWd1cmFibGUgc28gdGhhdCB0aGUgZmFjdG9yaWVzIGZyb20gZGlyZWN0aXZlcyBvciBwaXBlcyBjYW4gdGFrZSBwcmVjZWRlbmNlLlxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH1cbn1cblxudHlwZSBVc2VDbGFzc1Byb3ZpZGVyID0gSW5qZWN0YWJsZSAmIENsYXNzU2Fuc1Byb3ZpZGVyICYge2RlcHM/OiBhbnlbXX07XG5cbmNvbnN0IFVTRV9WQUxVRSA9XG4gICAgZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eTxWYWx1ZVByb3ZpZGVyPih7cHJvdmlkZTogU3RyaW5nLCB1c2VWYWx1ZTogZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0pO1xuXG5mdW5jdGlvbiBpc1VzZUNsYXNzUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgVXNlQ2xhc3NQcm92aWRlciB7XG4gIHJldHVybiAobWV0YSBhcyBVc2VDbGFzc1Byb3ZpZGVyKS51c2VDbGFzcyAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBpc1VzZVZhbHVlUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZWYWx1ZVNhbnNQcm92aWRlciB7XG4gIHJldHVybiBVU0VfVkFMVUUgaW4gbWV0YTtcbn1cblxuZnVuY3Rpb24gaXNVc2VGYWN0b3J5UHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZGYWN0b3J5U2Fuc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIChtZXRhIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaXNVc2VFeGlzdGluZ1Byb3ZpZGVyKG1ldGE6IEluamVjdGFibGUpOiBtZXRhIGlzIEluamVjdGFibGUmRXhpc3RpbmdTYW5zUHJvdmlkZXIge1xuICByZXR1cm4gKG1ldGEgYXMgRXhpc3RpbmdTYW5zUHJvdmlkZXIpLnVzZUV4aXN0aW5nICE9PSB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIGdldEluamVjdGFibGVNZXRhZGF0YSh0eXBlOiBUeXBlPGFueT4sIHNyY01ldGE/OiBJbmplY3RhYmxlKTogUjNJbmplY3RhYmxlTWV0YWRhdGFGYWNhZGUge1xuICAvLyBBbGxvdyB0aGUgY29tcGlsYXRpb24gb2YgYSBjbGFzcyB3aXRoIGEgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvciB3aXRob3V0IHBhcmFtZXRlcnNcbiAgY29uc3QgbWV0YTogSW5qZWN0YWJsZSA9IHNyY01ldGEgfHwge3Byb3ZpZGVkSW46IG51bGx9O1xuICBjb25zdCBjb21waWxlck1ldGE6IFIzSW5qZWN0YWJsZU1ldGFkYXRhRmFjYWRlID0ge1xuICAgIG5hbWU6IHR5cGUubmFtZSxcbiAgICB0eXBlOiB0eXBlLFxuICAgIHR5cGVBcmd1bWVudENvdW50OiAwLFxuICAgIHByb3ZpZGVkSW46IG1ldGEucHJvdmlkZWRJbixcbiAgICB1c2VyRGVwczogdW5kZWZpbmVkLFxuICB9O1xuICBpZiAoKGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSB8fCBpc1VzZUZhY3RvcnlQcm92aWRlcihtZXRhKSkgJiYgbWV0YS5kZXBzICE9PSB1bmRlZmluZWQpIHtcbiAgICBjb21waWxlck1ldGEudXNlckRlcHMgPSBjb252ZXJ0RGVwZW5kZW5jaWVzKG1ldGEuZGVwcyk7XG4gIH1cbiAgaWYgKGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSkge1xuICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZUNsYXNzLCBhbmQgbWF5IG9yIG1heSBub3QgaGF2ZSBwcm92aWRlZCBkZXBzLlxuICAgIGNvbXBpbGVyTWV0YS51c2VDbGFzcyA9IHJlc29sdmVGb3J3YXJkUmVmKG1ldGEudXNlQ2xhc3MpO1xuICB9IGVsc2UgaWYgKGlzVXNlVmFsdWVQcm92aWRlcihtZXRhKSkge1xuICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZVZhbHVlLlxuICAgIGNvbXBpbGVyTWV0YS51c2VWYWx1ZSA9IHJlc29sdmVGb3J3YXJkUmVmKG1ldGEudXNlVmFsdWUpO1xuICB9IGVsc2UgaWYgKGlzVXNlRmFjdG9yeVByb3ZpZGVyKG1ldGEpKSB7XG4gICAgLy8gVGhlIHVzZXIgZXhwbGljaXRseSBzcGVjaWZpZWQgdXNlRmFjdG9yeS5cbiAgICBjb21waWxlck1ldGEudXNlRmFjdG9yeSA9IG1ldGEudXNlRmFjdG9yeTtcbiAgfSBlbHNlIGlmIChpc1VzZUV4aXN0aW5nUHJvdmlkZXIobWV0YSkpIHtcbiAgICAvLyBUaGUgdXNlciBleHBsaWNpdGx5IHNwZWNpZmllZCB1c2VFeGlzdGluZy5cbiAgICBjb21waWxlck1ldGEudXNlRXhpc3RpbmcgPSByZXNvbHZlRm9yd2FyZFJlZihtZXRhLnVzZUV4aXN0aW5nKTtcbiAgfVxuICByZXR1cm4gY29tcGlsZXJNZXRhO1xufVxuIl19
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2RpL2ppdC9pbmplY3RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBNkIsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU3RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFDLFdBQVcsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBR3BFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFJaEU7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLElBQWUsRUFBRSxPQUFvQjtJQUNyRSxJQUFJLGVBQWUsR0FBUSxJQUFJLENBQUM7SUFDaEMsSUFBSSxZQUFZLEdBQVEsSUFBSSxDQUFDO0lBRTdCLDBFQUEwRTtJQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNyQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDdkMsR0FBRyxFQUFFO2dCQUNILElBQUksZUFBZSxLQUFLLElBQUksRUFBRTtvQkFDNUIsZUFBZSxHQUFHLGlCQUFpQixFQUFFLENBQUMsaUJBQWlCLENBQ25ELGdCQUFnQixFQUFFLFdBQVMsSUFBSSxDQUFDLElBQUksbUJBQVcsRUFDL0MscUJBQXFCLENBQUMsSUFBSSxFQUFFLE9BQU8s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O0lBQ0QsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM1QixpRkFBaUY7UUFDakYsWUFBWSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDMUQ7U0FBTSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ25DLDBDQUEwQztRQUMxQyxZQUFZLENBQUMsUUFBUSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUMxRDtTQUFNLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDckMsNENBQTRDO1FBQzVDLFlBQVksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztLQUMzQztTQUFNLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEMsNkNBQTZDO1FBQzdDLFlBQVksQ0FBQyxXQUFXLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBQ2hFO0lBQ0QsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtSM0luamVjdGFibGVNZXRhZGF0YUZhY2FkZSwgZ2V0Q29tcGlsZXJGYWNhZGV9IGZyb20gJy4uLy4uL2NvbXBpbGVyL2NvbXBpbGVyX2ZhY2FkZSc7XG5pbXBvcnQge1R5cGV9IGZyb20gJy4uLy4uL2ludGVyZmFjZS90eXBlJztcbmltcG9ydCB7TkdfRkFDVE9SWV9ERUZ9IGZyb20gJy4uLy4uL3JlbmRlcjMvZmllbGRzJztcbmltcG9ydCB7Z2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0gZnJvbSAnLi4vLi4vdXRpbC9wcm9wZXJ0eSc7XG5pbXBvcnQge3Jlc29sdmVGb3J3YXJkUmVmfSBmcm9tICcuLi9mb3J3YXJkX3JlZic7XG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJy4uL2luamVjdGFibGUnO1xuaW1wb3J0IHtOR19QUk9WX0RFRiwgTkdfUFJPVl9ERUZfRkFMTEJBQ0t9IGZyb20gJy4uL2ludGVyZmFjZS9kZWZzJztcbmltcG9ydCB7Q2xhc3NTYW5zUHJvdmlkZXIsIEV4aXN0aW5nU2Fuc1Byb3ZpZGVyLCBGYWN0b3J5U2Fuc1Byb3ZpZGVyLCBWYWx1ZVByb3ZpZGVyLCBWYWx1ZVNhbnNQcm92aWRlcn0gZnJvbSAnLi4vaW50ZXJmYWNlL3Byb3ZpZGVyJztcblxuaW1wb3J0IHthbmd1bGFyQ29yZURpRW52fSBmcm9tICcuL2Vudmlyb25tZW50JztcbmltcG9ydCB7Y29udmVydERlcGVuZGVuY2llcywgcmVmbGVjdERlcGVuZGVuY2llc30gZnJvbSAnLi91dGlsJztcblxuXG5cbi8qKlxuICogQ29tcGlsZSBhbiBBbmd1bGFyIGluamVjdGFibGUgYWNjb3JkaW5nIHRvIGl0cyBgSW5qZWN0YWJsZWAgbWV0YWRhdGEsIGFuZCBwYXRjaCB0aGUgcmVzdWx0aW5nXG4gKiBpbmplY3RhYmxlIGRlZiAoYMm1cHJvdmApIG9udG8gdGhlIGluamVjdGFibGUgdHlwZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbXBpbGVJbmplY3RhYmxlKHR5cGU6IFR5cGU8YW55Piwgc3JjTWV0YT86IEluamVjdGFibGUpOiB2b2lkIHtcbiAgbGV0IG5nSW5qZWN0YWJsZURlZjogYW55ID0gbnVsbDtcbiAgbGV0IG5nRmFjdG9yeURlZjogYW55ID0gbnVsbDtcblxuICAvLyBpZiBOR19QUk9WX0RFRiBpcyBhbHJlYWR5IGRlZmluZWQgb24gdGhpcyBjbGFzcyB0aGVuIGRvbid0IG92ZXJ3cml0ZSBpdFxuICBpZiAoIXR5cGUuaGFzT3duUHJvcGVydHkoTkdfUFJPVl9ERUYpKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX1BST1ZfREVGLCB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgaWYgKG5nSW5qZWN0YWJsZURlZiA9PT0gbnVsbCkge1xuICAgICAgICAgIG5nSW5qZWN0YWJsZURlZiA9IGdldENvbXBpbGVyRmFjYWRlKCkuY29tcGlsZUluamVjdGFibGUoXG4gICAgICAgICAgICAgIGFuZ3VsYXJDb3JlRGlFbnYsIGBuZzovLy8ke3R5cGUubmFtZX0vybVwcm92LmpzYCxcbiAgICAgICAgICAgICAgZ2V0SW5qZWN0YWJsZU1ldGFkYXRhKHR5cGUsIHNyY01ldGEpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmdJbmplY3RhYmxlRGVmO1xuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIE9uIElFMTAgcHJvcGVydGllcyBkZWZpbmVkIHZpYSBgZGVmaW5lUHJvcGVydHlgIHdvbid0IGJlIGluaGVyaXRlZCBieSBjaGlsZCBjbGFzc2VzLFxuICAgIC8vIHdoaWNoIHdpbGwgYnJlYWsgaW5oZXJpdGluZyB0aGUgaW5qZWN0YWJsZSBkZWZpbml0aW9uIGZyb20gYSBncmFuZHBhcmVudCB0aHJvdWdoIGFuXG4gICAgLy8gdW5kZWNvcmF0ZWQgcGFyZW50IGNsYXNzLiBXZSB3b3JrIGFyb3VuZCBpdCBieSBkZWZpbmluZyBhIG1ldGhvZCB3aGljaCBzaG91bGQgYmUgdXNlZFxuICAgIC8vIGFzIGEgZmFsbGJhY2suIFRoaXMgc2hvdWxkIG9ubHkgYmUgYSBwcm9ibGVtIGluIEpJVCBtb2RlLCBiZWNhdXNlIGluIEFPVCBUeXBlU2NyaXB0XG4gICAgLy8gc2VlbXMgdG8gaGF2ZSBhIHdvcmthcm91bmQgZm9yIHN0YXRpYyBwcm9wZXJ0aWVzLiBXaGVuIGluaGVyaXRpbmcgZnJvbSBhbiB1bmRlY29yYXRlZFxuICAgIC8vIHBhcmVudCBpcyBubyBsb25nZXIgc3VwcG9ydGVkIGluIHYxMCwgdGhpcyBjYW4gc2FmZWx5IGJlIHJlbW92ZWQuXG4gICAgaWYgKCF0eXBlLmhhc093blByb3BlcnR5KE5HX1BST1ZfREVGX0ZBTExCQUNLKSkge1xuICAgICAgKHR5cGUgYXMgYW55KVtOR19QUk9WX0RFRl9GQUxMQkFDS10gPSAoKSA9PiAodHlwZSBhcyBhbnkpW05HX1BST1ZfREVGXTtcbiAgICB9XG4gIH1cblxuICAvLyBpZiBOR19GQUNUT1JZX0RFRiBpcyBhbHJlYWR5IGRlZmluZWQgb24gdGhpcyBjbGFzcyB0aGVuIGRvbid0IG92ZXJ3cml0ZSBpdFxuICBpZiAoIXR5cGUuaGFzT3duUHJvcGVydHkoTkdfRkFDVE9SWV9ERUYpKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX0ZBQ1RPUllfREVGLCB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgaWYgKG5nRmFjdG9yeURlZiA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IG1ldGFkYXRhID0gZ2V0SW5qZWN0YWJsZU1ldGFkYXRhKHR5cGUsIHNyY01ldGEpO1xuICAgICAgICAgIGNvbnN0IGNvbXBpbGVyID0gZ2V0Q29tcGlsZXJGYWNhZGUoKTtcbiAgICAgICAgICBuZ0ZhY3RvcnlEZWYgPSBjb21waWxlci5jb21waWxlRmFjdG9yeShhbmd1bGFyQ29yZURpRW52LCBgbmc6Ly8vJHt0eXBlLm5hbWV9L8m1ZmFjLmpzYCwge1xuICAgICAgICAgICAgbmFtZTogbWV0YWRhdGEubmFtZSxcbiAgICAgICAgICAgIHR5cGU6IG1ldGFkYXRhLnR5cGUsXG4gICAgICAgICAgICB0eXBlQXJndW1lbnRDb3VudDogbWV0YWRhdGEudHlwZUFyZ3VtZW50Q291bnQsXG4gICAgICAgICAgICBkZXBzOiByZWZsZWN0RGVwZW5kZW5jaWVzKHR5cGUpLFxuICAgICAgICAgICAgaW5qZWN0Rm46ICdpbmplY3QnLFxuICAgICAgICAgICAgdGFyZ2V0OiBjb21waWxlci5SM0ZhY3RvcnlUYXJnZXQuSW5qZWN0YWJsZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZ0ZhY3RvcnlEZWY7XG4gICAgICB9LFxuICAgICAgLy8gTGVhdmUgdGhpcyBjb25maWd1cmFibGUgc28gdGhhdCB0aGUgZmFjdG9yaWVzIGZyb20gZGlyZWN0aXZlcyBvciBwaXBlcyBjYW4gdGFrZSBwcmVjZWRlbmNlLlxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH1cbn1cblxudHlwZSBVc2VDbGFzc1Byb3ZpZGVyID0gSW5qZWN0YWJsZSAmIENsYXNzU2Fuc1Byb3ZpZGVyICYge2RlcHM/OiBhbnlbXX07XG5cbmNvbnN0IFVTRV9WQUxVRSA9XG4gICAgZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eTxWYWx1ZVByb3ZpZGVyPih7cHJvdmlkZTogU3RyaW5nLCB1c2VWYWx1ZTogZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0pO1xuXG5mdW5jdGlvbiBpc1VzZUNsYXNzUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgVXNlQ2xhc3NQcm92aWRlciB7XG4gIHJldHVybiAobWV0YSBhcyBVc2VDbGFzc1Byb3ZpZGVyKS51c2VDbGFzcyAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBpc1VzZVZhbHVlUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZWYWx1ZVNhbnNQcm92aWRlciB7XG4gIHJldHVybiBVU0VfVkFMVUUgaW4gbWV0YTtcbn1cblxuZnVuY3Rpb24gaXNVc2VGYWN0b3J5UHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZGYWN0b3J5U2Fuc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIChtZXRhIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaXNVc2VFeGlzdGluZ1Byb3ZpZGVyKG1ldGE6IEluamVjdGFibGUpOiBtZXRhIGlzIEluamVjdGFibGUmRXhpc3RpbmdTYW5zUHJvdmlkZXIge1xuICByZXR1cm4gKG1ldGEgYXMgRXhpc3RpbmdTYW5zUHJvdmlkZXIpLnVzZUV4aXN0aW5nICE9PSB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIGdldEluamVjdGFibGVNZXRhZGF0YSh0eXBlOiBUeXBlPGFueT4sIHNyY01ldGE/OiBJbmplY3RhYmxlKTogUjNJbmplY3RhYmxlTWV0YWRhdGFGYWNhZGUge1xuICAvLyBBbGxvdyB0aGUgY29tcGlsYXRpb24gb2YgYSBjbGFzcyB3aXRoIGEgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvciB3aXRob3V0IHBhcmFtZXRlcnNcbiAgY29uc3QgbWV0YTogSW5qZWN0YWJsZSA9IHNyY01ldGEgfHwge3Byb3ZpZGVkSW46IG51bGx9O1xuICBjb25zdCBjb21waWxlck1ldGE6IFIzSW5qZWN0YWJsZU1ldGFkYXRhRmFjYWRlID0ge1xuICAgIG5hbWU6IHR5cGUubmFtZSxcbiAgICB0eXBlOiB0eXBlLFxuICAgIHR5cGVBcmd1bWVudENvdW50OiAwLFxuICAgIHByb3ZpZGVkSW46IG1ldGEucHJvdmlkZWRJbixcbiAgICB1c2VyRGVwczogdW5kZWZpbmVkLFxuICB9O1xuICBpZiAoKGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSB8fCBpc1VzZUZhY3RvcnlQcm92aWRlcihtZXRhKSkgJiYgbWV0YS5kZXBzICE9PSB1bmRlZmluZWQpIHtcbiAgICBjb21waWxlck1ldGEudXNlckRlcHMgPSBjb252ZXJ0RGVwZW5kZW5jaWVzKG1ldGEuZGVwcyk7XG4gIH1cbiAgaWYgKGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSkge1xuICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZUNsYXNzLCBhbmQgbWF5IG9yIG1heSBub3QgaGF2ZSBwcm92aWRlZCBkZXBzLlxuICAgIGNvbXBpbGVyTWV0YS51c2VDbGFzcyA9IHJlc29sdmVGb3J3YXJkUmVmKG1ldGEudXNlQ2xhc3MpO1xuICB9IGVsc2UgaWYgKGlzVXNlVmFsdWVQcm92aWRlcihtZXRhKSkge1xuICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZVZhbHVlLlxuICAgIGNvbXBpbGVyTWV0YS51c2VWYWx1ZSA9IHJlc29sdmVGb3J3YXJkUmVmKG1ldGEudXNlVmFsdWUpO1xuICB9IGVsc2UgaWYgKGlzVXNlRmFjdG9yeVByb3ZpZGVyKG1ldGEpKSB7XG4gICAgLy8gVGhlIHVzZXIgZXhwbGljaXRseSBzcGVjaWZpZWQgdXNlRmFjdG9yeS5cbiAgICBjb21waWxlck1ldGEudXNlRmFjdG9yeSA9IG1ldGEudXNlRmFjdG9yeTtcbiAgfSBlbHNlIGlmIChpc1VzZUV4aXN0aW5nUHJvdmlkZXIobWV0YSkpIHtcbiAgICAvLyBUaGUgdXNlciBleHBsaWNpdGx5IHNwZWNpZmllZCB1c2VFeGlzdGluZy5cbiAgICBjb21waWxlck1ldGEudXNlRXhpc3RpbmcgPSByZXNvbHZlRm9yd2FyZFJlZihtZXRhLnVzZUV4aXN0aW5nKTtcbiAgfVxuICByZXR1cm4gY29tcGlsZXJNZXRhO1xufVxuIl19