@angular/core 6.0.0-rc.3 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/bundles/core-testing.umd.js +95 -19
  2. package/bundles/core-testing.umd.js.map +1 -1
  3. package/bundles/core-testing.umd.min.js +10 -11
  4. package/bundles/core-testing.umd.min.js.map +1 -1
  5. package/bundles/core.umd.js +555 -389
  6. package/bundles/core.umd.js.map +1 -1
  7. package/bundles/core.umd.min.js +77 -77
  8. package/bundles/core.umd.min.js.map +1 -1
  9. package/core.metadata.json +1 -1
  10. package/esm2015/index.js +2 -2
  11. package/esm2015/public_api.js +2 -2
  12. package/esm2015/src/application_ref.js +6 -6
  13. package/esm2015/src/change_detection/change_detection_util.js +3 -3
  14. package/esm2015/src/change_detection/change_detector_ref.js +2 -2
  15. package/esm2015/src/change_detection/constants.js +1 -1
  16. package/esm2015/src/change_detection/differs/default_iterable_differ.js +15 -15
  17. package/esm2015/src/change_detection/differs/default_keyvalue_differ.js +2 -2
  18. package/esm2015/src/change_detection/differs/iterable_differs.js +15 -7
  19. package/esm2015/src/change_detection/differs/keyvalue_differs.js +6 -6
  20. package/esm2015/src/change_detection/pipe_transform.js +2 -2
  21. package/esm2015/src/core.js +4 -4
  22. package/esm2015/src/core_private_export.js +2 -2
  23. package/esm2015/src/core_render3_private_export.js +2 -2
  24. package/esm2015/src/di/defs.js +36 -19
  25. package/esm2015/src/di/injectable.js +3 -3
  26. package/esm2015/src/di/injection_token.js +2 -2
  27. package/esm2015/src/di/injector.js +35 -14
  28. package/esm2015/src/di/metadata.js +11 -11
  29. package/esm2015/src/di/provider.js +9 -9
  30. package/esm2015/src/di/r3_injector.js +12 -12
  31. package/esm2015/src/di/reflective_errors.js +3 -3
  32. package/esm2015/src/di.js +1 -1
  33. package/esm2015/src/error_handler.js +2 -2
  34. package/esm2015/src/event_emitter.js +2 -2
  35. package/esm2015/src/linker/compiler.js +2 -2
  36. package/esm2015/src/linker/component_factory.js +3 -3
  37. package/esm2015/src/linker/component_factory_resolver.js +2 -2
  38. package/esm2015/src/linker/element_ref.js +3 -3
  39. package/esm2015/src/linker/ng_module_factory.js +2 -2
  40. package/esm2015/src/linker/ng_module_factory_loader.js +2 -2
  41. package/esm2015/src/linker/query_list.js +2 -2
  42. package/esm2015/src/linker/template_ref.js +2 -2
  43. package/esm2015/src/linker/view_container_ref.js +2 -2
  44. package/esm2015/src/linker/view_ref.js +2 -2
  45. package/esm2015/src/metadata/di.js +12 -12
  46. package/esm2015/src/metadata/directives.js +15 -15
  47. package/esm2015/src/metadata/lifecycle_hooks.js +10 -10
  48. package/esm2015/src/metadata/ng_module.js +5 -5
  49. package/esm2015/src/metadata/view.js +1 -1
  50. package/esm2015/src/render3/assert.js +13 -1
  51. package/esm2015/src/render3/component.js +2 -1
  52. package/esm2015/src/render3/definition.js +4 -4
  53. package/esm2015/src/render3/di.js +61 -89
  54. package/esm2015/src/render3/hooks.js +7 -7
  55. package/esm2015/src/render3/index.js +1 -1
  56. package/esm2015/src/render3/instructions.js +128 -79
  57. package/esm2015/src/render3/interfaces/definition.js +9 -1
  58. package/esm2015/src/render3/interfaces/injector.js +1 -3
  59. package/esm2015/src/render3/interfaces/node.js +7 -11
  60. package/esm2015/src/render3/interfaces/view.js +17 -3
  61. package/esm2015/src/render3/node_manipulation.js +23 -3
  62. package/esm2015/src/render3/query.js +9 -7
  63. package/esm2015/src/sanitization/security.js +2 -2
  64. package/esm2015/src/type.js +2 -2
  65. package/esm2015/src/util/decorators.js +2 -2
  66. package/esm2015/src/util/lang.js +2 -2
  67. package/esm2015/src/version.js +4 -4
  68. package/esm2015/src/view/ng_module.js +5 -2
  69. package/esm2015/src/view/refs.js +1 -1
  70. package/esm2015/testing/src/async.js +2 -2
  71. package/esm2015/testing/src/async_fallback.js +2 -2
  72. package/esm2015/testing/src/component_fixture.js +2 -2
  73. package/esm2015/testing/src/test_bed.js +3 -3
  74. package/esm5/src/application_ref.js +7 -7
  75. package/esm5/src/change_detection/change_detection_util.js +7 -7
  76. package/esm5/src/change_detection/change_detector_ref.js +4 -4
  77. package/esm5/src/change_detection/constants.js +4 -4
  78. package/esm5/src/change_detection/differs/default_iterable_differ.js +18 -18
  79. package/esm5/src/change_detection/differs/default_keyvalue_differ.js +3 -3
  80. package/esm5/src/change_detection/differs/iterable_differs.js +9 -11
  81. package/esm5/src/change_detection/differs/keyvalue_differs.js +4 -4
  82. package/esm5/src/change_detection/pipe_transform.js +1 -1
  83. package/esm5/src/core_private_export.js +2 -2
  84. package/esm5/src/core_render3_private_export.js +2 -2
  85. package/esm5/src/di/defs.js +3 -6
  86. package/esm5/src/di/injectable.js +2 -2
  87. package/esm5/src/di/injection_token.js +4 -4
  88. package/esm5/src/di/injector.js +26 -11
  89. package/esm5/src/di/metadata.js +6 -6
  90. package/esm5/src/di/provider.js +1 -1
  91. package/esm5/src/di/r3_injector.js +12 -12
  92. package/esm5/src/di/reflective_errors.js +3 -3
  93. package/esm5/src/di.js +2 -2
  94. package/esm5/src/error_handler.js +4 -4
  95. package/esm5/src/event_emitter.js +4 -4
  96. package/esm5/src/linker/compiler.js +2 -2
  97. package/esm5/src/linker/component_factory.js +7 -7
  98. package/esm5/src/linker/component_factory_resolver.js +2 -2
  99. package/esm5/src/linker/element_ref.js +4 -4
  100. package/esm5/src/linker/ng_module_factory.js +4 -4
  101. package/esm5/src/linker/ng_module_factory_loader.js +4 -4
  102. package/esm5/src/linker/query_list.js +4 -4
  103. package/esm5/src/linker/template_ref.js +4 -4
  104. package/esm5/src/linker/view_container_ref.js +4 -4
  105. package/esm5/src/linker/view_ref.js +4 -4
  106. package/esm5/src/metadata/di.js +9 -9
  107. package/esm5/src/metadata/directives.js +8 -8
  108. package/esm5/src/metadata/lifecycle_hooks.js +1 -1
  109. package/esm5/src/metadata/ng_module.js +3 -3
  110. package/esm5/src/metadata/view.js +4 -4
  111. package/esm5/src/render3/assert.js +6 -1
  112. package/esm5/src/render3/component.js +2 -1
  113. package/esm5/src/render3/definition.js +1 -1
  114. package/esm5/src/render3/di.js +51 -74
  115. package/esm5/src/render3/hooks.js +6 -6
  116. package/esm5/src/render3/index.js +1 -1
  117. package/esm5/src/render3/instructions.js +123 -76
  118. package/esm5/src/render3/interfaces/definition.js +1 -1
  119. package/esm5/src/render3/interfaces/injector.js +1 -1
  120. package/esm5/src/render3/interfaces/node.js +1 -1
  121. package/esm5/src/render3/interfaces/view.js +1 -1
  122. package/esm5/src/render3/node_manipulation.js +20 -2
  123. package/esm5/src/render3/query.js +9 -7
  124. package/esm5/src/sanitization/security.js +7 -7
  125. package/esm5/src/type.js +2 -2
  126. package/esm5/src/util/decorators.js +1 -1
  127. package/esm5/src/util/lang.js +2 -2
  128. package/esm5/src/version.js +6 -6
  129. package/esm5/src/view/ng_module.js +5 -2
  130. package/esm5/src/view/refs.js +1 -1
  131. package/esm5/testing/src/async.js +2 -2
  132. package/esm5/testing/src/async_fallback.js +2 -2
  133. package/esm5/testing/src/component_fixture.js +4 -4
  134. package/esm5/testing/src/test_bed.js +5 -5
  135. package/fesm2015/core.js +468 -372
  136. package/fesm2015/core.js.map +1 -1
  137. package/fesm2015/testing.js +6 -6
  138. package/fesm2015/testing.js.map +1 -1
  139. package/fesm5/core.js +403 -321
  140. package/fesm5/core.js.map +1 -1
  141. package/fesm5/testing.js +6 -6
  142. package/fesm5/testing.js.map +1 -1
  143. package/package.json +5 -4
  144. package/src/application_ref.d.ts +5 -5
  145. package/src/change_detection/change_detection_util.d.ts +2 -2
  146. package/src/change_detection/change_detector_ref.d.ts +1 -1
  147. package/src/change_detection/constants.d.ts +1 -1
  148. package/src/change_detection/differs/default_iterable_differ.d.ts +1 -1
  149. package/src/change_detection/differs/iterable_differs.d.ts +8 -7
  150. package/src/change_detection/differs/keyvalue_differs.d.ts +5 -5
  151. package/src/change_detection/pipe_transform.d.ts +1 -1
  152. package/src/core_private_export.d.ts +1 -1
  153. package/src/core_render3_private_export.d.ts +1 -1
  154. package/src/di/defs.d.ts +29 -10
  155. package/src/di/injectable.d.ts +3 -3
  156. package/src/di/injection_token.d.ts +3 -4
  157. package/src/di/injector.d.ts +14 -11
  158. package/src/di/metadata.d.ts +20 -20
  159. package/src/di/provider.d.ts +10 -10
  160. package/src/di/r3_injector.d.ts +3 -3
  161. package/src/di/reflective_errors.d.ts +2 -2
  162. package/src/di.d.ts +1 -1
  163. package/src/error_handler.d.ts +1 -1
  164. package/src/event_emitter.d.ts +1 -1
  165. package/src/linker/compiler.d.ts +1 -1
  166. package/src/linker/component_factory.d.ts +2 -2
  167. package/src/linker/component_factory_resolver.d.ts +1 -1
  168. package/src/linker/element_ref.d.ts +2 -2
  169. package/src/linker/ng_module_factory.d.ts +1 -1
  170. package/src/linker/ng_module_factory_loader.d.ts +1 -1
  171. package/src/linker/query_list.d.ts +1 -1
  172. package/src/linker/template_ref.d.ts +1 -1
  173. package/src/linker/view_container_ref.d.ts +1 -1
  174. package/src/linker/view_ref.d.ts +1 -1
  175. package/src/metadata/di.d.ts +21 -21
  176. package/src/metadata/directives.d.ts +28 -28
  177. package/src/metadata/lifecycle_hooks.d.ts +9 -9
  178. package/src/metadata/ng_module.d.ts +5 -5
  179. package/src/metadata/view.d.ts +1 -1
  180. package/src/render3/assert.d.ts +1 -0
  181. package/src/render3/definition.d.ts +3 -3
  182. package/src/render3/di.d.ts +4 -14
  183. package/src/render3/index.d.ts +2 -1
  184. package/src/render3/instructions.d.ts +3 -3
  185. package/src/render3/interfaces/definition.d.ts +23 -4
  186. package/src/render3/interfaces/injector.d.ts +0 -2
  187. package/src/render3/interfaces/node.d.ts +7 -13
  188. package/src/render3/interfaces/view.d.ts +16 -3
  189. package/src/render3/node_manipulation.d.ts +3 -2
  190. package/src/sanitization/security.d.ts +2 -2
  191. package/src/type.d.ts +1 -1
  192. package/src/util/decorators.d.ts +1 -1
  193. package/src/version.d.ts +2 -2
  194. package/testing/src/async.d.ts +1 -1
  195. package/testing/src/async_fallback.d.ts +1 -1
  196. package/testing/src/component_fixture.d.ts +1 -1
  197. package/testing/src/test_bed.d.ts +2 -2
  198. package/testing.d.ts +1 -1
@@ -45,14 +45,14 @@ export function queueInitHooks(index, onInit, doCheck, tView) {
45
45
  export function queueLifecycleHooks(flags, currentView) {
46
46
  const /** @type {?} */ tView = currentView.tView;
47
47
  if (tView.firstTemplatePass === true) {
48
- const /** @type {?} */ start = flags >> 13 /* INDX_SHIFT */;
49
- const /** @type {?} */ size = (flags & 8190 /* SIZE_MASK */) >> 1 /* SIZE_SHIFT */;
50
- const /** @type {?} */ end = start + size;
48
+ const /** @type {?} */ start = flags >> 13 /* DirectiveStartingIndexShift */;
49
+ const /** @type {?} */ count = flags & 4095 /* DirectiveCountMask */;
50
+ const /** @type {?} */ end = start + count;
51
51
  // It's necessary to loop through the directives at elementEnd() (rather than processing in
52
52
  // directiveCreate) so we can preserve the current hook order. Content, view, and destroy
53
53
  // hooks for projected components and directives must be called *before* their hosts.
54
54
  for (let /** @type {?} */ i = start; i < end; i++) {
55
- const /** @type {?} */ def = (/** @type {?} */ (((tView.directives))[i]));
55
+ const /** @type {?} */ def = /** @type {?} */ ((tView.directives))[i];
56
56
  queueContentHooks(def, tView, i);
57
57
  queueViewHooks(def, tView, i);
58
58
  queueDestroyHooks(def, tView, i);
@@ -112,9 +112,9 @@ function queueDestroyHooks(def, tView, i) {
112
112
  * @return {?}
113
113
  */
114
114
  export function executeInitHooks(currentView, tView, creationMode) {
115
- if (currentView.lifecycleStage === 1 /* INIT */) {
115
+ if (currentView.lifecycleStage === 1 /* Init */) {
116
116
  executeHooks(/** @type {?} */ ((currentView.directives)), tView.initHooks, tView.checkHooks, creationMode);
117
- currentView.lifecycleStage = 2 /* AFTER_INIT */;
117
+ currentView.lifecycleStage = 2 /* AfterInit */;
118
118
  }
119
119
  }
120
120
  /**
@@ -146,4 +146,4 @@ export function callHooks(data, arr) {
146
146
  }
147
147
  }
148
148
 
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2hvb2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBaUJyQyxNQUFNLHlCQUNGLEtBQWEsRUFBRSxNQUEyQixFQUFFLE9BQTRCLEVBQUUsS0FBWTtJQUN4RixTQUFTO1FBQ0wsV0FBVyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsOENBQThDLENBQUMsQ0FBQztJQUMvRixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDakU7SUFFRCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ1osQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDakUsQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDcEU7Q0FDRjs7Ozs7Ozs7QUFNRCxNQUFNLDhCQUE4QixLQUFhLEVBQUUsV0FBa0I7SUFDbkUsdUJBQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDaEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQixLQUFLLElBQUksQ0FBQyxD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LDJCQUEyQixXQUFrQixFQUFFLEtBQVksRUFBRSxZQUFxQjtJQUN0RixFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsY0FBYyxpQkFBd0IsQ0FBQyxDQUFDLENBQUM7UUFDdkQsWUFBWSxvQkFBQyxXQUFXLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUN4RixXQUFXLENBQUMsY0FBYyxxQkFBNEIsQ0FBQztLQUN4RDtDQUNGOzs7Ozs7Ozs7O0FBT0QsTUFBTSx1QkFDRixJQUFXLEVBQUUsUUFBeUIsRUFBRSxVQUEyQixFQUNuRSxZQUFxQjtJQUN2Qix1QkFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUN6RCxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLFNBQVMsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7S0FDOUI7Q0FDRjs7Ozs7Ozs7O0FBU0QsTUFBTSxvQkFBb0IsSUFBVyxFQUFFLEdBQWE7SUFDbEQsR0FBRyxDQUFDLENBQUMscUJBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdkMsbUJBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQWMsRUFBQyxDQUFDLElBQUksQ0FBQyxJQUFJLG1CQUFDLEdBQUcsQ0FBQyxDQUFDLENBQVcsRUFBQyxDQUFDLENBQUM7S0FDeEQ7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHthc3NlcnRFcXVhbH0gZnJvbSAnLi9hc3NlcnQnO1xuaW1wb3J0IHtEaXJlY3RpdmVEZWZ9IGZyb20gJy4vaW50ZXJmYWNlcy9kZWZpbml0aW9uJztcbmltcG9ydCB7VE5vZGVGbGFnc30gZnJvbSAnLi9pbnRlcmZhY2VzL25vZGUnO1xuaW1wb3J0IHtIb29rRGF0YSwgTFZpZXcsIExpZmVjeWNsZVN0YWdlLCBUVmlld30gZnJvbSAnLi9pbnRlcmZhY2VzL3ZpZXcnO1xuXG4vKipcbiAqIElmIHRoaXMgaXMgdGhlIGZpcnN0IHRlbXBsYXRlIHBhc3MsIGFueSBuZ09uSW5pdCBvciBuZ0RvQ2hlY2sgaG9va3Mgd2lsbCBiZSBxdWV1ZWQgaW50b1xuICogVFZpZXcuaW5pdEhvb2tzIGR1cmluZyBkaXJlY3RpdmVDcmVhdGUuXG4gKlxuICogVGhlIGRpcmVjdGl2ZSBpbmRleCBhbmQgaG9vayB0eXBlIGFyZSBlbmNvZGVkIGludG8gb25lIG51bWJlciAoMXN0IGJpdDogdHlwZSwgcmVtYWluaW5nIGJpdHM6XG4gKiBkaXJlY3RpdmUgaW5kZXgpLCB0aGVuIHNhdmVkIGluIHRoZSBldmVuIGluZGljZXMgb2YgdGhlIGluaXRIb29rcyBhcnJheS4gVGhlIG9kZCBpbmRpY2VzXG4gKiBob2xkIHRoZSBob29rIGZ1bmN0aW9ucyB0aGVtc2VsdmVzLlxuICpcbiAqIEBwYXJhbSBpbmRleCBUaGUgaW5kZXggb2YgdGhlIGRpcmVjdGl2ZSBpbiBMVmlldy5kYXRhXG4gKiBAcGFyYW0gaG9va3MgVGhlIHN0YXRpYyBob29rcyBtYXAgb24gdGhlIGRpcmVjdGl2ZSBkZWZcbiAqIEBwYXJhbSB0VmlldyBUaGUgY3VycmVudCBUVmlld1xuICovXG5leHBvcnQgZnVuY3Rpb24gcXVldWVJbml0SG9va3MoXG4gICAgaW5kZXg6IG51bWJlciwgb25Jbml0OiAoKCkgPT4gdm9pZCkgfCBudWxsLCBkb0NoZWNrOiAoKCkgPT4gdm9pZCkgfCBudWxsLCB0VmlldzogVFZpZXcpOiB2b2lkIHtcbiAgbmdEZXZNb2RlICYmXG4gICAgICBhc3NlcnRFcXVhbCh0Vmlldy5maXJzdFRlbXBsYXRlUGFzcywgdHJ1ZSwgJ1Nob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiBmaXJzdCB0ZW1wbGF0ZSBwYXNzJyk7XG4gIGlmIChvbkluaXQpIHtcbiAgICAodFZpZXcuaW5pdEhvb2tzIHx8ICh0Vmlldy5pbml0SG9va3MgPSBbXSkpLnB1c2goaW5kZXgsIG9uSW5pdCk7XG4gIH1cblxuICBpZiAoZG9DaGVjaykge1xuICAgICh0Vmlldy5pbml0SG9va3MgfHwgKHRWaWV3LmluaXRIb29rcyA9IFtdKSkucHVzaChpbmRleCwgZG9DaGVjayk7XG4gICAgKHRWaWV3LmNoZWNrSG9va3MgfHwgKHRWaWV3LmNoZWNrSG9va3MgPSBbXSkpLnB1c2goaW5kZXgsIGRvQ2hlY2spO1xuICB9XG59XG5cbi8qKlxuICogTG9vcHMgdGhyb3VnaCB0aGUgZGlyZWN0aXZlcyBvbiBhIG5vZGUgYW5kIHF1ZXVlcyBhbGwgdGhlaXIgaG9va3MgZXhjZXB0IG5nT25Jbml0XG4gKiBhbmQgbmdEb0NoZWNrLCB3aGljaCBhcmUgcXVldWVkIHNlcGFyYXRlbHkgaW4gZGlyZWN0aXZlQ3JlYXRlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcXVldWVMaWZlY3ljbGVIb29rcyhmbGFnczogbnVtYmVyLCBjdXJyZW50VmlldzogTFZpZXcpOiB2b2lkIHtcbiAgY29uc3QgdFZpZXcgPSBjdXJyZW50Vmlldy50VmlldztcbiAgaWYgKHRWaWV3LmZpcnN0VGVtcGxhdGVQYXNzID09PSB0cnVlKSB7XG4gICAgY29uc3Qgc3RhcnQgPSBmbGFncyA+PiBUTm9kZUZsYWdzLklORFhfU0hJRlQ7XG4gICAgY29uc3Qgc2l6ZSA9IChmbGFncyAmIFROb2RlRmxhZ3MuU0laRV9NQVNLKSA+PiBUTm9kZUZsYWdzLlNJWkVfU0hJRlQ7XG4gICAgY29uc3QgZW5kID0gc3RhcnQgKyBzaXplO1xuXG4gICAgLy8gSXQncyBuZWNlc3NhcnkgdG8gbG9vcCB0aHJvdWdoIHRoZSBkaXJlY3RpdmVzIGF0IGVsZW1lbnRFbmQoKSAocmF0aGVyIHRoYW4gcHJvY2Vzc2luZyBpblxuICAgIC8vIGRpcmVjdGl2ZUNyZWF0ZSkgc28gd2UgY2FuIHByZXNlcnZlIHRoZSBjdXJyZW50IGhvb2sgb3JkZXIuIENvbnRlbnQsIHZpZXcsIGFuZCBkZXN0cm95XG4gICAgLy8gaG9va3MgZm9yIHByb2plY3RlZCBjb21wb25lbnRzIGFuZCBkaXJlY3RpdmVzIG11c3QgYmUgY2FsbGVkICpiZWZvcmUqIHRoZWlyIGhvc3RzLlxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBjb25zdCBkZWYgPSAodFZpZXcuZGlyZWN0aXZlcyAhW2ldIGFzIERpcmVjdGl2ZURlZjxhbnk+KTtcbiAgICAgIHF1ZXVlQ29udGVudEhvb2tzKGRlZiwgdFZpZXcsIGkpO1xuICAgICAgcXVldWVWaWV3SG9va3MoZGVmLCB0VmlldywgaSk7XG4gICAgICBxdWV1ZURlc3Ryb3lIb29rcyhkZWYsIHRWaWV3LCBpKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqIFF1ZXVlcyBhZnRlckNvbnRlbnRJbml0IGFuZCBhZnRlckNvbnRlbnRDaGVja2VkIGhvb2tzIG9uIFRWaWV3ICovXG5mdW5jdGlvbiBxdWV1ZUNvbnRlbnRIb29rcyhkZWY6IERpcmVjdGl2ZURlZjxhbnk+LCB0VmlldzogVFZpZXcsIGk6IG51bWJlcik6IHZvaWQge1xuICBpZiAoZGVmLmFmdGVyQ29udGVudEluaXQpIHtcbiAgICAodFZpZXcuY29udGVudEhvb2tzIHx8ICh0Vmlldy5jb250ZW50SG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLmFmdGVyQ29udGVudEluaXQpO1xuICB9XG5cbiAgaWYgKGRlZi5hZnRlckNvbnRlbnRDaGVja2VkKSB7XG4gICAgKHRWaWV3LmNvbnRlbnRIb29rcyB8fCAodFZpZXcuY29udGVudEhvb2tzID0gW10pKS5wdXNoKGksIGRlZi5hZnRlckNvbnRlbnRDaGVja2VkKTtcbiAgICAodFZpZXcuY29udGVudENoZWNrSG9va3MgfHwgKHRWaWV3LmNvbnRlbnRDaGVja0hvb2tzID0gW10pKS5wdXNoKGksIGRlZi5hZnRlckNvbnRlbnRDaGVja2VkKTtcbiAgfVxufVxuXG4vKiogUXVldWVzIGFmdGVyVmlld0luaXQgYW5kIGFmdGVyVmlld0NoZWNrZWQgaG9va3Mgb24gVFZpZXcgKi9cbmZ1bmN0aW9uIHF1ZXVlVmlld0hvb2tzKGRlZjogRGlyZWN0aXZlRGVmPGFueT4sIHRWaWV3OiBUVmlldywgaTogbnVtYmVyKTogdm9pZCB7XG4gIGlmIChkZWYuYWZ0ZXJWaWV3SW5pdCkge1xuICAgICh0Vmlldy52aWV3SG9va3MgfHwgKHRWaWV3LnZpZXdIb29rcyA9IFtdKSkucHVzaChpLCBkZWYuYWZ0ZXJWaWV3SW5pdCk7XG4gIH1cblxuICBpZiAoZGVmLmFmdGVyVmlld0NoZWNrZWQpIHtcbiAgICAodFZpZXcudmlld0hvb2tzIHx8ICh0Vmlldy52aWV3SG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLmFmdGVyVmlld0NoZWNrZWQpO1xuICAgICh0Vmlldy52aWV3Q2hlY2tIb29rcyB8fCAodFZpZXcudmlld0NoZWNrSG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLmFmdGVyVmlld0NoZWNrZWQpO1xuICB9XG59XG5cbi8qKiBRdWV1ZXMgb25EZXN0cm95IGhvb2tzIG9uIFRWaWV3ICovXG5mdW5jdGlvbiBxdWV1ZURlc3Ryb3lIb29rcyhkZWY6IERpcmVjdGl2ZURlZjxhbnk+LCB0VmlldzogVFZpZXcsIGk6IG51bWJlcik6IHZvaWQge1xuICBpZiAoZGVmLm9uRGVzdHJveSAhPSBudWxsKSB7XG4gICAgKHRWaWV3LmRlc3Ryb3lIb29rcyB8fCAodFZpZXcuZGVzdHJveUhvb2tzID0gW10pKS5wdXNoKGksIGRlZi5vbkRlc3Ryb3kpO1xuICB9XG59XG5cbi8qKlxuICogQ2FsbHMgb25Jbml0IGFuZCBkb0NoZWNrIGNhbGxzIGlmIHRoZXkgaGF2ZW4ndCBhbHJlYWR5IGJlZW4gY2FsbGVkLlxuICpcbiAqIEBwYXJhbSBjdXJyZW50VmlldyBUaGUgY3VycmVudCB2aWV3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleGVjdXRlSW5pdEhvb2tzKGN1cnJlbnRWaWV3OiBMVmlldywgdFZpZXc6IFRWaWV3LCBjcmVhdGlvbk1vZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgaWYgKGN1cnJlbnRWaWV3LmxpZmVjeWNsZVN0YWdlID09PSBMaWZlY3ljbGVTdGFnZS5JTklUKSB7XG4gICAgZXhlY3V0ZUhvb2tzKGN1cnJlbnRWaWV3LmRpcmVjdGl2ZXMgISwgdFZpZXcuaW5pdEhvb2tzLCB0Vmlldy5jaGVja0hvb2tzLCBjcmVhdGlvbk1vZGUpO1xuICAgIGN1cnJlbnRWaWV3LmxpZmVjeWNsZVN0YWdlID0gTGlmZWN5Y2xlU3RhZ2UuQUZURVJfSU5JVDtcbiAgfVxufVxuXG4vKipcbiAqIEl0ZXJhdGVzIG92ZXIgYWZ0ZXJWaWV3SW5pdCBhbmQgYWZ0ZXJWaWV3Q2hlY2tlZCBmdW5jdGlvbnMgYW5kIGNhbGxzIHRoZW0uXG4gKlxuICogQHBhcmFtIGN1cnJlbnRWaWV3IFRoZSBjdXJyZW50IHZpZXdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4ZWN1dGVIb29rcyhcbiAgICBkYXRhOiBhbnlbXSwgYWxsSG9va3M6IEhvb2tEYXRhIHwgbnVsbCwgY2hlY2tIb29rczogSG9va0RhdGEgfCBudWxsLFxuICAgIGNyZWF0aW9uTW9kZTogYm9vbGVhbik6IHZvaWQge1xuICBjb25zdCBob29rc1RvQ2FsbCA9IGNyZWF0aW9uTW9kZSA/IGFsbEhvb2tzIDogY2hlY2tIb29rcztcbiAgaWYgKGhvb2tzVG9DYWxsKSB7XG4gICAgY2FsbEhvb2tzKGRhdGEsIGhvb2tzVG9DYWxsKTtcbiAgfVxufVxuXG4vKipcbiAqIENhbGxzIGxpZmVjeWNsZSBob29rcyB3aXRoIHRoZWlyIGNvbnRleHRzLCBza2lwcGluZyBpbml0IGhvb2tzIGlmIGl0J3Mgbm90XG4gKiBjcmVhdGlvbiBtb2RlLlxuICpcbiAqIEBwYXJhbSBjdXJyZW50VmlldyBUaGUgY3VycmVudCB2aWV3XG4gKiBAcGFyYW0gYXJyIFRoZSBhcnJheSBpbiB3aGljaCB0aGUgaG9va3MgYXJlIGZvdW5kXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxsSG9va3MoZGF0YTogYW55W10sIGFycjogSG9va0RhdGEpOiB2b2lkIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAoYXJyW2kgKyAxXSBhcygpID0+IHZvaWQpLmNhbGwoZGF0YVthcnJbaV0gYXMgbnVtYmVyXSk7XG4gIH1cbn1cbiJdfQ==
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2hvb2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBaUJyQyxNQUFNLHlCQUNGLEtBQWEsRUFBRSxNQUEyQixFQUFFLE9BQTRCLEVBQUUsS0FBWTtJQUN4RixTQUFTO1FBQ0wsV0FBVyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsOENBQThDLENBQUMsQ0FBQztJQUMvRixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDakU7SUFFRCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ1osQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDakUsQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDcEU7Q0FDRjs7Ozs7Ozs7QUFNRCxNQUFNLDhCQUE4QixLQUFhLEVBQUUsV0FBa0I7SUFDbkUsdUJBQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDaEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQixLQUFLLElBQUksQ0FBQyxD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WSxFQUFFLFlBQXFCO0lBQ3RGLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxjQUFjLGlCQUF3QixDQUFDLENBQUMsQ0FBQztRQUN2RCxZQUFZLG9CQUFDLFdBQVcsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ3hGLFdBQVcsQ0FBQyxjQUFjLG9CQUEyQixDQUFDO0tBQ3ZEO0NBQ0Y7Ozs7Ozs7Ozs7QUFPRCxNQUFNLHVCQUNGLElBQVcsRUFBRSxRQUF5QixFQUFFLFVBQTJCLEVBQ25FLFlBQXFCO0lBQ3ZCLHVCQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ3pELEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDaEIsU0FBUyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztLQUM5QjtDQUNGOzs7Ozs7Ozs7QUFTRCxNQUFNLG9CQUFvQixJQUFXLEVBQUUsR0FBYTtJQUNsRCxHQUFHLENBQUMsQ0FBQyxxQkFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN2QyxtQkFBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBYyxFQUFDLENBQUMsSUFBSSxDQUFDLElBQUksbUJBQUMsR0FBRyxDQUFDLENBQUMsQ0FBVyxFQUFDLENBQUMsQ0FBQztLQUN4RDtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2Fzc2VydEVxdWFsfSBmcm9tICcuL2Fzc2VydCc7XG5pbXBvcnQge0RpcmVjdGl2ZURlZn0gZnJvbSAnLi9pbnRlcmZhY2VzL2RlZmluaXRpb24nO1xuaW1wb3J0IHtUTm9kZUZsYWdzfSBmcm9tICcuL2ludGVyZmFjZXMvbm9kZSc7XG5pbXBvcnQge0hvb2tEYXRhLCBMVmlldywgTGlmZWN5Y2xlU3RhZ2UsIFRWaWV3fSBmcm9tICcuL2ludGVyZmFjZXMvdmlldyc7XG5cbi8qKlxuICogSWYgdGhpcyBpcyB0aGUgZmlyc3QgdGVtcGxhdGUgcGFzcywgYW55IG5nT25Jbml0IG9yIG5nRG9DaGVjayBob29rcyB3aWxsIGJlIHF1ZXVlZCBpbnRvXG4gKiBUVmlldy5pbml0SG9va3MgZHVyaW5nIGRpcmVjdGl2ZUNyZWF0ZS5cbiAqXG4gKiBUaGUgZGlyZWN0aXZlIGluZGV4IGFuZCBob29rIHR5cGUgYXJlIGVuY29kZWQgaW50byBvbmUgbnVtYmVyICgxc3QgYml0OiB0eXBlLCByZW1haW5pbmcgYml0czpcbiAqIGRpcmVjdGl2ZSBpbmRleCksIHRoZW4gc2F2ZWQgaW4gdGhlIGV2ZW4gaW5kaWNlcyBvZiB0aGUgaW5pdEhvb2tzIGFycmF5LiBUaGUgb2RkIGluZGljZXNcbiAqIGhvbGQgdGhlIGhvb2sgZnVuY3Rpb25zIHRoZW1zZWx2ZXMuXG4gKlxuICogQHBhcmFtIGluZGV4IFRoZSBpbmRleCBvZiB0aGUgZGlyZWN0aXZlIGluIExWaWV3LmRhdGFcbiAqIEBwYXJhbSBob29rcyBUaGUgc3RhdGljIGhvb2tzIG1hcCBvbiB0aGUgZGlyZWN0aXZlIGRlZlxuICogQHBhcmFtIHRWaWV3IFRoZSBjdXJyZW50IFRWaWV3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBxdWV1ZUluaXRIb29rcyhcbiAgICBpbmRleDogbnVtYmVyLCBvbkluaXQ6ICgoKSA9PiB2b2lkKSB8IG51bGwsIGRvQ2hlY2s6ICgoKSA9PiB2b2lkKSB8IG51bGwsIHRWaWV3OiBUVmlldyk6IHZvaWQge1xuICBuZ0Rldk1vZGUgJiZcbiAgICAgIGFzc2VydEVxdWFsKHRWaWV3LmZpcnN0VGVtcGxhdGVQYXNzLCB0cnVlLCAnU2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uIGZpcnN0IHRlbXBsYXRlIHBhc3MnKTtcbiAgaWYgKG9uSW5pdCkge1xuICAgICh0Vmlldy5pbml0SG9va3MgfHwgKHRWaWV3LmluaXRIb29rcyA9IFtdKSkucHVzaChpbmRleCwgb25Jbml0KTtcbiAgfVxuXG4gIGlmIChkb0NoZWNrKSB7XG4gICAgKHRWaWV3LmluaXRIb29rcyB8fCAodFZpZXcuaW5pdEhvb2tzID0gW10pKS5wdXNoKGluZGV4LCBkb0NoZWNrKTtcbiAgICAodFZpZXcuY2hlY2tIb29rcyB8fCAodFZpZXcuY2hlY2tIb29rcyA9IFtdKSkucHVzaChpbmRleCwgZG9DaGVjayk7XG4gIH1cbn1cblxuLyoqXG4gKiBMb29wcyB0aHJvdWdoIHRoZSBkaXJlY3RpdmVzIG9uIGEgbm9kZSBhbmQgcXVldWVzIGFsbCB0aGVpciBob29rcyBleGNlcHQgbmdPbkluaXRcbiAqIGFuZCBuZ0RvQ2hlY2ssIHdoaWNoIGFyZSBxdWV1ZWQgc2VwYXJhdGVseSBpbiBkaXJlY3RpdmVDcmVhdGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBxdWV1ZUxpZmVjeWNsZUhvb2tzKGZsYWdzOiBudW1iZXIsIGN1cnJlbnRWaWV3OiBMVmlldyk6IHZvaWQge1xuICBjb25zdCB0VmlldyA9IGN1cnJlbnRWaWV3LnRWaWV3O1xuICBpZiAodFZpZXcuZmlyc3RUZW1wbGF0ZVBhc3MgPT09IHRydWUpIHtcbiAgICBjb25zdCBzdGFydCA9IGZsYWdzID4+IFROb2RlRmxhZ3MuRGlyZWN0aXZlU3RhcnRpbmdJbmRleFNoaWZ0O1xuICAgIGNvbnN0IGNvdW50ID0gZmxhZ3MgJiBUTm9kZUZsYWdzLkRpcmVjdGl2ZUNvdW50TWFzaztcbiAgICBjb25zdCBlbmQgPSBzdGFydCArIGNvdW50O1xuXG4gICAgLy8gSXQncyBuZWNlc3NhcnkgdG8gbG9vcCB0aHJvdWdoIHRoZSBkaXJlY3RpdmVzIGF0IGVsZW1lbnRFbmQoKSAocmF0aGVyIHRoYW4gcHJvY2Vzc2luZyBpblxuICAgIC8vIGRpcmVjdGl2ZUNyZWF0ZSkgc28gd2UgY2FuIHByZXNlcnZlIHRoZSBjdXJyZW50IGhvb2sgb3JkZXIuIENvbnRlbnQsIHZpZXcsIGFuZCBkZXN0cm95XG4gICAgLy8gaG9va3MgZm9yIHByb2plY3RlZCBjb21wb25lbnRzIGFuZCBkaXJlY3RpdmVzIG11c3QgYmUgY2FsbGVkICpiZWZvcmUqIHRoZWlyIGhvc3RzLlxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBjb25zdCBkZWY6IERpcmVjdGl2ZURlZjxhbnk+ID0gdFZpZXcuZGlyZWN0aXZlcyAhW2ldO1xuICAgICAgcXVldWVDb250ZW50SG9va3MoZGVmLCB0VmlldywgaSk7XG4gICAgICBxdWV1ZVZpZXdIb29rcyhkZWYsIHRWaWV3LCBpKTtcbiAgICAgIHF1ZXVlRGVzdHJveUhvb2tzKGRlZiwgdFZpZXcsIGkpO1xuICAgIH1cbiAgfVxufVxuXG4vKiogUXVldWVzIGFmdGVyQ29udGVudEluaXQgYW5kIGFmdGVyQ29udGVudENoZWNrZWQgaG9va3Mgb24gVFZpZXcgKi9cbmZ1bmN0aW9uIHF1ZXVlQ29udGVudEhvb2tzKGRlZjogRGlyZWN0aXZlRGVmPGFueT4sIHRWaWV3OiBUVmlldywgaTogbnVtYmVyKTogdm9pZCB7XG4gIGlmIChkZWYuYWZ0ZXJDb250ZW50SW5pdCkge1xuICAgICh0Vmlldy5jb250ZW50SG9va3MgfHwgKHRWaWV3LmNvbnRlbnRIb29rcyA9IFtdKSkucHVzaChpLCBkZWYuYWZ0ZXJDb250ZW50SW5pdCk7XG4gIH1cblxuICBpZiAoZGVmLmFmdGVyQ29udGVudENoZWNrZWQpIHtcbiAgICAodFZpZXcuY29udGVudEhvb2tzIHx8ICh0Vmlldy5jb250ZW50SG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLmFmdGVyQ29udGVudENoZWNrZWQpO1xuICAgICh0Vmlldy5jb250ZW50Q2hlY2tIb29rcyB8fCAodFZpZXcuY29udGVudENoZWNrSG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLmFmdGVyQ29udGVudENoZWNrZWQpO1xuICB9XG59XG5cbi8qKiBRdWV1ZXMgYWZ0ZXJWaWV3SW5pdCBhbmQgYWZ0ZXJWaWV3Q2hlY2tlZCBob29rcyBvbiBUVmlldyAqL1xuZnVuY3Rpb24gcXVldWVWaWV3SG9va3MoZGVmOiBEaXJlY3RpdmVEZWY8YW55PiwgdFZpZXc6IFRWaWV3LCBpOiBudW1iZXIpOiB2b2lkIHtcbiAgaWYgKGRlZi5hZnRlclZpZXdJbml0KSB7XG4gICAgKHRWaWV3LnZpZXdIb29rcyB8fCAodFZpZXcudmlld0hvb2tzID0gW10pKS5wdXNoKGksIGRlZi5hZnRlclZpZXdJbml0KTtcbiAgfVxuXG4gIGlmIChkZWYuYWZ0ZXJWaWV3Q2hlY2tlZCkge1xuICAgICh0Vmlldy52aWV3SG9va3MgfHwgKHRWaWV3LnZpZXdIb29rcyA9IFtdKSkucHVzaChpLCBkZWYuYWZ0ZXJWaWV3Q2hlY2tlZCk7XG4gICAgKHRWaWV3LnZpZXdDaGVja0hvb2tzIHx8ICh0Vmlldy52aWV3Q2hlY2tIb29rcyA9IFtdKSkucHVzaChpLCBkZWYuYWZ0ZXJWaWV3Q2hlY2tlZCk7XG4gIH1cbn1cblxuLyoqIFF1ZXVlcyBvbkRlc3Ryb3kgaG9va3Mgb24gVFZpZXcgKi9cbmZ1bmN0aW9uIHF1ZXVlRGVzdHJveUhvb2tzKGRlZjogRGlyZWN0aXZlRGVmPGFueT4sIHRWaWV3OiBUVmlldywgaTogbnVtYmVyKTogdm9pZCB7XG4gIGlmIChkZWYub25EZXN0cm95ICE9IG51bGwpIHtcbiAgICAodFZpZXcuZGVzdHJveUhvb2tzIHx8ICh0Vmlldy5kZXN0cm95SG9va3MgPSBbXSkpLnB1c2goaSwgZGVmLm9uRGVzdHJveSk7XG4gIH1cbn1cblxuLyoqXG4gKiBDYWxscyBvbkluaXQgYW5kIGRvQ2hlY2sgY2FsbHMgaWYgdGhleSBoYXZlbid0IGFscmVhZHkgYmVlbiBjYWxsZWQuXG4gKlxuICogQHBhcmFtIGN1cnJlbnRWaWV3IFRoZSBjdXJyZW50IHZpZXdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4ZWN1dGVJbml0SG9va3MoY3VycmVudFZpZXc6IExWaWV3LCB0VmlldzogVFZpZXcsIGNyZWF0aW9uTW9kZTogYm9vbGVhbik6IHZvaWQge1xuICBpZiAoY3VycmVudFZpZXcubGlmZWN5Y2xlU3RhZ2UgPT09IExpZmVjeWNsZVN0YWdlLkluaXQpIHtcbiAgICBleGVjdXRlSG9va3MoY3VycmVudFZpZXcuZGlyZWN0aXZlcyAhLCB0Vmlldy5pbml0SG9va3MsIHRWaWV3LmNoZWNrSG9va3MsIGNyZWF0aW9uTW9kZSk7XG4gICAgY3VycmVudFZpZXcubGlmZWN5Y2xlU3RhZ2UgPSBMaWZlY3ljbGVTdGFnZS5BZnRlckluaXQ7XG4gIH1cbn1cblxuLyoqXG4gKiBJdGVyYXRlcyBvdmVyIGFmdGVyVmlld0luaXQgYW5kIGFmdGVyVmlld0NoZWNrZWQgZnVuY3Rpb25zIGFuZCBjYWxscyB0aGVtLlxuICpcbiAqIEBwYXJhbSBjdXJyZW50VmlldyBUaGUgY3VycmVudCB2aWV3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleGVjdXRlSG9va3MoXG4gICAgZGF0YTogYW55W10sIGFsbEhvb2tzOiBIb29rRGF0YSB8IG51bGwsIGNoZWNrSG9va3M6IEhvb2tEYXRhIHwgbnVsbCxcbiAgICBjcmVhdGlvbk1vZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgY29uc3QgaG9va3NUb0NhbGwgPSBjcmVhdGlvbk1vZGUgPyBhbGxIb29rcyA6IGNoZWNrSG9va3M7XG4gIGlmIChob29rc1RvQ2FsbCkge1xuICAgIGNhbGxIb29rcyhkYXRhLCBob29rc1RvQ2FsbCk7XG4gIH1cbn1cblxuLyoqXG4gKiBDYWxscyBsaWZlY3ljbGUgaG9va3Mgd2l0aCB0aGVpciBjb250ZXh0cywgc2tpcHBpbmcgaW5pdCBob29rcyBpZiBpdCdzIG5vdFxuICogY3JlYXRpb24gbW9kZS5cbiAqXG4gKiBAcGFyYW0gY3VycmVudFZpZXcgVGhlIGN1cnJlbnQgdmlld1xuICogQHBhcmFtIGFyciBUaGUgYXJyYXkgaW4gd2hpY2ggdGhlIGhvb2tzIGFyZSBmb3VuZFxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsbEhvb2tzKGRhdGE6IGFueVtdLCBhcnI6IEhvb2tEYXRhKTogdm9pZCB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgKGFycltpICsgMV0gYXMoKSA9PiB2b2lkKS5jYWxsKGRhdGFbYXJyW2ldIGFzIG51bWJlcl0pO1xuICB9XG59XG4iXX0=
@@ -18,4 +18,4 @@ export { QueryList, query as Q, queryRefresh as qR, } from './query';
18
18
  export { pureFunction0 as f0, pureFunction1 as f1, pureFunction2 as f2, pureFunction3 as f3, pureFunction4 as f4, pureFunction5 as f5, pureFunction6 as f6, pureFunction7 as f7, pureFunction8 as f8, pureFunctionV as fV, } from './pure_function';
19
19
  export { NgOnChangesFeature, PublicFeature, LifecycleHooksFeature, defineComponent, defineDirective, definePipe, createComponentRef, getHostElement, getRenderedText, renderComponent, whenRendered, };
20
20
 
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUN0SSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBSTdHLE9BQU8sRUFBYyx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBYzFQLE9BQU8sRUFFTCxTQUFTLElBQUksRUFBRSxFQUVmLElBQUksSUFBSSxDQUFDLEVBQ1QsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFFcEIsU0FBUyxJQUFJLENBQUMsRUFDZCxxQkFBcUIsSUFBSSxFQUFFLEVBQzNCLG1CQUFtQixJQUFJLEVBQUUsRUFFekIsZ0JBQWdCLElBQUksQ0FBQyxFQUNyQixZQUFZLElBQUksQ0FBQyxFQUNqQixpQkFBaUIsSUFBSSxFQUFFLEVBQ3ZCLFVBQVUsSUFBSSxDQUFDLEVBQ2YsZUFBZSxJQUFJLENBQUMsRUFDcEIsWUFBWSxJQUFJLENBQUMsRUFDakIsWUFBWSxJQUFJLENBQUMsRUFDakIsaUJBQWlCLElBQUksRUFBRSxFQUV2QixRQUFRLElBQUksQ0FBQyxFQUNiLEtBQUssSUFBSSxFQUFFLEVBQ1gsSUFBSSxJQUFJLEVBQUUsRUFDVixhQUFhLElBQUksQ0FBQyxFQUVsQixVQUFVLElBQUksQ0FBQyxFQUNmLGFBQWEsSUFBSSxFQUFFLEVBRW5CLElBQUksSUFBSSxDQUFDLEVBQ1QsV0FBVyxJQUFJLENBQUMsRUFFaEIsaUJBQWlCLElBQUksQ0FBQyxFQUN0QixlQUFlLElBQUksQ0FBQyxFQUNwQixhQUFhLEVBQ2IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxJQUFJLElBQUksRUFBRSxFQUNWLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEdBQ2pCLE1BQU0sUUFBUSxDQUFDO0FBRWhCLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxJQUFJLENBQUMsRUFDVixZQUFZLElBQUksRUFBRSxHQUNuQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQ0wsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsR0FDcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUt6QixPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLGFBQWEsRUFFYixxQkFBcUIsRUFDckIsZUFBZSxFQUNmLGVBQWUsRUFDZixVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLGNBQWMsRUFDZCxlQUFlLEVBQ2YsZUFBZSxFQUNmLFlBQVksR0FDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0xpZmVjeWNsZUhvb2tzRmVhdHVyZSwgY3JlYXRlQ29tcG9uZW50UmVmLCBnZXRIb3N0RWxlbWVudCwgZ2V0UmVuZGVyZWRUZXh0LCByZW5kZXJDb21wb25lbnQsIHdoZW5SZW5kZXJlZH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHtOZ09uQ2hhbmdlc0ZlYXR1cmUsIFB1YmxpY0ZlYXR1cmUsIGRlZmluZUNvbXBvbmVudCwgZGVmaW5lRGlyZWN0aXZlLCBkZWZpbmVQaXBlfSBmcm9tICcuL2RlZmluaXRpb24nO1xuaW1wb3J0IHtJbmplY3RGbGFnc30gZnJvbSAnLi9kaSc7XG5pbXBvcnQge0NvbXBvbmVudERlZiwgQ29tcG9uZW50VGVtcGxhdGUsIENvbXBvbmVudFR5cGUsIERpcmVjdGl2ZURlZiwgRGlyZWN0aXZlRGVmRmxhZ3MsIERpcmVjdGl2ZVR5cGUsIFBpcGVEZWZ9IGZyb20gJy4vaW50ZXJmYWNlcy9kZWZpbml0aW9uJztcblxuZXhwb3J0IHtJbmplY3RGbGFncywgUVVFUllfUkVBRF9DT05UQUlORVJfUkVGLCBRVUVSWV9SRUFEX0VMRU1FTlRfUkVGLCBRVUVSWV9SRUFEX0ZST01fTk9ERSwgUVVFUllfUkVBRF9URU1QTEFURV9SRUYsIGRpcmVjdGl2ZUluamVjdCwgaW5qZWN0QXR0cmlidXRlLCBpbmplY3RDaGFuZ2VEZXRlY3RvclJlZiwgaW5qZWN0RWxlbWVudFJlZiwgaW5qZWN0VGVtcGxhdGVSZWYsIGluamVjdFZpZXdDb250YWluZXJSZWZ9IGZyb20gJy4vZGknO1xuZXhwb3J0IHtDc3NTZWxlY3Rvckxpc3R9IGZyb20gJy4vaW50ZXJmYWNlcy9wcm9qZWN0aW9uJztcblxuXG5cbi8vIE5hbWluZyBzY2hlbWU6XG4vLyAtIENhcGl0YWwgbGV0dGVycyBhcmUgZm9yIGNyZWF0aW5nIHRoaW5nczogVChUZXh0KSwgRShFbGVtZW50KSwgRChEaXJlY3RpdmUpLCBWKFZpZXcpLFxuLy8gQyhDb250YWluZXIpLCBMKExpc3RlbmVyKVxuLy8gLSBsb3dlciBjYXNlIGxldHRlcnMgYXJlIGZvciBiaW5kaW5nOiBiKGJpbmQpXG4vLyAtIGxvd2VyIGNhc2UgbGV0dGVycyBhcmUgZm9yIGJpbmRpbmcgdGFyZ2V0OiBwKHByb3BlcnR5KSwgYShhdHRyaWJ1dGUpLCBrKGNsYXNzKSwgcyhzdHlsZSksXG4vLyBpKGlucHV0KVxuLy8gLSBsb3dlciBjYXNlIGxldHRlcnMgZm9yIGd1YXJkaW5nIGxpZmUgY3ljbGUgaG9va3M6IGwobGlmZUN5Y2xlKVxuLy8gLSBsb3dlciBjYXNlIGZvciBjbG9zaW5nOiBjKGNvbnRhaW5lckVuZCksIGUoZWxlbWVudEVuZCksIHYodmlld0VuZClcbi8vIGNsYW5nLWZvcm1hdCBvZmZcbmV4cG9ydCB7XG5cbiAgTk9fQ0hBTkdFIGFzIE5DLFxuXG4gIGJpbmQgYXMgYixcbiAgaW50ZXJwb2xhdGlvbjEgYXMgaTEsXG4gIGludGVycG9sYXRpb24yIGFzIGkyLFxuICBpbnRlcnBvbGF0aW9uMyBhcyBpMyxcbiAgaW50ZXJwb2xhdGlvbjQgYXMgaTQsXG4gIGludGVycG9sYXRpb241IGFzIGk1LFxuICBpbnRlcnBvbGF0aW9uNiBhcyBpNixcbiAgaW50ZXJwb2xhdGlvbjcgYXMgaTcsXG4gIGludGVycG9sYXRpb244IGFzIGk4LFxuICBpbnRlcnBvbGF0aW9uViBhcyBpVixcblxuICBjb250YWluZXIgYXMgQyxcbiAgY29udGFpbmVyUmVmcmVzaFN0YXJ0IGFzIGNSLFxuICBjb250YWluZXJSZWZyZXNoRW5kIGFzIGNyLFxuXG4gIGVsZW1lbnRBdHRyaWJ1dGUgYXMgYSxcbiAgZWxlbWVudENsYXNzIGFzIGssXG4gIGVsZW1lbnRDbGFzc05hbWVkIGFzIGtuLFxuICBlbGVtZW50RW5kIGFzIGUsXG4gIGVsZW1lbnRQcm9wZXJ0eSBhcyBwLFxuICBlbGVtZW50U3RhcnQgYXMgRSxcbiAgZWxlbWVudFN0eWxlIGFzIHMsXG4gIGVsZW1lbnRTdHlsZU5hbWVkIGFzIHNuLFxuXG4gIGxpc3RlbmVyIGFzIEwsXG4gIHN0b3JlIGFzIHN0LFxuICBsb2FkIGFzIGxkLFxuICBsb2FkRGlyZWN0aXZlIGFzIGQsXG5cbiAgcHJvamVjdGlvbiBhcyBQLFxuICBwcm9qZWN0aW9uRGVmIGFzIHBELFxuXG4gIHRleHQgYXMgVCxcbiAgdGV4dEJpbmRpbmcgYXMgdCxcblxuICBlbWJlZGRlZFZpZXdTdGFydCBhcyBWLFxuICBlbWJlZGRlZFZpZXdFbmQgYXMgdixcbiAgZGV0ZWN0Q2hhbmdlcyxcbiAgbWFya0RpcnR5LFxuICB0aWNrLFxufSBmcm9tICcuL2luc3RydWN0aW9ucyc7XG5cbmV4cG9ydCB7XG4gIHBpcGUgYXMgUHAsXG4gIHBpcGVCaW5kMSBhcyBwYjEsXG4gIHBpcGVCaW5kMiBhcyBwYjIsXG4gIHBpcGVCaW5kMyBhcyBwYjMsXG4gIHBpcGVCaW5kNCBhcyBwYjQsXG4gIHBpcGVCaW5kViBhcyBwYlYsXG59IGZyb20gJy4vcGlwZSc7XG5cbmV4cG9ydCB7XG4gIFF1ZXJ5TGlzdCxcblxuICBxdWVyeSBhcyBRLFxuICBxdWVyeVJlZnJlc2ggYXMgcVIsXG59IGZyb20gJy4vcXVlcnknO1xuZXhwb3J0IHtcbiAgcHVyZUZ1bmN0aW9uMCBhcyBmMCxcbiAgcHVyZUZ1bmN0aW9uMSBhcyBmMSxcbiAgcHVyZUZ1bmN0aW9uMiBhcyBmMixcbiAgcHVyZUZ1bmN0aW9uMyBhcyBmMyxcbiAgcHVyZUZ1bmN0aW9uNCBhcyBmNCxcbiAgcHVyZUZ1bmN0aW9uNSBhcyBmNSxcbiAgcHVyZUZ1bmN0aW9uNiBhcyBmNixcbiAgcHVyZUZ1bmN0aW9uNyBhcyBmNyxcbiAgcHVyZUZ1bmN0aW9uOCBhcyBmOCxcbiAgcHVyZUZ1bmN0aW9uViBhcyBmVixcbn0gZnJvbSAnLi9wdXJlX2Z1bmN0aW9uJztcblxuXG4vLyBjbGFuZy1mb3JtYXQgb25cblxuZXhwb3J0IHtcbiAgQ29tcG9uZW50RGVmLFxuICBDb21wb25lbnRUZW1wbGF0ZSxcbiAgQ29tcG9uZW50VHlwZSxcbiAgRGlyZWN0aXZlRGVmLFxuICBEaXJlY3RpdmVEZWZGbGFncyxcbiAgRGlyZWN0aXZlVHlwZSxcbiAgTmdPbkNoYW5nZXNGZWF0dXJlLFxuICBQdWJsaWNGZWF0dXJlLFxuICBQaXBlRGVmLFxuICBMaWZlY3ljbGVIb29rc0ZlYXR1cmUsXG4gIGRlZmluZUNvbXBvbmVudCxcbiAgZGVmaW5lRGlyZWN0aXZlLFxuICBkZWZpbmVQaXBlLFxuICBjcmVhdGVDb21wb25lbnRSZWYsXG4gIGdldEhvc3RFbGVtZW50LFxuICBnZXRSZW5kZXJlZFRleHQsXG4gIHJlbmRlckNvbXBvbmVudCxcbiAgd2hlblJlbmRlcmVkLFxufTtcbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUN0SSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRzdHLE9BQU8sRUFBQyx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBZTdPLE9BQU8sRUFFTCxTQUFTLElBQUksRUFBRSxFQUVmLElBQUksSUFBSSxDQUFDLEVBQ1QsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFDcEIsY0FBYyxJQUFJLEVBQUUsRUFFcEIsU0FBUyxJQUFJLENBQUMsRUFDZCxxQkFBcUIsSUFBSSxFQUFFLEVBQzNCLG1CQUFtQixJQUFJLEVBQUUsRUFFekIsZ0JBQWdCLElBQUksQ0FBQyxFQUNyQixZQUFZLElBQUksQ0FBQyxFQUNqQixpQkFBaUIsSUFBSSxFQUFFLEVBQ3ZCLFVBQVUsSUFBSSxDQUFDLEVBQ2YsZUFBZSxJQUFJLENBQUMsRUFDcEIsWUFBWSxJQUFJLENBQUMsRUFDakIsWUFBWSxJQUFJLENBQUMsRUFDakIsaUJBQWlCLElBQUksRUFBRSxFQUV2QixRQUFRLElBQUksQ0FBQyxFQUNiLEtBQUssSUFBSSxFQUFFLEVBQ1gsSUFBSSxJQUFJLEVBQUUsRUFDVixhQUFhLElBQUksQ0FBQyxFQUVsQixVQUFVLElBQUksQ0FBQyxFQUNmLGFBQWEsSUFBSSxFQUFFLEVBRW5CLElBQUksSUFBSSxDQUFDLEVBQ1QsV0FBVyxJQUFJLENBQUMsRUFFaEIsaUJBQWlCLElBQUksQ0FBQyxFQUN0QixlQUFlLElBQUksQ0FBQyxFQUNwQixhQUFhLEVBQ2IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxJQUFJLElBQUksRUFBRSxFQUNWLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEVBQ2hCLFNBQVMsSUFBSSxHQUFHLEdBQ2pCLE1BQU0sUUFBUSxDQUFDO0FBRWhCLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxJQUFJLENBQUMsRUFDVixZQUFZLElBQUksRUFBRSxHQUNuQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQ0wsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsRUFDbkIsYUFBYSxJQUFJLEVBQUUsR0FDcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUt6QixPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLGFBQWEsRUFFYixxQkFBcUIsRUFDckIsZUFBZSxFQUNmLGVBQWUsRUFDZixVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLGNBQWMsRUFDZCxlQUFlLEVBQ2YsZUFBZSxFQUNmLFlBQVksR0FDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0xpZmVjeWNsZUhvb2tzRmVhdHVyZSwgY3JlYXRlQ29tcG9uZW50UmVmLCBnZXRIb3N0RWxlbWVudCwgZ2V0UmVuZGVyZWRUZXh0LCByZW5kZXJDb21wb25lbnQsIHdoZW5SZW5kZXJlZH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHtOZ09uQ2hhbmdlc0ZlYXR1cmUsIFB1YmxpY0ZlYXR1cmUsIGRlZmluZUNvbXBvbmVudCwgZGVmaW5lRGlyZWN0aXZlLCBkZWZpbmVQaXBlfSBmcm9tICcuL2RlZmluaXRpb24nO1xuaW1wb3J0IHtDb21wb25lbnREZWYsIENvbXBvbmVudFRlbXBsYXRlLCBDb21wb25lbnRUeXBlLCBEaXJlY3RpdmVEZWYsIERpcmVjdGl2ZURlZkZsYWdzLCBEaXJlY3RpdmVUeXBlLCBQaXBlRGVmfSBmcm9tICcuL2ludGVyZmFjZXMvZGVmaW5pdGlvbic7XG5cbmV4cG9ydCB7UVVFUllfUkVBRF9DT05UQUlORVJfUkVGLCBRVUVSWV9SRUFEX0VMRU1FTlRfUkVGLCBRVUVSWV9SRUFEX0ZST01fTk9ERSwgUVVFUllfUkVBRF9URU1QTEFURV9SRUYsIGRpcmVjdGl2ZUluamVjdCwgaW5qZWN0QXR0cmlidXRlLCBpbmplY3RDaGFuZ2VEZXRlY3RvclJlZiwgaW5qZWN0RWxlbWVudFJlZiwgaW5qZWN0VGVtcGxhdGVSZWYsIGluamVjdFZpZXdDb250YWluZXJSZWZ9IGZyb20gJy4vZGknO1xuZXhwb3J0IHtSZW5kZXJGbGFnc30gZnJvbSAnLi9pbnRlcmZhY2VzL2RlZmluaXRpb24nO1xuZXhwb3J0IHtDc3NTZWxlY3Rvckxpc3R9IGZyb20gJy4vaW50ZXJmYWNlcy9wcm9qZWN0aW9uJztcblxuXG5cbi8vIE5hbWluZyBzY2hlbWU6XG4vLyAtIENhcGl0YWwgbGV0dGVycyBhcmUgZm9yIGNyZWF0aW5nIHRoaW5nczogVChUZXh0KSwgRShFbGVtZW50KSwgRChEaXJlY3RpdmUpLCBWKFZpZXcpLFxuLy8gQyhDb250YWluZXIpLCBMKExpc3RlbmVyKVxuLy8gLSBsb3dlciBjYXNlIGxldHRlcnMgYXJlIGZvciBiaW5kaW5nOiBiKGJpbmQpXG4vLyAtIGxvd2VyIGNhc2UgbGV0dGVycyBhcmUgZm9yIGJpbmRpbmcgdGFyZ2V0OiBwKHByb3BlcnR5KSwgYShhdHRyaWJ1dGUpLCBrKGNsYXNzKSwgcyhzdHlsZSksXG4vLyBpKGlucHV0KVxuLy8gLSBsb3dlciBjYXNlIGxldHRlcnMgZm9yIGd1YXJkaW5nIGxpZmUgY3ljbGUgaG9va3M6IGwobGlmZUN5Y2xlKVxuLy8gLSBsb3dlciBjYXNlIGZvciBjbG9zaW5nOiBjKGNvbnRhaW5lckVuZCksIGUoZWxlbWVudEVuZCksIHYodmlld0VuZClcbi8vIGNsYW5nLWZvcm1hdCBvZmZcbmV4cG9ydCB7XG5cbiAgTk9fQ0hBTkdFIGFzIE5DLFxuXG4gIGJpbmQgYXMgYixcbiAgaW50ZXJwb2xhdGlvbjEgYXMgaTEsXG4gIGludGVycG9sYXRpb24yIGFzIGkyLFxuICBpbnRlcnBvbGF0aW9uMyBhcyBpMyxcbiAgaW50ZXJwb2xhdGlvbjQgYXMgaTQsXG4gIGludGVycG9sYXRpb241IGFzIGk1LFxuICBpbnRlcnBvbGF0aW9uNiBhcyBpNixcbiAgaW50ZXJwb2xhdGlvbjcgYXMgaTcsXG4gIGludGVycG9sYXRpb244IGFzIGk4LFxuICBpbnRlcnBvbGF0aW9uViBhcyBpVixcblxuICBjb250YWluZXIgYXMgQyxcbiAgY29udGFpbmVyUmVmcmVzaFN0YXJ0IGFzIGNSLFxuICBjb250YWluZXJSZWZyZXNoRW5kIGFzIGNyLFxuXG4gIGVsZW1lbnRBdHRyaWJ1dGUgYXMgYSxcbiAgZWxlbWVudENsYXNzIGFzIGssXG4gIGVsZW1lbnRDbGFzc05hbWVkIGFzIGtuLFxuICBlbGVtZW50RW5kIGFzIGUsXG4gIGVsZW1lbnRQcm9wZXJ0eSBhcyBwLFxuICBlbGVtZW50U3RhcnQgYXMgRSxcbiAgZWxlbWVudFN0eWxlIGFzIHMsXG4gIGVsZW1lbnRTdHlsZU5hbWVkIGFzIHNuLFxuXG4gIGxpc3RlbmVyIGFzIEwsXG4gIHN0b3JlIGFzIHN0LFxuICBsb2FkIGFzIGxkLFxuICBsb2FkRGlyZWN0aXZlIGFzIGQsXG5cbiAgcHJvamVjdGlvbiBhcyBQLFxuICBwcm9qZWN0aW9uRGVmIGFzIHBELFxuXG4gIHRleHQgYXMgVCxcbiAgdGV4dEJpbmRpbmcgYXMgdCxcblxuICBlbWJlZGRlZFZpZXdTdGFydCBhcyBWLFxuICBlbWJlZGRlZFZpZXdFbmQgYXMgdixcbiAgZGV0ZWN0Q2hhbmdlcyxcbiAgbWFya0RpcnR5LFxuICB0aWNrLFxufSBmcm9tICcuL2luc3RydWN0aW9ucyc7XG5cbmV4cG9ydCB7XG4gIHBpcGUgYXMgUHAsXG4gIHBpcGVCaW5kMSBhcyBwYjEsXG4gIHBpcGVCaW5kMiBhcyBwYjIsXG4gIHBpcGVCaW5kMyBhcyBwYjMsXG4gIHBpcGVCaW5kNCBhcyBwYjQsXG4gIHBpcGVCaW5kViBhcyBwYlYsXG59IGZyb20gJy4vcGlwZSc7XG5cbmV4cG9ydCB7XG4gIFF1ZXJ5TGlzdCxcblxuICBxdWVyeSBhcyBRLFxuICBxdWVyeVJlZnJlc2ggYXMgcVIsXG59IGZyb20gJy4vcXVlcnknO1xuZXhwb3J0IHtcbiAgcHVyZUZ1bmN0aW9uMCBhcyBmMCxcbiAgcHVyZUZ1bmN0aW9uMSBhcyBmMSxcbiAgcHVyZUZ1bmN0aW9uMiBhcyBmMixcbiAgcHVyZUZ1bmN0aW9uMyBhcyBmMyxcbiAgcHVyZUZ1bmN0aW9uNCBhcyBmNCxcbiAgcHVyZUZ1bmN0aW9uNSBhcyBmNSxcbiAgcHVyZUZ1bmN0aW9uNiBhcyBmNixcbiAgcHVyZUZ1bmN0aW9uNyBhcyBmNyxcbiAgcHVyZUZ1bmN0aW9uOCBhcyBmOCxcbiAgcHVyZUZ1bmN0aW9uViBhcyBmVixcbn0gZnJvbSAnLi9wdXJlX2Z1bmN0aW9uJztcblxuXG4vLyBjbGFuZy1mb3JtYXQgb25cblxuZXhwb3J0IHtcbiAgQ29tcG9uZW50RGVmLFxuICBDb21wb25lbnRUZW1wbGF0ZSxcbiAgQ29tcG9uZW50VHlwZSxcbiAgRGlyZWN0aXZlRGVmLFxuICBEaXJlY3RpdmVEZWZGbGFncyxcbiAgRGlyZWN0aXZlVHlwZSxcbiAgTmdPbkNoYW5nZXNGZWF0dXJlLFxuICBQdWJsaWNGZWF0dXJlLFxuICBQaXBlRGVmLFxuICBMaWZlY3ljbGVIb29rc0ZlYXR1cmUsXG4gIGRlZmluZUNvbXBvbmVudCxcbiAgZGVmaW5lRGlyZWN0aXZlLFxuICBkZWZpbmVQaXBlLFxuICBjcmVhdGVDb21wb25lbnRSZWYsXG4gIGdldEhvc3RFbGVtZW50LFxuICBnZXRSZW5kZXJlZFRleHQsXG4gIHJlbmRlckNvbXBvbmVudCxcbiAgd2hlblJlbmRlcmVkLFxufTtcbiJdfQ==