@smartbit4all/ng-client 4.2.66 → 4.2.67

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 (424) hide show
  1. package/README.md +386 -386
  2. package/esm2022/lib/component-factory-service/component-factory-service.module.mjs +1 -1
  3. package/esm2022/lib/component-factory-service/component-factory-service.service.mjs +1 -1
  4. package/esm2022/lib/component-factory-service/projects.mjs +1 -1
  5. package/esm2022/lib/session/api/api/api.mjs +1 -1
  6. package/esm2022/lib/session/api/api/session.service.mjs +1 -1
  7. package/esm2022/lib/session/api/configuration.mjs +1 -1
  8. package/esm2022/lib/session/api/encoder.mjs +1 -1
  9. package/esm2022/lib/session/api/index.mjs +1 -1
  10. package/esm2022/lib/session/api/model/accountInfo.mjs +1 -1
  11. package/esm2022/lib/session/api/model/apiError.mjs +1 -1
  12. package/esm2022/lib/session/api/model/authenticationProviderData.mjs +1 -1
  13. package/esm2022/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
  14. package/esm2022/lib/session/api/model/models.mjs +1 -1
  15. package/esm2022/lib/session/api/model/refreshSessionRequest.mjs +1 -1
  16. package/esm2022/lib/session/api/model/session.mjs +1 -1
  17. package/esm2022/lib/session/api/model/sessionInfoData.mjs +1 -1
  18. package/esm2022/lib/session/api/model/userActivityLog.mjs +1 -1
  19. package/esm2022/lib/session/api/param.mjs +1 -1
  20. package/esm2022/lib/session/api/variables.mjs +1 -1
  21. package/esm2022/lib/session/cookie-service/smart-cookie.service.mjs +1 -1
  22. package/esm2022/lib/session/projects.mjs +1 -1
  23. package/esm2022/lib/session/smart-error-catching.interceptor.mjs +1 -1
  24. package/esm2022/lib/session/smart-header-maintainer.interceptor.mjs +1 -1
  25. package/esm2022/lib/session/smart-session-handler.service.mjs +1 -1
  26. package/esm2022/lib/session/smart-session.module.mjs +1 -1
  27. package/esm2022/lib/session/smart-session.service.mjs +1 -1
  28. package/esm2022/lib/session/smart-timer/smart-session-timer.component.mjs +3 -3
  29. package/esm2022/lib/session/smart-timer/smart-session-timer.service.mjs +1 -1
  30. package/esm2022/lib/shared/projects.mjs +1 -1
  31. package/esm2022/lib/shared/shared.module.mjs +1 -1
  32. package/esm2022/lib/shared/smart-tooltip.directive.mjs +1 -1
  33. package/esm2022/lib/shared/smarttable.date-pipe.mjs +1 -1
  34. package/esm2022/lib/smart-client/projects.mjs +1 -1
  35. package/esm2022/lib/smart-client/smart-authentication.service.mjs +1 -1
  36. package/esm2022/lib/smart-client/smart-component-api-client.mjs +1 -1
  37. package/esm2022/lib/smart-client/smart-file-uploader/smart-file-uploader.component.mjs +3 -3
  38. package/esm2022/lib/smart-client/smart.component.mjs +1 -1
  39. package/esm2022/lib/smart-client/smart.service.mjs +1 -1
  40. package/esm2022/lib/smart-component-layout/api/api/api.mjs +1 -1
  41. package/esm2022/lib/smart-component-layout/api/api/default.service.mjs +1 -1
  42. package/esm2022/lib/smart-component-layout/api/api.module.mjs +1 -1
  43. package/esm2022/lib/smart-component-layout/api/configuration.mjs +1 -1
  44. package/esm2022/lib/smart-component-layout/api/encoder.mjs +1 -1
  45. package/esm2022/lib/smart-component-layout/api/index.mjs +1 -1
  46. package/esm2022/lib/smart-component-layout/api/model/componentType.mjs +1 -1
  47. package/esm2022/lib/smart-component-layout/api/model/componentWidgetType.mjs +1 -1
  48. package/esm2022/lib/smart-component-layout/api/model/layoutDirection.mjs +1 -1
  49. package/esm2022/lib/smart-component-layout/api/model/models.mjs +1 -1
  50. package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
  51. package/esm2022/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +1 -1
  52. package/esm2022/lib/smart-component-layout/api/param.mjs +1 -1
  53. package/esm2022/lib/smart-component-layout/api/variables.mjs +1 -1
  54. package/esm2022/lib/smart-component-layout/projects.mjs +1 -1
  55. package/esm2022/lib/smart-component-layout/smart-component-layout-utility.mjs +1 -1
  56. package/esm2022/lib/smart-component-layout/smart-component-layout.component.mjs +3 -3
  57. package/esm2022/lib/smart-component-layout/smart-component-layout.module.mjs +1 -1
  58. package/esm2022/lib/smart-dialog/projects.mjs +1 -1
  59. package/esm2022/lib/smart-dialog/smartdialog.component.mjs +3 -3
  60. package/esm2022/lib/smart-dialog/smartdialog.model.mjs +1 -1
  61. package/esm2022/lib/smart-dialog/smartdialog.module.mjs +1 -1
  62. package/esm2022/lib/smart-dialog/smartdialog.service.mjs +1 -1
  63. package/esm2022/lib/smart-expandable-section/expandable-section.component.mjs +3 -3
  64. package/esm2022/lib/smart-expandable-section/expandable-section.model.mjs +1 -1
  65. package/esm2022/lib/smart-expandable-section/projects.mjs +1 -1
  66. package/esm2022/lib/smart-expandable-section/smart-expandable-section.module.mjs +1 -1
  67. package/esm2022/lib/smart-expandable-section/smart-expandable-section.service.mjs +1 -1
  68. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.mjs +1 -1
  69. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderField.mjs +1 -1
  70. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.mjs +1 -1
  71. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.mjs +1 -1
  72. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionData.mjs +1 -1
  73. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionDataType.mjs +1 -1
  74. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionField.mjs +1 -1
  75. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldList.mjs +1 -1
  76. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.mjs +1 -1
  77. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionList.mjs +1 -1
  78. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperandData.mjs +1 -1
  79. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperation.mjs +1 -1
  80. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOrderBy.mjs +1 -1
  81. package/esm2022/lib/smart-filter/api/filter/model/model.mjs +1 -1
  82. package/esm2022/lib/smart-filter/api/filter/model/searchIndexObjectDefinitionData.mjs +1 -1
  83. package/esm2022/lib/smart-filter/api/filter/model/searchIndexPropertyDefinitionData.mjs +1 -1
  84. package/esm2022/lib/smart-filter/api/value/model/value.mjs +1 -1
  85. package/esm2022/lib/smart-filter/projects.mjs +1 -1
  86. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-expression-field/smart-filter-expression-field.component.mjs +1 -1
  87. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/components/smart-filter-simple-field/smart-filter-simple-field.component.mjs +3 -3
  88. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/smart-filter-simple.component.mjs +3 -3
  89. package/esm2022/lib/smart-filter/smart-filter/smart-filter.component.mjs +3 -3
  90. package/esm2022/lib/smart-filter/smart-filter/smart-filter.service.mjs +1 -1
  91. package/esm2022/lib/smart-filter/smart-filter.model.mjs +1 -1
  92. package/esm2022/lib/smart-filter/smart-filter.module.mjs +1 -1
  93. package/esm2022/lib/smart-filter-editor/api/api/filter.service.mjs +1 -1
  94. package/esm2022/lib/smart-filter-editor/api/configuration.mjs +1 -1
  95. package/esm2022/lib/smart-filter-editor/api/encoder.mjs +1 -1
  96. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +1 -1
  97. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +1 -1
  98. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +1 -1
  99. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +1 -1
  100. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +1 -1
  101. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +1 -1
  102. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionData.mjs +1 -1
  103. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +1 -1
  104. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionField.mjs +1 -1
  105. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +1 -1
  106. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +1 -1
  107. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +1 -1
  108. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionList.mjs +1 -1
  109. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +1 -1
  110. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +1 -1
  111. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOrderBy.mjs +1 -1
  112. package/esm2022/lib/smart-filter-editor/api/model/smartFilterType.mjs +1 -1
  113. package/esm2022/lib/smart-filter-editor/api/param.mjs +1 -1
  114. package/esm2022/lib/smart-filter-editor/api/variables.mjs +1 -1
  115. package/esm2022/lib/smart-filter-editor/filterExpressionBuilderApiActions.mjs +1 -1
  116. package/esm2022/lib/smart-filter-editor/project.mjs +1 -1
  117. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-item/smart-filter-expression-item.component.mjs +3 -3
  118. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-items/smart-filter-expression-items.component.mjs +3 -3
  119. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/smart-filter-editor-content.component.mjs +3 -3
  120. package/esm2022/lib/smart-filter-editor/smart-filter-editor.model.mjs +1 -1
  121. package/esm2022/lib/smart-filter-editor/smart-filter-editor.module.mjs +1 -1
  122. package/esm2022/lib/smart-filter-editor/smart-filter-editor.service.mjs +1 -1
  123. package/esm2022/lib/smart-filter-editor/smart-filter-params/components/smart-filter-param/smart-filter-param.component.mjs +3 -3
  124. package/esm2022/lib/smart-filter-editor/smart-filter-params/smart-filter-params.component.mjs +3 -3
  125. package/esm2022/lib/smart-form/api/api/api.mjs +1 -1
  126. package/esm2022/lib/smart-form/api/api/default.service.mjs +1 -1
  127. package/esm2022/lib/smart-form/api/api.module.mjs +1 -1
  128. package/esm2022/lib/smart-form/api/configuration.mjs +1 -1
  129. package/esm2022/lib/smart-form/api/encoder.mjs +1 -1
  130. package/esm2022/lib/smart-form/api/index.mjs +1 -1
  131. package/esm2022/lib/smart-form/api/model/models.mjs +1 -1
  132. package/esm2022/lib/smart-form/api/model/propertyMapping.mjs +1 -1
  133. package/esm2022/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
  134. package/esm2022/lib/smart-form/api/model/smartFormInputMode.mjs +1 -1
  135. package/esm2022/lib/smart-form/api/model/smartFormWidgetDirection.mjs +1 -1
  136. package/esm2022/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
  137. package/esm2022/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
  138. package/esm2022/lib/smart-form/api/model/smartMatrixModel.mjs +1 -1
  139. package/esm2022/lib/smart-form/api/model/smartWidgetDefinition.mjs +1 -1
  140. package/esm2022/lib/smart-form/api/model/smartWidgetHint.mjs +1 -1
  141. package/esm2022/lib/smart-form/api/model/sortDefinition.mjs +1 -1
  142. package/esm2022/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
  143. package/esm2022/lib/smart-form/api/param.mjs +1 -1
  144. package/esm2022/lib/smart-form/api/variables.mjs +1 -1
  145. package/esm2022/lib/smart-form/highlightMacthingString-pipe.mjs +1 -1
  146. package/esm2022/lib/smart-form/projects.mjs +1 -1
  147. package/esm2022/lib/smart-form/services/smartform.layout-definition.service.mjs +1 -1
  148. package/esm2022/lib/smart-form/services/smartform.service.mjs +1 -1
  149. package/esm2022/lib/smart-form/smartfileuploader/large-file-snack-bar/large-file-snack-bar.component.mjs +3 -3
  150. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.component.mjs +3 -3
  151. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.model.mjs +1 -1
  152. package/esm2022/lib/smart-form/smartform.component.mjs +3 -3
  153. package/esm2022/lib/smart-form/smartform.form-model.mjs +1 -1
  154. package/esm2022/lib/smart-form/smartform.model.mjs +1 -1
  155. package/esm2022/lib/smart-form/widgets/components/smart-month-picker/smart-month-picker.component.mjs +3 -3
  156. package/esm2022/lib/smart-form/widgets/directives/comparable-dropdown.directive.mjs +1 -1
  157. package/esm2022/lib/smart-form/widgets/directives/comparable-multiselect.directive.mjs +1 -1
  158. package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +3 -3
  159. package/esm2022/lib/smart-form/widgets/smartformwidget/sortable-widget/sortable-widget.component.mjs +3 -3
  160. package/esm2022/lib/smart-form/widgets/smartformwidget/trackCaps.directive.mjs +1 -1
  161. package/esm2022/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
  162. package/esm2022/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
  163. package/esm2022/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
  164. package/esm2022/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
  165. package/esm2022/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
  166. package/esm2022/lib/smart-grid/api/grid-api/index.mjs +1 -1
  167. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
  168. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
  169. package/esm2022/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
  170. package/esm2022/lib/smart-grid/api/grid-api/model/gridExportDescriptor.mjs +1 -1
  171. package/esm2022/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
  172. package/esm2022/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
  173. package/esm2022/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
  174. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +1 -1
  175. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
  176. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
  177. package/esm2022/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
  178. package/esm2022/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
  179. package/esm2022/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
  180. package/esm2022/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +1 -1
  181. package/esm2022/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
  182. package/esm2022/lib/smart-grid/api/grid-api/param.mjs +1 -1
  183. package/esm2022/lib/smart-grid/api/grid-api/variables.mjs +1 -1
  184. package/esm2022/lib/smart-grid/components/expandable-grid/expandable-grid.component.mjs +3 -3
  185. package/esm2022/lib/smart-grid/components/smart-grid-card/smart-grid-card.component.mjs +3 -3
  186. package/esm2022/lib/smart-grid/components/table-layout-definer/table-layout-definer.component.mjs +3 -3
  187. package/esm2022/lib/smart-grid/models/model.mjs +1 -1
  188. package/esm2022/lib/smart-grid/projects.mjs +1 -1
  189. package/esm2022/lib/smart-grid/smart-grid-toolbar-util.mjs +1 -1
  190. package/esm2022/lib/smart-grid/smart-grid.component.mjs +3 -3
  191. package/esm2022/lib/smart-grid/smart-grid.module.mjs +1 -1
  192. package/esm2022/lib/smart-grid/smart-grid.service.mjs +1 -1
  193. package/esm2022/lib/smart-icon/projects.mjs +1 -1
  194. package/esm2022/lib/smart-icon/smart-icon/smart-icon.component.mjs +3 -3
  195. package/esm2022/lib/smart-icon/smart-icon.module.mjs +1 -1
  196. package/esm2022/lib/smart-icon/smart-icon.service.mjs +1 -1
  197. package/esm2022/lib/smart-map/abstract-map.mjs +1 -1
  198. package/esm2022/lib/smart-map/api/api/api.mjs +1 -1
  199. package/esm2022/lib/smart-map/api/api/geoMap.service.mjs +1 -1
  200. package/esm2022/lib/smart-map/api/api.module.mjs +1 -1
  201. package/esm2022/lib/smart-map/api/configuration.mjs +1 -1
  202. package/esm2022/lib/smart-map/api/encoder.mjs +1 -1
  203. package/esm2022/lib/smart-map/api/index.mjs +1 -1
  204. package/esm2022/lib/smart-map/api/model/gPSPosition.mjs +1 -1
  205. package/esm2022/lib/smart-map/api/model/gPSRoute.mjs +1 -1
  206. package/esm2022/lib/smart-map/api/model/geoMapChange.mjs +1 -1
  207. package/esm2022/lib/smart-map/api/model/geoMapDataLoadingMode.mjs +1 -1
  208. package/esm2022/lib/smart-map/api/model/geoMapDataSourceDescriptor.mjs +1 -1
  209. package/esm2022/lib/smart-map/api/model/geoMapDataSourceType.mjs +1 -1
  210. package/esm2022/lib/smart-map/api/model/geoMapEditingSession.mjs +1 -1
  211. package/esm2022/lib/smart-map/api/model/geoMapInteraction.mjs +1 -1
  212. package/esm2022/lib/smart-map/api/model/geoMapItem.mjs +1 -1
  213. package/esm2022/lib/smart-map/api/model/geoMapItemKind.mjs +1 -1
  214. package/esm2022/lib/smart-map/api/model/geoMapLayer.mjs +1 -1
  215. package/esm2022/lib/smart-map/api/model/geoMapLayerChange.mjs +1 -1
  216. package/esm2022/lib/smart-map/api/model/geoMapLayerDescriptor.mjs +1 -1
  217. package/esm2022/lib/smart-map/api/model/geoMapModel.mjs +1 -1
  218. package/esm2022/lib/smart-map/api/model/geoMapOperationMode.mjs +1 -1
  219. package/esm2022/lib/smart-map/api/model/geoMapSelectionMode.mjs +1 -1
  220. package/esm2022/lib/smart-map/api/model/geoMapServerModel.mjs +1 -1
  221. package/esm2022/lib/smart-map/api/model/geoMapTextType.mjs +1 -1
  222. package/esm2022/lib/smart-map/api/model/geoMapViewState.mjs +1 -1
  223. package/esm2022/lib/smart-map/api/model/geoMapViewport.mjs +1 -1
  224. package/esm2022/lib/smart-map/api/model/models.mjs +1 -1
  225. package/esm2022/lib/smart-map/api/param.mjs +1 -1
  226. package/esm2022/lib/smart-map/api/variables.mjs +1 -1
  227. package/esm2022/lib/smart-map/api-default/api-default.mjs +1 -1
  228. package/esm2022/lib/smart-map/impl/google-map.mjs +1 -1
  229. package/esm2022/lib/smart-map/impl/leaflet-map.mjs +1 -1
  230. package/esm2022/lib/smart-map/projects.mjs +1 -1
  231. package/esm2022/lib/smart-map/smart-map.component.mjs +3 -3
  232. package/esm2022/lib/smart-map/smart-map.module.mjs +1 -1
  233. package/esm2022/lib/smart-map/smart-map.types.mjs +1 -1
  234. package/esm2022/lib/smart-navbar/projects.mjs +1 -1
  235. package/esm2022/lib/smart-navbar/smart-navbar.component.mjs +3 -3
  236. package/esm2022/lib/smart-navbar/smart-navbar.model.mjs +1 -1
  237. package/esm2022/lib/smart-navbar/smart-navbar.module.mjs +1 -1
  238. package/esm2022/lib/smart-navbar/smart-navbar.service.mjs +1 -1
  239. package/esm2022/lib/smart-navigation/projects.mjs +1 -1
  240. package/esm2022/lib/smart-navigation/smart-navigation.interface.mjs +1 -1
  241. package/esm2022/lib/smart-navigation/smart-navigation.module.mjs +1 -1
  242. package/esm2022/lib/smart-navigation/smart-navigation.service.mjs +1 -1
  243. package/esm2022/lib/smart-ng-client.module.mjs +1 -1
  244. package/esm2022/lib/smart-ng-client.service.mjs +1 -1
  245. package/esm2022/lib/smart-subject/projects.mjs +1 -1
  246. package/esm2022/lib/smart-subject/smart-subject.mjs +1 -1
  247. package/esm2022/lib/smart-tab-group/projects.mjs +1 -1
  248. package/esm2022/lib/smart-tab-group/smart-tab-group.component.mjs +3 -3
  249. package/esm2022/lib/smart-tab-group/smart-tab-group.module.mjs +1 -1
  250. package/esm2022/lib/smart-tab-group/smart-tab-group.service.mjs +1 -1
  251. package/esm2022/lib/smart-tab-group/tab-content/tab-content.component.mjs +3 -3
  252. package/esm2022/lib/smart-tab-group/tab-group-simplified/tab-group.component.mjs +3 -3
  253. package/esm2022/lib/smart-tab-group/tabTile.model.mjs +1 -1
  254. package/esm2022/lib/smart-table/components/default-actions-popup/default-actions-popup.component.mjs +3 -3
  255. package/esm2022/lib/smart-table/components/loading/loading.component.mjs +3 -3
  256. package/esm2022/lib/smart-table/directives/mat-context-menu-trigger-for.directive.mjs +1 -1
  257. package/esm2022/lib/smart-table/projects.mjs +1 -1
  258. package/esm2022/lib/smart-table/smarttable.component.mjs +3 -3
  259. package/esm2022/lib/smart-table/smarttable.model.mjs +1 -1
  260. package/esm2022/lib/smart-table/smarttable.module.mjs +1 -1
  261. package/esm2022/lib/smart-table/smarttable.service.mjs +1 -1
  262. package/esm2022/lib/smart-table/tables/material-table/material-table.component.mjs +3 -3
  263. package/esm2022/lib/smart-table/tables/mobile-table/mobile-table.component.mjs +3 -3
  264. package/esm2022/lib/smart-table/tables/table.mjs +1 -1
  265. package/esm2022/lib/smart-tree/projects.mjs +1 -1
  266. package/esm2022/lib/smart-tree/smarttree-generic.service.mjs +1 -1
  267. package/esm2022/lib/smart-tree/smarttree.component.mjs +3 -3
  268. package/esm2022/lib/smart-tree/smarttree.model.mjs +1 -1
  269. package/esm2022/lib/smart-tree/smarttree.module.mjs +1 -1
  270. package/esm2022/lib/smart-tree/smarttree.node.model.mjs +1 -1
  271. package/esm2022/lib/smart-tree/smarttree.service.interface.mjs +1 -1
  272. package/esm2022/lib/smart-tree/smarttree.service.mjs +1 -1
  273. package/esm2022/lib/smart-tree/tree-api/api/tree.service.mjs +1 -1
  274. package/esm2022/lib/smart-tree/tree-api/configuration.mjs +1 -1
  275. package/esm2022/lib/smart-tree/tree-api/encoder.mjs +1 -1
  276. package/esm2022/lib/smart-tree/tree-api/param.mjs +1 -1
  277. package/esm2022/lib/smart-tree/tree-api/variables.mjs +1 -1
  278. package/esm2022/lib/smart-validation/named-validator.service.mjs +1 -1
  279. package/esm2022/lib/smart-validation/projects.mjs +1 -1
  280. package/esm2022/lib/smart-validation/smart-validation.module.mjs +1 -1
  281. package/esm2022/lib/smart-validation/smart-validation.types.mjs +1 -1
  282. package/esm2022/lib/view-context/api/api/api.mjs +1 -1
  283. package/esm2022/lib/view-context/api/api/view.service.mjs +1 -1
  284. package/esm2022/lib/view-context/api/api-default/binaryData.mjs +1 -1
  285. package/esm2022/lib/view-context/api/api-default/invocationError.mjs +1 -1
  286. package/esm2022/lib/view-context/api/api-default/invocationRequest.mjs +1 -1
  287. package/esm2022/lib/view-context/api/api.module.mjs +1 -1
  288. package/esm2022/lib/view-context/api/configuration.mjs +1 -1
  289. package/esm2022/lib/view-context/api/encoder.mjs +1 -1
  290. package/esm2022/lib/view-context/api/index.mjs +1 -1
  291. package/esm2022/lib/view-context/api/model/badgeDescriptor.mjs +1 -1
  292. package/esm2022/lib/view-context/api/model/clipboardData.mjs +1 -1
  293. package/esm2022/lib/view-context/api/model/closeResult.mjs +1 -1
  294. package/esm2022/lib/view-context/api/model/componentConstraint.mjs +1 -1
  295. package/esm2022/lib/view-context/api/model/componentModel.mjs +1 -1
  296. package/esm2022/lib/view-context/api/model/componentModelChange.mjs +1 -1
  297. package/esm2022/lib/view-context/api/model/dataChange.mjs +1 -1
  298. package/esm2022/lib/view-context/api/model/dataChangeEvent.mjs +1 -1
  299. package/esm2022/lib/view-context/api/model/dataChangeKind.mjs +1 -1
  300. package/esm2022/lib/view-context/api/model/deviceInfo.mjs +1 -1
  301. package/esm2022/lib/view-context/api/model/downloadedFile.mjs +1 -1
  302. package/esm2022/lib/view-context/api/model/iconPosition.mjs +1 -1
  303. package/esm2022/lib/view-context/api/model/imageResource.mjs +1 -1
  304. package/esm2022/lib/view-context/api/model/link.mjs +1 -1
  305. package/esm2022/lib/view-context/api/model/messageData.mjs +1 -1
  306. package/esm2022/lib/view-context/api/model/messageOption.mjs +1 -1
  307. package/esm2022/lib/view-context/api/model/messageOptionType.mjs +1 -1
  308. package/esm2022/lib/view-context/api/model/messageResult.mjs +1 -1
  309. package/esm2022/lib/view-context/api/model/messageTextType.mjs +1 -1
  310. package/esm2022/lib/view-context/api/model/messageType.mjs +1 -1
  311. package/esm2022/lib/view-context/api/model/models.mjs +1 -1
  312. package/esm2022/lib/view-context/api/model/namedValidator.mjs +1 -1
  313. package/esm2022/lib/view-context/api/model/openPendingData.mjs +1 -1
  314. package/esm2022/lib/view-context/api/model/serverRequestExecutionStat.mjs +1 -1
  315. package/esm2022/lib/view-context/api/model/serverRequestTrack.mjs +1 -1
  316. package/esm2022/lib/view-context/api/model/serverRequestType.mjs +1 -1
  317. package/esm2022/lib/view-context/api/model/smartLinkData.mjs +1 -1
  318. package/esm2022/lib/view-context/api/model/smartLinkMigrationStatus.mjs +1 -1
  319. package/esm2022/lib/view-context/api/model/statisticRecord.mjs +1 -1
  320. package/esm2022/lib/view-context/api/model/style.mjs +1 -1
  321. package/esm2022/lib/view-context/api/model/uiAction.mjs +1 -1
  322. package/esm2022/lib/view-context/api/model/uiActionButtonDescriptor.mjs +1 -1
  323. package/esm2022/lib/view-context/api/model/uiActionButtonType.mjs +1 -1
  324. package/esm2022/lib/view-context/api/model/uiActionConstraint.mjs +1 -1
  325. package/esm2022/lib/view-context/api/model/uiActionDescriptor.mjs +1 -1
  326. package/esm2022/lib/view-context/api/model/uiActionDialogDescriptor.mjs +1 -1
  327. package/esm2022/lib/view-context/api/model/uiActionFeedbackType.mjs +1 -1
  328. package/esm2022/lib/view-context/api/model/uiActionInputType.mjs +1 -1
  329. package/esm2022/lib/view-context/api/model/uiActionRequest.mjs +1 -1
  330. package/esm2022/lib/view-context/api/model/uiActionTooltip.mjs +1 -1
  331. package/esm2022/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
  332. package/esm2022/lib/view-context/api/model/uploadWidgetType.mjs +1 -1
  333. package/esm2022/lib/view-context/api/model/uploadedFile.mjs +1 -1
  334. package/esm2022/lib/view-context/api/model/valueSet.mjs +1 -1
  335. package/esm2022/lib/view-context/api/model/view.mjs +1 -1
  336. package/esm2022/lib/view-context/api/model/viewApiError.mjs +1 -1
  337. package/esm2022/lib/view-context/api/model/viewConstraint.mjs +1 -1
  338. package/esm2022/lib/view-context/api/model/viewContext.mjs +1 -1
  339. package/esm2022/lib/view-context/api/model/viewContextChange.mjs +1 -1
  340. package/esm2022/lib/view-context/api/model/viewContextData.mjs +1 -1
  341. package/esm2022/lib/view-context/api/model/viewContextUpdate.mjs +1 -1
  342. package/esm2022/lib/view-context/api/model/viewData.mjs +1 -1
  343. package/esm2022/lib/view-context/api/model/viewEventHandler.mjs +1 -1
  344. package/esm2022/lib/view-context/api/model/viewPlaceholder.mjs +1 -1
  345. package/esm2022/lib/view-context/api/model/viewState.mjs +1 -1
  346. package/esm2022/lib/view-context/api/model/viewStateUpdate.mjs +1 -1
  347. package/esm2022/lib/view-context/api/model/viewType.mjs +1 -1
  348. package/esm2022/lib/view-context/api/param.mjs +1 -1
  349. package/esm2022/lib/view-context/api/variables.mjs +1 -1
  350. package/esm2022/lib/view-context/invalid-fields-snack-bar/invalid-fields-snack-bar.component.mjs +3 -3
  351. package/esm2022/lib/view-context/message-dialog/message-dialog.component.mjs +3 -3
  352. package/esm2022/lib/view-context/projects.mjs +1 -1
  353. package/esm2022/lib/view-context/property-definition-data.mjs +1 -1
  354. package/esm2022/lib/view-context/smart-ui-action/components/action-badge/action-badge.component.mjs +3 -3
  355. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.component.mjs +3 -3
  356. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.constants.mjs +1 -1
  357. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.service.mjs +1 -1
  358. package/esm2022/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.mjs +3 -3
  359. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.mjs +3 -3
  360. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.mjs +1 -1
  361. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-dialog-button/ui-action-dialog-button.component.mjs +3 -3
  362. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/photo-capture-widget/photo-capture-widget.component.mjs +3 -3
  363. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.mjs +18 -3
  364. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.service.mjs +1 -1
  365. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/voice-record-widget/voice-record-widget.component.mjs +5 -5
  366. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.mjs +3 -3
  367. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.mjs +1 -1
  368. package/esm2022/lib/view-context/smart-ui-action/ui-action-button/ui-action-button.component.mjs +3 -3
  369. package/esm2022/lib/view-context/smart-ui-action/ui-action-toolbar.component.mjs +79 -5
  370. package/esm2022/lib/view-context/smart-ui-action/ui-action.descriptor.service.mjs +1 -1
  371. package/esm2022/lib/view-context/smart-ui-action/ui-action.model.mjs +1 -1
  372. package/esm2022/lib/view-context/smart-ui-action/ui-action.service.mjs +1 -1
  373. package/esm2022/lib/view-context/smart-view-context-dialog.service.mjs +1 -1
  374. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.mjs +3 -3
  375. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.mjs +1 -1
  376. package/esm2022/lib/view-context/smart-view-context.interceptor.mjs +1 -1
  377. package/esm2022/lib/view-context/smart-view-context.model.mjs +1 -1
  378. package/esm2022/lib/view-context/smart-view-context.module.mjs +1 -1
  379. package/esm2022/lib/view-context/smart-view-context.service.mjs +1 -1
  380. package/esm2022/lib/view-context/smart-view-redirect/smart-view-redirect.mjs +1 -1
  381. package/esm2022/lib/view-context/utility/componentLibrary.mjs +1 -1
  382. package/esm2022/lib/view-context/utility/smart-object-utility.mjs +1 -1
  383. package/esm2022/lib/view-context/utility/smart-style-utility.mjs +1 -1
  384. package/esm2022/lib/view-context/value-api/api/api.mjs +1 -1
  385. package/esm2022/lib/view-context/value-api/api/value.service.mjs +1 -1
  386. package/esm2022/lib/view-context/value-api/api.module.mjs +1 -1
  387. package/esm2022/lib/view-context/value-api/configuration.mjs +1 -1
  388. package/esm2022/lib/view-context/value-api/encoder.mjs +1 -1
  389. package/esm2022/lib/view-context/value-api/index.mjs +1 -1
  390. package/esm2022/lib/view-context/value-api/model/genericValue.mjs +1 -1
  391. package/esm2022/lib/view-context/value-api/model/models.mjs +1 -1
  392. package/esm2022/lib/view-context/value-api/model/value.mjs +1 -1
  393. package/esm2022/lib/view-context/value-api/model/valueSetData.mjs +1 -1
  394. package/esm2022/lib/view-context/value-api/model/valueSetDefinition.mjs +1 -1
  395. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionData.mjs +1 -1
  396. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +1 -1
  397. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +1 -1
  398. package/esm2022/lib/view-context/value-api/model/valueSetExpression.mjs +1 -1
  399. package/esm2022/lib/view-context/value-api/model/valueSetOperand.mjs +1 -1
  400. package/esm2022/lib/view-context/value-api/model/valueSetOperation.mjs +1 -1
  401. package/esm2022/lib/view-context/value-api/param.mjs +1 -1
  402. package/esm2022/lib/view-context/value-api/variables.mjs +1 -1
  403. package/esm2022/projects.mjs +1 -1
  404. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartData.mjs +1 -1
  405. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartDescriptor.mjs +1 -1
  406. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartOrientation.mjs +1 -1
  407. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartType.mjs +1 -1
  408. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartValue.mjs +1 -1
  409. package/esm2022/src/lib/smart-chart/smart-chart/api/model/models.mjs +1 -1
  410. package/esm2022/src/lib/smart-chart/smart-chart/api/model/pieChartLegendPosition.mjs +1 -1
  411. package/esm2022/src/lib/smart-chart/smart-chart/default-chart-options.provider.mjs +1 -1
  412. package/esm2022/src/lib/smart-chart/smart-chart/smart-chart.component.mjs +19 -19
  413. package/esm2022/src/lib/smart-chart/smart-chart/smart-chart.module.mjs +1 -1
  414. package/esm2022/src/lib/smart-chart/smart-chart-projects.mjs +1 -1
  415. package/esm2022/src/lib/smart-chart/view-context/utility/componentLibrary.mjs +1 -1
  416. package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs +18 -18
  417. package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs.map +1 -1
  418. package/fesm2022/smartbit4all-ng-client.mjs +190 -101
  419. package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
  420. package/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.d.ts +2 -0
  421. package/lib/view-context/smart-ui-action/ui-action-toolbar.component.d.ts +20 -3
  422. package/package.json +1 -1
  423. package/smartbit4all-ng-client-4.2.67.tgz +0 -0
  424. package/smartbit4all-ng-client-4.2.66.tgz +0 -0
@@ -419,4 +419,4 @@ function getIcon(color) {
419
419
  popupAnchor: [0, -size / 2],
420
420
  });
421
421
  }
422
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1tYXAvaW1wbC9sZWFmbGV0LW1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVDLFNBQVMsRUFBc0IsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLFdBQVcsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQWMsY0FBYyxFQUFrQixNQUFNLFFBQVEsQ0FBQzs7QUFZcEUsU0FBUyxvQkFBb0IsQ0FBQyxJQUFnQixFQUFFLE1BQTRCO0lBQzFFLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQztJQUN2QyxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixLQUFLLGNBQWMsQ0FBQyxNQUFNO1lBQ3hCLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNqRixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7YUFDNUIsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsSUFBSSxLQUFLO2dCQUN2QyxTQUFTLEVBQUUsTUFBTTthQUNsQixDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdkYsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyxjQUFjLENBQUMsT0FBTztZQUN6QixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFNLENBQUMsTUFBTSxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQztnQkFDbEIsQ0FBQyxDQUFDLE9BQU8sQ0FDUCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDeEQsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQ3BDO2dCQUNELEdBQUcsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDOUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7b0JBQ2pCLFdBQVcsRUFBRSxLQUFLO29CQUNsQixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLElBQUksRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDO2lCQUNyQixDQUFDLENBQ0g7YUFDRixDQUFDLENBQUM7UUFDTCxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3RCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFNLENBQUMsTUFBTSxDQUFDO1lBRTNDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQztnQkFDbEIsQ0FBQyxDQUFDLFFBQVEsQ0FDUixlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQ3JELEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUNwQztnQkFDRCxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMzQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ2xDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztvQkFDakIsS0FBSyxFQUFFLEtBQUs7b0JBQ1osU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO29CQUMzQixJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQztpQkFDckIsQ0FBQyxDQUNIO2FBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztBQUNILENBQUM7QUF5QkQsTUFBTSxPQUFPLFVBQVcsU0FBUSxXQUFXO0lBSXpDLFlBQVksRUFBYyxFQUFFLEVBQXFCLEVBQUUsSUFBWTtRQUM3RCxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUg1QyxtQkFBYyxHQUFHLE9BQU8sQ0FBQztRQUN6QixZQUFPLEdBQVEsRUFBRSxDQUFDO0lBR2xCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRU8sVUFBVTtRQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFGLENBQUMsQ0FBQyxTQUFTLENBQUMsZ0RBQWdELEVBQUU7WUFDNUQsT0FBTyxFQUFFLEVBQUU7WUFDWCxXQUFXLEVBQUUsMkVBQTJFO1NBQ3pGLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRW5CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLEtBQUssR0FBd0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNwRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUc7WUFDVixNQUFNLEVBQUUsb0JBQW9CLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7U0FDekUsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztZQUN2QyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMvQyxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLGFBQWEsQ0FBQztnQkFDL0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO29CQUNuQixXQUFXLEVBQUU7d0JBQ1gsUUFBUSxFQUFFLEdBQUcsQ0FBQyxHQUFhO3dCQUMzQixTQUFTLEVBQUUsR0FBRyxDQUFDLEdBQWE7cUJBQzdCO29CQUNELGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNyQixRQUFRO29CQUNSLGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNyQixRQUFRO29CQUNSLGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFZLENBQUM7UUFDL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2hFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFaEUsT0FBTztZQUNMLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsTUFBTSxDQUFDLEdBQWE7Z0JBQzlCLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBYTthQUNoQztZQUNELFNBQVM7WUFDVCxNQUFNLEVBQUU7Z0JBQ04sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUU7Z0JBQ3JDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFO2FBQ3RDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsTUFBTSxRQUFRLEdBQW1CLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFTLENBQUM7UUFDeEQsT0FBTztZQUNMLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFPLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFPLENBQUMsU0FBUyxDQUFDO1lBQy9ELElBQUksRUFBRSxRQUFRLENBQUMsU0FBVTtTQUMxQixDQUFDO0lBQ0osQ0FBQztJQUVRLGlCQUFpQixDQUFDLFFBQTZCLEVBQUUsS0FBMEI7UUFDbEYsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsTUFBTSxZQUFZLEdBQXVCLElBQUksR0FBRyxFQUFFLENBQUM7UUFFbkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLE1BQU0sR0FBRyxHQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN4RixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUMzQixZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztnQkFDRCxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0MsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMxQixJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDO1lBQ3ZCLElBQUksTUFBTSxZQUFZLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFFLEVBQUU7b0JBQ2hELEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7d0JBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTs0QkFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7Z0NBQ3ZCLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRTtnQ0FDYixhQUFhLEVBQUU7b0NBQ2IsYUFBYSxFQUFFLEtBQUs7b0NBQ3BCLE9BQU8sRUFBRSxFQUFFLENBQUMsTUFBTTtvQ0FDbEIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2lDQUNkOzZCQUNGLENBQUMsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sQ0FBQztnQkFDTixFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQzs0QkFDdkIsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFOzRCQUNiLGFBQWEsRUFBRTtnQ0FDYixhQUFhLEVBQUUsS0FBSztnQ0FDcEIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxNQUFNO2dDQUNsQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NkJBQ2Q7eUJBQ0YsQ0FBQyxDQUFDO29CQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksS0FBSyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQzFCLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUNsRixDQUFDO2dCQUNGLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3RDLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7b0JBRWhFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQzFCLFdBQVcsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFOzRCQUM3QixTQUFTLEVBQUUsS0FBSzs0QkFDaEIsU0FBUyxFQUFFLE1BQU07eUJBQ2xCLENBQUMsQ0FBQzt3QkFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDakMsQ0FBQztvQkFDRCxNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDbEQsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7d0JBQ3hDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7NEJBQzVCLElBQ0UsSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTTtnQ0FDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUc7Z0NBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQzlELENBQUM7Z0NBQ0QsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7Z0NBQ2hDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO2dDQUM3RCxNQUFNLE1BQU0sR0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dDQUN6RSxNQUFNLE1BQU0sR0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dDQUN6RSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUMxQyxDQUFDO3dCQUNILENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQzs0QkFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7d0JBQ3RDLENBQUM7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7d0JBQ3ZDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEVBQUU7NEJBQzdCLElBQUksSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Z0NBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7Z0NBQ2xELEVBQUUsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUMvQixDQUFDO3dCQUNILENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDOzRCQUN0QyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDaEMsQ0FBQztvQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztZQUNELEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDUSx3QkFBd0IsQ0FDL0IsUUFBNkIsRUFDN0IsS0FBMEI7UUFFMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLE9BQU87UUFDVCxDQUFDO1FBRUQsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ25CLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDdkIsSUFBSSxNQUFNLFlBQVksQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFPLEVBQUUsRUFBRTtvQkFDaEQsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTt3QkFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFOzRCQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDO2dDQUM5QixNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0NBQ2IsS0FBSyxFQUFFO29DQUNMLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7b0NBQ25CLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7aUNBQ3BCOzZCQUNGLENBQUMsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDSCxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFO3dCQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ2pELENBQUMsQ0FBQyxDQUFDO29CQUNILEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7d0JBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTs0QkFDakIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQztnQ0FDN0IsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dDQUNiLGFBQWEsRUFBRTtvQ0FDYixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHO29DQUMxQixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHO2lDQUMzQjtnQ0FDRCxNQUFNLEVBQUU7b0NBQ04sQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRztvQ0FDL0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRztpQ0FDaEM7NkJBQ0YsQ0FBQyxDQUFDO3dCQUNMLENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO29CQUM3QixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sQ0FBQztnQkFDTixFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDOzRCQUM5QixNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUU7NEJBQ2IsS0FBSyxFQUFFO2dDQUNMLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7Z0NBQ25CLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7NkJBQ3BCO3lCQUNGLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7WUFFRCxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLE1BQU0sS0FBSyxHQUFpQixJQUFJLENBQUMsS0FBSyxFQUFFO2FBQ3JDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2hGLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ1YsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxTQUFTLEdBQVUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3hELElBQUksU0FBUyxHQUFVLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV4RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMzQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7Z0JBQUUsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTNDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztnQkFBRSxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0MsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVEsUUFBUTtRQUNmLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQVEsRUFBRSxNQUF5QixFQUFFLEVBQUU7b0JBQzdELElBQUksR0FBRyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLENBQUMsQ0FBQzt3QkFDbEQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUNaLE9BQU87b0JBQ1QsQ0FBQztvQkFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7d0JBQ1QsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO3dCQUNyQixPQUFPO29CQUNULENBQUM7b0JBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUF1RCxFQUFFLEVBQUU7d0JBQy9FLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDOzRCQUNiLE9BQU87d0JBQ1QsQ0FBQzt3QkFDRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7d0JBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQ3RELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFFbEMsK0JBQStCO3dCQUMvQixHQUFHLENBQUMsSUFBSSxHQUFHLHNCQUFzQixDQUFDO3dCQUNsQyxHQUFHLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQzt3QkFDeEIsR0FBRyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7d0JBQzFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO3dCQUNsQixHQUFHLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQzt3QkFDekIsR0FBRyxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7d0JBQzVCLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWU7d0JBQzVELEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQjtvQkFDN0QsQ0FBQyxDQUFDLENBQUM7b0JBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDekMsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDVixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBWTtRQUN0QixJQUFJLEtBQUssR0FBVyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3JCLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsTUFBYztRQUMvQixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7UUFFdEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztRQUMxQixNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztRQUMzQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDbEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUNyQyxHQUFHLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUVwQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNYLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLEdBQUcsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQzVCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUViLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7UUFDbEMsR0FBRyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDekIsR0FBRyxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7UUFDNUIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFcEQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ1osT0FBTyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUU7WUFDM0IsUUFBUSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQztZQUN0QixVQUFVLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLENBQUM7WUFDaEMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDOytHQXJZVSxVQUFVO21HQUFWLFVBQVUsMEVBckJYLDJCQUEyQjs7NEZBcUIxQixVQUFVO2tCQXZCdEIsU0FBUzsrQkFDRSxhQUFhLFlBQ2IsMkJBQTJCOztBQTRadkMsU0FBUyxPQUFPLENBQUMsS0FBYTtJQUM1QixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7SUFFdEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRCxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztJQUMxQixNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztJQUMzQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDO0lBQ3ZELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFFLENBQUM7SUFDckMsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFFcEMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdELEdBQUcsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVYLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNaLE9BQU8sRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQzNCLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7UUFDdEIsVUFBVSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLFdBQVcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7S0FDNUIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0NoZWNrZWQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RNYXAsIFJlY29yZFdpdGhJZCB9IGZyb20gJy4uL2Fic3RyYWN0LW1hcCc7XG5pbXBvcnQgeyBHZW9NYXBJdGVtLCBHZW9NYXBJdGVtS2luZCwgR2VvTWFwVmlld3BvcnQgfSBmcm9tICcuLi9hcGknO1xuaW1wb3J0IHsgQ29vcmQsIE1hcEl0ZW1Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vc21hcnQtbWFwLnR5cGVzJztcbmltcG9ydCB7IEkgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuXG5kZWNsYXJlIHZhciBMOiBhbnk7XG5kZWNsYXJlIGNvbnN0IGxlYWZsZXRJbWFnZTogYW55O1xuXG5pbnRlcmZhY2UgTGVhZmxldE1hcE9wdGlvbnMge1xuICBjZW50cmU6IEFycmF5PG51bWJlcj47XG4gIHpvb206IG51bWJlcjtcbn1cblxuZnVuY3Rpb24gY3JlYXRlTGVhZmxldE1hcEl0ZW0oaXRlbTogR2VvTWFwSXRlbSwgY29uZmlnOiBNYXBJdGVtQ29uZmlndXJhdGlvbik6IGFueSB7XG4gIGxldCBjb2xvciA9IGl0ZW0uY29sb3IgPz8gY29uZmlnLmNvbG9yO1xuICBzd2l0Y2ggKGl0ZW0ua2luZCkge1xuICAgIGNhc2UgR2VvTWFwSXRlbUtpbmQuTUFSS0VSOlxuICAgICAgbGV0IG1hcmtlciA9IEwubWFya2VyKEwubGF0TG5nKGl0ZW0ucG9zaXRpb24hLmxhdGl0dWRlLCBpdGVtLnBvc2l0aW9uIS5sb25naXR1ZGUpLCB7XG4gICAgICAgIGRyYWdnYWJsZTogY29uZmlnLmRyYWdnYWJsZSxcbiAgICAgIH0pLmJpbmRUb29sdGlwKGl0ZW0ubGFiZWwsIHtcbiAgICAgICAgcGVybWFuZW50OiBpdGVtLnBlcm1hbmVudExhYmVsID8/IGZhbHNlLFxuICAgICAgICBkaXJlY3Rpb246ICdhdXRvJyxcbiAgICAgIH0pO1xuICAgICAgbWFya2VyLm9yaWdpbmFsTGF0TG5nID0gTC5sYXRMbmcoaXRlbS5wb3NpdGlvbiEubGF0aXR1ZGUsIGl0ZW0ucG9zaXRpb24hLmxvbmdpdHVkZSk7IC8vXG4gICAgICByZXR1cm4gbWFya2VyO1xuICAgIGNhc2UgR2VvTWFwSXRlbUtpbmQuUE9MWUdPTjpcbiAgICAgIGNvbnN0IHBvbHlnb25Sb3V0ZVBvaW50cyA9IGl0ZW0ucm91dGUhLnBvaW50cztcbiAgICAgIHJldHVybiBMLmxheWVyR3JvdXAoW1xuICAgICAgICBMLnBvbHlnb24oXG4gICAgICAgICAgcG9seWdvblJvdXRlUG9pbnRzLm1hcCgocCkgPT4gW3AubGF0aXR1ZGUsIHAubG9uZ2l0dWRlXSksXG4gICAgICAgICAgeyB0aXRsZTogaXRlbS5sYWJlbCwgY29sb3I6IGNvbG9yIH1cbiAgICAgICAgKSxcbiAgICAgICAgLi4ucG9seWdvblJvdXRlUG9pbnRzLm1hcCgocCkgPT5cbiAgICAgICAgICBMLm1hcmtlcihbcC5sYXRpdHVkZSwgcC5sb25naXR1ZGVdLCB7XG4gICAgICAgICAgICB0aXRsZTogaXRlbS5sYWJlbCxcbiAgICAgICAgICAgIG1hcmtlckNvbG9yOiBjb2xvcixcbiAgICAgICAgICAgIGRyYWdnYWJsZTogY29uZmlnLmRyYWdnYWJsZSxcbiAgICAgICAgICAgIGljb246IGdldEljb24oY29sb3IpLFxuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICBdKTtcbiAgICBjYXNlIEdlb01hcEl0ZW1LaW5kLkxJTkU6XG4gICAgICBjb25zdCBsaW5lUm91dGVQb2ludHMgPSBpdGVtLnJvdXRlIS5wb2ludHM7XG5cbiAgICAgIHJldHVybiBMLmxheWVyR3JvdXAoW1xuICAgICAgICBMLnBvbHlsaW5lKFxuICAgICAgICAgIGxpbmVSb3V0ZVBvaW50cy5tYXAoKHApID0+IFtwLmxhdGl0dWRlLCBwLmxvbmdpdHVkZV0pLFxuICAgICAgICAgIHsgdGl0bGU6IGl0ZW0ubGFiZWwsIGNvbG9yOiBjb2xvciB9XG4gICAgICAgICksXG4gICAgICAgIC4uLmxpbmVSb3V0ZVBvaW50cy5tYXAoKHApID0+XG4gICAgICAgICAgTC5tYXJrZXIoW3AubGF0aXR1ZGUsIHAubG9uZ2l0dWRlXSwge1xuICAgICAgICAgICAgdGl0bGU6IGl0ZW0ubGFiZWwsXG4gICAgICAgICAgICBjb2xvcjogY29sb3IsXG4gICAgICAgICAgICBkcmFnZ2FibGU6IGNvbmZpZy5kcmFnZ2FibGUsXG4gICAgICAgICAgICBpY29uOiBnZXRJY29uKGNvbG9yKSxcbiAgICAgICAgICB9KVxuICAgICAgICApLFxuICAgICAgXSk7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGVhZmxldC1tYXAnLFxuICB0ZW1wbGF0ZTogYCA8ZGl2IGlkPVwibGVhZmxldFwiPjwvZGl2PmAsXG4gIHN0eWxlczogYFxuICAgICAgI2xlYWZsZXQge1xuICAgICAgICAgIGhlaWdodDogNzIwcHg7XG4gICAgICB9XG4gICAgIDo6bmctZGVlcCAubWFya2VyLWNvdW50IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3OGQ0O1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoMCwwLDAsMC40KTtcbiAgICB9XG4gICAgIDo6bmctZGVlcCAuY3VzdG9tLWNsdXN0ZXItaWNvbiB7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9YCxcbn0pXG5leHBvcnQgY2xhc3MgTGVhZmxldE1hcCBleHRlbmRzIEFic3RyYWN0TWFwIGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIG9yaWdpbmFsTGF0TG5nOiBhbnk7XG4gIG9mZnNldERpc3RhbmNlID0gMC4wMDAwNDtcbiAgbWFya2VyczogYW55ID0gW107XG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHpvbmU6IE5nWm9uZSkge1xuICAgIHN1cGVyKGVsLCBjZCwgem9uZSwgY3JlYXRlTGVhZmxldE1hcEl0ZW0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5tYXAgJiYgdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm9mZnNldFBhcmVudCkge1xuICAgICAgdGhpcy5pbml0aWFsaXplKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmNyZWF0ZUxlYWZsZXRNYXBPcHRpb25zKCk7XG4gICAgdGhpcy5tYXAgPSBMLm1hcCgnbGVhZmxldCcsIHsgcHJlZmVyQ2FudmFzOiB0cnVlIH0pLnNldFZpZXcob3B0aW9ucy5jZW50cmUsIG9wdGlvbnMuem9vbSk7XG4gICAgTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLCB7XG4gICAgICBtYXhab29tOiAxOSxcbiAgICAgIGF0dHJpYnV0aW9uOiAnJmNvcHk7IDxhIGhyZWY9XCJodHRwOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+JyxcbiAgICB9KS5hZGRUbyh0aGlzLm1hcCk7XG5cbiAgICBjb25zdCBpdGVtcyA9IHRoaXMuaXRlbXMoKTtcbiAgICBjb25zdCB0b0FkZDogQXJyYXk8UmVjb3JkV2l0aElkPiA9IGl0ZW1zLm1hcCgoaXQpID0+ICh7XG4gICAgICBpZDogaXQuaWQhLFxuICAgICAgcmVjb3JkOiBjcmVhdGVMZWFmbGV0TWFwSXRlbShpdCwgeyBjb2xvcjogJyMzMzg4ZmYnLCBkcmFnZ2FibGU6IGZhbHNlIH0pLFxuICAgIH0pKTtcbiAgICB0aGlzLmhhbmRsZUl0ZW1DaGFuZ2VzKFtdLCB0b0FkZCk7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsKCk7XG4gICAgaWYgKG1vZGVsLnZpZXdTdGF0ZT8uZml0VG9Jbml0aWFsSXRlbXMpIHtcbiAgICAgIGNvbnN0IGRhdGFzZXRCb3VuZHMgPSB0aGlzLmZpbmREYXRhc2V0Qm91bmRzKCk7XG4gICAgICBpZiAoZGF0YXNldEJvdW5kcykge1xuICAgICAgICBjb25zdCB7IGEsIGIgfSA9IGRhdGFzZXRCb3VuZHM7XG4gICAgICAgIGNvbnN0IHBudEEgPSBMLmxhdExuZyhhLngsIGEueSk7XG4gICAgICAgIGNvbnN0IHBudEIgPSBMLmxhdExuZyhiLngsIGIueSk7XG4gICAgICAgIGNvbnN0IGJvdW5kcyA9IEwubGF0TG5nQm91bmRzKHBudEEsIHBudEIpO1xuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLm1hcC5maXRCb3VuZHMoYm91bmRzKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMubWFwLm9uKCdjbGljaycsIChldmVudDogYW55KSA9PiB7XG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgcG9zID0gZXZlbnQubGF0bG5nO1xuICAgICAgICB0aGlzLm9uTWFwQ2xpY2suZW1pdCh7XG4gICAgICAgICAgY29vcmRpbmF0ZXM6IHtcbiAgICAgICAgICAgIGxhdGl0dWRlOiBwb3MubGF0IGFzIG51bWJlcixcbiAgICAgICAgICAgIGxvbmdpdHVkZTogcG9zLmxuZyBhcyBudW1iZXIsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMubWFwLm9uKCdtb3ZlZW5kJywgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcbiAgICAgICAgdGhpcy5vbk1hcERyYWdFbmQuZW1pdCh7XG4gICAgICAgICAgdmlld3BvcnQsXG4gICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm1hcC5vbignem9vbWVuZCcsIChldmVudDogYW55KSA9PiB7XG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgY29uc3Qgdmlld3BvcnQgPSB0aGlzLmdldFZpZXdwb3J0KCk7XG4gICAgICAgIHRoaXMub25NYXBEcmFnRW5kLmVtaXQoe1xuICAgICAgICAgIHZpZXdwb3J0LFxuICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Vmlld3BvcnQoKTogR2VvTWFwVmlld3BvcnQge1xuICAgIGlmICghdGhpcy5tYXApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFwIGlzIG5vdCB5ZXQgaW5pdGlhbGlzZWQhJyk7XG4gICAgfVxuXG4gICAgY29uc3QgY2VudGVyID0gdGhpcy5tYXAuZ2V0Q2VudGVyKCk7XG4gICAgY29uc3Qgem9vbUxldmVsID0gdGhpcy5tYXAuZ2V0Wm9vbSgpIGFzIG51bWJlcjtcbiAgICBjb25zdCBsZWFmbGV0Qm91bmRzID0gdGhpcy5tYXAuZ2V0Qm91bmRzKCk7XG4gICAgY29uc3QgeyBsYXQ6IHN3TGF0LCBsbmc6IHN3TG5nIH0gPSBsZWFmbGV0Qm91bmRzLmdldFNvdXRoV2VzdCgpO1xuICAgIGNvbnN0IHsgbGF0OiBuZUxhdCwgbG5nOiBuZUxuZyB9ID0gbGVhZmxldEJvdW5kcy5nZXROb3J0aEVhc3QoKTtcblxuICAgIHJldHVybiB7XG4gICAgICBjZW50ZXI6IHtcbiAgICAgICAgbGF0aXR1ZGU6IGNlbnRlci5sYXQgYXMgbnVtYmVyLFxuICAgICAgICBsb25naXR1ZGU6IGNlbnRlci5sbmcgYXMgbnVtYmVyLFxuICAgICAgfSxcbiAgICAgIHpvb21MZXZlbCxcbiAgICAgIGJvdW5kczogW1xuICAgICAgICB7IGxhdGl0dWRlOiBzd0xhdCwgbG9uZ2l0dWRlOiBzd0xuZyB9LFxuICAgICAgICB7IGxhdGl0dWRlOiBuZUxhdCwgbG9uZ2l0dWRlOiBuZUxuZyB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVMZWFmbGV0TWFwT3B0aW9ucygpOiBMZWFmbGV0TWFwT3B0aW9ucyB7XG4gICAgY29uc3Qgdmlld3BvcnQ6IEdlb01hcFZpZXdwb3J0ID0gdGhpcy5tb2RlbCgpLnZpZXdwb3J0ITtcbiAgICByZXR1cm4ge1xuICAgICAgY2VudHJlOiBbdmlld3BvcnQuY2VudGVyIS5sYXRpdHVkZSwgdmlld3BvcnQuY2VudGVyIS5sb25naXR1ZGVdLFxuICAgICAgem9vbTogdmlld3BvcnQuem9vbUxldmVsISxcbiAgICB9O1xuICB9XG5cbiAgb3ZlcnJpZGUgaGFuZGxlSXRlbUNoYW5nZXModG9SZW1vdmU6IEFycmF5PFJlY29yZFdpdGhJZD4sIHRvQWRkOiBBcnJheTxSZWNvcmRXaXRoSWQ+KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1hcCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm1hcmtlcnMgPSBbXTtcbiAgICBjb25zdCBtYXJrZXJHcm91cHM6IE1hcDxzdHJpbmcsIGFueVtdPiA9IG5ldyBNYXAoKTtcblxuICAgIHRvQWRkLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGlmIChpdGVtLnJlY29yZCBpbnN0YW5jZW9mIEwuTWFya2VyKSB7XG4gICAgICAgIGNvbnN0IGtleSA9XG4gICAgICAgICAgaXRlbS5yZWNvcmQuZ2V0TGF0TG5nKCkubGF0LnRvRml4ZWQoNikgKyAnLCcgKyBpdGVtLnJlY29yZC5nZXRMYXRMbmcoKS5sbmcudG9GaXhlZCg2KTtcbiAgICAgICAgaWYgKCFtYXJrZXJHcm91cHMuZ2V0KGtleSkpIHtcbiAgICAgICAgICBtYXJrZXJHcm91cHMuc2V0KGtleSwgW10pO1xuICAgICAgICB9XG4gICAgICAgIG1hcmtlckdyb3Vwcy5nZXQoa2V5KSEucHVzaChpdGVtLnJlY29yZCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0b1JlbW92ZS5mb3JFYWNoKChpdCkgPT4ge1xuICAgICAgaXQucmVjb3JkLnJlbW92ZSgpO1xuICAgICAgdGhpcy5vdmVybGF5cy5kZWxldGUoaXQuaWQpO1xuICAgIH0pO1xuXG4gICAgdG9BZGQuZm9yRWFjaCgoaXQsIGluZGV4KSA9PiB7XG4gICAgICBsZXQgcmVjb3JkID0gaXQucmVjb3JkO1xuICAgICAgaWYgKHJlY29yZCBpbnN0YW5jZW9mIEwuTGF5ZXJHcm91cCkge1xuICAgICAgICBPYmplY3QudmFsdWVzKHJlY29yZC5fbGF5ZXJzKS5mb3JFYWNoKChhdDogYW55KSA9PiB7XG4gICAgICAgICAgYXQub24oJ2NsaWNrJywgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLm9uT3ZlcmxheUNsaWNrLmVtaXQoe1xuICAgICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXG4gICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDoge1xuICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICAgICAgICBvdmVybGF5OiBpdC5yZWNvcmQsXG4gICAgICAgICAgICAgICAgICBtYXA6IHRoaXMubWFwLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaXQucmVjb3JkLm9uKCdjbGljaycsIChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uT3ZlcmxheUNsaWNrLmVtaXQoe1xuICAgICAgICAgICAgICBpdGVtSWQ6IGl0LmlkLFxuICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiB7XG4gICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICAgICAgb3ZlcmxheTogaXQucmVjb3JkLFxuICAgICAgICAgICAgICAgIG1hcDogdGhpcy5tYXAsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IGdyb3VwID0gbWFya2VyR3JvdXBzLmdldChcbiAgICAgICAgICBpdC5yZWNvcmQuZ2V0TGF0TG5nKCkubGF0LnRvRml4ZWQoNikgKyAnLCcgKyBpdC5yZWNvcmQuZ2V0TGF0TG5nKCkubG5nLnRvRml4ZWQoNilcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGdyb3VwICYmIGdyb3VwLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBjb25zdCBpY29uID0gdGhpcy5jcmVhdGVOdW1iZXJlZEljb24oZ3JvdXAubGVuZ3RoKTtcbiAgICAgICAgICBjb25zdCBsYWJlbCA9IHRoaXMuY3JlYXRlTGFiZWwoZ3JvdXApO1xuICAgICAgICAgIGNvbnN0IGV4dHJhTWFya2VyID0gTC5tYXJrZXIoZ3JvdXBbMF0ub3JpZ2luYWxMYXRMbmcsIHsgaWNvbiB9KTtcblxuICAgICAgICAgIGlmICghZXh0cmFNYXJrZXIuX3Rvb2x0aXApIHtcbiAgICAgICAgICAgIGV4dHJhTWFya2VyLmJpbmRUb29sdGlwKGxhYmVsLCB7XG4gICAgICAgICAgICAgIHBlcm1hbmVudDogZmFsc2UsXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2F1dG8nLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLm1hcmtlcnMucHVzaChleHRyYU1hcmtlcik7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGNsdXN0ZXJNYXJrZXIgPSBleHRyYU1hcmtlci5hZGRUbyh0aGlzLm1hcCk7XG4gICAgICAgICAgaXQucmVjb3JkLm9uKCdtb3VzZW92ZXInLCAoX2V2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRvQWRkLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBpdGVtLnJlY29yZCBpbnN0YW5jZW9mIEwuTWFya2VyICYmXG4gICAgICAgICAgICAgICAgaXRlbS5yZWNvcmQub3JpZ2luYWxMYXRMbmcubGF0ID09IGl0LnJlY29yZC5vcmlnaW5hbExhdExuZy5sYXQgJiZcbiAgICAgICAgICAgICAgICBpdGVtLnJlY29yZC5vcmlnaW5hbExhdExuZy5sbmcgPT0gaXQucmVjb3JkLm9yaWdpbmFsTGF0TG5nLmxuZ1xuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBpdC5yZWNvcmQuc2V0WkluZGV4T2Zmc2V0KDEwMDApO1xuICAgICAgICAgICAgICAgIGNvbnN0IGFuZ2xlID0gKCgzNjAgLyB0b0FkZC5sZW5ndGgpICogaW5kZXggKiBNYXRoLlBJKSAvIDE4MDtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdMYXQgPVxuICAgICAgICAgICAgICAgICAgaXRlbS5yZWNvcmQub3JpZ2luYWxMYXRMbmcubGF0ICsgdGhpcy5vZmZzZXREaXN0YW5jZSAqIE1hdGguY29zKGFuZ2xlKTtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdMbmcgPVxuICAgICAgICAgICAgICAgICAgaXRlbS5yZWNvcmQub3JpZ2luYWxMYXRMbmcubG5nICsgdGhpcy5vZmZzZXREaXN0YW5jZSAqIE1hdGguc2luKGFuZ2xlKTtcbiAgICAgICAgICAgICAgICBpdGVtLnJlY29yZC5zZXRMYXRMbmcoW25ld0xhdCwgbmV3TG5nXSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHRoaXMubWFwLmhhc0xheWVyKGNsdXN0ZXJNYXJrZXIpKSB7XG4gICAgICAgICAgICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKGNsdXN0ZXJNYXJrZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGl0LnJlY29yZC5vbignbW91c2VvdXQnLCAoX2V2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRvQWRkLmZvckVhY2goKGl0ZW0sIF9pbmRleCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoaXRlbS5yZWNvcmQgaW5zdGFuY2VvZiBMLk1hcmtlcikge1xuICAgICAgICAgICAgICAgIGl0ZW0ucmVjb3JkLnNldExhdExuZyhpdGVtLnJlY29yZC5vcmlnaW5hbExhdExuZyk7XG4gICAgICAgICAgICAgICAgaXQucmVjb3JkLnNldFpJbmRleE9mZnNldCgwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAoIXRoaXMubWFwLmhhc0xheWVyKGNsdXN0ZXJNYXJrZXIpKSB7XG4gICAgICAgICAgICAgIGNsdXN0ZXJNYXJrZXIuYWRkVG8odGhpcy5tYXApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubWFya2Vycy5wdXNoKGl0LnJlY29yZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGl0LnJlY29yZC5hZGRUbyh0aGlzLm1hcCk7XG4gICAgICB0aGlzLm92ZXJsYXlzLnNldChpdC5pZCwgaXQucmVjb3JkKTtcbiAgICB9KTtcbiAgfVxuICBvdmVycmlkZSBoYW5kbGVFZGl0aW5nSXRlbUNoYW5nZXMoXG4gICAgdG9SZW1vdmU6IEFycmF5PFJlY29yZFdpdGhJZD4sXG4gICAgdG9BZGQ6IEFycmF5PFJlY29yZFdpdGhJZD5cbiAgKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1hcCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRvUmVtb3ZlLmZvckVhY2goKGl0KSA9PiB7XG4gICAgICBpdC5yZWNvcmQucmVtb3ZlKCk7XG4gICAgICB0aGlzLmVkaXRpbmdPdmVybGF5cy5kZWxldGUoaXQuaWQpO1xuICAgIH0pO1xuXG4gICAgdG9BZGQuZm9yRWFjaCgoaXQpID0+IHtcbiAgICAgIGxldCByZWNvcmQgPSBpdC5yZWNvcmQ7XG4gICAgICBpZiAocmVjb3JkIGluc3RhbmNlb2YgTC5MYXllckdyb3VwKSB7XG4gICAgICAgIE9iamVjdC52YWx1ZXMocmVjb3JkLl9sYXllcnMpLmZvckVhY2goKGF0OiBhbnkpID0+IHtcbiAgICAgICAgICBhdC5vbignY2xpY2snLCAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMub25FZGl0aW5nT3ZlcmxheUNsaWNrLmVtaXQoe1xuICAgICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXG4gICAgICAgICAgICAgICAgY29vcmQ6IHtcbiAgICAgICAgICAgICAgICAgIHg6IGV2ZW50LmxhdGxuZy5sbmcsXG4gICAgICAgICAgICAgICAgICB5OiBldmVudC5sYXRsbmcubGF0LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYXQub24oJ2RyYWdzdGFydCcsIChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9yaWdpbmFsTGF0TG5nID0gZXZlbnQudGFyZ2V0LmdldExhdExuZygpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGF0Lm9uKCdkcmFnZW5kJywgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLm9uRWRpdGluZ092ZXJsYXlEcmFnLmVtaXQoe1xuICAgICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXG4gICAgICAgICAgICAgICAgc3RhcnRQb3NpdGlvbjoge1xuICAgICAgICAgICAgICAgICAgeDogdGhpcy5vcmlnaW5hbExhdExuZy5sbmcsXG4gICAgICAgICAgICAgICAgICB5OiB0aGlzLm9yaWdpbmFsTGF0TG5nLmxhdCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGRyYWdUbzoge1xuICAgICAgICAgICAgICAgICAgeDogZXZlbnQudGFyZ2V0LmdldExhdExuZygpLmxuZyxcbiAgICAgICAgICAgICAgICAgIHk6IGV2ZW50LnRhcmdldC5nZXRMYXRMbmcoKS5sYXQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMub3JpZ2luYWxMYXRMbmcgPSBudWxsO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGl0LnJlY29yZC5vbignY2xpY2snLCAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkVkaXRpbmdPdmVybGF5Q2xpY2suZW1pdCh7XG4gICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXG4gICAgICAgICAgICAgIGNvb3JkOiB7XG4gICAgICAgICAgICAgICAgeDogZXZlbnQubGF0bG5nLmxuZyxcbiAgICAgICAgICAgICAgICB5OiBldmVudC5sYXRsbmcubGF0LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpdC5yZWNvcmQuYWRkVG8odGhpcy5tYXApO1xuICAgICAgdGhpcy5lZGl0aW5nT3ZlcmxheXMuc2V0KGl0LmlkLCBpdC5yZWNvcmQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kRGF0YXNldEJvdW5kcygpOiB7IGE6IENvb3JkOyBiOiBDb29yZCB9IHwgbnVsbCB7XG4gICAgY29uc3QgaXRlbXM6IEFycmF5PENvb3JkPiA9IHRoaXMuaXRlbXMoKVxuICAgICAgLmZsYXRNYXAoKGl0KSA9PiAoaXQucG9zaXRpb24gPyBbaXQucG9zaXRpb25dIDogaXQucm91dGUgPyBpdC5yb3V0ZS5wb2ludHMgOiBbXSkpXG4gICAgICAubWFwKChpdCkgPT4ge1xuICAgICAgICByZXR1cm4geyB4OiBpdC5sYXRpdHVkZSwgeTogaXQubG9uZ2l0dWRlIH07XG4gICAgICB9KTtcbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IHNvdXRod2VzdDogQ29vcmQgPSB7IHg6IGl0ZW1zWzBdLngsIHk6IGl0ZW1zWzBdLnkgfTtcbiAgICBsZXQgbm9ydGhlYXN0OiBDb29yZCA9IHsgeDogaXRlbXNbMF0ueCwgeTogaXRlbXNbMF0ueSB9O1xuXG4gICAgaXRlbXMuZm9yRWFjaCgoaXQpID0+IHtcbiAgICAgIGlmIChpdC54IDwgc291dGh3ZXN0LngpIHNvdXRod2VzdC54ID0gaXQueDtcbiAgICAgIGlmIChpdC55IDwgc291dGh3ZXN0LnkpIHNvdXRod2VzdC55ID0gaXQueTtcblxuICAgICAgaWYgKGl0LnggPiBub3J0aGVhc3QueCkgbm9ydGhlYXN0LnggPSBpdC54O1xuICAgICAgaWYgKGl0LnkgPiBub3J0aGVhc3QueSkgbm9ydGhlYXN0LnkgPSBpdC55O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgYTogc291dGh3ZXN0LCBiOiBub3J0aGVhc3QgfTtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvQmFzZTY0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBsZWFmbGV0SW1hZ2UodGhpcy5tYXAsIChlcnI6IGFueSwgY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCkgPT4ge1xuICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0xlYWZsZXQgaW1hZ2UgY2FwdHVyZSBlcnJvcicsIGVycik7XG4gICAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICAgICAgICBpZiAoIWN0eCkge1xuICAgICAgICAgICAgcmVqZWN0KCdObyBjb250ZXh0Jyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5tYXJrZXJzLmZvckVhY2goKG1hcmtlcjogeyBnZXRUb29sdGlwOiAoKSA9PiBhbnk7IGdldExhdExuZzogKCkgPT4gYW55IH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRvb2x0aXAgPSBtYXJrZXIuZ2V0VG9vbHRpcCgpO1xuICAgICAgICAgICAgaWYgKCF0b29sdGlwKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGxhdExuZyA9IG1hcmtlci5nZXRMYXRMbmcoKTtcbiAgICAgICAgICAgIGNvbnN0IHBvaW50ID0gdGhpcy5tYXAubGF0TG5nVG9Db250YWluZXJQb2ludChsYXRMbmcpO1xuICAgICAgICAgICAgY29uc3QgdGV4dCA9IHRvb2x0aXAuZ2V0Q29udGVudCgpO1xuXG4gICAgICAgICAgICAvLyBUb29sdGlwIHN6w7Z2ZWcgbWVnamVsZW7DrXTDqXNlXG4gICAgICAgICAgICBjdHguZm9udCA9ICdib2xkIDMwcHggc2Fucy1zZXJpZic7XG4gICAgICAgICAgICBjdHguZmlsbFN0eWxlID0gJ2JsYWNrJztcbiAgICAgICAgICAgIGN0eC5zdHJva2VTdHlsZSA9ICd3aGl0ZSc7XG4gICAgICAgICAgICBjdHgubGluZVdpZHRoID0gNDtcbiAgICAgICAgICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICAgICAgICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAnYm90dG9tJztcbiAgICAgICAgICAgIGN0eC5zdHJva2VUZXh0KHRleHQsIHBvaW50LngsIHBvaW50LnkgKyAxMCk7IC8vIGZlaMOpciBrb250w7pyXG4gICAgICAgICAgICBjdHguZmlsbFRleHQodGV4dCwgcG9pbnQueCwgcG9pbnQueSArIDEwKTsgLy8gZmVrZXRlIHN6w7Z2ZWdcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHJlc29sdmUoY2FudmFzLnRvRGF0YVVSTCgnaW1hZ2UvcG5nJykpO1xuICAgICAgICB9KTtcbiAgICAgIH0sIDMwMCk7XG4gICAgfSk7XG4gIH1cblxuICBjcmVhdGVMYWJlbChncm91cDogYW55W10pIHtcbiAgICBsZXQgbGFiZWw6IHN0cmluZyA9ICcnO1xuICAgIGdyb3VwLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGxhYmVsICs9IGl0ZW0uX3Rvb2x0aXAuX2NvbnRlbnQgKyAnLCAnO1xuICAgICAgaXRlbS5fdG9vbHRpcC5wZXJtYW5lbnQgPSBmYWxzZTtcbiAgICB9KTtcbiAgICByZXR1cm4gbGFiZWw7XG4gIH1cbiAgY3JlYXRlTnVtYmVyZWRJY29uKG51bWJlcjogbnVtYmVyKSB7XG4gICAgY29uc3Qgc2l6ZSA9IDM1O1xuICAgIGNvbnN0IHNjYWxlRmFjdG9yID0gMTU7XG4gICAgY29uc3Qgc2NhbGVkU2l6ZSA9IHNpemUgKiBzY2FsZUZhY3RvcjtcblxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgIGNhbnZhcy53aWR0aCA9IHNjYWxlZFNpemU7XG4gICAgY2FudmFzLmhlaWdodCA9IHNjYWxlZFNpemU7XG4gICAgY2FudmFzLnN0eWxlLndpZHRoID0gY2FudmFzLnN0eWxlLmhlaWdodCA9ICczNXB4JztcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKSE7XG4gICAgY3R4LnNjYWxlKHNjYWxlRmFjdG9yLCBzY2FsZUZhY3Rvcik7XG5cbiAgICBjdHguYmVnaW5QYXRoKCk7XG4gICAgY3R4LmFyYyhzaXplIC8gMiwgc2l6ZSAvIDIsIHNpemUgLyAyIC0gMiwgMCwgMiAqIE1hdGguUEksIGZhbHNlKTtcbiAgICBjdHguZmlsbFN0eWxlID0gJyMwMDc4ZDQnO1xuICAgIGN0eC5maWxsKCk7XG4gICAgY3R4LmxpbmVXaWR0aCA9IDI7XG4gICAgY3R4LnN0cm9rZVN0eWxlID0gJyNmZmZmZmYnO1xuICAgIGN0eC5zdHJva2UoKTtcblxuICAgIGN0eC5maWxsU3R5bGUgPSAnI2ZmZmZmZic7XG4gICAgY3R4LmZvbnQgPSAnYm9sZCAxNnB4IHNhbnMtc2VyaWYnO1xuICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICBjdHgudGV4dEJhc2VsaW5lID0gJ21pZGRsZSc7XG4gICAgY3R4LmZpbGxUZXh0KG51bWJlci50b1N0cmluZygpLCBzaXplIC8gMiwgc2l6ZSAvIDIpO1xuXG4gICAgcmV0dXJuIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBjYW52YXMudG9EYXRhVVJMKCksXG4gICAgICBpY29uU2l6ZTogW3NpemUsIHNpemVdLFxuICAgICAgaWNvbkFuY2hvcjogW3NpemUgLyAyLCBzaXplIC8gMl0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC1zaXplIC8gMl0sXG4gICAgfSk7XG4gIH1cbn1cbmZ1bmN0aW9uIGdldEljb24oY29sb3I6IHN0cmluZykge1xuICBjb25zdCBzaXplID0gMTI7XG4gIGNvbnN0IHNjYWxlRmFjdG9yID0gMTI7XG4gIGNvbnN0IHNjYWxlZFNpemUgPSBzaXplICogc2NhbGVGYWN0b3I7XG5cbiAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gIGNhbnZhcy53aWR0aCA9IHNjYWxlZFNpemU7XG4gIGNhbnZhcy5oZWlnaHQgPSBzY2FsZWRTaXplO1xuICBjYW52YXMuc3R5bGUud2lkdGggPSBjYW52YXMuc3R5bGUuaGVpZ2h0ID0gYCR7c2l6ZX1weGA7XG4gIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpITtcbiAgY3R4LnNjYWxlKHNjYWxlRmFjdG9yLCBzY2FsZUZhY3Rvcik7XG5cbiAgY3R4LmJlZ2luUGF0aCgpO1xuICBjdHguYXJjKHNpemUgLyAyLCBzaXplIC8gMiwgc2l6ZSAvIDIsIDAsIDIgKiBNYXRoLlBJLCBmYWxzZSk7XG4gIGN0eC5maWxsU3R5bGUgPSBjb2xvcjtcbiAgY3R4LmZpbGwoKTtcblxuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiBjYW52YXMudG9EYXRhVVJMKCksXG4gICAgaWNvblNpemU6IFtzaXplLCBzaXplXSxcbiAgICBpY29uQW5jaG9yOiBbc2l6ZSAvIDIsIHNpemUgLyAyXSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC1zaXplIC8gMl0sXG4gIH0pO1xufVxuIl19
422
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1tYXAvaW1wbC9sZWFmbGV0LW1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVDLFNBQVMsRUFBc0IsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLFdBQVcsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQWMsY0FBYyxFQUFrQixNQUFNLFFBQVEsQ0FBQzs7QUFZcEUsU0FBUyxvQkFBb0IsQ0FBQyxJQUFnQixFQUFFLE1BQTRCO0lBQzFFLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQztJQUN2QyxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixLQUFLLGNBQWMsQ0FBQyxNQUFNO1lBQ3hCLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNqRixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7YUFDNUIsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsSUFBSSxLQUFLO2dCQUN2QyxTQUFTLEVBQUUsTUFBTTthQUNsQixDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdkYsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyxjQUFjLENBQUMsT0FBTztZQUN6QixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFNLENBQUMsTUFBTSxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQztnQkFDbEIsQ0FBQyxDQUFDLE9BQU8sQ0FDUCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDeEQsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQ3BDO2dCQUNELEdBQUcsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDOUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7b0JBQ2pCLFdBQVcsRUFBRSxLQUFLO29CQUNsQixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLElBQUksRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDO2lCQUNyQixDQUFDLENBQ0g7YUFDRixDQUFDLENBQUM7UUFDTCxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3RCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFNLENBQUMsTUFBTSxDQUFDO1lBRTNDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQztnQkFDbEIsQ0FBQyxDQUFDLFFBQVEsQ0FDUixlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQ3JELEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUNwQztnQkFDRCxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMzQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ2xDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztvQkFDakIsS0FBSyxFQUFFLEtBQUs7b0JBQ1osU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO29CQUMzQixJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQztpQkFDckIsQ0FBQyxDQUNIO2FBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztBQUNILENBQUM7QUF5QkQsTUFBTSxPQUFPLFVBQVcsU0FBUSxXQUFXO0lBSXpDLFlBQVksRUFBYyxFQUFFLEVBQXFCLEVBQUUsSUFBWTtRQUM3RCxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUg1QyxtQkFBYyxHQUFHLE9BQU8sQ0FBQztRQUN6QixZQUFPLEdBQVEsRUFBRSxDQUFDO0lBR2xCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRU8sVUFBVTtRQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFGLENBQUMsQ0FBQyxTQUFTLENBQUMsZ0RBQWdELEVBQUU7WUFDNUQsT0FBTyxFQUFFLEVBQUU7WUFDWCxXQUFXLEVBQUUsMkVBQTJFO1NBQ3pGLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRW5CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLEtBQUssR0FBd0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNwRCxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUc7WUFDVixNQUFNLEVBQUUsb0JBQW9CLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7U0FDekUsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztZQUN2QyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMvQyxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLGFBQWEsQ0FBQztnQkFDL0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO29CQUNuQixXQUFXLEVBQUU7d0JBQ1gsUUFBUSxFQUFFLEdBQUcsQ0FBQyxHQUFhO3dCQUMzQixTQUFTLEVBQUUsR0FBRyxDQUFDLEdBQWE7cUJBQzdCO29CQUNELGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNyQixRQUFRO29CQUNSLGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNyQixRQUFRO29CQUNSLGFBQWEsRUFBRSxLQUFLO2lCQUNyQixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFZLENBQUM7UUFDL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2hFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFaEUsT0FBTztZQUNMLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsTUFBTSxDQUFDLEdBQWE7Z0JBQzlCLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBYTthQUNoQztZQUNELFNBQVM7WUFDVCxNQUFNLEVBQUU7Z0JBQ04sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUU7Z0JBQ3JDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFO2FBQ3RDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsTUFBTSxRQUFRLEdBQW1CLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFTLENBQUM7UUFDeEQsT0FBTztZQUNMLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFPLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFPLENBQUMsU0FBUyxDQUFDO1lBQy9ELElBQUksRUFBRSxRQUFRLENBQUMsU0FBVTtTQUMxQixDQUFDO0lBQ0osQ0FBQztJQUVRLGlCQUFpQixDQUFDLFFBQTZCLEVBQUUsS0FBMEI7UUFDbEYsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsTUFBTSxZQUFZLEdBQXVCLElBQUksR0FBRyxFQUFFLENBQUM7UUFFbkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLE1BQU0sR0FBRyxHQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN4RixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUMzQixZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztnQkFDRCxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0MsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMxQixJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDO1lBQ3ZCLElBQUksTUFBTSxZQUFZLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFFLEVBQUU7b0JBQ2hELEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7d0JBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTs0QkFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7Z0NBQ3ZCLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRTtnQ0FDYixhQUFhLEVBQUU7b0NBQ2IsYUFBYSxFQUFFLEtBQUs7b0NBQ3BCLE9BQU8sRUFBRSxFQUFFLENBQUMsTUFBTTtvQ0FDbEIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2lDQUNkOzZCQUNGLENBQUMsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sQ0FBQztnQkFDTixFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQzs0QkFDdkIsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFOzRCQUNiLGFBQWEsRUFBRTtnQ0FDYixhQUFhLEVBQUUsS0FBSztnQ0FDcEIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxNQUFNO2dDQUNsQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NkJBQ2Q7eUJBQ0YsQ0FBQyxDQUFDO29CQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksS0FBSyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQzFCLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUNsRixDQUFDO2dCQUNGLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3RDLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7b0JBRWhFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQzFCLFdBQVcsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFOzRCQUM3QixTQUFTLEVBQUUsS0FBSzs0QkFDaEIsU0FBUyxFQUFFLE1BQU07eUJBQ2xCLENBQUMsQ0FBQzt3QkFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDakMsQ0FBQztvQkFDRCxNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDbEQsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7d0JBQ3hDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7NEJBQzVCLElBQ0UsSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTTtnQ0FDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUc7Z0NBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQzlELENBQUM7Z0NBQ0QsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7Z0NBQ2hDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO2dDQUM3RCxNQUFNLE1BQU0sR0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dDQUN6RSxNQUFNLE1BQU0sR0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dDQUN6RSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUMxQyxDQUFDO3dCQUNILENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQzs0QkFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7d0JBQ3RDLENBQUM7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7d0JBQ3ZDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEVBQUU7NEJBQzdCLElBQUksSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Z0NBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7Z0NBQ2xELEVBQUUsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUMvQixDQUFDO3dCQUNILENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDOzRCQUN0QyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDaEMsQ0FBQztvQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztZQUNELEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDUSx3QkFBd0IsQ0FDL0IsUUFBNkIsRUFDN0IsS0FBMEI7UUFFMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLE9BQU87UUFDVCxDQUFDO1FBRUQsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ25CLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDdkIsSUFBSSxNQUFNLFlBQVksQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFPLEVBQUUsRUFBRTtvQkFDaEQsRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTt3QkFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFOzRCQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDO2dDQUM5QixNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0NBQ2IsS0FBSyxFQUFFO29DQUNMLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7b0NBQ25CLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7aUNBQ3BCOzZCQUNGLENBQUMsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDSCxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFO3dCQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ2pELENBQUMsQ0FBQyxDQUFDO29CQUNILEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7d0JBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTs0QkFDakIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQztnQ0FDN0IsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dDQUNiLGFBQWEsRUFBRTtvQ0FDYixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHO29DQUMxQixDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHO2lDQUMzQjtnQ0FDRCxNQUFNLEVBQUU7b0NBQ04sQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRztvQ0FDL0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRztpQ0FDaEM7NkJBQ0YsQ0FBQyxDQUFDO3dCQUNMLENBQUMsQ0FBQyxDQUFDO3dCQUNILElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO29CQUM3QixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sQ0FBQztnQkFDTixFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDOzRCQUM5QixNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUU7NEJBQ2IsS0FBSyxFQUFFO2dDQUNMLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7Z0NBQ25CLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUc7NkJBQ3BCO3lCQUNGLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7WUFFRCxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLE1BQU0sS0FBSyxHQUFpQixJQUFJLENBQUMsS0FBSyxFQUFFO2FBQ3JDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2hGLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ1YsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxTQUFTLEdBQVUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3hELElBQUksU0FBUyxHQUFVLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV4RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMzQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7Z0JBQUUsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTNDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztnQkFBRSxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0MsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVEsUUFBUTtRQUNmLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQVEsRUFBRSxNQUF5QixFQUFFLEVBQUU7b0JBQzdELElBQUksR0FBRyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLENBQUMsQ0FBQzt3QkFDbEQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUNaLE9BQU87b0JBQ1QsQ0FBQztvQkFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7d0JBQ1QsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO3dCQUNyQixPQUFPO29CQUNULENBQUM7b0JBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUF1RCxFQUFFLEVBQUU7d0JBQy9FLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDOzRCQUNiLE9BQU87d0JBQ1QsQ0FBQzt3QkFDRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7d0JBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQ3RELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFFbEMsK0JBQStCO3dCQUMvQixHQUFHLENBQUMsSUFBSSxHQUFHLHNCQUFzQixDQUFDO3dCQUNsQyxHQUFHLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQzt3QkFDeEIsR0FBRyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7d0JBQzFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO3dCQUNsQixHQUFHLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQzt3QkFDekIsR0FBRyxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7d0JBQzVCLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWU7d0JBQzVELEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQjtvQkFDN0QsQ0FBQyxDQUFDLENBQUM7b0JBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDekMsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDVixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBWTtRQUN0QixJQUFJLEtBQUssR0FBVyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3JCLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsTUFBYztRQUMvQixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7UUFFdEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztRQUMxQixNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztRQUMzQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDbEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUNyQyxHQUFHLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUVwQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNYLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLEdBQUcsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQzVCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUViLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7UUFDbEMsR0FBRyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDekIsR0FBRyxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7UUFDNUIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFcEQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ1osT0FBTyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUU7WUFDM0IsUUFBUSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQztZQUN0QixVQUFVLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLENBQUM7WUFDaEMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDOytHQXJZVSxVQUFVO21HQUFWLFVBQVUsMEVBckJYLDJCQUEyQjs7NEZBcUIxQixVQUFVO2tCQXZCdEIsU0FBUzsrQkFDRSxhQUFhLFlBQ2IsMkJBQTJCOztBQTRadkMsU0FBUyxPQUFPLENBQUMsS0FBYTtJQUM1QixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7SUFFdEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRCxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztJQUMxQixNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztJQUMzQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDO0lBQ3ZELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFFLENBQUM7SUFDckMsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFFcEMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdELEdBQUcsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVYLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNaLE9BQU8sRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQzNCLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7UUFDdEIsVUFBVSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLFdBQVcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7S0FDNUIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0NoZWNrZWQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdE1hcCwgUmVjb3JkV2l0aElkIH0gZnJvbSAnLi4vYWJzdHJhY3QtbWFwJztcclxuaW1wb3J0IHsgR2VvTWFwSXRlbSwgR2VvTWFwSXRlbUtpbmQsIEdlb01hcFZpZXdwb3J0IH0gZnJvbSAnLi4vYXBpJztcclxuaW1wb3J0IHsgQ29vcmQsIE1hcEl0ZW1Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vc21hcnQtbWFwLnR5cGVzJztcclxuaW1wb3J0IHsgSSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XHJcblxyXG5kZWNsYXJlIHZhciBMOiBhbnk7XHJcbmRlY2xhcmUgY29uc3QgbGVhZmxldEltYWdlOiBhbnk7XHJcblxyXG5pbnRlcmZhY2UgTGVhZmxldE1hcE9wdGlvbnMge1xyXG4gIGNlbnRyZTogQXJyYXk8bnVtYmVyPjtcclxuICB6b29tOiBudW1iZXI7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZUxlYWZsZXRNYXBJdGVtKGl0ZW06IEdlb01hcEl0ZW0sIGNvbmZpZzogTWFwSXRlbUNvbmZpZ3VyYXRpb24pOiBhbnkge1xyXG4gIGxldCBjb2xvciA9IGl0ZW0uY29sb3IgPz8gY29uZmlnLmNvbG9yO1xyXG4gIHN3aXRjaCAoaXRlbS5raW5kKSB7XHJcbiAgICBjYXNlIEdlb01hcEl0ZW1LaW5kLk1BUktFUjpcclxuICAgICAgbGV0IG1hcmtlciA9IEwubWFya2VyKEwubGF0TG5nKGl0ZW0ucG9zaXRpb24hLmxhdGl0dWRlLCBpdGVtLnBvc2l0aW9uIS5sb25naXR1ZGUpLCB7XHJcbiAgICAgICAgZHJhZ2dhYmxlOiBjb25maWcuZHJhZ2dhYmxlLFxyXG4gICAgICB9KS5iaW5kVG9vbHRpcChpdGVtLmxhYmVsLCB7XHJcbiAgICAgICAgcGVybWFuZW50OiBpdGVtLnBlcm1hbmVudExhYmVsID8/IGZhbHNlLFxyXG4gICAgICAgIGRpcmVjdGlvbjogJ2F1dG8nLFxyXG4gICAgICB9KTtcclxuICAgICAgbWFya2VyLm9yaWdpbmFsTGF0TG5nID0gTC5sYXRMbmcoaXRlbS5wb3NpdGlvbiEubGF0aXR1ZGUsIGl0ZW0ucG9zaXRpb24hLmxvbmdpdHVkZSk7IC8vXHJcbiAgICAgIHJldHVybiBtYXJrZXI7XHJcbiAgICBjYXNlIEdlb01hcEl0ZW1LaW5kLlBPTFlHT046XHJcbiAgICAgIGNvbnN0IHBvbHlnb25Sb3V0ZVBvaW50cyA9IGl0ZW0ucm91dGUhLnBvaW50cztcclxuICAgICAgcmV0dXJuIEwubGF5ZXJHcm91cChbXHJcbiAgICAgICAgTC5wb2x5Z29uKFxyXG4gICAgICAgICAgcG9seWdvblJvdXRlUG9pbnRzLm1hcCgocCkgPT4gW3AubGF0aXR1ZGUsIHAubG9uZ2l0dWRlXSksXHJcbiAgICAgICAgICB7IHRpdGxlOiBpdGVtLmxhYmVsLCBjb2xvcjogY29sb3IgfVxyXG4gICAgICAgICksXHJcbiAgICAgICAgLi4ucG9seWdvblJvdXRlUG9pbnRzLm1hcCgocCkgPT5cclxuICAgICAgICAgIEwubWFya2VyKFtwLmxhdGl0dWRlLCBwLmxvbmdpdHVkZV0sIHtcclxuICAgICAgICAgICAgdGl0bGU6IGl0ZW0ubGFiZWwsXHJcbiAgICAgICAgICAgIG1hcmtlckNvbG9yOiBjb2xvcixcclxuICAgICAgICAgICAgZHJhZ2dhYmxlOiBjb25maWcuZHJhZ2dhYmxlLFxyXG4gICAgICAgICAgICBpY29uOiBnZXRJY29uKGNvbG9yKSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKSxcclxuICAgICAgXSk7XHJcbiAgICBjYXNlIEdlb01hcEl0ZW1LaW5kLkxJTkU6XHJcbiAgICAgIGNvbnN0IGxpbmVSb3V0ZVBvaW50cyA9IGl0ZW0ucm91dGUhLnBvaW50cztcclxuXHJcbiAgICAgIHJldHVybiBMLmxheWVyR3JvdXAoW1xyXG4gICAgICAgIEwucG9seWxpbmUoXHJcbiAgICAgICAgICBsaW5lUm91dGVQb2ludHMubWFwKChwKSA9PiBbcC5sYXRpdHVkZSwgcC5sb25naXR1ZGVdKSxcclxuICAgICAgICAgIHsgdGl0bGU6IGl0ZW0ubGFiZWwsIGNvbG9yOiBjb2xvciB9XHJcbiAgICAgICAgKSxcclxuICAgICAgICAuLi5saW5lUm91dGVQb2ludHMubWFwKChwKSA9PlxyXG4gICAgICAgICAgTC5tYXJrZXIoW3AubGF0aXR1ZGUsIHAubG9uZ2l0dWRlXSwge1xyXG4gICAgICAgICAgICB0aXRsZTogaXRlbS5sYWJlbCxcclxuICAgICAgICAgICAgY29sb3I6IGNvbG9yLFxyXG4gICAgICAgICAgICBkcmFnZ2FibGU6IGNvbmZpZy5kcmFnZ2FibGUsXHJcbiAgICAgICAgICAgIGljb246IGdldEljb24oY29sb3IpLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApLFxyXG4gICAgICBdKTtcclxuICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGVhZmxldC1tYXAnLFxyXG4gIHRlbXBsYXRlOiBgIDxkaXYgaWQ9XCJsZWFmbGV0XCI+PC9kaXY+YCxcclxuICBzdHlsZXM6IGBcclxuICAgICAgI2xlYWZsZXQge1xyXG4gICAgICAgICAgaGVpZ2h0OiA3MjBweDtcclxuICAgICAgfVxyXG4gICAgIDo6bmctZGVlcCAubWFya2VyLWNvdW50IHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc4ZDQ7XHJcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLDAsMCwwLjQpO1xyXG4gICAgfVxyXG4gICAgIDo6bmctZGVlcCAuY3VzdG9tLWNsdXN0ZXItaWNvbiB7XHJcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfWAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMZWFmbGV0TWFwIGV4dGVuZHMgQWJzdHJhY3RNYXAgaW1wbGVtZW50cyBBZnRlclZpZXdDaGVja2VkIHtcclxuICBvcmlnaW5hbExhdExuZzogYW55O1xyXG4gIG9mZnNldERpc3RhbmNlID0gMC4wMDAwNDtcclxuICBtYXJrZXJzOiBhbnkgPSBbXTtcclxuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZiwgY2Q6IENoYW5nZURldGVjdG9yUmVmLCB6b25lOiBOZ1pvbmUpIHtcclxuICAgIHN1cGVyKGVsLCBjZCwgem9uZSwgY3JlYXRlTGVhZmxldE1hcEl0ZW0pO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLm1hcCAmJiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQub2Zmc2V0UGFyZW50KSB7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuY3JlYXRlTGVhZmxldE1hcE9wdGlvbnMoKTtcclxuICAgIHRoaXMubWFwID0gTC5tYXAoJ2xlYWZsZXQnLCB7IHByZWZlckNhbnZhczogdHJ1ZSB9KS5zZXRWaWV3KG9wdGlvbnMuY2VudHJlLCBvcHRpb25zLnpvb20pO1xyXG4gICAgTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLCB7XHJcbiAgICAgIG1heFpvb206IDE5LFxyXG4gICAgICBhdHRyaWJ1dGlvbjogJyZjb3B5OyA8YSBocmVmPVwiaHR0cDovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHRcIj5PcGVuU3RyZWV0TWFwPC9hPicsXHJcbiAgICB9KS5hZGRUbyh0aGlzLm1hcCk7XHJcblxyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLml0ZW1zKCk7XHJcbiAgICBjb25zdCB0b0FkZDogQXJyYXk8UmVjb3JkV2l0aElkPiA9IGl0ZW1zLm1hcCgoaXQpID0+ICh7XHJcbiAgICAgIGlkOiBpdC5pZCEsXHJcbiAgICAgIHJlY29yZDogY3JlYXRlTGVhZmxldE1hcEl0ZW0oaXQsIHsgY29sb3I6ICcjMzM4OGZmJywgZHJhZ2dhYmxlOiBmYWxzZSB9KSxcclxuICAgIH0pKTtcclxuICAgIHRoaXMuaGFuZGxlSXRlbUNoYW5nZXMoW10sIHRvQWRkKTtcclxuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5tb2RlbCgpO1xyXG4gICAgaWYgKG1vZGVsLnZpZXdTdGF0ZT8uZml0VG9Jbml0aWFsSXRlbXMpIHtcclxuICAgICAgY29uc3QgZGF0YXNldEJvdW5kcyA9IHRoaXMuZmluZERhdGFzZXRCb3VuZHMoKTtcclxuICAgICAgaWYgKGRhdGFzZXRCb3VuZHMpIHtcclxuICAgICAgICBjb25zdCB7IGEsIGIgfSA9IGRhdGFzZXRCb3VuZHM7XHJcbiAgICAgICAgY29uc3QgcG50QSA9IEwubGF0TG5nKGEueCwgYS55KTtcclxuICAgICAgICBjb25zdCBwbnRCID0gTC5sYXRMbmcoYi54LCBiLnkpO1xyXG4gICAgICAgIGNvbnN0IGJvdW5kcyA9IEwubGF0TG5nQm91bmRzKHBudEEsIHBudEIpO1xyXG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5tYXAuZml0Qm91bmRzKGJvdW5kcyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubWFwLm9uKCdjbGljaycsIChldmVudDogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBvcyA9IGV2ZW50LmxhdGxuZztcclxuICAgICAgICB0aGlzLm9uTWFwQ2xpY2suZW1pdCh7XHJcbiAgICAgICAgICBjb29yZGluYXRlczoge1xyXG4gICAgICAgICAgICBsYXRpdHVkZTogcG9zLmxhdCBhcyBudW1iZXIsXHJcbiAgICAgICAgICAgIGxvbmdpdHVkZTogcG9zLmxuZyBhcyBudW1iZXIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tYXAub24oJ21vdmVlbmQnLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcclxuICAgICAgICB0aGlzLm9uTWFwRHJhZ0VuZC5lbWl0KHtcclxuICAgICAgICAgIHZpZXdwb3J0LFxyXG4gICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tYXAub24oJ3pvb21lbmQnLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcclxuICAgICAgICB0aGlzLm9uTWFwRHJhZ0VuZC5lbWl0KHtcclxuICAgICAgICAgIHZpZXdwb3J0LFxyXG4gICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRWaWV3cG9ydCgpOiBHZW9NYXBWaWV3cG9ydCB7XHJcbiAgICBpZiAoIXRoaXMubWFwKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFwIGlzIG5vdCB5ZXQgaW5pdGlhbGlzZWQhJyk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2VudGVyID0gdGhpcy5tYXAuZ2V0Q2VudGVyKCk7XHJcbiAgICBjb25zdCB6b29tTGV2ZWwgPSB0aGlzLm1hcC5nZXRab29tKCkgYXMgbnVtYmVyO1xyXG4gICAgY29uc3QgbGVhZmxldEJvdW5kcyA9IHRoaXMubWFwLmdldEJvdW5kcygpO1xyXG4gICAgY29uc3QgeyBsYXQ6IHN3TGF0LCBsbmc6IHN3TG5nIH0gPSBsZWFmbGV0Qm91bmRzLmdldFNvdXRoV2VzdCgpO1xyXG4gICAgY29uc3QgeyBsYXQ6IG5lTGF0LCBsbmc6IG5lTG5nIH0gPSBsZWFmbGV0Qm91bmRzLmdldE5vcnRoRWFzdCgpO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGNlbnRlcjoge1xyXG4gICAgICAgIGxhdGl0dWRlOiBjZW50ZXIubGF0IGFzIG51bWJlcixcclxuICAgICAgICBsb25naXR1ZGU6IGNlbnRlci5sbmcgYXMgbnVtYmVyLFxyXG4gICAgICB9LFxyXG4gICAgICB6b29tTGV2ZWwsXHJcbiAgICAgIGJvdW5kczogW1xyXG4gICAgICAgIHsgbGF0aXR1ZGU6IHN3TGF0LCBsb25naXR1ZGU6IHN3TG5nIH0sXHJcbiAgICAgICAgeyBsYXRpdHVkZTogbmVMYXQsIGxvbmdpdHVkZTogbmVMbmcgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUxlYWZsZXRNYXBPcHRpb25zKCk6IExlYWZsZXRNYXBPcHRpb25zIHtcclxuICAgIGNvbnN0IHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydCA9IHRoaXMubW9kZWwoKS52aWV3cG9ydCE7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjZW50cmU6IFt2aWV3cG9ydC5jZW50ZXIhLmxhdGl0dWRlLCB2aWV3cG9ydC5jZW50ZXIhLmxvbmdpdHVkZV0sXHJcbiAgICAgIHpvb206IHZpZXdwb3J0Lnpvb21MZXZlbCEsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgaGFuZGxlSXRlbUNoYW5nZXModG9SZW1vdmU6IEFycmF5PFJlY29yZFdpdGhJZD4sIHRvQWRkOiBBcnJheTxSZWNvcmRXaXRoSWQ+KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMubWFwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMubWFya2VycyA9IFtdO1xyXG4gICAgY29uc3QgbWFya2VyR3JvdXBzOiBNYXA8c3RyaW5nLCBhbnlbXT4gPSBuZXcgTWFwKCk7XHJcblxyXG4gICAgdG9BZGQuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICBpZiAoaXRlbS5yZWNvcmQgaW5zdGFuY2VvZiBMLk1hcmtlcikge1xyXG4gICAgICAgIGNvbnN0IGtleSA9XHJcbiAgICAgICAgICBpdGVtLnJlY29yZC5nZXRMYXRMbmcoKS5sYXQudG9GaXhlZCg2KSArICcsJyArIGl0ZW0ucmVjb3JkLmdldExhdExuZygpLmxuZy50b0ZpeGVkKDYpO1xyXG4gICAgICAgIGlmICghbWFya2VyR3JvdXBzLmdldChrZXkpKSB7XHJcbiAgICAgICAgICBtYXJrZXJHcm91cHMuc2V0KGtleSwgW10pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBtYXJrZXJHcm91cHMuZ2V0KGtleSkhLnB1c2goaXRlbS5yZWNvcmQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0b1JlbW92ZS5mb3JFYWNoKChpdCkgPT4ge1xyXG4gICAgICBpdC5yZWNvcmQucmVtb3ZlKCk7XHJcbiAgICAgIHRoaXMub3ZlcmxheXMuZGVsZXRlKGl0LmlkKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRvQWRkLmZvckVhY2goKGl0LCBpbmRleCkgPT4ge1xyXG4gICAgICBsZXQgcmVjb3JkID0gaXQucmVjb3JkO1xyXG4gICAgICBpZiAocmVjb3JkIGluc3RhbmNlb2YgTC5MYXllckdyb3VwKSB7XHJcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhyZWNvcmQuX2xheWVycykuZm9yRWFjaCgoYXQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgYXQub24oJ2NsaWNrJywgKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5vbk92ZXJsYXlDbGljay5lbWl0KHtcclxuICAgICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXHJcbiAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiB7XHJcbiAgICAgICAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50LFxyXG4gICAgICAgICAgICAgICAgICBvdmVybGF5OiBpdC5yZWNvcmQsXHJcbiAgICAgICAgICAgICAgICAgIG1hcDogdGhpcy5tYXAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGl0LnJlY29yZC5vbignY2xpY2snLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMub25PdmVybGF5Q2xpY2suZW1pdCh7XHJcbiAgICAgICAgICAgICAgaXRlbUlkOiBpdC5pZCxcclxuICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiB7XHJcbiAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcclxuICAgICAgICAgICAgICAgIG92ZXJsYXk6IGl0LnJlY29yZCxcclxuICAgICAgICAgICAgICAgIG1hcDogdGhpcy5tYXAsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgbGV0IGdyb3VwID0gbWFya2VyR3JvdXBzLmdldChcclxuICAgICAgICAgIGl0LnJlY29yZC5nZXRMYXRMbmcoKS5sYXQudG9GaXhlZCg2KSArICcsJyArIGl0LnJlY29yZC5nZXRMYXRMbmcoKS5sbmcudG9GaXhlZCg2KVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgaWYgKGdyb3VwICYmIGdyb3VwLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgIGNvbnN0IGljb24gPSB0aGlzLmNyZWF0ZU51bWJlcmVkSWNvbihncm91cC5sZW5ndGgpO1xyXG4gICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmNyZWF0ZUxhYmVsKGdyb3VwKTtcclxuICAgICAgICAgIGNvbnN0IGV4dHJhTWFya2VyID0gTC5tYXJrZXIoZ3JvdXBbMF0ub3JpZ2luYWxMYXRMbmcsIHsgaWNvbiB9KTtcclxuXHJcbiAgICAgICAgICBpZiAoIWV4dHJhTWFya2VyLl90b29sdGlwKSB7XHJcbiAgICAgICAgICAgIGV4dHJhTWFya2VyLmJpbmRUb29sdGlwKGxhYmVsLCB7XHJcbiAgICAgICAgICAgICAgcGVybWFuZW50OiBmYWxzZSxcclxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdhdXRvJyxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMubWFya2Vycy5wdXNoKGV4dHJhTWFya2VyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnN0IGNsdXN0ZXJNYXJrZXIgPSBleHRyYU1hcmtlci5hZGRUbyh0aGlzLm1hcCk7XHJcbiAgICAgICAgICBpdC5yZWNvcmQub24oJ21vdXNlb3ZlcicsIChfZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICB0b0FkZC5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIGl0ZW0ucmVjb3JkIGluc3RhbmNlb2YgTC5NYXJrZXIgJiZcclxuICAgICAgICAgICAgICAgIGl0ZW0ucmVjb3JkLm9yaWdpbmFsTGF0TG5nLmxhdCA9PSBpdC5yZWNvcmQub3JpZ2luYWxMYXRMbmcubGF0ICYmXHJcbiAgICAgICAgICAgICAgICBpdGVtLnJlY29yZC5vcmlnaW5hbExhdExuZy5sbmcgPT0gaXQucmVjb3JkLm9yaWdpbmFsTGF0TG5nLmxuZ1xyXG4gICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgaXQucmVjb3JkLnNldFpJbmRleE9mZnNldCgxMDAwKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGFuZ2xlID0gKCgzNjAgLyB0b0FkZC5sZW5ndGgpICogaW5kZXggKiBNYXRoLlBJKSAvIDE4MDtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0xhdCA9XHJcbiAgICAgICAgICAgICAgICAgIGl0ZW0ucmVjb3JkLm9yaWdpbmFsTGF0TG5nLmxhdCArIHRoaXMub2Zmc2V0RGlzdGFuY2UgKiBNYXRoLmNvcyhhbmdsZSk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdMbmcgPVxyXG4gICAgICAgICAgICAgICAgICBpdGVtLnJlY29yZC5vcmlnaW5hbExhdExuZy5sbmcgKyB0aGlzLm9mZnNldERpc3RhbmNlICogTWF0aC5zaW4oYW5nbGUpO1xyXG4gICAgICAgICAgICAgICAgaXRlbS5yZWNvcmQuc2V0TGF0TG5nKFtuZXdMYXQsIG5ld0xuZ10pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLm1hcC5oYXNMYXllcihjbHVzdGVyTWFya2VyKSkge1xyXG4gICAgICAgICAgICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKGNsdXN0ZXJNYXJrZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGl0LnJlY29yZC5vbignbW91c2VvdXQnLCAoX2V2ZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdG9BZGQuZm9yRWFjaCgoaXRlbSwgX2luZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKGl0ZW0ucmVjb3JkIGluc3RhbmNlb2YgTC5NYXJrZXIpIHtcclxuICAgICAgICAgICAgICAgIGl0ZW0ucmVjb3JkLnNldExhdExuZyhpdGVtLnJlY29yZC5vcmlnaW5hbExhdExuZyk7XHJcbiAgICAgICAgICAgICAgICBpdC5yZWNvcmQuc2V0WkluZGV4T2Zmc2V0KDApO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5tYXAuaGFzTGF5ZXIoY2x1c3Rlck1hcmtlcikpIHtcclxuICAgICAgICAgICAgICBjbHVzdGVyTWFya2VyLmFkZFRvKHRoaXMubWFwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubWFya2Vycy5wdXNoKGl0LnJlY29yZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGl0LnJlY29yZC5hZGRUbyh0aGlzLm1hcCk7XHJcbiAgICAgIHRoaXMub3ZlcmxheXMuc2V0KGl0LmlkLCBpdC5yZWNvcmQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG92ZXJyaWRlIGhhbmRsZUVkaXRpbmdJdGVtQ2hhbmdlcyhcclxuICAgIHRvUmVtb3ZlOiBBcnJheTxSZWNvcmRXaXRoSWQ+LFxyXG4gICAgdG9BZGQ6IEFycmF5PFJlY29yZFdpdGhJZD5cclxuICApOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5tYXApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRvUmVtb3ZlLmZvckVhY2goKGl0KSA9PiB7XHJcbiAgICAgIGl0LnJlY29yZC5yZW1vdmUoKTtcclxuICAgICAgdGhpcy5lZGl0aW5nT3ZlcmxheXMuZGVsZXRlKGl0LmlkKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRvQWRkLmZvckVhY2goKGl0KSA9PiB7XHJcbiAgICAgIGxldCByZWNvcmQgPSBpdC5yZWNvcmQ7XHJcbiAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiBMLkxheWVyR3JvdXApIHtcclxuICAgICAgICBPYmplY3QudmFsdWVzKHJlY29yZC5fbGF5ZXJzKS5mb3JFYWNoKChhdDogYW55KSA9PiB7XHJcbiAgICAgICAgICBhdC5vbignY2xpY2snLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLm9uRWRpdGluZ092ZXJsYXlDbGljay5lbWl0KHtcclxuICAgICAgICAgICAgICAgIGl0ZW1JZDogaXQuaWQsXHJcbiAgICAgICAgICAgICAgICBjb29yZDoge1xyXG4gICAgICAgICAgICAgICAgICB4OiBldmVudC5sYXRsbmcubG5nLFxyXG4gICAgICAgICAgICAgICAgICB5OiBldmVudC5sYXRsbmcubGF0LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGF0Lm9uKCdkcmFnc3RhcnQnLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm9yaWdpbmFsTGF0TG5nID0gZXZlbnQudGFyZ2V0LmdldExhdExuZygpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBhdC5vbignZHJhZ2VuZCcsIChldmVudDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMub25FZGl0aW5nT3ZlcmxheURyYWcuZW1pdCh7XHJcbiAgICAgICAgICAgICAgICBpdGVtSWQ6IGl0LmlkLFxyXG4gICAgICAgICAgICAgICAgc3RhcnRQb3NpdGlvbjoge1xyXG4gICAgICAgICAgICAgICAgICB4OiB0aGlzLm9yaWdpbmFsTGF0TG5nLmxuZyxcclxuICAgICAgICAgICAgICAgICAgeTogdGhpcy5vcmlnaW5hbExhdExuZy5sYXQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgZHJhZ1RvOiB7XHJcbiAgICAgICAgICAgICAgICAgIHg6IGV2ZW50LnRhcmdldC5nZXRMYXRMbmcoKS5sbmcsXHJcbiAgICAgICAgICAgICAgICAgIHk6IGV2ZW50LnRhcmdldC5nZXRMYXRMbmcoKS5sYXQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdGhpcy5vcmlnaW5hbExhdExuZyA9IG51bGw7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpdC5yZWNvcmQub24oJ2NsaWNrJywgKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm9uRWRpdGluZ092ZXJsYXlDbGljay5lbWl0KHtcclxuICAgICAgICAgICAgICBpdGVtSWQ6IGl0LmlkLFxyXG4gICAgICAgICAgICAgIGNvb3JkOiB7XHJcbiAgICAgICAgICAgICAgICB4OiBldmVudC5sYXRsbmcubG5nLFxyXG4gICAgICAgICAgICAgICAgeTogZXZlbnQubGF0bG5nLmxhdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpdC5yZWNvcmQuYWRkVG8odGhpcy5tYXApO1xyXG4gICAgICB0aGlzLmVkaXRpbmdPdmVybGF5cy5zZXQoaXQuaWQsIGl0LnJlY29yZCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZERhdGFzZXRCb3VuZHMoKTogeyBhOiBDb29yZDsgYjogQ29vcmQgfSB8IG51bGwge1xyXG4gICAgY29uc3QgaXRlbXM6IEFycmF5PENvb3JkPiA9IHRoaXMuaXRlbXMoKVxyXG4gICAgICAuZmxhdE1hcCgoaXQpID0+IChpdC5wb3NpdGlvbiA/IFtpdC5wb3NpdGlvbl0gOiBpdC5yb3V0ZSA/IGl0LnJvdXRlLnBvaW50cyA6IFtdKSlcclxuICAgICAgLm1hcCgoaXQpID0+IHtcclxuICAgICAgICByZXR1cm4geyB4OiBpdC5sYXRpdHVkZSwgeTogaXQubG9uZ2l0dWRlIH07XHJcbiAgICAgIH0pO1xyXG4gICAgaWYgKCFpdGVtcyB8fCBpdGVtcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHNvdXRod2VzdDogQ29vcmQgPSB7IHg6IGl0ZW1zWzBdLngsIHk6IGl0ZW1zWzBdLnkgfTtcclxuICAgIGxldCBub3J0aGVhc3Q6IENvb3JkID0geyB4OiBpdGVtc1swXS54LCB5OiBpdGVtc1swXS55IH07XHJcblxyXG4gICAgaXRlbXMuZm9yRWFjaCgoaXQpID0+IHtcclxuICAgICAgaWYgKGl0LnggPCBzb3V0aHdlc3QueCkgc291dGh3ZXN0LnggPSBpdC54O1xyXG4gICAgICBpZiAoaXQueSA8IHNvdXRod2VzdC55KSBzb3V0aHdlc3QueSA9IGl0Lnk7XHJcblxyXG4gICAgICBpZiAoaXQueCA+IG5vcnRoZWFzdC54KSBub3J0aGVhc3QueCA9IGl0Lng7XHJcbiAgICAgIGlmIChpdC55ID4gbm9ydGhlYXN0LnkpIG5vcnRoZWFzdC55ID0gaXQueTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB7IGE6IHNvdXRod2VzdCwgYjogbm9ydGhlYXN0IH07XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB0b0Jhc2U2NCgpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgbGVhZmxldEltYWdlKHRoaXMubWFwLCAoZXJyOiBhbnksIGNhbnZhczogSFRNTENhbnZhc0VsZW1lbnQpID0+IHtcclxuICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcignTGVhZmxldCBpbWFnZSBjYXB0dXJlIGVycm9yJywgZXJyKTtcclxuICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgIGlmICghY3R4KSB7XHJcbiAgICAgICAgICAgIHJlamVjdCgnTm8gY29udGV4dCcpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy5tYXJrZXJzLmZvckVhY2goKG1hcmtlcjogeyBnZXRUb29sdGlwOiAoKSA9PiBhbnk7IGdldExhdExuZzogKCkgPT4gYW55IH0pID0+IHtcclxuICAgICAgICAgICAgY29uc3QgdG9vbHRpcCA9IG1hcmtlci5nZXRUb29sdGlwKCk7XHJcbiAgICAgICAgICAgIGlmICghdG9vbHRpcCkge1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBsYXRMbmcgPSBtYXJrZXIuZ2V0TGF0TG5nKCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHBvaW50ID0gdGhpcy5tYXAubGF0TG5nVG9Db250YWluZXJQb2ludChsYXRMbmcpO1xyXG4gICAgICAgICAgICBjb25zdCB0ZXh0ID0gdG9vbHRpcC5nZXRDb250ZW50KCk7XHJcblxyXG4gICAgICAgICAgICAvLyBUb29sdGlwIHN6w7Z2ZWcgbWVnamVsZW7DrXTDqXNlXHJcbiAgICAgICAgICAgIGN0eC5mb250ID0gJ2JvbGQgMzBweCBzYW5zLXNlcmlmJztcclxuICAgICAgICAgICAgY3R4LmZpbGxTdHlsZSA9ICdibGFjayc7XHJcbiAgICAgICAgICAgIGN0eC5zdHJva2VTdHlsZSA9ICd3aGl0ZSc7XHJcbiAgICAgICAgICAgIGN0eC5saW5lV2lkdGggPSA0O1xyXG4gICAgICAgICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XHJcbiAgICAgICAgICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAnYm90dG9tJztcclxuICAgICAgICAgICAgY3R4LnN0cm9rZVRleHQodGV4dCwgcG9pbnQueCwgcG9pbnQueSArIDEwKTsgLy8gZmVow6lyIGtvbnTDunJcclxuICAgICAgICAgICAgY3R4LmZpbGxUZXh0KHRleHQsIHBvaW50LngsIHBvaW50LnkgKyAxMCk7IC8vIGZla2V0ZSBzesO2dmVnXHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICByZXNvbHZlKGNhbnZhcy50b0RhdGFVUkwoJ2ltYWdlL3BuZycpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSwgMzAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlTGFiZWwoZ3JvdXA6IGFueVtdKSB7XHJcbiAgICBsZXQgbGFiZWw6IHN0cmluZyA9ICcnO1xyXG4gICAgZ3JvdXAuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICBsYWJlbCArPSBpdGVtLl90b29sdGlwLl9jb250ZW50ICsgJywgJztcclxuICAgICAgaXRlbS5fdG9vbHRpcC5wZXJtYW5lbnQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGxhYmVsO1xyXG4gIH1cclxuICBjcmVhdGVOdW1iZXJlZEljb24obnVtYmVyOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IHNpemUgPSAzNTtcclxuICAgIGNvbnN0IHNjYWxlRmFjdG9yID0gMTU7XHJcbiAgICBjb25zdCBzY2FsZWRTaXplID0gc2l6ZSAqIHNjYWxlRmFjdG9yO1xyXG5cclxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xyXG4gICAgY2FudmFzLndpZHRoID0gc2NhbGVkU2l6ZTtcclxuICAgIGNhbnZhcy5oZWlnaHQgPSBzY2FsZWRTaXplO1xyXG4gICAgY2FudmFzLnN0eWxlLndpZHRoID0gY2FudmFzLnN0eWxlLmhlaWdodCA9ICczNXB4JztcclxuICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpITtcclxuICAgIGN0eC5zY2FsZShzY2FsZUZhY3Rvciwgc2NhbGVGYWN0b3IpO1xyXG5cclxuICAgIGN0eC5iZWdpblBhdGgoKTtcclxuICAgIGN0eC5hcmMoc2l6ZSAvIDIsIHNpemUgLyAyLCBzaXplIC8gMiAtIDIsIDAsIDIgKiBNYXRoLlBJLCBmYWxzZSk7XHJcbiAgICBjdHguZmlsbFN0eWxlID0gJyMwMDc4ZDQnO1xyXG4gICAgY3R4LmZpbGwoKTtcclxuICAgIGN0eC5saW5lV2lkdGggPSAyO1xyXG4gICAgY3R4LnN0cm9rZVN0eWxlID0gJyNmZmZmZmYnO1xyXG4gICAgY3R4LnN0cm9rZSgpO1xyXG5cclxuICAgIGN0eC5maWxsU3R5bGUgPSAnI2ZmZmZmZic7XHJcbiAgICBjdHguZm9udCA9ICdib2xkIDE2cHggc2Fucy1zZXJpZic7XHJcbiAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XHJcbiAgICBjdHgudGV4dEJhc2VsaW5lID0gJ21pZGRsZSc7XHJcbiAgICBjdHguZmlsbFRleHQobnVtYmVyLnRvU3RyaW5nKCksIHNpemUgLyAyLCBzaXplIC8gMik7XHJcblxyXG4gICAgcmV0dXJuIEwuaWNvbih7XHJcbiAgICAgIGljb25Vcmw6IGNhbnZhcy50b0RhdGFVUkwoKSxcclxuICAgICAgaWNvblNpemU6IFtzaXplLCBzaXplXSxcclxuICAgICAgaWNvbkFuY2hvcjogW3NpemUgLyAyLCBzaXplIC8gMl0sXHJcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLXNpemUgLyAyXSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5mdW5jdGlvbiBnZXRJY29uKGNvbG9yOiBzdHJpbmcpIHtcclxuICBjb25zdCBzaXplID0gMTI7XHJcbiAgY29uc3Qgc2NhbGVGYWN0b3IgPSAxMjtcclxuICBjb25zdCBzY2FsZWRTaXplID0gc2l6ZSAqIHNjYWxlRmFjdG9yO1xyXG5cclxuICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcclxuICBjYW52YXMud2lkdGggPSBzY2FsZWRTaXplO1xyXG4gIGNhbnZhcy5oZWlnaHQgPSBzY2FsZWRTaXplO1xyXG4gIGNhbnZhcy5zdHlsZS53aWR0aCA9IGNhbnZhcy5zdHlsZS5oZWlnaHQgPSBgJHtzaXplfXB4YDtcclxuICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKSE7XHJcbiAgY3R4LnNjYWxlKHNjYWxlRmFjdG9yLCBzY2FsZUZhY3Rvcik7XHJcblxyXG4gIGN0eC5iZWdpblBhdGgoKTtcclxuICBjdHguYXJjKHNpemUgLyAyLCBzaXplIC8gMiwgc2l6ZSAvIDIsIDAsIDIgKiBNYXRoLlBJLCBmYWxzZSk7XHJcbiAgY3R4LmZpbGxTdHlsZSA9IGNvbG9yO1xyXG4gIGN0eC5maWxsKCk7XHJcblxyXG4gIHJldHVybiBMLmljb24oe1xyXG4gICAgaWNvblVybDogY2FudmFzLnRvRGF0YVVSTCgpLFxyXG4gICAgaWNvblNpemU6IFtzaXplLCBzaXplXSxcclxuICAgIGljb25BbmNob3I6IFtzaXplIC8gMiwgc2l6ZSAvIDJdLFxyXG4gICAgcG9wdXBBbmNob3I6IFswLCAtc2l6ZSAvIDJdLFxyXG4gIH0pO1xyXG59XHJcbiJdfQ==
@@ -6,4 +6,4 @@ export * from './api/model/models';
6
6
  export * from './smart-map.types';
7
7
  export * from './abstract-map';
8
8
  export * from './api-default/api-default';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1tYXAvcHJvamVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zbWFydC1tYXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbWFwLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2ltcGwvZ29vZ2xlLW1hcCc7XG5leHBvcnQgKiBmcm9tICcuL2ltcGwvbGVhZmxldC1tYXAnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvbW9kZWwvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbWFwLnR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vYWJzdHJhY3QtbWFwJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpLWRlZmF1bHQvYXBpLWRlZmF1bHQnO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1tYXAvcHJvamVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zbWFydC1tYXAuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zbWFydC1tYXAubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbXBsL2dvb2dsZS1tYXAnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ltcGwvbGVhZmxldC1tYXAnO1xyXG5leHBvcnQgKiBmcm9tICcuL2FwaS9tb2RlbC9tb2RlbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW1hcC50eXBlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYWJzdHJhY3QtbWFwJztcclxuZXhwb3J0ICogZnJvbSAnLi9hcGktZGVmYXVsdC9hcGktZGVmYXVsdCc7XHJcbiJdfQ==
@@ -201,11 +201,11 @@ export class SmartMapComponent {
201
201
  return this.mapComponent.toBase64();
202
202
  }
203
203
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartMapComponent, deps: [{ token: MAP_ENGINE }, { token: i1.GeoMapService }], target: i0.ɵɵFactoryTarget.Component }); }
204
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartMapComponent, selector: "smart-map", inputs: { uuid: "uuid", identifier: "identifier", parent: "parent" }, viewQueries: [{ propertyName: "mapComponent", first: true, predicate: ["mapComponent"], descendants: true }], ngImport: i0, template: "@if (model()) { @if (mapEngine === MapEngine.GOOGLE) {\n<google-map\n #mapComponent\n [model]=\"model()!\"\n [items]=\"items()\"\n [style]=\"{ width: '100%', height: '320px' }\"\n (onMapDragEnd)=\"move($event.viewport)\"\n (onZoomChanged)=\"move($event.viewport)\"\n (onMapClick)=\"handleMapClick($event.coordinates)\"\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\n>\n</google-map>\n} @else if (mapEngine === MapEngine.LEAFLET) {\n<leaflet-map\n #mapComponent\n [model]=\"model()!\"\n [items]=\"items()\"\n [editingSession]=\"editingSession()\"\n (onMapDragEnd)=\"move($event.viewport)\"\n (onZoomChanged)=\"move($event.viewport)\"\n (onMapClick)=\"handleMapClick($event.coordinates)\"\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\n (onEditingOverlayDrag)=\"handleEditingItemDrag($event.itemId, $event)\"\n>\n</leaflet-map>\n} @else {\n<p>\n <strong>Not recognised map engine: [ {{ mapEngine }} ]</strong>\n</p>\n<p>Please provide a valid choice of map engine!</p>\n} }\n", styles: [""], dependencies: [{ kind: "component", type: i2.GoogleMap, selector: "google-map", inputs: ["style", "styleClass"], outputs: ["onOverlayDblClick", "onOverlayDragStart", "onOverlayDrag", "onOverlayDragEnd", "onMapReady"] }, { kind: "component", type: i3.LeafletMap, selector: "leaflet-map" }] }); }
204
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartMapComponent, selector: "smart-map", inputs: { uuid: "uuid", identifier: "identifier", parent: "parent" }, viewQueries: [{ propertyName: "mapComponent", first: true, predicate: ["mapComponent"], descendants: true }], ngImport: i0, template: "@if (model()) { @if (mapEngine === MapEngine.GOOGLE) {\r\n<google-map\r\n #mapComponent\r\n [model]=\"model()!\"\r\n [items]=\"items()\"\r\n [style]=\"{ width: '100%', height: '320px' }\"\r\n (onMapDragEnd)=\"move($event.viewport)\"\r\n (onZoomChanged)=\"move($event.viewport)\"\r\n (onMapClick)=\"handleMapClick($event.coordinates)\"\r\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\r\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\r\n>\r\n</google-map>\r\n} @else if (mapEngine === MapEngine.LEAFLET) {\r\n<leaflet-map\r\n #mapComponent\r\n [model]=\"model()!\"\r\n [items]=\"items()\"\r\n [editingSession]=\"editingSession()\"\r\n (onMapDragEnd)=\"move($event.viewport)\"\r\n (onZoomChanged)=\"move($event.viewport)\"\r\n (onMapClick)=\"handleMapClick($event.coordinates)\"\r\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\r\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\r\n (onEditingOverlayDrag)=\"handleEditingItemDrag($event.itemId, $event)\"\r\n>\r\n</leaflet-map>\r\n} @else {\r\n<p>\r\n <strong>Not recognised map engine: [ {{ mapEngine }} ]</strong>\r\n</p>\r\n<p>Please provide a valid choice of map engine!</p>\r\n} }\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.GoogleMap, selector: "google-map", inputs: ["style", "styleClass"], outputs: ["onOverlayDblClick", "onOverlayDragStart", "onOverlayDrag", "onOverlayDragEnd", "onMapReady"] }, { kind: "component", type: i3.LeafletMap, selector: "leaflet-map" }] }); }
205
205
  }
206
206
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartMapComponent, decorators: [{
207
207
  type: Component,
208
- args: [{ selector: 'smart-map', template: "@if (model()) { @if (mapEngine === MapEngine.GOOGLE) {\n<google-map\n #mapComponent\n [model]=\"model()!\"\n [items]=\"items()\"\n [style]=\"{ width: '100%', height: '320px' }\"\n (onMapDragEnd)=\"move($event.viewport)\"\n (onZoomChanged)=\"move($event.viewport)\"\n (onMapClick)=\"handleMapClick($event.coordinates)\"\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\n>\n</google-map>\n} @else if (mapEngine === MapEngine.LEAFLET) {\n<leaflet-map\n #mapComponent\n [model]=\"model()!\"\n [items]=\"items()\"\n [editingSession]=\"editingSession()\"\n (onMapDragEnd)=\"move($event.viewport)\"\n (onZoomChanged)=\"move($event.viewport)\"\n (onMapClick)=\"handleMapClick($event.coordinates)\"\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\n (onEditingOverlayDrag)=\"handleEditingItemDrag($event.itemId, $event)\"\n>\n</leaflet-map>\n} @else {\n<p>\n <strong>Not recognised map engine: [ {{ mapEngine }} ]</strong>\n</p>\n<p>Please provide a valid choice of map engine!</p>\n} }\n" }]
208
+ args: [{ selector: 'smart-map', template: "@if (model()) { @if (mapEngine === MapEngine.GOOGLE) {\r\n<google-map\r\n #mapComponent\r\n [model]=\"model()!\"\r\n [items]=\"items()\"\r\n [style]=\"{ width: '100%', height: '320px' }\"\r\n (onMapDragEnd)=\"move($event.viewport)\"\r\n (onZoomChanged)=\"move($event.viewport)\"\r\n (onMapClick)=\"handleMapClick($event.coordinates)\"\r\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\r\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\r\n>\r\n</google-map>\r\n} @else if (mapEngine === MapEngine.LEAFLET) {\r\n<leaflet-map\r\n #mapComponent\r\n [model]=\"model()!\"\r\n [items]=\"items()\"\r\n [editingSession]=\"editingSession()\"\r\n (onMapDragEnd)=\"move($event.viewport)\"\r\n (onZoomChanged)=\"move($event.viewport)\"\r\n (onMapClick)=\"handleMapClick($event.coordinates)\"\r\n (onOverlayClick)=\"handleItemClick($event.itemId)\"\r\n (onEditingOverlayClick)=\"handleEditingItemClick($event.itemId, $event)\"\r\n (onEditingOverlayDrag)=\"handleEditingItemDrag($event.itemId, $event)\"\r\n>\r\n</leaflet-map>\r\n} @else {\r\n<p>\r\n <strong>Not recognised map engine: [ {{ mapEngine }} ]</strong>\r\n</p>\r\n<p>Please provide a valid choice of map engine!</p>\r\n} }\r\n" }]
209
209
  }], ctorParameters: () => [{ type: MapEngine, decorators: [{
210
210
  type: Inject,
211
211
  args: [MAP_ENGINE]
@@ -219,4 +219,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
219
219
  type: ViewChild,
220
220
  args: ['mapComponent']
221
221
  }] } });
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUlMLGNBQWMsRUFHZCxtQkFBbUIsR0FLcEIsTUFBTSxPQUFPLENBQUM7Ozs7O0FBTWYsTUFBTSxDQUFOLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNuQiw4QkFBaUIsQ0FBQTtJQUNqQixnQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxjQUFjLENBQVksWUFBWSxDQUFDLENBQUM7QUFFdEUsTUFBTSxNQUFNLEdBQXVDLENBQUMsQ0FBb0IsRUFBRSxDQUFvQixFQUFFLEVBQUU7SUFDaEcsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FB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IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgU2lnbmFsLFxuICBzaWduYWwsXG4gIFZhbHVlRXF1YWxpdHlGbixcbiAgVmlld0NoaWxkLFxuICBXcml0YWJsZVNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBHZW9NYXBDaGFuZ2UsXG4gIEdlb01hcEVkaXRpbmdTZXNzaW9uLFxuICBHZW9NYXBJdGVtLFxuICBHZW9NYXBJdGVtS2luZCxcbiAgR2VvTWFwTGF5ZXIsXG4gIEdlb01hcE1vZGVsLFxuICBHZW9NYXBPcGVyYXRpb25Nb2RlLFxuICBHZW9NYXBTZXJ2aWNlLFxuICBHZW9NYXBWaWV3cG9ydCxcbiAgR2VvTWFwVmlld1N0YXRlLFxuICBHUFNQb3NpdGlvbixcbn0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHsgVmlld0NvbnRleHRDaGFuZ2UgfSBmcm9tICcuLi92aWV3LWNvbnRleHQvYXBpJztcbmltcG9ydCB7IFNtYXJ0Vmlld0NvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L3NtYXJ0LXZpZXctY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcEVkaXRpbmdJdGVtQ2xpY2tlZEV2ZW50LCBNYXBFZGl0aW5nSXRlbURyYWdnZWRFdmVudCB9IGZyb20gJy4vc21hcnQtbWFwLnR5cGVzJztcbmltcG9ydCB7IEFic3RyYWN0TWFwIH0gZnJvbSAnLi9hYnN0cmFjdC1tYXAnO1xuXG5leHBvcnQgZW51bSBNYXBFbmdpbmUge1xuICBHT09HTEUgPSAnR09PR0xFJyxcbiAgTEVBRkxFVCA9ICdMRUFGTEVUJyxcbn1cblxuZXhwb3J0IGNvbnN0IE1BUF9FTkdJTkUgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWFwRW5naW5lPignTUFQX0VOR0lORScpO1xuXG5jb25zdCBpdGVtRXE6IFZhbHVlRXF1YWxpdHlGbjxBcnJheTxHZW9NYXBJdGVtPj4gPSAoYTogQXJyYXk8R2VvTWFwSXRlbT4sIGI6IEFycmF5PEdlb01hcEl0ZW0+KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9ucyA9IG5ldyBTZXQoYS5tYXAoKGl0OiBHZW9NYXBJdGVtKSA9PiBpdC5wb3NpdGlvbikpO1xuICBiLmZvckVhY2goKGl0OiBHZW9NYXBJdGVtKSA9PiBwb3NpdGlvbnMuZGVsZXRlKGl0LnBvc2l0aW9uKSk7XG4gIHJldHVybiBhLmxlbmd0aCA9PT0gYi5sZW5ndGggJiYgcG9zaXRpb25zLnNpemUgPT09IDA7XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzbWFydC1tYXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3NtYXJ0LW1hcC5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgU21hcnRNYXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBNYXBFbmdpbmUgPSBNYXBFbmdpbmU7XG5cbiAgQElucHV0KCkgdXVpZCE6IHN0cmluZztcbiAgQElucHV0KCkgaWRlbnRpZmllciE6IHN0cmluZztcbiAgQElucHV0KCkgcGFyZW50PzogYW55O1xuXG4gIEBWaWV3Q2hpbGQoJ21hcENvbXBvbmVudCcpIG1hcENvbXBvbmVudCE6IEFic3RyYWN0TWFwO1xuXG4gIHJlYWRvbmx5IG1vZGVsOiBXcml0YWJsZVNpZ25hbDxHZW9NYXBNb2RlbCB8IHVuZGVmaW5lZD4gPSBzaWduYWwodW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgaXRlbXM6IFNpZ25hbDxBcnJheTxHZW9NYXBJdGVtPj4gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsKCk7XG4gICAgcmV0dXJuIG1vZGVsPy5sYXllcnMuZmxhdE1hcCgobCkgPT4gbC5pdGVtcyA/PyBbXSkgPz8gW107XG4gIH0pO1xuICByZWFkb25seSBlZGl0aW5nU2Vzc2lvbjogU2lnbmFsPEdlb01hcEVkaXRpbmdTZXNzaW9uIHwgdW5kZWZpbmVkPiA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMubW9kZWwoKT8udmlld1N0YXRlPy5lZGl0aW5nU2Vzc2lvblxuICApO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGlvbjogU2lnbmFsPFNldDxzdHJpbmc+PiA9IGNvbXB1dGVkKFxuICAgICgpID0+XG4gICAgICBuZXcgU2V0KFxuICAgICAgICB0aGlzLml0ZW1zKClcbiAgICAgICAgICAuZmlsdGVyKChpdCkgPT4gISFpdC5zZWxlY3RlZClcbiAgICAgICAgICAubWFwKChpdCkgPT4gaXQuaWQhKVxuICAgICAgICAgIC52YWx1ZXMoKVxuICAgICAgKVxuICApO1xuXG4gIHZpZXdDb250ZXh0U2VydmljZT86IFNtYXJ0Vmlld0NvbnRleHRTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFQX0VOR0lORSlcbiAgICBwdWJsaWMgbWFwRW5naW5lOiBNYXBFbmdpbmUsXG4gICAgcHJpdmF0ZSBhcGk6IEdlb01hcFNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5sb2FkKCk7XG4gIH1cblxuICBhc3luYyBsb2FkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IG1vZGVsOiBHZW9NYXBNb2RlbCA9IGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5hcGkubG9hZCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllcikpO1xuICAgIGlmICghbW9kZWwudmlld3BvcnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignR2VvTWFwTW9kZWwgY29udGFpbnMgbm8gdmlld3BvcnQhJyk7XG4gICAgfVxuICAgIHRoaXMubW9kZWwudXBkYXRlKCgpID0+IG1vZGVsKTtcbiAgfVxuXG4gIGFzeW5jIG1vdmUodmlld3BvcnQ6IEdlb01hcFZpZXdwb3J0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnbW9kZWwgdXBkYXRlIGlzIHJ1bm5pbmchJyk7XG4gICAgICBpZiAoaXQpIHtcbiAgICAgICAgaXQudmlld3BvcnQgPSB2aWV3cG9ydDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBpdDtcbiAgICB9KTtcbiAgICBjb25zdCBjaGFuZ2U6IEdlb01hcENoYW5nZSA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLmFwaS5tb3ZlKHRoaXMudXVpZCwgdGhpcy5pZGVudGlmaWVyLCB2aWV3cG9ydClcbiAgICApO1xuICAgIHRoaXMuaGFuZGxlQ2hhbmdlKGNoYW5nZSk7XG4gIH1cblxuICBhc3luYyB1cGRhdGUobWFwU3RhdGU6IEdlb01hcFZpZXdTdGF0ZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMubW9kZWwudXBkYXRlKChpdCkgPT4ge1xuICAgICAgaWYgKGl0KSB7XG4gICAgICAgIGl0LnZpZXdTdGF0ZSA9IG1hcFN0YXRlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGl0O1xuICAgIH0pO1xuICAgIGNvbnN0IGNoYW5nZTogR2VvTWFwQ2hhbmdlID0gYXdhaXQgbGFzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuYXBpLnVwZGF0ZSh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwgbWFwU3RhdGUpXG4gICAgKTtcbiAgICB0aGlzLmhhbmRsZUNoYW5nZShjaGFuZ2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDaGFuZ2UoY2hhbmdlOiBHZW9NYXBDaGFuZ2UpOiB2b2lkIHtcbiAgICBpZiAoIWNoYW5nZS5pdGVtcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMubW9kZWwudXBkYXRlKChpdCkgPT4ge1xuICAgICAgY29uc3QgbGF5ZXJzQnlJZDogTWFwPHN0cmluZywgR2VvTWFwTGF5ZXI+ID0gbmV3IE1hcCgpO1xuICAgICAgaWYgKCFpdCkge1xuICAgICAgICByZXR1cm4gaXQ7XG4gICAgICB9XG4gICAgICBpdC5sYXllcnMuZm9yRWFjaCgobGF5ZXIpID0+IGxheWVyc0J5SWQuc2V0KGxheWVyLmNvZGUhLCBsYXllcikpO1xuICAgICAgZm9yIChjb25zdCBsYXllckNoYW5nZSBvZiBjaGFuZ2UuaXRlbXMpIHtcbiAgICAgICAgY29uc3QgbGF5ZXJJZCA9IGxheWVyQ2hhbmdlLmNvZGUhO1xuICAgICAgICBjb25zdCB0b0FkZCA9IGxheWVyQ2hhbmdlLnRvQWRkO1xuICAgICAgICBsYXllcnNCeUlkLnNldChsYXllcklkLCB7XG4gICAgICAgICAgY29kZTogbGF5ZXJJZCxcbiAgICAgICAgICBpdGVtczogdG9BZGQsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgaXQudmlld1N0YXRlIS5lZGl0aW5nU2Vzc2lvbiA9IGNoYW5nZS5lZGl0aW5nU2Vzc2lvbjtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLml0LFxuICAgICAgICBsYXllcnM6IFsuLi5sYXllcnNCeUlkLnZhbHVlcygpXSxcbiAgICAgICAgdmlld1N0YXRlOiBpdC52aWV3U3RhdGUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlTWFwQ2xpY2socG9zaXRpb246IEdQU1Bvc2l0aW9uKTogdm9pZCB7XG4gICAgbGV0IHZpZXdTdGF0ZSA9IHRoaXMubW9kZWwoKT8udmlld1N0YXRlITtcbiAgICBjb25zdCBvcGVyYXRpb25Nb2RlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGU/Lm9wZXJhdGlvbk1vZGUgPz8gR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT047XG5cbiAgICBzd2l0Y2ggKG9wZXJhdGlvbk1vZGUpIHtcbiAgICAgIGNhc2UgR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT046XG4gICAgICAgIC8vIFRPRE86IEZpcmUgYWN0aW9uIGZvciBsYXllciwgaWYgYXBwbGljYWJsZSAobWF5YmUgb25seSBvbiBkb3VibGUgY2xpY2spLlxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgR2VvTWFwT3BlcmF0aW9uTW9kZS5TRUxFQ1RJT046XG4gICAgICAgIC8vIG5vLW9wLCBjYW4ndCBzZWxlY3QgZW1wdHkgc3BhY2UuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICB2aWV3U3RhdGUuZWRpdGluZ1Nlc3Npb24gJiZcbiAgICAgIE9iamVjdC5rZXlzKHZpZXdTdGF0ZS5lZGl0aW5nU2Vzc2lvbj8ucGVuZGluZ0l0ZW1zISkubGVuZ3RoID4gMFxuICAgICkge1xuICAgICAgY29uc3QgcGVuZGluZ0l0ZW1zID0gdmlld1N0YXRlLmVkaXRpbmdTZXNzaW9uLnBlbmRpbmdJdGVtcyE7XG4gICAgICBjb25zdCBmaXJzdEtleSA9IE9iamVjdC5rZXlzKHBlbmRpbmdJdGVtcylbMF07XG4gICAgICBjb25zdCBwZW5kaW5nSXRlbSA9IHBlbmRpbmdJdGVtc1tmaXJzdEtleV07XG4gICAgICBpZiAocGVuZGluZ0l0ZW0gJiYgcGVuZGluZ0l0ZW0ubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCBlZGl0aW5nSXRlbTogR2VvTWFwSXRlbSA9IHBlbmRpbmdJdGVtWzBdO1xuXG4gICAgICAgIGlmIChlZGl0aW5nSXRlbS5raW5kID09PSBHZW9NYXBJdGVtS2luZC5NQVJLRVIpIHtcbiAgICAgICAgICBlZGl0aW5nSXRlbS5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVkaXRpbmdJdGVtLnJvdXRlIS5wb2ludHMucHVzaChwb3NpdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMudXBkYXRlKHZpZXdTdGF0ZSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlSXRlbUNsaWNrKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBvcGVyYXRpb25Nb2RlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGU/Lm9wZXJhdGlvbk1vZGUgPz8gR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT047XG4gICAgbGV0IHRhcmdldEl0ZW0gPSB0aGlzLml0ZW1zKCkuZmluZCgoaXQpID0+IGlkID09PSBpdC5pZCk7XG5cbiAgICBpZiAoIXRhcmdldEl0ZW0pIHtcbiAgICAgIGNvbnNvbGUud2FybignU2VsZWN0aW9uIGl0ZW0gaXMgc2VlbWluZ2x5IG1pc3NpbmcgZnJvbSBrbm93biBpdGVtczogJywgaWQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN3aXRjaCAob3BlcmF0aW9uTW9kZSkge1xuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLkFDVElPTjpcbiAgICAgICAgLy8gVE9ETzogZmlyZSBhY3Rpb24hXG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlNFTEVDVElPTjpcbiAgICAgICAgbGFzdFZhbHVlRnJvbShcbiAgICAgICAgICB0aGlzLmFwaS5pbnRlcmFjdCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwge1xuICAgICAgICAgICAgb3BlcmF0aW9uTW9kZSxcbiAgICAgICAgICAgIHRhcmdldEl0ZW0sXG4gICAgICAgICAgICB0YXJnZXRMYXllcjogJycsXG4gICAgICAgICAgICBpbnZlcnNlOiB0aGlzLnNlbGVjdGlvbigpLmhhcyhpZCksXG4gICAgICAgICAgfSlcbiAgICAgICAgKS50aGVuKFxuICAgICAgICAgIChjaGFuZ2U6IFZpZXdDb250ZXh0Q2hhbmdlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMudmlld0NvbnRleHRTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybignU21hcnQgTWFwIGhhcyBubyBWaWV3Q29udGV4dCBTZXJ2aWNlIHNldCB1cCEnKTtcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy52aWV3Q29udGV4dFNlcnZpY2UuaGFuZGxlUGVyZm9ybUFjdGlvblJlc3BvbnNlKGNoYW5nZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignQ291bGQgbm90IHN1Ym1pdCBzZWxlY3Rpb24gY2hhbmdlISAnLCBlcnIpO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRWRpdGluZ0l0ZW1DbGljayhpZDogc3RyaW5nLCBldmVudDogTWFwRWRpdGluZ0l0ZW1DbGlja2VkRXZlbnQpIHtcbiAgICBsZXQgdmlld1N0YXRlOiBHZW9NYXBWaWV3U3RhdGUgPSB0aGlzLm1vZGVsKCk/LnZpZXdTdGF0ZSE7XG4gICAgY29uc3QgcGVuZGluZ1ZhbHVlcyA9IHZpZXdTdGF0ZT8uZWRpdGluZ1Nlc3Npb24/LnBlbmRpbmdJdGVtcyE7XG4gICAgY29uc3QgZmlyc3RLZXkgPSBPYmplY3Qua2V5cyhwZW5kaW5nVmFsdWVzKVswXTtcbiAgICBjb25zdCBwZW5kaW5nSXRlbXMgPSBwZW5kaW5nVmFsdWVzW2ZpcnN0S2V5XTtcbiAgICBsZXQgdGFyZ2V0SXRlbSA9IHBlbmRpbmdJdGVtc1swXTtcbiAgICBpZiAoIXRhcmdldEl0ZW0pIHtcbiAgICAgIGNvbnNvbGUud2FybignU2VsZWN0aW9uIGl0ZW0gaXMgc2VlbWluZ2x5IG1pc3NpbmcgZnJvbSBrbm93biBpdGVtczogJywgaWQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGFyZ2V0SXRlbS5raW5kID09PSBHZW9NYXBJdGVtS2luZC5NQVJLRVIpIHtcbiAgICAgIHRhcmdldEl0ZW0ucG9zaXRpb24gPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnVwZGF0ZSh2aWV3U3RhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBwb2ludHMgPSB0YXJnZXRJdGVtLnJvdXRlIS5wb2ludHM7XG4gICAgICBjb25zdCBpbmRleCA9IHBvaW50cy5maW5kSW5kZXgoXG4gICAgICAgIChwb2ludCkgPT4gcG9pbnQubGF0aXR1ZGUgPT09IGV2ZW50LmNvb3JkLnkgJiYgcG9pbnQubG9uZ2l0dWRlID09PSBldmVudC5jb29yZC54XG4gICAgICApO1xuXG4gICAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICAgIHBvaW50cy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudXBkYXRlKHZpZXdTdGF0ZSk7XG4gIH1cbiAgaGFuZGxlRWRpdGluZ0l0ZW1EcmFnKGlkOiBzdHJpbmcsIGV2ZW50OiBNYXBFZGl0aW5nSXRlbURyYWdnZWRFdmVudCkge1xuICAgIGxldCB2aWV3U3RhdGU6IEdlb01hcFZpZXdTdGF0ZSA9IHRoaXMubW9kZWwoKT8udmlld1N0YXRlITtcbiAgICBjb25zdCBwZW5kaW5nVmFsdWVzID0gdmlld1N0YXRlPy5lZGl0aW5nU2Vzc2lvbj8ucGVuZGluZ0l0ZW1zITtcbiAgICBjb25zdCBmaXJzdEtleSA9IE9iamVjdC5rZXlzKHBlbmRpbmdWYWx1ZXMpWzBdO1xuICAgIGNvbnN0IHBlbmRpbmdJdGVtcyA9IHBlbmRpbmdWYWx1ZXNbZmlyc3RLZXldO1xuICAgIGxldCB0YXJnZXRJdGVtID0gcGVuZGluZ0l0ZW1zWzBdO1xuICAgIGlmICghdGFyZ2V0SXRlbSkge1xuICAgICAgY29uc29sZS53YXJuKCdTZWxlY3Rpb24gaXRlbSBpcyBzZWVtaW5nbHkgbWlzc2luZyBmcm9tIGtub3duIGl0ZW1zOiAnLCBpZCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0YXJnZXRJdGVtLmtpbmQgPT09IEdlb01hcEl0ZW1LaW5kLk1BUktFUikge1xuICAgICAgdGFyZ2V0SXRlbS5wb3NpdGlvbiEubGF0aXR1ZGUhID0gZXZlbnQuZHJhZ1RvLnk7XG4gICAgICB0YXJnZXRJdGVtLnBvc2l0aW9uIS5sb25naXR1ZGUhID0gZXZlbnQuZHJhZ1RvLng7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHBvaW50cyA9IHRhcmdldEl0ZW0ucm91dGUhLnBvaW50cztcbiAgICAgIGNvbnN0IGluZGV4ID0gcG9pbnRzLmZpbmRJbmRleChcbiAgICAgICAgKHBvaW50KSA9PlxuICAgICAgICAgIHBvaW50LmxhdGl0dWRlID09PSBldmVudC5zdGFydFBvc2l0aW9uIS55ICYmIHBvaW50LmxvbmdpdHVkZSA9PT0gZXZlbnQuc3RhcnRQb3NpdGlvbiEueFxuICAgICAgKTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgcG9pbnRzW2luZGV4XS5sYXRpdHVkZSA9IGV2ZW50LmRyYWdUby55O1xuICAgICAgICBwb2ludHNbaW5kZXhdLmxvbmdpdHVkZSA9IGV2ZW50LmRyYWdUby54O1xuICAgICAgfVxuICAgICAgdGFyZ2V0SXRlbS5yb3V0ZSEucG9pbnRzISA9IHBvaW50cztcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZSh2aWV3U3RhdGUpO1xuICB9XG5cbiAgdG9CYXNlNjQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5tYXBDb21wb25lbnQhLnRvQmFzZTY0KCk7XG4gIH1cbn1cbiIsIkBpZiAobW9kZWwoKSkgeyBAaWYgKG1hcEVuZ2luZSA9PT0gTWFwRW5naW5lLkdPT0dMRSkge1xuPGdvb2dsZS1tYXBcbiAgI21hcENvbXBvbmVudFxuICBbbW9kZWxdPVwibW9kZWwoKSFcIlxuICBbaXRlbXNdPVwiaXRlbXMoKVwiXG4gIFtzdHlsZV09XCJ7IHdpZHRoOiAnMTAwJScsIGhlaWdodDogJzMyMHB4JyB9XCJcbiAgKG9uTWFwRHJhZ0VuZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxuICAob25ab29tQ2hhbmdlZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxuICAob25NYXBDbGljayk9XCJoYW5kbGVNYXBDbGljaygkZXZlbnQuY29vcmRpbmF0ZXMpXCJcbiAgKG9uT3ZlcmxheUNsaWNrKT1cImhhbmRsZUl0ZW1DbGljaygkZXZlbnQuaXRlbUlkKVwiXG4gIChvbkVkaXRpbmdPdmVybGF5Q2xpY2spPVwiaGFuZGxlRWRpdGluZ0l0ZW1DbGljaygkZXZlbnQuaXRlbUlkLCAkZXZlbnQpXCJcbj5cbjwvZ29vZ2xlLW1hcD5cbn0gQGVsc2UgaWYgKG1hcEVuZ2luZSA9PT0gTWFwRW5naW5lLkxFQUZMRVQpIHtcbjxsZWFmbGV0LW1hcFxuICAjbWFwQ29tcG9uZW50XG4gIFttb2RlbF09XCJtb2RlbCgpIVwiXG4gIFtpdGVtc109XCJpdGVtcygpXCJcbiAgW2VkaXRpbmdTZXNzaW9uXT1cImVkaXRpbmdTZXNzaW9uKClcIlxuICAob25NYXBEcmFnRW5kKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXG4gIChvblpvb21DaGFuZ2VkKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXG4gIChvbk1hcENsaWNrKT1cImhhbmRsZU1hcENsaWNrKCRldmVudC5jb29yZGluYXRlcylcIlxuICAob25PdmVybGF5Q2xpY2spPVwiaGFuZGxlSXRlbUNsaWNrKCRldmVudC5pdGVtSWQpXCJcbiAgKG9uRWRpdGluZ092ZXJsYXlDbGljayk9XCJoYW5kbGVFZGl0aW5nSXRlbUNsaWNrKCRldmVudC5pdGVtSWQsICRldmVudClcIlxuICAob25FZGl0aW5nT3ZlcmxheURyYWcpPVwiaGFuZGxlRWRpdGluZ0l0ZW1EcmFnKCRldmVudC5pdGVtSWQsICRldmVudClcIlxuPlxuPC9sZWFmbGV0LW1hcD5cbn0gQGVsc2Uge1xuPHA+XG4gIDxzdHJvbmc+Tm90IHJlY29nbmlzZWQgbWFwIGVuZ2luZTogWyB7eyBtYXBFbmdpbmUgfX0gXTwvc3Ryb25nPlxuPC9wPlxuPHA+UGxlYXNlIHByb3ZpZGUgYSB2YWxpZCBjaG9pY2Ugb2YgbWFwIGVuZ2luZSE8L3A+XG59IH1cbiJdfQ==
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUlMLGNBQWMsRUFHZCxtQkFBbUIsR0FLcEIsTUFBTSxPQUFPLENBQUM7Ozs7O0FBTWYsTUFBTSxDQUFOLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNuQiw4QkFBaUIsQ0FBQTtJQUNqQixnQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxjQUFjLENBQVksWUFBWSxDQUFDLENBQUM7QUFFdEUsTUFBTSxNQUFNLEdBQXVDLENBQUMsQ0FBb0IsRUFBRSxDQUFvQixFQUFFLEVBQUU7SUFDaEcsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FB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IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBjb21wdXRlZCxcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIFNpZ25hbCxcclxuICBzaWduYWwsXHJcbiAgVmFsdWVFcXVhbGl0eUZuLFxyXG4gIFZpZXdDaGlsZCxcclxuICBXcml0YWJsZVNpZ25hbCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIEdlb01hcENoYW5nZSxcclxuICBHZW9NYXBFZGl0aW5nU2Vzc2lvbixcclxuICBHZW9NYXBJdGVtLFxyXG4gIEdlb01hcEl0ZW1LaW5kLFxyXG4gIEdlb01hcExheWVyLFxyXG4gIEdlb01hcE1vZGVsLFxyXG4gIEdlb01hcE9wZXJhdGlvbk1vZGUsXHJcbiAgR2VvTWFwU2VydmljZSxcclxuICBHZW9NYXBWaWV3cG9ydCxcclxuICBHZW9NYXBWaWV3U3RhdGUsXHJcbiAgR1BTUG9zaXRpb24sXHJcbn0gZnJvbSAnLi9hcGknO1xyXG5pbXBvcnQgeyBWaWV3Q29udGV4dENoYW5nZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9hcGknO1xyXG5pbXBvcnQgeyBTbWFydFZpZXdDb250ZXh0U2VydmljZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9zbWFydC12aWV3LWNvbnRleHQuc2VydmljZSc7XHJcbmltcG9ydCB7IE1hcEVkaXRpbmdJdGVtQ2xpY2tlZEV2ZW50LCBNYXBFZGl0aW5nSXRlbURyYWdnZWRFdmVudCB9IGZyb20gJy4vc21hcnQtbWFwLnR5cGVzJztcclxuaW1wb3J0IHsgQWJzdHJhY3RNYXAgfSBmcm9tICcuL2Fic3RyYWN0LW1hcCc7XHJcblxyXG5leHBvcnQgZW51bSBNYXBFbmdpbmUge1xyXG4gIEdPT0dMRSA9ICdHT09HTEUnLFxyXG4gIExFQUZMRVQgPSAnTEVBRkxFVCcsXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBNQVBfRU5HSU5FID0gbmV3IEluamVjdGlvblRva2VuPE1hcEVuZ2luZT4oJ01BUF9FTkdJTkUnKTtcclxuXHJcbmNvbnN0IGl0ZW1FcTogVmFsdWVFcXVhbGl0eUZuPEFycmF5PEdlb01hcEl0ZW0+PiA9IChhOiBBcnJheTxHZW9NYXBJdGVtPiwgYjogQXJyYXk8R2VvTWFwSXRlbT4pID0+IHtcclxuICBjb25zdCBwb3NpdGlvbnMgPSBuZXcgU2V0KGEubWFwKChpdDogR2VvTWFwSXRlbSkgPT4gaXQucG9zaXRpb24pKTtcclxuICBiLmZvckVhY2goKGl0OiBHZW9NYXBJdGVtKSA9PiBwb3NpdGlvbnMuZGVsZXRlKGl0LnBvc2l0aW9uKSk7XHJcbiAgcmV0dXJuIGEubGVuZ3RoID09PSBiLmxlbmd0aCAmJiBwb3NpdGlvbnMuc2l6ZSA9PT0gMDtcclxufTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc21hcnQtbWFwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtbWFwLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc21hcnQtbWFwLmNvbXBvbmVudC5jc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRNYXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG4gIE1hcEVuZ2luZSA9IE1hcEVuZ2luZTtcclxuXHJcbiAgQElucHV0KCkgdXVpZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBpZGVudGlmaWVyITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBhcmVudD86IGFueTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbWFwQ29tcG9uZW50JykgbWFwQ29tcG9uZW50ITogQWJzdHJhY3RNYXA7XHJcblxyXG4gIHJlYWRvbmx5IG1vZGVsOiBXcml0YWJsZVNpZ25hbDxHZW9NYXBNb2RlbCB8IHVuZGVmaW5lZD4gPSBzaWduYWwodW5kZWZpbmVkKTtcclxuICByZWFkb25seSBpdGVtczogU2lnbmFsPEFycmF5PEdlb01hcEl0ZW0+PiA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5tb2RlbCgpO1xyXG4gICAgcmV0dXJuIG1vZGVsPy5sYXllcnMuZmxhdE1hcCgobCkgPT4gbC5pdGVtcyA/PyBbXSkgPz8gW107XHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgZWRpdGluZ1Nlc3Npb246IFNpZ25hbDxHZW9NYXBFZGl0aW5nU2Vzc2lvbiB8IHVuZGVmaW5lZD4gPSBjb21wdXRlZChcclxuICAgICgpID0+IHRoaXMubW9kZWwoKT8udmlld1N0YXRlPy5lZGl0aW5nU2Vzc2lvblxyXG4gICk7XHJcblxyXG4gIHJlYWRvbmx5IHNlbGVjdGlvbjogU2lnbmFsPFNldDxzdHJpbmc+PiA9IGNvbXB1dGVkKFxyXG4gICAgKCkgPT5cclxuICAgICAgbmV3IFNldChcclxuICAgICAgICB0aGlzLml0ZW1zKClcclxuICAgICAgICAgIC5maWx0ZXIoKGl0KSA9PiAhIWl0LnNlbGVjdGVkKVxyXG4gICAgICAgICAgLm1hcCgoaXQpID0+IGl0LmlkISlcclxuICAgICAgICAgIC52YWx1ZXMoKVxyXG4gICAgICApXHJcbiAgKTtcclxuXHJcbiAgdmlld0NvbnRleHRTZXJ2aWNlPzogU21hcnRWaWV3Q29udGV4dFNlcnZpY2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChNQVBfRU5HSU5FKVxyXG4gICAgcHVibGljIG1hcEVuZ2luZTogTWFwRW5naW5lLFxyXG4gICAgcHJpdmF0ZSBhcGk6IEdlb01hcFNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5sb2FkKCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2FkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgbW9kZWw6IEdlb01hcE1vZGVsID0gYXdhaXQgbGFzdFZhbHVlRnJvbSh0aGlzLmFwaS5sb2FkKHRoaXMudXVpZCwgdGhpcy5pZGVudGlmaWVyKSk7XHJcbiAgICBpZiAoIW1vZGVsLnZpZXdwb3J0KSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignR2VvTWFwTW9kZWwgY29udGFpbnMgbm8gdmlld3BvcnQhJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vZGVsLnVwZGF0ZSgoKSA9PiBtb2RlbCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBtb3ZlKHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdtb2RlbCB1cGRhdGUgaXMgcnVubmluZyEnKTtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXQudmlld3BvcnQgPSB2aWV3cG9ydDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gaXQ7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IGNoYW5nZTogR2VvTWFwQ2hhbmdlID0gYXdhaXQgbGFzdFZhbHVlRnJvbShcclxuICAgICAgdGhpcy5hcGkubW92ZSh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwgdmlld3BvcnQpXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UoY2hhbmdlKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHVwZGF0ZShtYXBTdGF0ZTogR2VvTWFwVmlld1N0YXRlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLm1vZGVsLnVwZGF0ZSgoaXQpID0+IHtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXQudmlld1N0YXRlID0gbWFwU3RhdGU7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGl0O1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBjaGFuZ2U6IEdlb01hcENoYW5nZSA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgIHRoaXMuYXBpLnVwZGF0ZSh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwgbWFwU3RhdGUpXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UoY2hhbmdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlQ2hhbmdlKGNoYW5nZTogR2VvTWFwQ2hhbmdlKTogdm9pZCB7XHJcbiAgICBpZiAoIWNoYW5nZS5pdGVtcykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XHJcbiAgICAgIGNvbnN0IGxheWVyc0J5SWQ6IE1hcDxzdHJpbmcsIEdlb01hcExheWVyPiA9IG5ldyBNYXAoKTtcclxuICAgICAgaWYgKCFpdCkge1xyXG4gICAgICAgIHJldHVybiBpdDtcclxuICAgICAgfVxyXG4gICAgICBpdC5sYXllcnMuZm9yRWFjaCgobGF5ZXIpID0+IGxheWVyc0J5SWQuc2V0KGxheWVyLmNvZGUhLCBsYXllcikpO1xyXG4gICAgICBmb3IgKGNvbnN0IGxheWVyQ2hhbmdlIG9mIGNoYW5nZS5pdGVtcykge1xyXG4gICAgICAgIGNvbnN0IGxheWVySWQgPSBsYXllckNoYW5nZS5jb2RlITtcclxuICAgICAgICBjb25zdCB0b0FkZCA9IGxheWVyQ2hhbmdlLnRvQWRkO1xyXG4gICAgICAgIGxheWVyc0J5SWQuc2V0KGxheWVySWQsIHtcclxuICAgICAgICAgIGNvZGU6IGxheWVySWQsXHJcbiAgICAgICAgICBpdGVtczogdG9BZGQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgaXQudmlld1N0YXRlIS5lZGl0aW5nU2Vzc2lvbiA9IGNoYW5nZS5lZGl0aW5nU2Vzc2lvbjtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi5pdCxcclxuICAgICAgICBsYXllcnM6IFsuLi5sYXllcnNCeUlkLnZhbHVlcygpXSxcclxuICAgICAgICB2aWV3U3RhdGU6IGl0LnZpZXdTdGF0ZSxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlTWFwQ2xpY2socG9zaXRpb246IEdQU1Bvc2l0aW9uKTogdm9pZCB7XHJcbiAgICBsZXQgdmlld1N0YXRlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGUhO1xyXG4gICAgY29uc3Qgb3BlcmF0aW9uTW9kZSA9IHRoaXMubW9kZWwoKT8udmlld1N0YXRlPy5vcGVyYXRpb25Nb2RlID8/IEdlb01hcE9wZXJhdGlvbk1vZGUuQUNUSU9OO1xyXG5cclxuICAgIHN3aXRjaCAob3BlcmF0aW9uTW9kZSkge1xyXG4gICAgICBjYXNlIEdlb01hcE9wZXJhdGlvbk1vZGUuQUNUSU9OOlxyXG4gICAgICAgIC8vIFRPRE86IEZpcmUgYWN0aW9uIGZvciBsYXllciwgaWYgYXBwbGljYWJsZSAobWF5YmUgb25seSBvbiBkb3VibGUgY2xpY2spLlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEdlb01hcE9wZXJhdGlvbk1vZGUuU0VMRUNUSU9OOlxyXG4gICAgICAgIC8vIG5vLW9wLCBjYW4ndCBzZWxlY3QgZW1wdHkgc3BhY2UuXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICBpZiAoXHJcbiAgICAgIHZpZXdTdGF0ZS5lZGl0aW5nU2Vzc2lvbiAmJlxyXG4gICAgICBPYmplY3Qua2V5cyh2aWV3U3RhdGUuZWRpdGluZ1Nlc3Npb24/LnBlbmRpbmdJdGVtcyEpLmxlbmd0aCA+IDBcclxuICAgICkge1xyXG4gICAgICBjb25zdCBwZW5kaW5nSXRlbXMgPSB2aWV3U3RhdGUuZWRpdGluZ1Nlc3Npb24ucGVuZGluZ0l0ZW1zITtcclxuICAgICAgY29uc3QgZmlyc3RLZXkgPSBPYmplY3Qua2V5cyhwZW5kaW5nSXRlbXMpWzBdO1xyXG4gICAgICBjb25zdCBwZW5kaW5nSXRlbSA9IHBlbmRpbmdJdGVtc1tmaXJzdEtleV07XHJcbiAgICAgIGlmIChwZW5kaW5nSXRlbSAmJiBwZW5kaW5nSXRlbS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgY29uc3QgZWRpdGluZ0l0ZW06IEdlb01hcEl0ZW0gPSBwZW5kaW5nSXRlbVswXTtcclxuXHJcbiAgICAgICAgaWYgKGVkaXRpbmdJdGVtLmtpbmQgPT09IEdlb01hcEl0ZW1LaW5kLk1BUktFUikge1xyXG4gICAgICAgICAgZWRpdGluZ0l0ZW0ucG9zaXRpb24gPSBwb3NpdGlvbjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZWRpdGluZ0l0ZW0ucm91dGUhLnBvaW50cy5wdXNoKHBvc2l0aW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy51cGRhdGUodmlld1N0YXRlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZUl0ZW1DbGljayhpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBvcGVyYXRpb25Nb2RlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGU/Lm9wZXJhdGlvbk1vZGUgPz8gR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT047XHJcbiAgICBsZXQgdGFyZ2V0SXRlbSA9IHRoaXMuaXRlbXMoKS5maW5kKChpdCkgPT4gaWQgPT09IGl0LmlkKTtcclxuXHJcbiAgICBpZiAoIXRhcmdldEl0ZW0pIHtcclxuICAgICAgY29uc29sZS53YXJuKCdTZWxlY3Rpb24gaXRlbSBpcyBzZWVtaW5nbHkgbWlzc2luZyBmcm9tIGtub3duIGl0ZW1zOiAnLCBpZCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKG9wZXJhdGlvbk1vZGUpIHtcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLkFDVElPTjpcclxuICAgICAgICAvLyBUT0RPOiBmaXJlIGFjdGlvbiFcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlNFTEVDVElPTjpcclxuICAgICAgICBsYXN0VmFsdWVGcm9tKFxyXG4gICAgICAgICAgdGhpcy5hcGkuaW50ZXJhY3QodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uTW9kZSxcclxuICAgICAgICAgICAgdGFyZ2V0SXRlbSxcclxuICAgICAgICAgICAgdGFyZ2V0TGF5ZXI6ICcnLFxyXG4gICAgICAgICAgICBpbnZlcnNlOiB0aGlzLnNlbGVjdGlvbigpLmhhcyhpZCksXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICkudGhlbihcclxuICAgICAgICAgIChjaGFuZ2U6IFZpZXdDb250ZXh0Q2hhbmdlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy52aWV3Q29udGV4dFNlcnZpY2UpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NtYXJ0IE1hcCBoYXMgbm8gVmlld0NvbnRleHQgU2VydmljZSBzZXQgdXAhJyk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmlld0NvbnRleHRTZXJ2aWNlLmhhbmRsZVBlcmZvcm1BY3Rpb25SZXNwb25zZShjaGFuZ2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignQ291bGQgbm90IHN1Ym1pdCBzZWxlY3Rpb24gY2hhbmdlISAnLCBlcnIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFZGl0aW5nSXRlbUNsaWNrKGlkOiBzdHJpbmcsIGV2ZW50OiBNYXBFZGl0aW5nSXRlbUNsaWNrZWRFdmVudCkge1xyXG4gICAgbGV0IHZpZXdTdGF0ZTogR2VvTWFwVmlld1N0YXRlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGUhO1xyXG4gICAgY29uc3QgcGVuZGluZ1ZhbHVlcyA9IHZpZXdTdGF0ZT8uZWRpdGluZ1Nlc3Npb24/LnBlbmRpbmdJdGVtcyE7XHJcbiAgICBjb25zdCBmaXJzdEtleSA9IE9iamVjdC5rZXlzKHBlbmRpbmdWYWx1ZXMpWzBdO1xyXG4gICAgY29uc3QgcGVuZGluZ0l0ZW1zID0gcGVuZGluZ1ZhbHVlc1tmaXJzdEtleV07XHJcbiAgICBsZXQgdGFyZ2V0SXRlbSA9IHBlbmRpbmdJdGVtc1swXTtcclxuICAgIGlmICghdGFyZ2V0SXRlbSkge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ1NlbGVjdGlvbiBpdGVtIGlzIHNlZW1pbmdseSBtaXNzaW5nIGZyb20ga25vd24gaXRlbXM6ICcsIGlkKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRhcmdldEl0ZW0ua2luZCA9PT0gR2VvTWFwSXRlbUtpbmQuTUFSS0VSKSB7XHJcbiAgICAgIHRhcmdldEl0ZW0ucG9zaXRpb24gPSB1bmRlZmluZWQ7XHJcbiAgICAgIHRoaXMudXBkYXRlKHZpZXdTdGF0ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwb2ludHMgPSB0YXJnZXRJdGVtLnJvdXRlIS5wb2ludHM7XHJcbiAgICAgIGNvbnN0IGluZGV4ID0gcG9pbnRzLmZpbmRJbmRleChcclxuICAgICAgICAocG9pbnQpID0+IHBvaW50LmxhdGl0dWRlID09PSBldmVudC5jb29yZC55ICYmIHBvaW50LmxvbmdpdHVkZSA9PT0gZXZlbnQuY29vcmQueFxyXG4gICAgICApO1xyXG5cclxuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xyXG4gICAgICAgIHBvaW50cy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGUodmlld1N0YXRlKTtcclxuICB9XHJcbiAgaGFuZGxlRWRpdGluZ0l0ZW1EcmFnKGlkOiBzdHJpbmcsIGV2ZW50OiBNYXBFZGl0aW5nSXRlbURyYWdnZWRFdmVudCkge1xyXG4gICAgbGV0IHZpZXdTdGF0ZTogR2VvTWFwVmlld1N0YXRlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGUhO1xyXG4gICAgY29uc3QgcGVuZGluZ1ZhbHVlcyA9IHZpZXdTdGF0ZT8uZWRpdGluZ1Nlc3Npb24/LnBlbmRpbmdJdGVtcyE7XHJcbiAgICBjb25zdCBmaXJzdEtleSA9IE9iamVjdC5rZXlzKHBlbmRpbmdWYWx1ZXMpWzBdO1xyXG4gICAgY29uc3QgcGVuZGluZ0l0ZW1zID0gcGVuZGluZ1ZhbHVlc1tmaXJzdEtleV07XHJcbiAgICBsZXQgdGFyZ2V0SXRlbSA9IHBlbmRpbmdJdGVtc1swXTtcclxuICAgIGlmICghdGFyZ2V0SXRlbSkge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ1NlbGVjdGlvbiBpdGVtIGlzIHNlZW1pbmdseSBtaXNzaW5nIGZyb20ga25vd24gaXRlbXM6ICcsIGlkKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRhcmdldEl0ZW0ua2luZCA9PT0gR2VvTWFwSXRlbUtpbmQuTUFSS0VSKSB7XHJcbiAgICAgIHRhcmdldEl0ZW0ucG9zaXRpb24hLmxhdGl0dWRlISA9IGV2ZW50LmRyYWdUby55O1xyXG4gICAgICB0YXJnZXRJdGVtLnBvc2l0aW9uIS5sb25naXR1ZGUhID0gZXZlbnQuZHJhZ1RvLng7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwb2ludHMgPSB0YXJnZXRJdGVtLnJvdXRlIS5wb2ludHM7XHJcbiAgICAgIGNvbnN0IGluZGV4ID0gcG9pbnRzLmZpbmRJbmRleChcclxuICAgICAgICAocG9pbnQpID0+XHJcbiAgICAgICAgICBwb2ludC5sYXRpdHVkZSA9PT0gZXZlbnQuc3RhcnRQb3NpdGlvbiEueSAmJiBwb2ludC5sb25naXR1ZGUgPT09IGV2ZW50LnN0YXJ0UG9zaXRpb24hLnhcclxuICAgICAgKTtcclxuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xyXG4gICAgICAgIHBvaW50c1tpbmRleF0ubGF0aXR1ZGUgPSBldmVudC5kcmFnVG8ueTtcclxuICAgICAgICBwb2ludHNbaW5kZXhdLmxvbmdpdHVkZSA9IGV2ZW50LmRyYWdUby54O1xyXG4gICAgICB9XHJcbiAgICAgIHRhcmdldEl0ZW0ucm91dGUhLnBvaW50cyEgPSBwb2ludHM7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGUodmlld1N0YXRlKTtcclxuICB9XHJcblxyXG4gIHRvQmFzZTY0KCk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tYXBDb21wb25lbnQhLnRvQmFzZTY0KCk7XHJcbiAgfVxyXG59XHJcbiIsIkBpZiAobW9kZWwoKSkgeyBAaWYgKG1hcEVuZ2luZSA9PT0gTWFwRW5naW5lLkdPT0dMRSkge1xyXG48Z29vZ2xlLW1hcFxyXG4gICNtYXBDb21wb25lbnRcclxuICBbbW9kZWxdPVwibW9kZWwoKSFcIlxyXG4gIFtpdGVtc109XCJpdGVtcygpXCJcclxuICBbc3R5bGVdPVwieyB3aWR0aDogJzEwMCUnLCBoZWlnaHQ6ICczMjBweCcgfVwiXHJcbiAgKG9uTWFwRHJhZ0VuZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxyXG4gIChvblpvb21DaGFuZ2VkKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXHJcbiAgKG9uTWFwQ2xpY2spPVwiaGFuZGxlTWFwQ2xpY2soJGV2ZW50LmNvb3JkaW5hdGVzKVwiXHJcbiAgKG9uT3ZlcmxheUNsaWNrKT1cImhhbmRsZUl0ZW1DbGljaygkZXZlbnQuaXRlbUlkKVwiXHJcbiAgKG9uRWRpdGluZ092ZXJsYXlDbGljayk9XCJoYW5kbGVFZGl0aW5nSXRlbUNsaWNrKCRldmVudC5pdGVtSWQsICRldmVudClcIlxyXG4+XHJcbjwvZ29vZ2xlLW1hcD5cclxufSBAZWxzZSBpZiAobWFwRW5naW5lID09PSBNYXBFbmdpbmUuTEVBRkxFVCkge1xyXG48bGVhZmxldC1tYXBcclxuICAjbWFwQ29tcG9uZW50XHJcbiAgW21vZGVsXT1cIm1vZGVsKCkhXCJcclxuICBbaXRlbXNdPVwiaXRlbXMoKVwiXHJcbiAgW2VkaXRpbmdTZXNzaW9uXT1cImVkaXRpbmdTZXNzaW9uKClcIlxyXG4gIChvbk1hcERyYWdFbmQpPVwibW92ZSgkZXZlbnQudmlld3BvcnQpXCJcclxuICAob25ab29tQ2hhbmdlZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxyXG4gIChvbk1hcENsaWNrKT1cImhhbmRsZU1hcENsaWNrKCRldmVudC5jb29yZGluYXRlcylcIlxyXG4gIChvbk92ZXJsYXlDbGljayk9XCJoYW5kbGVJdGVtQ2xpY2soJGV2ZW50Lml0ZW1JZClcIlxyXG4gIChvbkVkaXRpbmdPdmVybGF5Q2xpY2spPVwiaGFuZGxlRWRpdGluZ0l0ZW1DbGljaygkZXZlbnQuaXRlbUlkLCAkZXZlbnQpXCJcclxuICAob25FZGl0aW5nT3ZlcmxheURyYWcpPVwiaGFuZGxlRWRpdGluZ0l0ZW1EcmFnKCRldmVudC5pdGVtSWQsICRldmVudClcIlxyXG4+XHJcbjwvbGVhZmxldC1tYXA+XHJcbn0gQGVsc2Uge1xyXG48cD5cclxuICA8c3Ryb25nPk5vdCByZWNvZ25pc2VkIG1hcCBlbmdpbmU6IFsge3sgbWFwRW5naW5lIH19IF08L3N0cm9uZz5cclxuPC9wPlxyXG48cD5QbGVhc2UgcHJvdmlkZSBhIHZhbGlkIGNob2ljZSBvZiBtYXAgZW5naW5lITwvcD5cclxufSB9XHJcbiJdfQ==
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
19
19
  exports: [SmartMapComponent, GoogleMap, LeafletMap],
20
20
  }]
21
21
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBUWhELE1BQU0sT0FBTyxjQUFjOytHQUFkLGNBQWM7Z0hBQWQsY0FBYyxpQkFMVixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxhQUM3QyxZQUFZLEVBQUUsYUFBYSxhQUUzQixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVTtnSEFFdkMsY0FBYyxhQUhkLENBQUMsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsWUFEdEQsWUFBWSxFQUFFLGFBQWE7OzRGQUkxQixjQUFjO2tCQU4xQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7b0JBQ3hELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7b0JBQ3RDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNoRSxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDO2lCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNQVBfRU5HSU5FLCBNYXBFbmdpbmUsIFNtYXJ0TWFwQ29tcG9uZW50IH0gZnJvbSAnLi9zbWFydC1tYXAuY29tcG9uZW50JztcbmltcG9ydCB7IEJyb3dzZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBHb29nbGVNYXAgfSBmcm9tICcuL2ltcGwvZ29vZ2xlLW1hcCc7XG5pbXBvcnQgeyBMZWFmbGV0TWFwIH0gZnJvbSAnLi9pbXBsL2xlYWZsZXQtbWFwJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU21hcnRNYXBDb21wb25lbnQsIEdvb2dsZU1hcCwgTGVhZmxldE1hcF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJyb3dzZXJNb2R1bGVdLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE1BUF9FTkdJTkUsIHVzZVZhbHVlOiBNYXBFbmdpbmUuR09PR0xFIH1dLFxuICBleHBvcnRzOiBbU21hcnRNYXBDb21wb25lbnQsIEdvb2dsZU1hcCwgTGVhZmxldE1hcF0sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0TWFwTW9kdWxlIHt9XG4iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBUWhELE1BQU0sT0FBTyxjQUFjOytHQUFkLGNBQWM7Z0hBQWQsY0FBYyxpQkFMVixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxhQUM3QyxZQUFZLEVBQUUsYUFBYSxhQUUzQixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVTtnSEFFdkMsY0FBYyxhQUhkLENBQUMsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsWUFEdEQsWUFBWSxFQUFFLGFBQWE7OzRGQUkxQixjQUFjO2tCQU4xQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7b0JBQ3hELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7b0JBQ3RDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNoRSxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDO2lCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1BUF9FTkdJTkUsIE1hcEVuZ2luZSwgU21hcnRNYXBDb21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LW1hcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCcm93c2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEdvb2dsZU1hcCB9IGZyb20gJy4vaW1wbC9nb29nbGUtbWFwJztcclxuaW1wb3J0IHsgTGVhZmxldE1hcCB9IGZyb20gJy4vaW1wbC9sZWFmbGV0LW1hcCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1NtYXJ0TWFwQ29tcG9uZW50LCBHb29nbGVNYXAsIExlYWZsZXRNYXBdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJyb3dzZXJNb2R1bGVdLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTUFQX0VOR0lORSwgdXNlVmFsdWU6IE1hcEVuZ2luZS5HT09HTEUgfV0sXHJcbiAgZXhwb3J0czogW1NtYXJ0TWFwQ29tcG9uZW50LCBHb29nbGVNYXAsIExlYWZsZXRNYXBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRNYXBNb2R1bGUge31cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VvTWFwVmlld3BvcnQsIEdQU1Bvc2l0aW9uIH0gZnJvbSAnLi9hcGknO1xuXG5leHBvcnQgdHlwZSBNYXBEcmFnZ2VkRXZlbnQgPSB7XG4gIHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydDtcbiAgb3JpZ2luYWxFdmVudDogYW55O1xufTtcblxuZXhwb3J0IHR5cGUgTWFwWm9vbUNoYW5nZWRFdmVudCA9IHtcbiAgdmlld3BvcnQ6IEdlb01hcFZpZXdwb3J0O1xuICBvcmlnaW5hbEV2ZW50OiBhbnk7XG59O1xuXG5leHBvcnQgdHlwZSBNYXBJdGVtQ2xpY2tlZEV2ZW50ID0ge1xuICBpdGVtSWQ6IHN0cmluZztcbiAgb3JpZ2luYWxFdmVudDogYW55O1xufTtcbmV4cG9ydCB0eXBlIE1hcEVkaXRpbmdJdGVtQ2xpY2tlZEV2ZW50ID0ge1xuICBpdGVtSWQ6IHN0cmluZztcbiAgY29vcmQ6IENvb3JkO1xufTtcblxuZXhwb3J0IHR5cGUgTWFwRWRpdGluZ0l0ZW1EcmFnZ2VkRXZlbnQgPSB7XG4gIGl0ZW1JZDogc3RyaW5nO1xuICBzdGFydFBvc2l0aW9uPzogQ29vcmQ7XG4gIGRyYWdUbzogQ29vcmQ7XG59O1xuXG5leHBvcnQgdHlwZSBNYXBDbGlja2VkRXZlbnQgPSB7XG4gIGNvb3JkaW5hdGVzOiBHUFNQb3NpdGlvbjtcbiAgb3JpZ2luYWxFdmVudDogYW55O1xufTtcbmV4cG9ydCB0eXBlIE1hcEl0ZW1Db25maWd1cmF0aW9uID0ge1xuICBjb2xvcjogc3RyaW5nO1xuICBkcmFnZ2FibGU6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIENvb3JkIHtcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VvTWFwVmlld3BvcnQsIEdQU1Bvc2l0aW9uIH0gZnJvbSAnLi9hcGknO1xyXG5cclxuZXhwb3J0IHR5cGUgTWFwRHJhZ2dlZEV2ZW50ID0ge1xyXG4gIHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydDtcclxuICBvcmlnaW5hbEV2ZW50OiBhbnk7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBNYXBab29tQ2hhbmdlZEV2ZW50ID0ge1xyXG4gIHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydDtcclxuICBvcmlnaW5hbEV2ZW50OiBhbnk7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBNYXBJdGVtQ2xpY2tlZEV2ZW50ID0ge1xyXG4gIGl0ZW1JZDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsRXZlbnQ6IGFueTtcclxufTtcclxuZXhwb3J0IHR5cGUgTWFwRWRpdGluZ0l0ZW1DbGlja2VkRXZlbnQgPSB7XHJcbiAgaXRlbUlkOiBzdHJpbmc7XHJcbiAgY29vcmQ6IENvb3JkO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgTWFwRWRpdGluZ0l0ZW1EcmFnZ2VkRXZlbnQgPSB7XHJcbiAgaXRlbUlkOiBzdHJpbmc7XHJcbiAgc3RhcnRQb3NpdGlvbj86IENvb3JkO1xyXG4gIGRyYWdUbzogQ29vcmQ7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBNYXBDbGlja2VkRXZlbnQgPSB7XHJcbiAgY29vcmRpbmF0ZXM6IEdQU1Bvc2l0aW9uO1xyXG4gIG9yaWdpbmFsRXZlbnQ6IGFueTtcclxufTtcclxuZXhwb3J0IHR5cGUgTWFwSXRlbUNvbmZpZ3VyYXRpb24gPSB7XHJcbiAgY29sb3I6IHN0cmluZztcclxuICBkcmFnZ2FibGU6IGJvb2xlYW47XHJcbn07XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvb3JkIHtcclxuICB4OiBudW1iZXI7XHJcbiAgeTogbnVtYmVyO1xyXG59XHJcbiJdfQ==
@@ -5,4 +5,4 @@ export * from './smart-navbar.service';
5
5
  export * from './smart-navbar.component';
6
6
  export * from './smart-navbar.model';
7
7
  export * from './smart-navbar.module';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZiYXIvcHJvamVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBzbWFydC1uYXZiYXJcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmJhci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbmF2YmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmJhci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmJhci5tb2R1bGUnO1xuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZiYXIvcHJvamVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHNtYXJ0LW5hdmJhclxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbmF2YmFyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmJhci5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbmF2YmFyLm1vZHVsZSc7XHJcbiJdfQ==
@@ -47,15 +47,15 @@ export class SmartNavbarComponent {
47
47
  };
48
48
  }
49
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartNavbarComponent, selector: "smart-navbar", inputs: { smartNavbar: "smartNavbar" }, viewQueries: [{ propertyName: "formComp", first: true, predicate: ["searchOption"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\n <img\n *ngIf=\"smartNavbar.icon\"\n class=\"title\"\n src=\"{{ smartNavbar.icon }}\"\n alt=\"\"\n (click)=\"onIconClick()\"\n />\n <ng-content select=\"[titleComponent]\" class=\"title\"></ng-content>\n <div *ngIf=\"smartNavbar.searchBar\" class=\"input\">\n <input\n type=\"text\"\n placeholder=\"{{ smartNavbar.searchBar.placeholder }}\"\n [(ngModel)]=\"searchText\"\n />\n <div\n *ngIf=\"smartNavbar.searchBar.quickFilterLabel && smartNavbar.searchBar.quickFilters.length\"\n class=\"drop_down_btn\"\n >\n <smartform #searchOption [smartForm]=\"filterForm\"></smartform>\n <button\n class=\"search_icon\"\n *ngIf=\"smartNavbar.searchBar.icon\"\n mat-icon-button\n (click)=\"onSearchButtonClick()\"\n >\n <mat-icon class=\"search_icon\">{{ smartNavbar.searchBar.icon }}</mat-icon>\n </button>\n </div>\n </div>\n <button\n *ngIf=\"smartNavbar.filterButtonCallback\"\n mat-raised-button\n color=\"primary\"\n class=\"filter-btn\"\n (click)=\"openFilters()\"\n >\n <div #customFilter class=\"custom-filter-holder\">\n <ng-content select=\"[filterComponent]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customFilter.hasChildNodes()\">\n <mat-icon>filter_list</mat-icon> {{ smartNavbar.filterButtonLabel }}\n </ng-container>\n </button>\n <div *ngIf=\"smartNavbar.userSettings\" class=\"account-content\">\n <button\n mat-button\n *ngIf=\"smartNavbar?.notification\"\n [color]=\"smartNavbar.notification?.iconColor\"\n (click)=\"onNotificationClick()\"\n class=\"notification-btn\"\n >\n <mat-icon>\n {{ smartNavbar.notification?.icon }}\n </mat-icon>\n </button>\n <button mat-button color=\"primary\" [matMenuTriggerFor]=\"menu\">\n <mat-icon *ngIf=\"smartNavbar.userSettings.icon\">\n {{ smartNavbar.userSettings.icon }}\n </mat-icon>\n <mat-icon *ngIf=\"!smartNavbar.userSettings.icon\"> person_outline </mat-icon>\n {{ smartNavbar.userSettings.label }}\n <mat-icon>arrow_drop_down</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button\n mat-menu-item\n *ngFor=\"let btn of smartNavbar.userSettings.settings\"\n (click)=\"btn.callback()\"\n class=\"menuButton\"\n >\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().FRONT\">\n {{ btn.icon }}\n </mat-icon>\n <div class=\"menuLabel\">\n {{ btn.label }}\n </div>\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().POST\">\n {{ btn.icon }}\n </mat-icon>\n </button>\n </mat-menu>\n </div>\n</mat-toolbar>\n", styles: [".filter-btn{margin-left:20px}input[type=text]{flex:1;background:#fff;height:40px;border:none;outline:none;padding:0 25px;border-radius:25px 0 0 25px}.drop_down_btn{position:relative;left:-5;border-radius:0 25px 25px 0;height:40px;border:none;outline:none;cursor:pointer;background:#fff;color:#00a8da;display:flex;align-items:center;padding-right:20px}.input{flex:1;position:relative;font-size:20px;display:flex;flex-direction:row;align-items:center;padding-left:30px}mat-toolbar{height:var(--navbar-height)}::ng-deep .navbar-form .mat-form-field-appearance-outline .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline{opacity:.75!important;color:#fff}.account-content{margin-left:75px}.title{margin-right:75px}.account-content>*{margin-left:30px}.account-content>*:first-child{margin-left:0}.custom-filter-holder{display:flex;align-items:center}.menuButton{display:flex;flex-direction:row;gap:.5rem}.menuLabel{flex:1;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.SmartformComponent, selector: "smartform", inputs: ["smartForm"] }] }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartNavbarComponent, selector: "smart-navbar", inputs: { smartNavbar: "smartNavbar" }, viewQueries: [{ propertyName: "formComp", first: true, predicate: ["searchOption"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\r\n <img\r\n *ngIf=\"smartNavbar.icon\"\r\n class=\"title\"\r\n src=\"{{ smartNavbar.icon }}\"\r\n alt=\"\"\r\n (click)=\"onIconClick()\"\r\n />\r\n <ng-content select=\"[titleComponent]\" class=\"title\"></ng-content>\r\n <div *ngIf=\"smartNavbar.searchBar\" class=\"input\">\r\n <input\r\n type=\"text\"\r\n placeholder=\"{{ smartNavbar.searchBar.placeholder }}\"\r\n [(ngModel)]=\"searchText\"\r\n />\r\n <div\r\n *ngIf=\"smartNavbar.searchBar.quickFilterLabel && smartNavbar.searchBar.quickFilters.length\"\r\n class=\"drop_down_btn\"\r\n >\r\n <smartform #searchOption [smartForm]=\"filterForm\"></smartform>\r\n <button\r\n class=\"search_icon\"\r\n *ngIf=\"smartNavbar.searchBar.icon\"\r\n mat-icon-button\r\n (click)=\"onSearchButtonClick()\"\r\n >\r\n <mat-icon class=\"search_icon\">{{ smartNavbar.searchBar.icon }}</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <button\r\n *ngIf=\"smartNavbar.filterButtonCallback\"\r\n mat-raised-button\r\n color=\"primary\"\r\n class=\"filter-btn\"\r\n (click)=\"openFilters()\"\r\n >\r\n <div #customFilter class=\"custom-filter-holder\">\r\n <ng-content select=\"[filterComponent]\"></ng-content>\r\n </div>\r\n <ng-container *ngIf=\"!customFilter.hasChildNodes()\">\r\n <mat-icon>filter_list</mat-icon> {{ smartNavbar.filterButtonLabel }}\r\n </ng-container>\r\n </button>\r\n <div *ngIf=\"smartNavbar.userSettings\" class=\"account-content\">\r\n <button\r\n mat-button\r\n *ngIf=\"smartNavbar?.notification\"\r\n [color]=\"smartNavbar.notification?.iconColor\"\r\n (click)=\"onNotificationClick()\"\r\n class=\"notification-btn\"\r\n >\r\n <mat-icon>\r\n {{ smartNavbar.notification?.icon }}\r\n </mat-icon>\r\n </button>\r\n <button mat-button color=\"primary\" [matMenuTriggerFor]=\"menu\">\r\n <mat-icon *ngIf=\"smartNavbar.userSettings.icon\">\r\n {{ smartNavbar.userSettings.icon }}\r\n </mat-icon>\r\n <mat-icon *ngIf=\"!smartNavbar.userSettings.icon\"> person_outline </mat-icon>\r\n {{ smartNavbar.userSettings.label }}\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n <button\r\n mat-menu-item\r\n *ngFor=\"let btn of smartNavbar.userSettings.settings\"\r\n (click)=\"btn.callback()\"\r\n class=\"menuButton\"\r\n >\r\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().FRONT\">\r\n {{ btn.icon }}\r\n </mat-icon>\r\n <div class=\"menuLabel\">\r\n {{ btn.label }}\r\n </div>\r\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().POST\">\r\n {{ btn.icon }}\r\n </mat-icon>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</mat-toolbar>\r\n", styles: [".filter-btn{margin-left:20px}input[type=text]{flex:1;background:#fff;height:40px;border:none;outline:none;padding:0 25px;border-radius:25px 0 0 25px}.drop_down_btn{position:relative;left:-5;border-radius:0 25px 25px 0;height:40px;border:none;outline:none;cursor:pointer;background:#fff;color:#00a8da;display:flex;align-items:center;padding-right:20px}.input{flex:1;position:relative;font-size:20px;display:flex;flex-direction:row;align-items:center;padding-left:30px}mat-toolbar{height:var(--navbar-height)}::ng-deep .navbar-form .mat-form-field-appearance-outline .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline{opacity:.75!important;color:#fff}.account-content{margin-left:75px}.title{margin-right:75px}.account-content>*{margin-left:30px}.account-content>*:first-child{margin-left:0}.custom-filter-holder{display:flex;align-items:center}.menuButton{display:flex;flex-direction:row;gap:.5rem}.menuLabel{flex:1;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.SmartformComponent, selector: "smartform", inputs: ["smartForm"] }] }); }
51
51
  }
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartNavbarComponent, decorators: [{
53
53
  type: Component,
54
- args: [{ selector: 'smart-navbar', encapsulation: ViewEncapsulation.Emulated, template: "<mat-toolbar>\n <img\n *ngIf=\"smartNavbar.icon\"\n class=\"title\"\n src=\"{{ smartNavbar.icon }}\"\n alt=\"\"\n (click)=\"onIconClick()\"\n />\n <ng-content select=\"[titleComponent]\" class=\"title\"></ng-content>\n <div *ngIf=\"smartNavbar.searchBar\" class=\"input\">\n <input\n type=\"text\"\n placeholder=\"{{ smartNavbar.searchBar.placeholder }}\"\n [(ngModel)]=\"searchText\"\n />\n <div\n *ngIf=\"smartNavbar.searchBar.quickFilterLabel && smartNavbar.searchBar.quickFilters.length\"\n class=\"drop_down_btn\"\n >\n <smartform #searchOption [smartForm]=\"filterForm\"></smartform>\n <button\n class=\"search_icon\"\n *ngIf=\"smartNavbar.searchBar.icon\"\n mat-icon-button\n (click)=\"onSearchButtonClick()\"\n >\n <mat-icon class=\"search_icon\">{{ smartNavbar.searchBar.icon }}</mat-icon>\n </button>\n </div>\n </div>\n <button\n *ngIf=\"smartNavbar.filterButtonCallback\"\n mat-raised-button\n color=\"primary\"\n class=\"filter-btn\"\n (click)=\"openFilters()\"\n >\n <div #customFilter class=\"custom-filter-holder\">\n <ng-content select=\"[filterComponent]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customFilter.hasChildNodes()\">\n <mat-icon>filter_list</mat-icon> {{ smartNavbar.filterButtonLabel }}\n </ng-container>\n </button>\n <div *ngIf=\"smartNavbar.userSettings\" class=\"account-content\">\n <button\n mat-button\n *ngIf=\"smartNavbar?.notification\"\n [color]=\"smartNavbar.notification?.iconColor\"\n (click)=\"onNotificationClick()\"\n class=\"notification-btn\"\n >\n <mat-icon>\n {{ smartNavbar.notification?.icon }}\n </mat-icon>\n </button>\n <button mat-button color=\"primary\" [matMenuTriggerFor]=\"menu\">\n <mat-icon *ngIf=\"smartNavbar.userSettings.icon\">\n {{ smartNavbar.userSettings.icon }}\n </mat-icon>\n <mat-icon *ngIf=\"!smartNavbar.userSettings.icon\"> person_outline </mat-icon>\n {{ smartNavbar.userSettings.label }}\n <mat-icon>arrow_drop_down</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button\n mat-menu-item\n *ngFor=\"let btn of smartNavbar.userSettings.settings\"\n (click)=\"btn.callback()\"\n class=\"menuButton\"\n >\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().FRONT\">\n {{ btn.icon }}\n </mat-icon>\n <div class=\"menuLabel\">\n {{ btn.label }}\n </div>\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().POST\">\n {{ btn.icon }}\n </mat-icon>\n </button>\n </mat-menu>\n </div>\n</mat-toolbar>\n", styles: [".filter-btn{margin-left:20px}input[type=text]{flex:1;background:#fff;height:40px;border:none;outline:none;padding:0 25px;border-radius:25px 0 0 25px}.drop_down_btn{position:relative;left:-5;border-radius:0 25px 25px 0;height:40px;border:none;outline:none;cursor:pointer;background:#fff;color:#00a8da;display:flex;align-items:center;padding-right:20px}.input{flex:1;position:relative;font-size:20px;display:flex;flex-direction:row;align-items:center;padding-left:30px}mat-toolbar{height:var(--navbar-height)}::ng-deep .navbar-form .mat-form-field-appearance-outline .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline{opacity:.75!important;color:#fff}.account-content{margin-left:75px}.title{margin-right:75px}.account-content>*{margin-left:30px}.account-content>*:first-child{margin-left:0}.custom-filter-holder{display:flex;align-items:center}.menuButton{display:flex;flex-direction:row;gap:.5rem}.menuLabel{flex:1;text-align:left}\n"] }]
54
+ args: [{ selector: 'smart-navbar', encapsulation: ViewEncapsulation.Emulated, template: "<mat-toolbar>\r\n <img\r\n *ngIf=\"smartNavbar.icon\"\r\n class=\"title\"\r\n src=\"{{ smartNavbar.icon }}\"\r\n alt=\"\"\r\n (click)=\"onIconClick()\"\r\n />\r\n <ng-content select=\"[titleComponent]\" class=\"title\"></ng-content>\r\n <div *ngIf=\"smartNavbar.searchBar\" class=\"input\">\r\n <input\r\n type=\"text\"\r\n placeholder=\"{{ smartNavbar.searchBar.placeholder }}\"\r\n [(ngModel)]=\"searchText\"\r\n />\r\n <div\r\n *ngIf=\"smartNavbar.searchBar.quickFilterLabel && smartNavbar.searchBar.quickFilters.length\"\r\n class=\"drop_down_btn\"\r\n >\r\n <smartform #searchOption [smartForm]=\"filterForm\"></smartform>\r\n <button\r\n class=\"search_icon\"\r\n *ngIf=\"smartNavbar.searchBar.icon\"\r\n mat-icon-button\r\n (click)=\"onSearchButtonClick()\"\r\n >\r\n <mat-icon class=\"search_icon\">{{ smartNavbar.searchBar.icon }}</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <button\r\n *ngIf=\"smartNavbar.filterButtonCallback\"\r\n mat-raised-button\r\n color=\"primary\"\r\n class=\"filter-btn\"\r\n (click)=\"openFilters()\"\r\n >\r\n <div #customFilter class=\"custom-filter-holder\">\r\n <ng-content select=\"[filterComponent]\"></ng-content>\r\n </div>\r\n <ng-container *ngIf=\"!customFilter.hasChildNodes()\">\r\n <mat-icon>filter_list</mat-icon> {{ smartNavbar.filterButtonLabel }}\r\n </ng-container>\r\n </button>\r\n <div *ngIf=\"smartNavbar.userSettings\" class=\"account-content\">\r\n <button\r\n mat-button\r\n *ngIf=\"smartNavbar?.notification\"\r\n [color]=\"smartNavbar.notification?.iconColor\"\r\n (click)=\"onNotificationClick()\"\r\n class=\"notification-btn\"\r\n >\r\n <mat-icon>\r\n {{ smartNavbar.notification?.icon }}\r\n </mat-icon>\r\n </button>\r\n <button mat-button color=\"primary\" [matMenuTriggerFor]=\"menu\">\r\n <mat-icon *ngIf=\"smartNavbar.userSettings.icon\">\r\n {{ smartNavbar.userSettings.icon }}\r\n </mat-icon>\r\n <mat-icon *ngIf=\"!smartNavbar.userSettings.icon\"> person_outline </mat-icon>\r\n {{ smartNavbar.userSettings.label }}\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n <button\r\n mat-menu-item\r\n *ngFor=\"let btn of smartNavbar.userSettings.settings\"\r\n (click)=\"btn.callback()\"\r\n class=\"menuButton\"\r\n >\r\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().FRONT\">\r\n {{ btn.icon }}\r\n </mat-icon>\r\n <div class=\"menuLabel\">\r\n {{ btn.label }}\r\n </div>\r\n <mat-icon class=\"menuIcon\" *ngIf=\"btn.icon && btn.iconPosition === buttonPosition().POST\">\r\n {{ btn.icon }}\r\n </mat-icon>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</mat-toolbar>\r\n", styles: [".filter-btn{margin-left:20px}input[type=text]{flex:1;background:#fff;height:40px;border:none;outline:none;padding:0 25px;border-radius:25px 0 0 25px}.drop_down_btn{position:relative;left:-5;border-radius:0 25px 25px 0;height:40px;border:none;outline:none;cursor:pointer;background:#fff;color:#00a8da;display:flex;align-items:center;padding-right:20px}.input{flex:1;position:relative;font-size:20px;display:flex;flex-direction:row;align-items:center;padding-left:30px}mat-toolbar{height:var(--navbar-height)}::ng-deep .navbar-form .mat-form-field-appearance-outline .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline,::ng-deep .navbar-form .mat-form-field-appearance-outline.mat-focused .mat-form-field-outline{opacity:.75!important;color:#fff}.account-content{margin-left:75px}.title{margin-right:75px}.account-content>*{margin-left:30px}.account-content>*:first-child{margin-left:0}.custom-filter-holder{display:flex;align-items:center}.menuButton{display:flex;flex-direction:row;gap:.5rem}.menuLabel{flex:1;text-align:left}\n"] }]
55
55
  }], ctorParameters: () => [], propDecorators: { smartNavbar: [{
56
56
  type: Input
57
57
  }], formComp: [{
58
58
  type: ViewChild,
59
59
  args: ['searchOption']
60
60
  }] } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW5hdmJhci9zbWFydC1uYXZiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbmF2YmFyL3NtYXJ0LW5hdmJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFhLHdCQUF3QixFQUFzQixNQUFNLGdCQUFnQixDQUFDO0FBQ3pGLE9BQU8sRUFBZSw0QkFBNEIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7QUFRakYsTUFBTSxPQUFPLG9CQUFvQjtJQU8vQjtRQUpBLGVBQVUsR0FBVyxFQUFFLENBQUM7SUFJVCxDQUFDO0lBRWhCLG1CQUFtQjtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLENBQUM7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyw0QkFBNEIsQ0FBQztJQUN0QyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztRQUN6RCxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxHQUFHO1lBQ3ZDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU8sQ0FBQztTQUMvQyxDQUFDO0lBQ0osQ0FBQzsrR0EvQ1Usb0JBQW9CO21HQUFwQixvQkFBb0Isc01DVmpDLDZ3RkFvRkE7OzRGRDFFYSxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0UsY0FBYyxpQkFHVCxpQkFBaUIsQ0FBQyxRQUFRO3dEQUdoQyxXQUFXO3NCQUFuQixLQUFLO2dCQUlxQixRQUFRO3NCQUFsQyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNtYXJ0Rm9ybSwgU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uLCBTbWFydGZvcm1Db21wb25lbnQgfSBmcm9tICcuLi8uLi9wcm9qZWN0cyc7XG5pbXBvcnQgeyBTbWFydE5hdmJhciwgU21hcnRVc2VyU2V0dGluc0ljb25Qb3NpdGlvbiB9IGZyb20gJy4vc21hcnQtbmF2YmFyLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc21hcnQtbmF2YmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LW5hdmJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LW5hdmJhci5jb21wb25lbnQuY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLkVtdWxhdGVkLFxufSlcbmV4cG9ydCBjbGFzcyBTbWFydE5hdmJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHNtYXJ0TmF2YmFyITogU21hcnROYXZiYXI7XG4gIGZpbHRlckZvcm0hOiBTbWFydEZvcm07XG4gIHNlYXJjaFRleHQ6IHN0cmluZyA9ICcnO1xuXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaE9wdGlvbicpIGZvcm1Db21wITogU21hcnRmb3JtQ29tcG9uZW50O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBvblNlYXJjaEJ1dHRvbkNsaWNrKCkge1xuICAgIGlmICghdGhpcy5zbWFydE5hdmJhci5zZWFyY2hCYXI/LnNlYXJjaENhbGxiYWNrKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFNlYXJjaGJhciBkb2VzIG5vdCBoYXZlIGEgY2FsbGJhY2shYCk7XG4gICAgfVxuICAgIHRoaXMuc21hcnROYXZiYXIuc2VhcmNoQmFyPy5zZWFyY2hDYWxsYmFjayh0aGlzLmZvcm1Db21wLnN1Ym1pdEZvcm0oKS53aWRnZXRzLCB0aGlzLnNlYXJjaFRleHQpO1xuICB9XG5cbiAgYnV0dG9uUG9zaXRpb24oKTogdHlwZW9mIFNtYXJ0VXNlclNldHRpbnNJY29uUG9zaXRpb24ge1xuICAgIHJldHVybiBTbWFydFVzZXJTZXR0aW5zSWNvblBvc2l0aW9uO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJGb3JtKCk7XG4gIH1cblxuICBvbkljb25DbGljaygpIHtcbiAgICBpZiAodGhpcy5zbWFydE5hdmJhci5pY29uQ2FsbGJhY2spIHtcbiAgICAgIHRoaXMuc21hcnROYXZiYXIuaWNvbkNhbGxiYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgb3BlbkZpbHRlcnMoKSB7XG4gICAgaWYgKHRoaXMuc21hcnROYXZiYXIuZmlsdGVyQnV0dG9uQ2FsbGJhY2spIHtcbiAgICAgIHRoaXMuc21hcnROYXZiYXIuZmlsdGVyQnV0dG9uQ2FsbGJhY2soKTtcbiAgICB9XG4gIH1cblxuICBvbk5vdGlmaWNhdGlvbkNsaWNrKCkge1xuICAgIGlmICh0aGlzLnNtYXJ0TmF2YmFyPy5ub3RpZmljYXRpb24/Lm5vdGlmaWNhdGlvbkNhbGxCYWNrKSB7XG4gICAgICB0aGlzLnNtYXJ0TmF2YmFyPy5ub3RpZmljYXRpb24/Lm5vdGlmaWNhdGlvbkNhbGxCYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyRm9ybSgpIHtcbiAgICB0aGlzLmZpbHRlckZvcm0gPSB7XG4gICAgICBkaXJlY3Rpb246IFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbi5ST1csXG4gICAgICB3aWRnZXRzOiBbdGhpcy5zbWFydE5hdmJhci5zZWFyY2hCYXI/LndpZGdldCFdLFxuICAgIH07XG4gIH1cbn1cbiIsIjxtYXQtdG9vbGJhcj5cbiAgPGltZ1xuICAgICpuZ0lmPVwic21hcnROYXZiYXIuaWNvblwiXG4gICAgY2xhc3M9XCJ0aXRsZVwiXG4gICAgc3JjPVwie3sgc21hcnROYXZiYXIuaWNvbiB9fVwiXG4gICAgYWx0PVwiXCJcbiAgICAoY2xpY2spPVwib25JY29uQ2xpY2soKVwiXG4gIC8+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0aXRsZUNvbXBvbmVudF1cIiBjbGFzcz1cInRpdGxlXCI+PC9uZy1jb250ZW50PlxuICA8ZGl2ICpuZ0lmPVwic21hcnROYXZiYXIuc2VhcmNoQmFyXCIgY2xhc3M9XCJpbnB1dFwiPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBzbWFydE5hdmJhci5zZWFyY2hCYXIucGxhY2Vob2xkZXIgfX1cIlxuICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCJcbiAgICAvPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwic21hcnROYXZiYXIuc2VhcmNoQmFyLnF1aWNrRmlsdGVyTGFiZWwgJiYgc21hcnROYXZiYXIuc2VhcmNoQmFyLnF1aWNrRmlsdGVycy5sZW5ndGhcIlxuICAgICAgY2xhc3M9XCJkcm9wX2Rvd25fYnRuXCJcbiAgICA+XG4gICAgICA8c21hcnRmb3JtICNzZWFyY2hPcHRpb24gW3NtYXJ0Rm9ybV09XCJmaWx0ZXJGb3JtXCI+PC9zbWFydGZvcm0+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwic2VhcmNoX2ljb25cIlxuICAgICAgICAqbmdJZj1cInNtYXJ0TmF2YmFyLnNlYXJjaEJhci5pY29uXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIChjbGljayk9XCJvblNlYXJjaEJ1dHRvbkNsaWNrKClcIlxuICAgICAgPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJzZWFyY2hfaWNvblwiPnt7IHNtYXJ0TmF2YmFyLnNlYXJjaEJhci5pY29uIH19PC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwic21hcnROYXZiYXIuZmlsdGVyQnV0dG9uQ2FsbGJhY2tcIlxuICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICBjbGFzcz1cImZpbHRlci1idG5cIlxuICAgIChjbGljayk9XCJvcGVuRmlsdGVycygpXCJcbiAgPlxuICAgIDxkaXYgI2N1c3RvbUZpbHRlciBjbGFzcz1cImN1c3RvbS1maWx0ZXItaG9sZGVyXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZmlsdGVyQ29tcG9uZW50XVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWN1c3RvbUZpbHRlci5oYXNDaGlsZE5vZGVzKClcIj5cbiAgICAgIDxtYXQtaWNvbj5maWx0ZXJfbGlzdDwvbWF0LWljb24+IHt7IHNtYXJ0TmF2YmFyLmZpbHRlckJ1dHRvbkxhYmVsIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvYnV0dG9uPlxuICA8ZGl2ICpuZ0lmPVwic21hcnROYXZiYXIudXNlclNldHRpbmdzXCIgY2xhc3M9XCJhY2NvdW50LWNvbnRlbnRcIj5cbiAgICA8YnV0dG9uXG4gICAgICBtYXQtYnV0dG9uXG4gICAgICAqbmdJZj1cInNtYXJ0TmF2YmFyPy5ub3RpZmljYXRpb25cIlxuICAgICAgW2NvbG9yXT1cInNtYXJ0TmF2YmFyLm5vdGlmaWNhdGlvbj8uaWNvbkNvbG9yXCJcbiAgICAgIChjbGljayk9XCJvbk5vdGlmaWNhdGlvbkNsaWNrKClcIlxuICAgICAgY2xhc3M9XCJub3RpZmljYXRpb24tYnRuXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24+XG4gICAgICAgIHt7IHNtYXJ0TmF2YmFyLm5vdGlmaWNhdGlvbj8uaWNvbiB9fVxuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5pY29uXCI+XG4gICAgICAgIHt7IHNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5pY29uIH19XG4gICAgICA8L21hdC1pY29uPlxuICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5pY29uXCI+IHBlcnNvbl9vdXRsaW5lIDwvbWF0LWljb24+XG4gICAgICB7eyBzbWFydE5hdmJhci51c2VyU2V0dGluZ3MubGFiZWwgfX1cbiAgICAgIDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAqbmdGb3I9XCJsZXQgYnRuIG9mIHNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5zZXR0aW5nc1wiXG4gICAgICAgIChjbGljayk9XCJidG4uY2FsbGJhY2soKVwiXG4gICAgICAgIGNsYXNzPVwibWVudUJ1dHRvblwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1lbnVJY29uXCIgKm5nSWY9XCJidG4uaWNvbiAmJiBidG4uaWNvblBvc2l0aW9uID09PSBidXR0b25Qb3NpdGlvbigpLkZST05UXCI+XG4gICAgICAgICAge3sgYnRuLmljb24gfX1cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnVMYWJlbFwiPlxuICAgICAgICAgIHt7IGJ0bi5sYWJlbCB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWVudUljb25cIiAqbmdJZj1cImJ0bi5pY29uICYmIGJ0bi5pY29uUG9zaXRpb24gPT09IGJ1dHRvblBvc2l0aW9uKCkuUE9TVFwiPlxuICAgICAgICAgIHt7IGJ0bi5pY29uIH19XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC1tZW51PlxuICA8L2Rpdj5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW5hdmJhci9zbWFydC1uYXZiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbmF2YmFyL3NtYXJ0LW5hdmJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFhLHdCQUF3QixFQUFzQixNQUFNLGdCQUFnQixDQUFDO0FBQ3pGLE9BQU8sRUFBZSw0QkFBNEIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7QUFRakYsTUFBTSxPQUFPLG9CQUFvQjtJQU8vQjtRQUpBLGVBQVUsR0FBVyxFQUFFLENBQUM7SUFJVCxDQUFDO0lBRWhCLG1CQUFtQjtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLENBQUM7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyw0QkFBNEIsQ0FBQztJQUN0QyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztRQUN6RCxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxHQUFHO1lBQ3ZDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU8sQ0FBQztTQUMvQyxDQUFDO0lBQ0osQ0FBQzsrR0EvQ1Usb0JBQW9CO21HQUFwQixvQkFBb0Isc01DVmpDLHE3RkFvRkE7OzRGRDFFYSxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0UsY0FBYyxpQkFHVCxpQkFBaUIsQ0FBQyxRQUFRO3dEQUdoQyxXQUFXO3NCQUFuQixLQUFLO2dCQUlxQixRQUFRO3NCQUFsQyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU21hcnRGb3JtLCBTbWFydEZvcm1XaWRnZXREaXJlY3Rpb24sIFNtYXJ0Zm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3Byb2plY3RzJztcclxuaW1wb3J0IHsgU21hcnROYXZiYXIsIFNtYXJ0VXNlclNldHRpbnNJY29uUG9zaXRpb24gfSBmcm9tICcuL3NtYXJ0LW5hdmJhci5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NtYXJ0LW5hdmJhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LW5hdmJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc21hcnQtbmF2YmFyLmNvbXBvbmVudC5jc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0TmF2YmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBzbWFydE5hdmJhciE6IFNtYXJ0TmF2YmFyO1xyXG4gIGZpbHRlckZvcm0hOiBTbWFydEZvcm07XHJcbiAgc2VhcmNoVGV4dDogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaE9wdGlvbicpIGZvcm1Db21wITogU21hcnRmb3JtQ29tcG9uZW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG9uU2VhcmNoQnV0dG9uQ2xpY2soKSB7XHJcbiAgICBpZiAoIXRoaXMuc21hcnROYXZiYXIuc2VhcmNoQmFyPy5zZWFyY2hDYWxsYmFjaykge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFNlYXJjaGJhciBkb2VzIG5vdCBoYXZlIGEgY2FsbGJhY2shYCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNtYXJ0TmF2YmFyLnNlYXJjaEJhcj8uc2VhcmNoQ2FsbGJhY2sodGhpcy5mb3JtQ29tcC5zdWJtaXRGb3JtKCkud2lkZ2V0cywgdGhpcy5zZWFyY2hUZXh0KTtcclxuICB9XHJcblxyXG4gIGJ1dHRvblBvc2l0aW9uKCk6IHR5cGVvZiBTbWFydFVzZXJTZXR0aW5zSWNvblBvc2l0aW9uIHtcclxuICAgIHJldHVybiBTbWFydFVzZXJTZXR0aW5zSWNvblBvc2l0aW9uO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlckZvcm0oKTtcclxuICB9XHJcblxyXG4gIG9uSWNvbkNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMuc21hcnROYXZiYXIuaWNvbkNhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMuc21hcnROYXZiYXIuaWNvbkNhbGxiYWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuRmlsdGVycygpIHtcclxuICAgIGlmICh0aGlzLnNtYXJ0TmF2YmFyLmZpbHRlckJ1dHRvbkNhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMuc21hcnROYXZiYXIuZmlsdGVyQnV0dG9uQ2FsbGJhY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTm90aWZpY2F0aW9uQ2xpY2soKSB7XHJcbiAgICBpZiAodGhpcy5zbWFydE5hdmJhcj8ubm90aWZpY2F0aW9uPy5ub3RpZmljYXRpb25DYWxsQmFjaykge1xyXG4gICAgICB0aGlzLnNtYXJ0TmF2YmFyPy5ub3RpZmljYXRpb24/Lm5vdGlmaWNhdGlvbkNhbGxCYWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW5kZXJGb3JtKCkge1xyXG4gICAgdGhpcy5maWx0ZXJGb3JtID0ge1xyXG4gICAgICBkaXJlY3Rpb246IFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbi5ST1csXHJcbiAgICAgIHdpZGdldHM6IFt0aGlzLnNtYXJ0TmF2YmFyLnNlYXJjaEJhcj8ud2lkZ2V0IV0sXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iLCI8bWF0LXRvb2xiYXI+XHJcbiAgPGltZ1xyXG4gICAgKm5nSWY9XCJzbWFydE5hdmJhci5pY29uXCJcclxuICAgIGNsYXNzPVwidGl0bGVcIlxyXG4gICAgc3JjPVwie3sgc21hcnROYXZiYXIuaWNvbiB9fVwiXHJcbiAgICBhbHQ9XCJcIlxyXG4gICAgKGNsaWNrKT1cIm9uSWNvbkNsaWNrKClcIlxyXG4gIC8+XHJcbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3RpdGxlQ29tcG9uZW50XVwiIGNsYXNzPVwidGl0bGVcIj48L25nLWNvbnRlbnQ+XHJcbiAgPGRpdiAqbmdJZj1cInNtYXJ0TmF2YmFyLnNlYXJjaEJhclwiIGNsYXNzPVwiaW5wdXRcIj5cclxuICAgIDxpbnB1dFxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIHBsYWNlaG9sZGVyPVwie3sgc21hcnROYXZiYXIuc2VhcmNoQmFyLnBsYWNlaG9sZGVyIH19XCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCJcclxuICAgIC8+XHJcbiAgICA8ZGl2XHJcbiAgICAgICpuZ0lmPVwic21hcnROYXZiYXIuc2VhcmNoQmFyLnF1aWNrRmlsdGVyTGFiZWwgJiYgc21hcnROYXZiYXIuc2VhcmNoQmFyLnF1aWNrRmlsdGVycy5sZW5ndGhcIlxyXG4gICAgICBjbGFzcz1cImRyb3BfZG93bl9idG5cIlxyXG4gICAgPlxyXG4gICAgICA8c21hcnRmb3JtICNzZWFyY2hPcHRpb24gW3NtYXJ0Rm9ybV09XCJmaWx0ZXJGb3JtXCI+PC9zbWFydGZvcm0+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInNlYXJjaF9pY29uXCJcclxuICAgICAgICAqbmdJZj1cInNtYXJ0TmF2YmFyLnNlYXJjaEJhci5pY29uXCJcclxuICAgICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAoY2xpY2spPVwib25TZWFyY2hCdXR0b25DbGljaygpXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInNlYXJjaF9pY29uXCI+e3sgc21hcnROYXZiYXIuc2VhcmNoQmFyLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxidXR0b25cclxuICAgICpuZ0lmPVwic21hcnROYXZiYXIuZmlsdGVyQnV0dG9uQ2FsbGJhY2tcIlxyXG4gICAgbWF0LXJhaXNlZC1idXR0b25cclxuICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICBjbGFzcz1cImZpbHRlci1idG5cIlxyXG4gICAgKGNsaWNrKT1cIm9wZW5GaWx0ZXJzKClcIlxyXG4gID5cclxuICAgIDxkaXYgI2N1c3RvbUZpbHRlciBjbGFzcz1cImN1c3RvbS1maWx0ZXItaG9sZGVyXCI+XHJcbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmaWx0ZXJDb21wb25lbnRdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWN1c3RvbUZpbHRlci5oYXNDaGlsZE5vZGVzKClcIj5cclxuICAgICAgPG1hdC1pY29uPmZpbHRlcl9saXN0PC9tYXQtaWNvbj4ge3sgc21hcnROYXZiYXIuZmlsdGVyQnV0dG9uTGFiZWwgfX1cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxkaXYgKm5nSWY9XCJzbWFydE5hdmJhci51c2VyU2V0dGluZ3NcIiBjbGFzcz1cImFjY291bnQtY29udGVudFwiPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBtYXQtYnV0dG9uXHJcbiAgICAgICpuZ0lmPVwic21hcnROYXZiYXI/Lm5vdGlmaWNhdGlvblwiXHJcbiAgICAgIFtjb2xvcl09XCJzbWFydE5hdmJhci5ub3RpZmljYXRpb24/Lmljb25Db2xvclwiXHJcbiAgICAgIChjbGljayk9XCJvbk5vdGlmaWNhdGlvbkNsaWNrKClcIlxyXG4gICAgICBjbGFzcz1cIm5vdGlmaWNhdGlvbi1idG5cIlxyXG4gICAgPlxyXG4gICAgICA8bWF0LWljb24+XHJcbiAgICAgICAge3sgc21hcnROYXZiYXIubm90aWZpY2F0aW9uPy5pY29uIH19XHJcbiAgICAgIDwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiPlxyXG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJzbWFydE5hdmJhci51c2VyU2V0dGluZ3MuaWNvblwiPlxyXG4gICAgICAgIHt7IHNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5pY29uIH19XHJcbiAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFzbWFydE5hdmJhci51c2VyU2V0dGluZ3MuaWNvblwiPiBwZXJzb25fb3V0bGluZSA8L21hdC1pY29uPlxyXG4gICAgICB7eyBzbWFydE5hdmJhci51c2VyU2V0dGluZ3MubGFiZWwgfX1cclxuICAgICAgPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1tZW51LWl0ZW1cclxuICAgICAgICAqbmdGb3I9XCJsZXQgYnRuIG9mIHNtYXJ0TmF2YmFyLnVzZXJTZXR0aW5ncy5zZXR0aW5nc1wiXHJcbiAgICAgICAgKGNsaWNrKT1cImJ0bi5jYWxsYmFjaygpXCJcclxuICAgICAgICBjbGFzcz1cIm1lbnVCdXR0b25cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWVudUljb25cIiAqbmdJZj1cImJ0bi5pY29uICYmIGJ0bi5pY29uUG9zaXRpb24gPT09IGJ1dHRvblBvc2l0aW9uKCkuRlJPTlRcIj5cclxuICAgICAgICAgIHt7IGJ0bi5pY29uIH19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVudUxhYmVsXCI+XHJcbiAgICAgICAgICB7eyBidG4ubGFiZWwgfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtZW51SWNvblwiICpuZ0lmPVwiYnRuLmljb24gJiYgYnRuLmljb25Qb3NpdGlvbiA9PT0gYnV0dG9uUG9zaXRpb24oKS5QT1NUXCI+XHJcbiAgICAgICAgICB7eyBidG4uaWNvbiB9fVxyXG4gICAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtbWVudT5cclxuICA8L2Rpdj5cclxuPC9tYXQtdG9vbGJhcj5cclxuIl19
@@ -3,4 +3,4 @@ export var SmartUserSettinsIconPosition;
3
3
  SmartUserSettinsIconPosition[SmartUserSettinsIconPosition["FRONT"] = 0] = "FRONT";
4
4
  SmartUserSettinsIconPosition[SmartUserSettinsIconPosition["POST"] = 1] = "POST";
5
5
  })(SmartUserSettinsIconPosition || (SmartUserSettinsIconPosition = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbmF2YmFyL3NtYXJ0LW5hdmJhci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQU4sSUFBWSw0QkFHWDtBQUhELFdBQVksNEJBQTRCO0lBQ3RDLGlGQUFLLENBQUE7SUFDTCwrRUFBSSxDQUFBO0FBQ04sQ0FBQyxFQUhXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFHdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdEJhZGdlUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBTbWFydEZvcm1XaWRnZXQgfSBmcm9tICcuLi8uLi9wcm9qZWN0cyc7XG5cbmV4cG9ydCBlbnVtIFNtYXJ0VXNlclNldHRpbnNJY29uUG9zaXRpb24ge1xuICBGUk9OVCxcbiAgUE9TVCxcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRVc2VyU2V0dGluZyB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGljb25Qb3NpdGlvbj86IFNtYXJ0VXNlclNldHRpbnNJY29uUG9zaXRpb247XG4gIGNhbGxiYWNrOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VXNlclNldHRpbmdzIHtcbiAgaWNvbj86IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgc2V0dGluZ3M/OiBTbWFydFVzZXJTZXR0aW5nW107XG4gIGNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTbWFydFNlYXJjaFJlcXVlc3Qge1xuICB3aWRnZXRzOiBTbWFydEZvcm1XaWRnZXQ8YW55PltdO1xuICBzZWFyY2hUZXh0OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRTZWFyY2hCYXIge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBxdWlja0ZpbHRlckxhYmVsOiBzdHJpbmc7XG4gIHF1aWNrRmlsdGVyczogc3RyaW5nW107XG4gIHNlYXJjaENhbGxiYWNrPzogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk7XG4gIHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU21hcnROb3RpZmljYXRpb24ge1xuICBpY29uOiBzdHJpbmc7XG4gIGljb25Db2xvcj86IHN0cmluZztcbiAgbm90aWZpY2F0aW9uQ2FsbEJhY2s/OiAoKSA9PiB2b2lkO1xuICBub3RpZmljYXRpb25Db3VudD86IG51bWJlcjtcbiAgY291bnRlckNvbG9yPzogVGhlbWVQYWxldHRlO1xuICBwb3NpdGlvbj86IE1hdEJhZGdlUG9zaXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU21hcnROYXZiYXIge1xuICBpY29uPzogc3RyaW5nO1xuICBpY29uQ2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xuICBzZWFyY2hCYXI/OiBTbWFydFNlYXJjaEJhcjtcbiAgZmlsdGVyQnV0dG9uTGFiZWw/OiBzdHJpbmc7XG4gIGZpbHRlckJ1dHRvbkNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbiAgdXNlclNldHRpbmdzPzogU21hcnRVc2VyU2V0dGluZ3M7XG4gIG5vdGlmaWNhdGlvbj86IFNtYXJ0Tm90aWZpY2F0aW9uO1xufVxuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbmF2YmFyL3NtYXJ0LW5hdmJhci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQU4sSUFBWSw0QkFHWDtBQUhELFdBQVksNEJBQTRCO0lBQ3RDLGlGQUFLLENBQUE7SUFDTCwrRUFBSSxDQUFBO0FBQ04sQ0FBQyxFQUhXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFHdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgTWF0QmFkZ2VQb3NpdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JhZGdlJztcclxuaW1wb3J0IHsgU21hcnRGb3JtV2lkZ2V0IH0gZnJvbSAnLi4vLi4vcHJvamVjdHMnO1xyXG5cclxuZXhwb3J0IGVudW0gU21hcnRVc2VyU2V0dGluc0ljb25Qb3NpdGlvbiB7XHJcbiAgRlJPTlQsXHJcbiAgUE9TVCxcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VXNlclNldHRpbmcge1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBpY29uUG9zaXRpb24/OiBTbWFydFVzZXJTZXR0aW5zSWNvblBvc2l0aW9uO1xyXG4gIGNhbGxiYWNrOiAoKSA9PiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VXNlclNldHRpbmdzIHtcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgc2V0dGluZ3M/OiBTbWFydFVzZXJTZXR0aW5nW107XHJcbiAgY2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0U2VhcmNoUmVxdWVzdCB7XHJcbiAgd2lkZ2V0czogU21hcnRGb3JtV2lkZ2V0PGFueT5bXTtcclxuICBzZWFyY2hUZXh0OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRTZWFyY2hCYXIge1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBxdWlja0ZpbHRlckxhYmVsOiBzdHJpbmc7XHJcbiAgcXVpY2tGaWx0ZXJzOiBzdHJpbmdbXTtcclxuICBzZWFyY2hDYWxsYmFjaz86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55O1xyXG4gIHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnROb3RpZmljYXRpb24ge1xyXG4gIGljb246IHN0cmluZztcclxuICBpY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgbm90aWZpY2F0aW9uQ2FsbEJhY2s/OiAoKSA9PiB2b2lkO1xyXG4gIG5vdGlmaWNhdGlvbkNvdW50PzogbnVtYmVyO1xyXG4gIGNvdW50ZXJDb2xvcj86IFRoZW1lUGFsZXR0ZTtcclxuICBwb3NpdGlvbj86IE1hdEJhZGdlUG9zaXRpb247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnROYXZiYXIge1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkNhbGxiYWNrPzogKCkgPT4gdm9pZDtcclxuICBzZWFyY2hCYXI/OiBTbWFydFNlYXJjaEJhcjtcclxuICBmaWx0ZXJCdXR0b25MYWJlbD86IHN0cmluZztcclxuICBmaWx0ZXJCdXR0b25DYWxsYmFjaz86ICgpID0+IHZvaWQ7XHJcbiAgdXNlclNldHRpbmdzPzogU21hcnRVc2VyU2V0dGluZ3M7XHJcbiAgbm90aWZpY2F0aW9uPzogU21hcnROb3RpZmljYXRpb247XHJcbn1cclxuIl19
@@ -60,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
60
60
  exports: [SmartNavbarComponent],
61
61
  }]
62
62
  }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW5hdmJhci9zbWFydC1uYXZiYXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFvQm5GLE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQWpCYixvQkFBb0IsYUFFakMsYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsYUFBYTtZQUNiLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxzQkFBc0IsYUFFZCxvQkFBb0I7Z0hBRW5CLGlCQUFpQixZQWYxQixhQUFhO1lBQ2IsZUFBZTtZQUNmLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLHNCQUFzQjs7NEZBSWIsaUJBQWlCO2tCQWxCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFO3dCQUNQLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTbWFydE5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vc21hcnQtbmF2YmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCcm93c2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYmFkZ2UnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgU21hcnRWaWV3Q29udGV4dE1vZHVsZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9zbWFydC12aWV3LWNvbnRleHQubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU21hcnROYXZiYXJDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQnJvd3Nlck1vZHVsZSxcbiAgICBNYXRDb21tb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFRvb2xiYXJNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICAgIFNtYXJ0Vmlld0NvbnRleHRNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtTbWFydE5hdmJhckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0TmF2YmFyTW9kdWxlIHt9XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW5hdmJhci9zbWFydC1uYXZiYXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFvQm5GLE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQWpCYixvQkFBb0IsYUFFakMsYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsYUFBYTtZQUNiLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxzQkFBc0IsYUFFZCxvQkFBb0I7Z0hBRW5CLGlCQUFpQixZQWYxQixhQUFhO1lBQ2IsZUFBZTtZQUNmLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLHNCQUFzQjs7NEZBSWIsaUJBQWlCO2tCQWxCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFO3dCQUNQLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNtYXJ0TmF2YmFyQ29tcG9uZW50IH0gZnJvbSAnLi9zbWFydC1uYXZiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5cclxuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRCYWRnZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JhZGdlJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBTbWFydFZpZXdDb250ZXh0TW9kdWxlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L3NtYXJ0LXZpZXctY29udGV4dC5tb2R1bGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtTbWFydE5hdmJhckNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQnJvd3Nlck1vZHVsZSxcclxuICAgIE1hdENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdFRvb2xiYXJNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRNZW51TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0QmFkZ2VNb2R1bGUsXHJcbiAgICBTbWFydFZpZXdDb250ZXh0TW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1NtYXJ0TmF2YmFyQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0TmF2YmFyTW9kdWxlIHt9XHJcbiJdfQ==
@@ -11,4 +11,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
11
11
  providedIn: 'root'
12
12
  }]
13
13
  }], ctorParameters: () => [] });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZiYXIvc21hcnQtbmF2YmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixnQkFBZ0IsQ0FBQzsrR0FGTixrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTbWFydE5hdmJhclNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG59XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZiYXIvc21hcnQtbmF2YmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixnQkFBZ0IsQ0FBQzsrR0FGTixrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnROYXZiYXJTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxufVxyXG4iXX0=
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export * from './smart-navigation.service';
5
5
  export * from './smart-navigation.module';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZpZ2F0aW9uL3Byb2plY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBzbWFydC1uYXZpZ2F0aW9uXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9zbWFydC1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zbWFydC1uYXZpZ2F0aW9uLm1vZHVsZSc7XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1uYXZpZ2F0aW9uL3Byb2plY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHNtYXJ0LW5hdmlnYXRpb25cclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LW5hdmlnYXRpb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtbmF2aWdhdGlvbi5tb2R1bGUnO1xyXG4iXX0=