@reusa/ngx-reusa-app-lib 0.0.1361 → 0.0.1363

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 (536) hide show
  1. package/esm2022/lib/components/add-employer/add-employer.component.mjs +1324 -2388
  2. package/esm2022/lib/components/add-participant/add-participant.component.mjs +105 -159
  3. package/esm2022/lib/components/add-payment/add-payment.component.mjs +53 -59
  4. package/esm2022/lib/components/address/address.component.mjs +150 -285
  5. package/esm2022/lib/components/bank-details/bank-details.component.mjs +219 -79
  6. package/esm2022/lib/components/contact-us/contact-us.component.mjs +43 -17
  7. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +9 -3
  8. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +4 -32
  9. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +15 -30
  10. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  11. package/esm2022/lib/components/dropdown/dropdown.component.mjs +4 -4
  12. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  13. package/esm2022/lib/components/email-update/email-update.component.mjs +140 -63
  14. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +574 -422
  15. package/esm2022/lib/components/error/error.component.mjs +5 -22
  16. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  17. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +49 -178
  18. package/esm2022/lib/components/footer/footer.component.mjs +101 -112
  19. package/esm2022/lib/components/header/header.component.mjs +174 -440
  20. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +36 -25
  21. package/esm2022/lib/components/info/info.component.mjs +12 -4
  22. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +22 -16
  23. package/esm2022/lib/components/job-title/job-title.component.mjs +97 -92
  24. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +513 -143
  25. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +402 -0
  26. package/esm2022/lib/components/link/link.component.mjs +1 -1
  27. package/esm2022/lib/components/menu/menu.component.mjs +100 -68
  28. package/esm2022/lib/components/mfa/mfa.component.mjs +287 -158
  29. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +18 -11
  30. package/esm2022/lib/components/mfa2/mfa2.component.mjs +285 -0
  31. package/esm2022/lib/components/money-expect/money-expect.component.mjs +54 -158
  32. package/esm2022/lib/components/profile/profile.component.mjs +353 -749
  33. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +38 -108
  34. package/esm2022/lib/components/questionnaire/AppValidators.mjs +47 -296
  35. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +65 -110
  36. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +173 -377
  37. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +95 -76
  38. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +1142 -878
  39. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +667 -207
  40. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +22 -28
  41. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +41 -128
  42. package/esm2022/lib/components/questionnaire/question-control.service.mjs +1 -2
  43. package/esm2022/lib/components/questionnaire/question.service.mjs +7 -5
  44. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +29 -15
  45. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +237 -497
  46. package/esm2022/lib/components/search-employer/search-employer.component.mjs +30 -155
  47. package/esm2022/lib/components/security-question/security-question.component.mjs +199 -0
  48. package/esm2022/lib/components/select/select.component.mjs +10 -5
  49. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  50. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +72 -52
  51. package/esm2022/lib/components/user-login/user-login.component.mjs +357 -139
  52. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +272 -622
  53. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +61 -125
  54. package/esm2022/lib/guards/auth.guard.mjs +2 -50
  55. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  56. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +3 -51
  57. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  58. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  59. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +2 -0
  60. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +2 -0
  61. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +2 -0
  62. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +2 -0
  63. package/esm2022/lib/models/LexisNexisResponseModel.mjs +3 -0
  64. package/esm2022/lib/models/LibConstants.mjs +6 -45
  65. package/esm2022/lib/models/PartialEmploymentModel.mjs +3 -0
  66. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  67. package/esm2022/lib/models/SecurityQuestionModel.mjs +3 -0
  68. package/esm2022/lib/models/dashboard-model.mjs +1 -1
  69. package/esm2022/lib/models/dependent.model.mjs +1 -1
  70. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  71. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +1 -2
  72. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  73. package/esm2022/lib/models/questionnaire/ComboModel.mjs +653 -96
  74. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  75. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  76. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  77. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +23 -135
  78. package/esm2022/lib/pages/BasePage.mjs +23 -4
  79. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +18 -22
  80. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +124 -142
  81. package/esm2022/lib/pages/common/landing/landing.component.mjs +8 -7
  82. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  83. package/esm2022/lib/pages/common/login/login.component.mjs +11 -7
  84. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  85. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  86. package/esm2022/lib/pages/popovers/language/language.page.mjs +2 -1
  87. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +4 -4
  88. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +2 -7
  89. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +2 -2
  90. package/esm2022/lib/services/base-service.mjs +1 -4
  91. package/esm2022/lib/services/chatbot/chatbot.service.mjs +2 -1
  92. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +36 -0
  93. package/esm2022/lib/services/claimant-service/claimant.service.mjs +13 -7
  94. package/esm2022/lib/services/claims/claims.service.mjs +14 -105
  95. package/esm2022/lib/services/help/help.service.mjs +1 -1
  96. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +60 -0
  97. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  98. package/esm2022/lib/services/login/login.service.mjs +11 -29
  99. package/esm2022/lib/services/ovp/ovp.service.mjs +43 -0
  100. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +1 -4
  101. package/esm2022/lib/services/questionnaire/validation.service.mjs +1 -4
  102. package/esm2022/lib/services/security-service/security.service.mjs +6 -23
  103. package/esm2022/lib/services/util/util.service.mjs +5 -61
  104. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +14 -186
  105. package/esm2022/lib/validations/AppRegex.mjs +3 -1
  106. package/esm2022/lib/validations/AppValidators.mjs +62 -78
  107. package/esm2022/public-api.mjs +5 -47
  108. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +26883 -44887
  109. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  110. package/lib/components/add-employer/add-employer.component.d.ts +53 -137
  111. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  112. package/lib/components/add-participant/add-participant.component.d.ts +5 -11
  113. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -1
  114. package/lib/components/add-payment/add-payment.component.d.ts +3 -9
  115. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  116. package/lib/components/address/address.component.d.ts +15 -42
  117. package/lib/components/address/address.component.d.ts.map +1 -1
  118. package/lib/components/bank-details/bank-details.component.d.ts +23 -1
  119. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -1
  120. package/lib/components/contact-us/contact-us.component.d.ts +4 -1
  121. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  122. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -1
  123. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  124. package/lib/components/email-update/email-update.component.d.ts +12 -1
  125. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  126. package/lib/components/employer-grid/employer-grid.component.d.ts +15 -25
  127. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  128. package/lib/components/error/error.component.d.ts +2 -3
  129. package/lib/components/error/error.component.d.ts.map +1 -1
  130. package/lib/components/file-uploader/file-uploader.component.d.ts +1 -5
  131. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -1
  132. package/lib/components/footer/footer.component.d.ts.map +1 -1
  133. package/lib/components/header/header.component.d.ts +5 -17
  134. package/lib/components/header/header.component.d.ts.map +1 -1
  135. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +3 -1
  136. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -1
  137. package/lib/components/job-title/job-title.component.d.ts +23 -22
  138. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  139. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +6 -5
  140. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  141. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +59 -0
  142. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +1 -0
  143. package/lib/components/menu/menu.component.d.ts +12 -3
  144. package/lib/components/menu/menu.component.d.ts.map +1 -1
  145. package/lib/components/mfa/mfa.component.d.ts +19 -7
  146. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  147. package/lib/components/mfa-popup/mfa-popup.component.d.ts +8 -6
  148. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  149. package/lib/components/mfa2/mfa2.component.d.ts +48 -0
  150. package/lib/components/mfa2/mfa2.component.d.ts.map +1 -0
  151. package/lib/components/money-expect/money-expect.component.d.ts +4 -15
  152. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  153. package/lib/components/profile/profile.component.d.ts +49 -82
  154. package/lib/components/profile/profile.component.d.ts.map +1 -1
  155. package/lib/components/profile-redirect/profile-redirect.component.d.ts +2 -9
  156. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  157. package/lib/components/questionnaire/AppValidators.d.ts +0 -1
  158. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  159. package/lib/components/questionnaire/account-success/account-success.page.d.ts +10 -13
  160. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  161. package/lib/components/questionnaire/common-success/common-success.page.d.ts +1 -7
  162. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  163. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +1 -3
  164. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -1
  165. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +34 -33
  166. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  167. package/lib/components/questionnaire/dynamic-form.component.d.ts +34 -10
  168. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  169. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +7 -0
  170. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  171. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +1 -7
  172. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  173. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  174. package/lib/components/questionnaire/question.service.d.ts +1 -0
  175. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  176. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +7 -1
  177. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  178. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +3 -11
  179. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  180. package/lib/components/search-employer/search-employer.component.d.ts +4 -5
  181. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  182. package/lib/components/security-question/security-question.component.d.ts +37 -0
  183. package/lib/components/security-question/security-question.component.d.ts.map +1 -0
  184. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +5 -1
  185. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -1
  186. package/lib/components/user-login/user-login.component.d.ts +38 -5
  187. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  188. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +10 -27
  189. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  190. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +3 -9
  191. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  192. package/lib/guards/auth.guard.d.ts.map +1 -1
  193. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -1
  194. package/lib/models/EmployerDetailSearchResult.d.ts +1 -4
  195. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  196. package/lib/models/LexisNexisAccountCreationModel.d.ts +15 -0
  197. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +1 -0
  198. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +16 -0
  199. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +1 -0
  200. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +39 -0
  201. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +1 -0
  202. package/lib/models/LexisNexisEnabledResponseModel.d.ts +5 -0
  203. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +1 -0
  204. package/lib/models/LexisNexisResponseModel.d.ts +7 -0
  205. package/lib/models/LexisNexisResponseModel.d.ts.map +1 -0
  206. package/lib/models/LibConstants.d.ts +1 -40
  207. package/lib/models/LibConstants.d.ts.map +1 -1
  208. package/lib/models/PartialEmploymentModel.d.ts +6 -0
  209. package/lib/models/PartialEmploymentModel.d.ts.map +1 -0
  210. package/lib/models/PaymentComponentModel.d.ts +1 -1
  211. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  212. package/lib/models/SecurityQuestionModel.d.ts +7 -0
  213. package/lib/models/SecurityQuestionModel.d.ts.map +1 -0
  214. package/lib/models/dashboard-model.d.ts +0 -22
  215. package/lib/models/dashboard-model.d.ts.map +1 -1
  216. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +0 -3
  217. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  218. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +4 -15
  219. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  220. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +1 -4
  221. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  222. package/lib/models/questionnaire/ComboModel.d.ts +82 -14
  223. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  224. package/lib/models/questionnaire/ElementsModel.d.ts +1 -0
  225. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  226. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +0 -2
  227. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  228. package/lib/models/questionnaire/StatusModel.d.ts +0 -1
  229. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  230. package/lib/ngx-reusa-app-lib.module.d.ts +86 -124
  231. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  232. package/lib/pages/BasePage.d.ts +6 -3
  233. package/lib/pages/BasePage.d.ts.map +1 -1
  234. package/lib/pages/common/change-password/change-password.page.d.ts +0 -3
  235. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  236. package/lib/pages/common/login/login.component.d.ts.map +1 -1
  237. package/lib/pages/popovers/language/language.page.d.ts.map +1 -1
  238. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -1
  239. package/lib/services/base-service.d.ts +0 -12
  240. package/lib/services/base-service.d.ts.map +1 -1
  241. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +16 -0
  242. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +1 -0
  243. package/lib/services/claimant-service/claimant.service.d.ts +6 -5
  244. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  245. package/lib/services/claims/claims.service.d.ts +5 -39
  246. package/lib/services/claims/claims.service.d.ts.map +1 -1
  247. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +26 -0
  248. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +1 -0
  249. package/lib/services/login/login.service.d.ts +3 -5
  250. package/lib/services/login/login.service.d.ts.map +1 -1
  251. package/lib/services/ovp/ovp.service.d.ts +17 -0
  252. package/lib/services/ovp/ovp.service.d.ts.map +1 -0
  253. package/lib/services/questionnaire/questionnaire.service.d.ts +0 -1
  254. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  255. package/lib/services/questionnaire/validation.service.d.ts +0 -3
  256. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  257. package/lib/services/security-service/security.service.d.ts +4 -12
  258. package/lib/services/security-service/security.service.d.ts.map +1 -1
  259. package/lib/services/util/util.service.d.ts +0 -6
  260. package/lib/services/util/util.service.d.ts.map +1 -1
  261. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +5 -47
  262. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -1
  263. package/lib/validations/AppRegex.d.ts +2 -0
  264. package/lib/validations/AppRegex.d.ts.map +1 -1
  265. package/lib/validations/AppValidators.d.ts +24 -20
  266. package/lib/validations/AppValidators.d.ts.map +1 -1
  267. package/package.json +2 -2
  268. package/public-api.d.ts +4 -46
  269. package/public-api.d.ts.map +1 -1
  270. package/esm2022/lib/components/add-wage/add-wage.component.mjs +0 -161
  271. package/esm2022/lib/components/address-popup/address-popup.component.mjs +0 -97
  272. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +0 -289
  273. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +0 -245
  274. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +0 -203
  275. package/esm2022/lib/components/claim-info/claim-info.component.mjs +0 -408
  276. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +0 -596
  277. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +0 -356
  278. package/esm2022/lib/components/employer-info/employer-info.component.mjs +0 -319
  279. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +0 -238
  280. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +0 -302
  281. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +0 -172
  282. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +0 -201
  283. package/esm2022/lib/components/history-page/history-page.component.mjs +0 -571
  284. package/esm2022/lib/components/idme/idme.component.mjs +0 -84
  285. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +0 -3661
  286. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +0 -258
  287. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +0 -853
  288. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +0 -251
  289. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +0 -261
  290. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +0 -560
  291. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +0 -25
  292. package/esm2022/lib/components/sms/sms.component.mjs +0 -336
  293. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +0 -527
  294. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +0 -274
  295. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +0 -147
  296. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +0 -167
  297. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +0 -828
  298. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +0 -129
  299. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +0 -136
  300. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +0 -72
  301. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +0 -50
  302. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +0 -92
  303. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +0 -1190
  304. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +0 -690
  305. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +0 -524
  306. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +0 -394
  307. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +0 -640
  308. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +0 -33
  309. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +0 -9
  310. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +0 -5
  311. package/esm2022/lib/models/ActiveClaimModel.mjs +0 -3
  312. package/esm2022/lib/models/CountyModel.mjs +0 -3
  313. package/esm2022/lib/models/DuaAppDataModel.mjs +0 -3
  314. package/esm2022/lib/models/DuaRequestModel.mjs +0 -3
  315. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +0 -6
  316. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +0 -4
  317. package/esm2022/lib/models/EmployerPayInfoModel.mjs +0 -6
  318. package/esm2022/lib/models/FarmUsageComponentModel.mjs +0 -2
  319. package/esm2022/lib/models/GrossEarningsModel.mjs +0 -3
  320. package/esm2022/lib/models/HelpConstants.mjs +0 -5
  321. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +0 -3
  322. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +0 -3
  323. package/esm2022/lib/models/RetroWeeksModel.mjs +0 -3
  324. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +0 -3
  325. package/esm2022/lib/models/SendOtpRequestModel.mjs +0 -3
  326. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +0 -3
  327. package/esm2022/lib/models/WageCalculatorModel.mjs +0 -3
  328. package/esm2022/lib/models/WageInfoModel.mjs +0 -4
  329. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +0 -3
  330. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +0 -3
  331. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +0 -3
  332. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +0 -3
  333. package/esm2022/lib/models/combo-model.mjs +0 -343
  334. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +0 -7
  335. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +0 -3
  336. package/esm2022/lib/models/fileupload/FileObject.mjs +0 -3
  337. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +0 -7
  338. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +0 -8
  339. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +0 -3
  340. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +0 -3
  341. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +0 -3
  342. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +0 -2
  343. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +0 -7
  344. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +0 -7
  345. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +0 -6
  346. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +0 -34
  347. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +0 -15
  348. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +0 -11
  349. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +0 -101
  350. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +0 -151
  351. package/esm2022/lib/services/appeal/appeal.service.mjs +0 -37
  352. package/esm2022/lib/services/birt-service/birt.service.mjs +0 -57
  353. package/esm2022/lib/services/employer/employer-service.mjs +0 -35
  354. package/esm2022/lib/services/event-service/event-service.mjs +0 -44
  355. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +0 -327
  356. package/esm2022/lib/services/weekly-cert/review.service.mjs +0 -101
  357. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +0 -37
  358. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +0 -58
  359. package/lib/components/add-wage/add-wage.component.d.ts +0 -30
  360. package/lib/components/add-wage/add-wage.component.d.ts.map +0 -1
  361. package/lib/components/address-popup/address-popup.component.d.ts +0 -16
  362. package/lib/components/address-popup/address-popup.component.d.ts.map +0 -1
  363. package/lib/components/address-suggestion/address-suggestion.component.d.ts +0 -43
  364. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +0 -1
  365. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +0 -37
  366. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +0 -1
  367. package/lib/components/associate-ssn/associate-ssn.component.d.ts +0 -33
  368. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +0 -1
  369. package/lib/components/claim-info/claim-info.component.d.ts +0 -49
  370. package/lib/components/claim-info/claim-info.component.d.ts.map +0 -1
  371. package/lib/components/dua-request-page/dua-request-page.component.d.ts +0 -74
  372. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +0 -1
  373. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +0 -61
  374. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +0 -1
  375. package/lib/components/employer-info/employer-info.component.d.ts +0 -50
  376. package/lib/components/employer-info/employer-info.component.d.ts.map +0 -1
  377. package/lib/components/employer-pay/employer-pay.component.d.ts +0 -51
  378. package/lib/components/employer-pay/employer-pay.component.d.ts.map +0 -1
  379. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +0 -43
  380. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +0 -1
  381. package/lib/components/farm-usage/farm-usage.component.d.ts +0 -33
  382. package/lib/components/farm-usage/farm-usage.component.d.ts.map +0 -1
  383. package/lib/components/gross-earnings/gross-earnings.component.d.ts +0 -42
  384. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +0 -1
  385. package/lib/components/history-page/history-page.component.d.ts +0 -80
  386. package/lib/components/history-page/history-page.component.d.ts.map +0 -1
  387. package/lib/components/idme/idme.component.d.ts +0 -19
  388. package/lib/components/idme/idme.component.d.ts.map +0 -1
  389. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +0 -311
  390. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +0 -1
  391. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +0 -33
  392. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +0 -1
  393. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +0 -97
  394. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +0 -1
  395. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +0 -33
  396. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +0 -1
  397. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +0 -54
  398. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +0 -1
  399. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +0 -74
  400. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +0 -1
  401. package/lib/components/scrollable-text/scrollable-text.component.d.ts +0 -11
  402. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +0 -1
  403. package/lib/components/sms/sms.component.d.ts +0 -63
  404. package/lib/components/sms/sms.component.d.ts.map +0 -1
  405. package/lib/components/wage-calculator/wage-calculator.component.d.ts +0 -44
  406. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +0 -1
  407. package/lib/components/wage-grid/wage-grid.component.d.ts +0 -43
  408. package/lib/components/wage-grid/wage-grid.component.d.ts.map +0 -1
  409. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +0 -28
  410. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +0 -1
  411. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +0 -28
  412. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +0 -1
  413. package/lib/components/weekly-certification/weekly-certification.component.d.ts +0 -101
  414. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +0 -1
  415. package/lib/components/weekly-confirmation/confirmation.component.d.ts +0 -21
  416. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +0 -1
  417. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +0 -34
  418. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +0 -1
  419. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +0 -17
  420. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +0 -1
  421. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +0 -10
  422. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +0 -1
  423. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +0 -17
  424. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +0 -1
  425. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +0 -105
  426. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +0 -1
  427. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +0 -71
  428. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +0 -1
  429. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +0 -59
  430. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +0 -1
  431. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +0 -47
  432. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +0 -1
  433. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +0 -78
  434. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +0 -1
  435. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +0 -8
  436. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +0 -1
  437. package/lib/enums/AddressValidationResponseEnum.d.ts +0 -8
  438. package/lib/enums/AddressValidationResponseEnum.d.ts.map +0 -1
  439. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +0 -4
  440. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +0 -1
  441. package/lib/models/ActiveClaimModel.d.ts +0 -8
  442. package/lib/models/ActiveClaimModel.d.ts.map +0 -1
  443. package/lib/models/CountyModel.d.ts +0 -8
  444. package/lib/models/CountyModel.d.ts.map +0 -1
  445. package/lib/models/DuaAppDataModel.d.ts +0 -5
  446. package/lib/models/DuaAppDataModel.d.ts.map +0 -1
  447. package/lib/models/DuaRequestModel.d.ts +0 -10
  448. package/lib/models/DuaRequestModel.d.ts.map +0 -1
  449. package/lib/models/DuaRetroWeeksComponentModel.d.ts +0 -5
  450. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +0 -1
  451. package/lib/models/EmployerInfoComponentModel.d.ts +0 -9
  452. package/lib/models/EmployerInfoComponentModel.d.ts.map +0 -1
  453. package/lib/models/EmployerPayInfoModel.d.ts +0 -20
  454. package/lib/models/EmployerPayInfoModel.d.ts.map +0 -1
  455. package/lib/models/FarmUsageComponentModel.d.ts +0 -10
  456. package/lib/models/FarmUsageComponentModel.d.ts.map +0 -1
  457. package/lib/models/GrossEarningsModel.d.ts +0 -6
  458. package/lib/models/GrossEarningsModel.d.ts.map +0 -1
  459. package/lib/models/HelpConstants.d.ts +0 -5
  460. package/lib/models/HelpConstants.d.ts.map +0 -1
  461. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +0 -7
  462. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +0 -1
  463. package/lib/models/ReasonSeparationRequestModel.d.ts +0 -7
  464. package/lib/models/ReasonSeparationRequestModel.d.ts.map +0 -1
  465. package/lib/models/RetroWeeksModel.d.ts +0 -11
  466. package/lib/models/RetroWeeksModel.d.ts.map +0 -1
  467. package/lib/models/SecurityQuestionAnswerModel.d.ts +0 -7
  468. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +0 -1
  469. package/lib/models/SendOtpRequestModel.d.ts +0 -12
  470. package/lib/models/SendOtpRequestModel.d.ts.map +0 -1
  471. package/lib/models/VerifyOtpRequestModel.d.ts +0 -8
  472. package/lib/models/VerifyOtpRequestModel.d.ts.map +0 -1
  473. package/lib/models/WageCalculatorModel.d.ts +0 -15
  474. package/lib/models/WageCalculatorModel.d.ts.map +0 -1
  475. package/lib/models/WageInfoModel.d.ts +0 -9
  476. package/lib/models/WageInfoModel.d.ts.map +0 -1
  477. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +0 -12
  478. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +0 -1
  479. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +0 -11
  480. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +0 -1
  481. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +0 -6
  482. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +0 -1
  483. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +0 -16
  484. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +0 -1
  485. package/lib/models/combo-model.d.ts +0 -42
  486. package/lib/models/combo-model.d.ts.map +0 -1
  487. package/lib/models/fileupload/DocUploadModel.d.ts +0 -22
  488. package/lib/models/fileupload/DocUploadModel.d.ts.map +0 -1
  489. package/lib/models/fileupload/EmployerDataModel.d.ts +0 -6
  490. package/lib/models/fileupload/EmployerDataModel.d.ts.map +0 -1
  491. package/lib/models/fileupload/FileObject.d.ts +0 -8
  492. package/lib/models/fileupload/FileObject.d.ts.map +0 -1
  493. package/lib/models/fileupload/FileObjectArray.d.ts +0 -8
  494. package/lib/models/fileupload/FileObjectArray.d.ts.map +0 -1
  495. package/lib/models/questionnaire/AppealParticipantModel.d.ts +0 -17
  496. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +0 -1
  497. package/lib/models/questionnaire/ScrollableTextModel.d.ts +0 -4
  498. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +0 -1
  499. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +0 -4
  500. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +0 -1
  501. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +0 -9
  502. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +0 -1
  503. package/lib/models/weekly-cert/address-detail-model.d.ts +0 -14
  504. package/lib/models/weekly-cert/address-detail-model.d.ts.map +0 -1
  505. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +0 -15
  506. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +0 -1
  507. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +0 -27
  508. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +0 -1
  509. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +0 -57
  510. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +0 -1
  511. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +0 -59
  512. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +0 -1
  513. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +0 -66
  514. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +0 -1
  515. package/lib/models/weekly-cert/work-search-v2-model.d.ts +0 -18
  516. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +0 -1
  517. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +0 -14
  518. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +0 -1
  519. package/lib/services/address-validation-service/address-validation.service.d.ts +0 -44
  520. package/lib/services/address-validation-service/address-validation.service.d.ts.map +0 -1
  521. package/lib/services/appeal/appeal.service.d.ts +0 -16
  522. package/lib/services/appeal/appeal.service.d.ts.map +0 -1
  523. package/lib/services/birt-service/birt.service.d.ts +0 -17
  524. package/lib/services/birt-service/birt.service.d.ts.map +0 -1
  525. package/lib/services/employer/employer-service.d.ts +0 -16
  526. package/lib/services/employer/employer-service.d.ts.map +0 -1
  527. package/lib/services/event-service/event-service.d.ts +0 -20
  528. package/lib/services/event-service/event-service.d.ts.map +0 -1
  529. package/lib/services/offline-claims/offline-claims.service.d.ts +0 -64
  530. package/lib/services/offline-claims/offline-claims.service.d.ts.map +0 -1
  531. package/lib/services/weekly-cert/review.service.d.ts +0 -23
  532. package/lib/services/weekly-cert/review.service.d.ts.map +0 -1
  533. package/lib/services/weekly-cert/weekly-cert.service.d.ts +0 -17
  534. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +0 -1
  535. package/lib/services/weekly-cert/work-search.service.d.ts +0 -26
  536. package/lib/services/weekly-cert/work-search.service.d.ts.map +0 -1
@@ -2,17 +2,25 @@ import { Component } from '@angular/core';
2
2
  import { LibConstants } from '../../models/LibConstants';
3
3
  import { MyNotificationsPage } from '../../pages/popovers/my-notifications/my-notifications.page';
4
4
  import { MyProfilePage } from '../../pages/popovers/my-profile/my-profile.page';
5
- import { BasePage } from '../../pages/BasePage';
6
5
  import * as i0 from "@angular/core";
7
6
  import * as i1 from "@ionic/angular";
8
7
  import * as i2 from "../../services/login/login.service";
9
8
  import * as i3 from "../../services/notification/notification.service";
10
9
  import * as i4 from "@angular/router";
11
10
  import * as i5 from "../../services/util/util.service";
11
+ import * as i6 from "@ngx-translate/core";
12
+ import * as i7 from "@angular/common";
13
+ import * as i8 from "primeng/tooltip";
14
+ import * as i9 from "primeng/accordion";
15
+ import * as i10 from "primeng/divider";
16
+ import * as i11 from "../profile/profile.component";
12
17
  function MenuComponent_ion_menu_0_ion_menu_button_4_Template(rf, ctx) { if (rf & 1) {
13
18
  i0.ɵɵelementStart(0, "ion-menu-button", 6);
14
- i0.ɵɵelement(1, "ion-icon", 7);
19
+ i0.ɵɵpipe(1, "translate");
20
+ i0.ɵɵelement(2, "ion-icon", 7);
15
21
  i0.ɵɵelementEnd();
22
+ } if (rf & 2) {
23
+ i0.ɵɵpropertyInterpolate("pTooltip", i0.ɵɵpipeBind1(1, 1, "header.menu.close"));
16
24
  } }
17
25
  function MenuComponent_ion_menu_0_p_accordion_6_p_accordionTab_1_ion_item_2_ion_icon_1_Template(rf, ctx) { if (rf & 1) {
18
26
  i0.ɵɵelement(0, "ion-icon", 16);
@@ -85,86 +93,73 @@ function MenuComponent_ion_menu_0_p_accordion_6_Template(rf, ctx) { if (rf & 1)
85
93
  i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r3.ls.getMenuBs()));
86
94
  } }
87
95
  function MenuComponent_ion_menu_0_div_7_div_1_ion_item_2_Template(rf, ctx) { if (rf & 1) {
88
- const _r30 = i0.ɵɵgetCurrentView();
96
+ const _r29 = i0.ɵɵgetCurrentView();
89
97
  i0.ɵɵelementStart(0, "ion-item", 11);
90
- i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_div_1_ion_item_2_Template_ion_item_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r30); const item_r28 = restoredCtx.$implicit; const ctx_r29 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r29.openPage(item_r28)); });
91
- i0.ɵɵelementStart(1, "ion-label", 30);
98
+ i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_div_1_ion_item_2_Template_ion_item_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r29); const item_r27 = restoredCtx.$implicit; const ctx_r28 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r28.openPage(item_r27)); });
99
+ i0.ɵɵelementStart(1, "ion-label", 28);
92
100
  i0.ɵɵtext(2);
93
101
  i0.ɵɵelementEnd()();
94
102
  } if (rf & 2) {
95
- const item_r28 = ctx.$implicit;
96
- const ctx_r27 = i0.ɵɵnextContext(4);
103
+ const item_r27 = ctx.$implicit;
104
+ const ctx_r26 = i0.ɵɵnextContext(4);
97
105
  i0.ɵɵadvance(1);
98
- i0.ɵɵproperty("ngClass", ctx_r27.showIcon(item_r28) ? "selected-menu" : "selected-menu-unselect");
106
+ i0.ɵɵproperty("ngClass", ctx_r26.showIcon(item_r27) ? "selected-menu" : "selected-menu-unselect");
99
107
  i0.ɵɵadvance(1);
100
- i0.ɵɵtextInterpolate(item_r28.label);
108
+ i0.ɵɵtextInterpolate(item_r27.label);
101
109
  } }
102
110
  function MenuComponent_ion_menu_0_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
103
111
  i0.ɵɵelementStart(0, "div")(1, "ion-list");
104
112
  i0.ɵɵtemplate(2, MenuComponent_ion_menu_0_div_7_div_1_ion_item_2_Template, 3, 2, "ion-item", 10);
105
113
  i0.ɵɵelementEnd()();
106
114
  } if (rf & 2) {
107
- const menu_r24 = ctx.$implicit;
108
- i0.ɵɵadvance(2);
109
- i0.ɵɵproperty("ngForOf", menu_r24.items);
110
- } }
111
- function MenuComponent_ion_menu_0_div_7_ion_badge_17_Template(rf, ctx) { if (rf & 1) {
112
- i0.ɵɵelementStart(0, "ion-badge", 31)(1, "ion-label");
113
- i0.ɵɵtext(2);
114
- i0.ɵɵelementEnd()();
115
- } if (rf & 2) {
116
- const ctx_r23 = i0.ɵɵnextContext(3);
115
+ const menu_r23 = ctx.$implicit;
117
116
  i0.ɵɵadvance(2);
118
- i0.ɵɵtextInterpolate(ctx_r23.ns.notificationCount.getValue());
117
+ i0.ɵɵproperty("ngForOf", menu_r23.items);
119
118
  } }
120
119
  function MenuComponent_ion_menu_0_div_7_Template(rf, ctx) { if (rf & 1) {
121
- const _r32 = i0.ɵɵgetCurrentView();
120
+ const _r31 = i0.ɵɵgetCurrentView();
122
121
  i0.ɵɵelementStart(0, "div");
123
122
  i0.ɵɵtemplate(1, MenuComponent_ion_menu_0_div_7_div_1_Template, 3, 1, "div", 23);
124
123
  i0.ɵɵpipe(2, "async");
125
124
  i0.ɵɵelement(3, "p-divider");
126
125
  i0.ɵɵelementStart(4, "ion-list")(5, "ion-item", 11);
127
- i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_5_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r31 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r31.presentMyProfilePopover($event)); });
126
+ i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_5_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r30 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r30.presentMyProfilePopover($event)); });
128
127
  i0.ɵɵelement(6, "ion-icon", 24);
129
128
  i0.ɵɵelementStart(7, "ion-label", 25);
130
- i0.ɵɵtext(8, "User Profile");
129
+ i0.ɵɵtext(8);
131
130
  i0.ɵɵelementEnd()();
132
131
  i0.ɵɵelementStart(9, "ion-item", 11);
133
- i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_9_listener() { i0.ɵɵrestoreView(_r32); const ctx_r33 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r33.navigate("cp", "documents")); });
134
- i0.ɵɵelement(10, "i", 26);
132
+ i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_9_listener() { i0.ɵɵrestoreView(_r31); const ctx_r32 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r32.navigate("cp", "documents")); });
133
+ i0.ɵɵelement(10, "ion-icon", 26);
135
134
  i0.ɵɵelementStart(11, "ion-label", 25);
136
- i0.ɵɵtext(12, "Documents");
135
+ i0.ɵɵtext(12);
137
136
  i0.ɵɵelementEnd()();
138
137
  i0.ɵɵelementStart(13, "ion-item", 11);
139
- i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_13_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r34 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r34.presentMyNotificationPopover($event)); });
138
+ i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_13_listener() { i0.ɵɵrestoreView(_r31); const ctx_r33 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r33.logout()); });
140
139
  i0.ɵɵelement(14, "ion-icon", 27);
141
140
  i0.ɵɵelementStart(15, "ion-label", 25);
142
- i0.ɵɵtext(16, "Notifications");
143
- i0.ɵɵelementEnd();
144
- i0.ɵɵtemplate(17, MenuComponent_ion_menu_0_div_7_ion_badge_17_Template, 3, 1, "ion-badge", 28);
145
- i0.ɵɵelementEnd();
146
- i0.ɵɵelementStart(18, "ion-item", 11);
147
- i0.ɵɵlistener("click", function MenuComponent_ion_menu_0_div_7_Template_ion_item_click_18_listener() { i0.ɵɵrestoreView(_r32); const ctx_r35 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r35.logout()); });
148
- i0.ɵɵelement(19, "ion-icon", 29);
149
- i0.ɵɵelementStart(20, "ion-label", 25);
150
- i0.ɵɵtext(21, "Logout");
141
+ i0.ɵɵtext(16);
151
142
  i0.ɵɵelementEnd()()()();
152
143
  } if (rf & 2) {
153
144
  const ctx_r4 = i0.ɵɵnextContext(2);
154
145
  i0.ɵɵadvance(1);
155
- i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 2, ctx_r4.ls.getMenuBs()));
156
- i0.ɵɵadvance(16);
157
- i0.ɵɵproperty("ngIf", ctx_r4.ns.notificationCount.getValue() > 0);
146
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 4, ctx_r4.ls.getMenuBs()));
147
+ i0.ɵɵadvance(7);
148
+ i0.ɵɵtextInterpolate(ctx_r4.userProfileLabel);
149
+ i0.ɵɵadvance(4);
150
+ i0.ɵɵtextInterpolate(ctx_r4.userDocumentsLabel);
151
+ i0.ɵɵadvance(4);
152
+ i0.ɵɵtextInterpolate(ctx_r4.userLogoutLabel);
158
153
  } }
159
154
  function MenuComponent_ion_menu_0_Template(rf, ctx) { if (rf & 1) {
160
- const _r37 = i0.ɵɵgetCurrentView();
155
+ const _r35 = i0.ɵɵgetCurrentView();
161
156
  i0.ɵɵelementStart(0, "ion-menu", 2);
162
- i0.ɵɵlistener("ionDidOpen", function MenuComponent_ion_menu_0_Template_ion_menu_ionDidOpen_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r36 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r36.menuOpened()); });
157
+ i0.ɵɵlistener("ionDidOpen", function MenuComponent_ion_menu_0_Template_ion_menu_ionDidOpen_0_listener() { i0.ɵɵrestoreView(_r35); const ctx_r34 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r34.menuOpened()); });
163
158
  i0.ɵɵelementStart(1, "ion-header")(2, "ion-toolbar")(3, "ion-buttons", 3);
164
- i0.ɵɵtemplate(4, MenuComponent_ion_menu_0_ion_menu_button_4_Template, 2, 0, "ion-menu-button", 4);
159
+ i0.ɵɵtemplate(4, MenuComponent_ion_menu_0_ion_menu_button_4_Template, 3, 3, "ion-menu-button", 4);
165
160
  i0.ɵɵelementEnd()()();
166
161
  i0.ɵɵelementStart(5, "ion-content");
167
- i0.ɵɵtemplate(6, MenuComponent_ion_menu_0_p_accordion_6_Template, 3, 3, "p-accordion", 5)(7, MenuComponent_ion_menu_0_div_7_Template, 22, 4, "div", 5);
162
+ i0.ɵɵtemplate(6, MenuComponent_ion_menu_0_p_accordion_6_Template, 3, 3, "p-accordion", 5)(7, MenuComponent_ion_menu_0_div_7_Template, 17, 6, "div", 5);
168
163
  i0.ɵɵelementEnd()();
169
164
  } if (rf & 2) {
170
165
  const ctx_r0 = i0.ɵɵnextContext();
@@ -176,14 +171,13 @@ function MenuComponent_ion_menu_0_Template(rf, ctx) { if (rf & 1) {
176
171
  i0.ɵɵproperty("ngIf", ctx_r0.menus && ctx_r0.menus.length > 0 && (ctx_r0.ls.isClaimant() && ctx_r0.legacyMenu == "false"));
177
172
  } }
178
173
  function MenuComponent_app_profile_1_Template(rf, ctx) { if (rf & 1) {
179
- const _r39 = i0.ɵɵgetCurrentView();
180
- i0.ɵɵelementStart(0, "app-profile", 32);
181
- i0.ɵɵlistener("onCancel", function MenuComponent_app_profile_1_Template_app_profile_onCancel_0_listener() { i0.ɵɵrestoreView(_r39); const ctx_r38 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r38.showProfilePopup = !ctx_r38.showProfilePopup); });
174
+ const _r37 = i0.ɵɵgetCurrentView();
175
+ i0.ɵɵelementStart(0, "app-profile", 29);
176
+ i0.ɵɵlistener("onCancel", function MenuComponent_app_profile_1_Template_app_profile_onCancel_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r36 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r36.showProfilePopup = !ctx_r36.showProfilePopup); });
182
177
  i0.ɵɵelementEnd();
183
178
  } }
184
- export class MenuComponent extends BasePage {
185
- constructor(nav, popup, ls, ns, r, menu, util, ar) {
186
- super();
179
+ export class MenuComponent {
180
+ constructor(nav, popup, ls, ns, r, menu, util, ar, translateService) {
187
181
  this.nav = nav;
188
182
  this.popup = popup;
189
183
  this.ls = ls;
@@ -192,13 +186,16 @@ export class MenuComponent extends BasePage {
192
186
  this.menu = menu;
193
187
  this.util = util;
194
188
  this.ar = ar;
189
+ this.translateService = translateService;
195
190
  this.appVersion = LibConstants.appVersion;
196
191
  this.showFavButton = false;
197
192
  this.reRenderMenu = true;
198
193
  this.legacyMenu = LibConstants.legacyMenu;
199
194
  this.showProfilePopup = false;
195
+ this.translateService.use(localStorage.getItem("language"));
200
196
  }
201
197
  ngOnInit() {
198
+ this.translateService.use(localStorage.getItem("language"));
202
199
  this.setupUserMenu();
203
200
  this.showFavButton = this.ls.isCsr();
204
201
  }
@@ -224,7 +221,7 @@ export class MenuComponent extends BasePage {
224
221
  label: "Menus",
225
222
  items: [
226
223
  {
227
- "label": "Home",
224
+ "label": this.getHomeLabel(),
228
225
  "state": {
229
226
  "consortiumState": ["ms"],
230
227
  "roles": ["claimant"],
@@ -233,18 +230,18 @@ export class MenuComponent extends BasePage {
233
230
  "id": "menu-18"
234
231
  }
235
232
  },
236
- ...(!this.isMS() ? [{
237
- label: "Claims",
238
- state: {
239
- consortiumState: ["ms"],
240
- roles: ["claimant"],
241
- routerLink: "claimant-induction",
242
- context: "cp",
243
- id: "menu-19"
244
- }
245
- }] : []),
246
233
  {
247
- "label": "Weekly",
234
+ "label": this.getClaimsLabel(),
235
+ "state": {
236
+ "consortiumState": ["ms"],
237
+ "roles": ["claimant"],
238
+ "routerLink": "claimant-induction",
239
+ "context": "cp",
240
+ "id": "menu-19"
241
+ }
242
+ },
243
+ {
244
+ "label": this.getWeeklyLabel(),
248
245
  "state": {
249
246
  "consortiumState": ["ms"],
250
247
  "roles": ["claimant"],
@@ -254,7 +251,7 @@ export class MenuComponent extends BasePage {
254
251
  }
255
252
  },
256
253
  {
257
- "label": "History",
254
+ "label": this.getHistoryLabel(),
258
255
  "state": {
259
256
  "consortiumState": ["ms"],
260
257
  "roles": ["claimant"],
@@ -262,6 +259,16 @@ export class MenuComponent extends BasePage {
262
259
  "context": "cp",
263
260
  "id": "menu-17"
264
261
  }
262
+ },
263
+ {
264
+ "label": this.getWorkSearchLabel(),
265
+ "state": {
266
+ "consortiumState": ["ks"],
267
+ "roles": ["work-search-journal"],
268
+ "routerLink": "work-search-journal",
269
+ "context": "cp",
270
+ "id": "menu-20"
271
+ }
265
272
  }
266
273
  ]
267
274
  }
@@ -401,20 +408,45 @@ export class MenuComponent extends BasePage {
401
408
  }
402
409
  logout() {
403
410
  this.nav.navigateRoot('/landing');
411
+ localStorage.setItem("language", "en");
404
412
  this.ls.logout();
405
413
  }
406
- static { this.ɵfac = function MenuComponent_Factory(t) { return new (t || MenuComponent)(i0.ɵɵdirectiveInject(i1.NavController), i0.ɵɵdirectiveInject(i1.PopoverController), i0.ɵɵdirectiveInject(i2.LoginService), i0.ɵɵdirectiveInject(i3.NotificationService), i0.ɵɵdirectiveInject(i4.Router), i0.ɵɵdirectiveInject(i1.MenuController), i0.ɵɵdirectiveInject(i5.UtilService), i0.ɵɵdirectiveInject(i4.ActivatedRoute)); }; }
407
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuComponent, selectors: [["app-menu"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["side", "start", "menuId", "first", "contentId", "main-content", 3, "ionDidOpen", 4, "ngIf"], [3, "onCancel", 4, "ngIf"], ["side", "start", "menuId", "first", "contentId", "main-content", 3, "ionDidOpen"], ["slot", "start"], ["autoHide", "false", "pTooltip", "Close menu", "tooltipPosition", "bottom", 4, "ngIf"], [4, "ngIf"], ["autoHide", "false", "pTooltip", "Close menu", "tooltipPosition", "bottom"], ["color", "success", "name", "close"], [3, "header", 4, "ngFor", "ngForOf"], [3, "header"], ["button", "", "lines", "none", 3, "click", 4, "ngFor", "ngForOf"], ["button", "", "lines", "none", 3, "click"], ["name", "link", "color", "primary", "slot", "start", "style", "margin-inline-end: 15px !important;", 4, "ngIf"], ["color", "primary", "slot", "start", "style", "margin-inline-end: 15px !important;", 3, "name", 4, "ngIf"], ["color", "primary", 2, "font-size", "small"], ["slot", "end", "color", "warning", 3, "click", 4, "ngIf"], ["name", "link", "color", "primary", "slot", "start", 2, "margin-inline-end", "15px !important"], ["color", "primary", "slot", "start", 2, "margin-inline-end", "15px !important", 3, "name"], ["slot", "end", "color", "warning", 3, "click"], ["name", "star-outline", 4, "ngIf"], ["name", "star-sharp", 4, "ngIf"], ["name", "star-outline"], ["name", "star-sharp"], [4, "ngFor", "ngForOf"], ["name", "person-circle-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["color", "primary", 2, "font-size", "31px"], [1, "pi", "pi-file", 2, "color", "rgba(68, 120, 170, 1)", "padding-right", "15px"], ["name", "notifications-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["color", "dark", 4, "ngIf"], ["name", "log-out-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["color", "primary", 2, "font-size", "31px", 3, "ngClass"], ["color", "dark"], [3, "onCancel"]], template: function MenuComponent_Template(rf, ctx) { if (rf & 1) {
414
+ get userProfileLabel() {
415
+ return this.translateService.instant('common.user.profile');
416
+ }
417
+ get userDocumentsLabel() {
418
+ return this.translateService.instant('common.documents');
419
+ }
420
+ get userLogoutLabel() {
421
+ return this.translateService.instant('common.logout');
422
+ }
423
+ getHomeLabel() {
424
+ return this.translateService.instant('common.home');
425
+ }
426
+ getClaimsLabel() {
427
+ return this.translateService.instant('common.claims');
428
+ }
429
+ getWeeklyLabel() {
430
+ return this.translateService.instant('common.weekly');
431
+ }
432
+ getHistoryLabel() {
433
+ return this.translateService.instant('common.history');
434
+ }
435
+ getWorkSearchLabel() {
436
+ return this.translateService.instant('common.work.search');
437
+ }
438
+ static { this.ɵfac = function MenuComponent_Factory(t) { return new (t || MenuComponent)(i0.ɵɵdirectiveInject(i1.NavController), i0.ɵɵdirectiveInject(i1.PopoverController), i0.ɵɵdirectiveInject(i2.LoginService), i0.ɵɵdirectiveInject(i3.NotificationService), i0.ɵɵdirectiveInject(i4.Router), i0.ɵɵdirectiveInject(i1.MenuController), i0.ɵɵdirectiveInject(i5.UtilService), i0.ɵɵdirectiveInject(i4.ActivatedRoute), i0.ɵɵdirectiveInject(i6.TranslateService)); }; }
439
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuComponent, selectors: [["app-menu"]], decls: 2, vars: 2, consts: [["side", "start", "menuId", "first", "contentId", "main-content", 3, "ionDidOpen", 4, "ngIf"], [3, "onCancel", 4, "ngIf"], ["side", "start", "menuId", "first", "contentId", "main-content", 3, "ionDidOpen"], ["slot", "start"], ["autoHide", "false", "tooltipPosition", "bottom", 3, "pTooltip", 4, "ngIf"], [4, "ngIf"], ["autoHide", "false", "tooltipPosition", "bottom", 3, "pTooltip"], ["color", "success", "name", "close"], [3, "header", 4, "ngFor", "ngForOf"], [3, "header"], ["button", "", "lines", "none", 3, "click", 4, "ngFor", "ngForOf"], ["button", "", "lines", "none", 3, "click"], ["name", "link", "color", "primary", "slot", "start", "style", "margin-inline-end: 15px !important;", 4, "ngIf"], ["color", "primary", "slot", "start", "style", "margin-inline-end: 15px !important;", 3, "name", 4, "ngIf"], ["color", "primary", 2, "font-size", "small"], ["slot", "end", "color", "warning", 3, "click", 4, "ngIf"], ["name", "link", "color", "primary", "slot", "start", 2, "margin-inline-end", "15px !important"], ["color", "primary", "slot", "start", 2, "margin-inline-end", "15px !important", 3, "name"], ["slot", "end", "color", "warning", 3, "click"], ["name", "star-outline", 4, "ngIf"], ["name", "star-sharp", 4, "ngIf"], ["name", "star-outline"], ["name", "star-sharp"], [4, "ngFor", "ngForOf"], ["name", "person-circle-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["color", "primary", 2, "font-size", "31px"], ["name", "document-text-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["name", "log-out-outline", "slot", "start", "color", "primary", 1, "menu-icon"], ["color", "primary", 2, "font-size", "31px", 3, "ngClass"], [3, "onCancel"]], template: function MenuComponent_Template(rf, ctx) { if (rf & 1) {
408
440
  i0.ɵɵtemplate(0, MenuComponent_ion_menu_0_Template, 8, 3, "ion-menu", 0)(1, MenuComponent_app_profile_1_Template, 1, 0, "app-profile", 1);
409
441
  } if (rf & 2) {
410
442
  i0.ɵɵproperty("ngIf", ctx.ls.isLoggedIn() && ctx.menus && ctx.menus.length > 0);
411
443
  i0.ɵɵadvance(1);
412
444
  i0.ɵɵproperty("ngIf", ctx.showProfilePopup);
413
- } }, styles: ["ion-menu[_ngcontent-%COMP%] ion-content[_ngcontent-%COMP%]{--background: var(--ion-item-background, var(--ion-background-color, #fff))}ion-note[_ngcontent-%COMP%]{display:inline-block;font-size:16px;color:var(--ion-color-medium-shade)}ion-item.selected[_ngcontent-%COMP%]{--color: var(--ion-color-primary)}mat-expansion-panel-header[_ngcontent-%COMP%]{background:var(--ion-color-light)}.link[_ngcontent-%COMP%]{margin-right:25px;cursor:pointer;text-decoration:none;pointer-events:auto!important}.link[_ngcontent-%COMP%]:hover{color:var(--ion-color-yellow)!important}.footer-links[_ngcontent-%COMP%]{color:var(--ion-color-grey)!important}.header-links[_ngcontent-%COMP%]{color:var(--ion-color-primary)!important}.ios[_ngcontent-%COMP%] ion-menu[_ngcontent-%COMP%]::part(container){padding-top:25px!important}.selected-menu[_ngcontent-%COMP%]{-webkit-text-decoration:underline 2px;text-decoration:underline 2px;text-underline-offset:3px;text-decoration-color:var(--ion-color-secondary)}.selected-menu-unselect[_ngcontent-%COMP%]{text-decoration:none}.menu-icon[_ngcontent-%COMP%]{margin-inline-end:15px!important;font-size:20px}[_nghost-%COMP%] .p-accordion .p-accordion-content{padding:0!important}[_nghost-%COMP%] .p-accordion .p-accordion-header .p-accordion-header-link{padding:1.25rem .5rem!important}[_nghost-%COMP%] .p-accordion-header{background:var(--ion-color-light)!important}"] }); }
445
+ } }, dependencies: [i1.IonButton, i1.IonButtons, i1.IonContent, i1.IonHeader, i1.IonIcon, i1.IonItem, i1.IonLabel, i1.IonList, i1.IonMenu, i1.IonMenuButton, i1.IonToolbar, i7.NgClass, i7.NgForOf, i7.NgIf, i8.Tooltip, i9.Accordion, i9.AccordionTab, i10.Divider, i11.ProfileComponent, i7.AsyncPipe, i6.TranslatePipe], styles: ["ion-menu[_ngcontent-%COMP%] ion-content[_ngcontent-%COMP%]{--background: var(--ion-item-background, var(--ion-background-color, #fff))}ion-note[_ngcontent-%COMP%]{display:inline-block;font-size:16px;color:var(--ion-color-medium-shade)}ion-item.selected[_ngcontent-%COMP%]{--color: var(--ion-color-primary)}mat-expansion-panel-header[_ngcontent-%COMP%]{background:var(--ion-color-light)}.link[_ngcontent-%COMP%]{margin-right:25px;cursor:pointer;text-decoration:none;pointer-events:auto!important}.link[_ngcontent-%COMP%]:hover{color:var(--ion-color-yellow)!important}.footer-links[_ngcontent-%COMP%]{color:var(--ion-color-grey)!important}.header-links[_ngcontent-%COMP%]{color:var(--ion-color-primary)!important}.ios[_ngcontent-%COMP%] ion-menu[_ngcontent-%COMP%]::part(container){padding-top:25px!important}.selected-menu[_ngcontent-%COMP%]{-webkit-text-decoration:underline 2px;text-decoration:underline 2px;text-underline-offset:3px;text-decoration-color:var(--ion-color-secondary)}.selected-menu-unselect[_ngcontent-%COMP%]{text-decoration:none}.menu-icon[_ngcontent-%COMP%]{margin-inline-end:15px!important;font-size:20px}.item[_ngcontent-%COMP%]:nth-child(5) ion-label.sc-ion-label-md-h[_ngcontent-%COMP%]{font-size:31px;text-indent:-25px;margin-left:25px;overflow:visible;line-height:35px;white-space:normal}[_nghost-%COMP%] .p-accordion .p-accordion-content{padding:0!important}[_nghost-%COMP%] .p-accordion .p-accordion-header .p-accordion-header-link{padding:1.25rem .5rem!important}[_nghost-%COMP%] .p-accordion-header{background:var(--ion-color-light)!important}"] }); }
414
446
  }
415
447
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuComponent, [{
416
448
  type: Component,
417
- args: [{ selector: 'app-menu', template: "<ion-menu side=\"start\" menuId=\"first\" contentId=\"main-content\" *ngIf=\"ls.isLoggedIn() && menus && menus.length > 0\" (ionDidOpen)=\"menuOpened()\">\r\n <ion-header>\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-menu-button autoHide=\"false\" pTooltip=\"Close menu\" tooltipPosition=\"bottom\"\r\n *ngIf=\"ls.isLoggedIn()\"> \r\n <ion-icon color=\"success\" name=\"close\"></ion-icon>\r\n </ion-menu-button>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n </ion-header>\r\n <ion-content>\r\n <p-accordion *ngIf=\"menus && menus.length > 0 && (!ls.isClaimant() || legacyMenu == 'true')\">\r\n <p-accordionTab *ngFor=\"let menu of ls.getMenuBs() | async; let i = index\" [header]=\"menu.label\">\r\n <ion-list>\r\n <ion-item button *ngFor=\"let item of menu.items\" (click)=\"openPage(item)\" lines=\"none\">\r\n <ion-icon name=\"link\" color=\"primary\" slot=\"start\" *ngIf=\"!item.icon\" style=\"margin-inline-end: 15px !important;\"></ion-icon>\r\n <ion-icon [name]=\"item.icon\" color=\"primary\" slot=\"start\" *ngIf=\"item.icon\" style=\"margin-inline-end: 15px !important;\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: small;\">{{item.label}}</ion-label>\r\n <ion-button slot=\"end\" (click)=\"markFavourite(item); $event.stopPropagation();\" color=\"warning\" *ngIf=\"showFavButton\">\r\n <ion-icon name=\"star-outline\" *ngIf=\"!item.state.isFav\"></ion-icon>\r\n <ion-icon name=\"star-sharp\" *ngIf=\"item.state.isFav\"></ion-icon>\r\n </ion-button>\r\n </ion-item>\r\n </ion-list>\r\n </p-accordionTab>\r\n </p-accordion>\r\n\r\n <div *ngIf=\"menus && menus.length > 0 && (ls.isClaimant() && legacyMenu == 'false')\">\r\n <div *ngFor=\"let menu of ls.getMenuBs() | async; let i = index; let isLast = last\">\r\n <ion-list>\r\n <ion-item button *ngFor=\"let item of menu.items\" (click)=\"openPage(item)\" lines=\"none\">\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\" [ngClass]=\"showIcon(item) ? 'selected-menu' : 'selected-menu-unselect'\">{{item.label}}</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </div>\r\n <p-divider></p-divider>\r\n\r\n <ion-list>\r\n <ion-item button lines=\"none\" (click)=\"presentMyProfilePopover($event)\">\r\n <ion-icon name=\"person-circle-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">User Profile</ion-label>\r\n </ion-item>\r\n <ion-item button lines=\"none\" (click)=\"navigate('cp', 'documents')\">\r\n <i class='pi pi-file' style=\"color: rgba(68, 120, 170, 1); padding-right: 15px;\"></i>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">Documents</ion-label>\r\n </ion-item>\r\n <ion-item button lines=\"none\" (click)=\"presentMyNotificationPopover($event)\">\r\n <ion-icon name=\"notifications-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">Notifications</ion-label>\r\n <ion-badge color=\"dark\" *ngIf=\"ns.notificationCount.getValue() > 0\">\r\n <ion-label>{{ns.notificationCount.getValue()}}</ion-label>\r\n </ion-badge>\r\n </ion-item>\r\n <ion-item button lines=\"none\" (click)=\"logout()\">\r\n <ion-icon name=\"log-out-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">Logout</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n\r\n </div>\r\n </ion-content>\r\n</ion-menu>\r\n<app-profile *ngIf=\"showProfilePopup\" (onCancel)=\"showProfilePopup = !showProfilePopup\"></app-profile>", styles: ["ion-menu ion-content{--background: var(--ion-item-background, var(--ion-background-color, #fff))}ion-note{display:inline-block;font-size:16px;color:var(--ion-color-medium-shade)}ion-item.selected{--color: var(--ion-color-primary)}mat-expansion-panel-header{background:var(--ion-color-light)}.link{margin-right:25px;cursor:pointer;text-decoration:none;pointer-events:auto!important}.link:hover{color:var(--ion-color-yellow)!important}.footer-links{color:var(--ion-color-grey)!important}.header-links{color:var(--ion-color-primary)!important}.ios ion-menu::part(container){padding-top:25px!important}.selected-menu{-webkit-text-decoration:underline 2px;text-decoration:underline 2px;text-underline-offset:3px;text-decoration-color:var(--ion-color-secondary)}.selected-menu-unselect{text-decoration:none}.menu-icon{margin-inline-end:15px!important;font-size:20px}:host ::ng-deep .p-accordion .p-accordion-content{padding:0!important}:host ::ng-deep .p-accordion .p-accordion-header .p-accordion-header-link{padding:1.25rem .5rem!important}:host ::ng-deep .p-accordion-header{background:var(--ion-color-light)!important}\n"] }]
418
- }], () => [{ type: i1.NavController }, { type: i1.PopoverController }, { type: i2.LoginService }, { type: i3.NotificationService }, { type: i4.Router }, { type: i1.MenuController }, { type: i5.UtilService }, { type: i4.ActivatedRoute }], null); })();
449
+ args: [{ selector: 'app-menu', template: "<ion-menu side=\"start\" menuId=\"first\" contentId=\"main-content\" *ngIf=\"ls.isLoggedIn() && menus && menus.length > 0\" (ionDidOpen)=\"menuOpened()\">\r\n <ion-header>\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-menu-button autoHide=\"false\" pTooltip=\"{{'header.menu.close' | translate}}\" tooltipPosition=\"bottom\"\r\n *ngIf=\"ls.isLoggedIn()\"> \r\n <ion-icon color=\"success\" name=\"close\"></ion-icon>\r\n </ion-menu-button>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n </ion-header>\r\n <ion-content>\r\n <p-accordion *ngIf=\"menus && menus.length > 0 && (!ls.isClaimant() || legacyMenu == 'true')\">\r\n <p-accordionTab *ngFor=\"let menu of ls.getMenuBs() | async; let i = index\" [header]=\"menu.label\">\r\n <ion-list>\r\n <ion-item button *ngFor=\"let item of menu.items\" (click)=\"openPage(item)\" lines=\"none\">\r\n <ion-icon name=\"link\" color=\"primary\" slot=\"start\" *ngIf=\"!item.icon\" style=\"margin-inline-end: 15px !important;\"></ion-icon>\r\n <ion-icon [name]=\"item.icon\" color=\"primary\" slot=\"start\" *ngIf=\"item.icon\" style=\"margin-inline-end: 15px !important;\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: small;\">{{item.label}}</ion-label>\r\n <ion-button slot=\"end\" (click)=\"markFavourite(item); $event.stopPropagation();\" color=\"warning\" *ngIf=\"showFavButton\">\r\n <ion-icon name=\"star-outline\" *ngIf=\"!item.state.isFav\"></ion-icon>\r\n <ion-icon name=\"star-sharp\" *ngIf=\"item.state.isFav\"></ion-icon>\r\n </ion-button>\r\n </ion-item>\r\n </ion-list>\r\n </p-accordionTab>\r\n </p-accordion>\r\n\r\n <div *ngIf=\"menus && menus.length > 0 && (ls.isClaimant() && legacyMenu == 'false')\">\r\n <div *ngFor=\"let menu of ls.getMenuBs() | async; let i = index; let isLast = last\">\r\n <ion-list>\r\n <ion-item button *ngFor=\"let item of menu.items\" (click)=\"openPage(item)\" lines=\"none\">\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\" [ngClass]=\"showIcon(item) ? 'selected-menu' : 'selected-menu-unselect'\">{{item.label}}</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </div>\r\n <p-divider></p-divider>\r\n\r\n <ion-list>\r\n <ion-item button lines=\"none\" (click)=\"presentMyProfilePopover($event)\">\r\n <ion-icon name=\"person-circle-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">{{userProfileLabel}}</ion-label>\r\n </ion-item>\r\n <ion-item button lines=\"none\" (click)=\"navigate('cp', 'documents')\">\r\n <ion-icon name=\"document-text-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">{{userDocumentsLabel}}</ion-label>\r\n </ion-item>\r\n <ion-item button lines=\"none\" (click)=\"logout()\">\r\n <ion-icon name=\"log-out-outline\" slot=\"start\" class=\"menu-icon\" color=\"primary\"></ion-icon>\r\n <ion-label color=\"primary\" style=\"font-size: 31px;\">{{userLogoutLabel}}</ion-label>\r\n </ion-item>\r\n </ion-list>\r\n\r\n </div>\r\n </ion-content>\r\n</ion-menu>\r\n<app-profile *ngIf=\"showProfilePopup\" (onCancel)=\"showProfilePopup = !showProfilePopup\"></app-profile>", styles: ["ion-menu ion-content{--background: var(--ion-item-background, var(--ion-background-color, #fff))}ion-note{display:inline-block;font-size:16px;color:var(--ion-color-medium-shade)}ion-item.selected{--color: var(--ion-color-primary)}mat-expansion-panel-header{background:var(--ion-color-light)}.link{margin-right:25px;cursor:pointer;text-decoration:none;pointer-events:auto!important}.link:hover{color:var(--ion-color-yellow)!important}.footer-links{color:var(--ion-color-grey)!important}.header-links{color:var(--ion-color-primary)!important}.ios ion-menu::part(container){padding-top:25px!important}.selected-menu{-webkit-text-decoration:underline 2px;text-decoration:underline 2px;text-underline-offset:3px;text-decoration-color:var(--ion-color-secondary)}.selected-menu-unselect{text-decoration:none}.menu-icon{margin-inline-end:15px!important;font-size:20px}.item:nth-child(5) ion-label.sc-ion-label-md-h{font-size:31px;text-indent:-25px;margin-left:25px;overflow:visible;line-height:35px;white-space:normal}:host ::ng-deep .p-accordion .p-accordion-content{padding:0!important}:host ::ng-deep .p-accordion .p-accordion-header .p-accordion-header-link{padding:1.25rem .5rem!important}:host ::ng-deep .p-accordion-header{background:var(--ion-color-light)!important}\n"] }]
450
+ }], () => [{ type: i1.NavController }, { type: i1.PopoverController }, { type: i2.LoginService }, { type: i3.NotificationService }, { type: i4.Router }, { type: i1.MenuController }, { type: i5.UtilService }, { type: i4.ActivatedRoute }, { type: i6.TranslateService }], null); })();
419
451
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuComponent, { className: "MenuComponent", filePath: "lib\\components\\menu\\menu.component.ts", lineNumber: 19 }); })();
420
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUlsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDbEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBSWhGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7SUNQeEMsMENBQzhCO0lBQ3hCLDhCQUFrRDtJQUN4RCxpQkFBa0I7OztJQVNkLCtCQUE2SDs7O0lBQzdILCtCQUFtSTs7O0lBQXpILG1DQUFrQjs7O0lBRzFCLCtCQUFtRTs7O0lBQ25FLCtCQUFnRTs7OztJQUZsRSxzQ0FBc0g7SUFBL0YsMFFBQVMsOEJBQW1CLFNBQUUsZUFBQSx3QkFBd0IsQ0FBQSxJQUFFO0lBQzdFLDJJQUFtRSw4SEFBQTtJQUVyRSxpQkFBYTs7O0lBRm9CLGVBQXVCO0lBQXZCLDJDQUF1QjtJQUN6QixlQUFzQjtJQUF0QiwwQ0FBc0I7Ozs7SUFOdkQsb0NBQXVGO0lBQXRDLHlRQUFTLGVBQUEseUJBQWMsQ0FBQSxJQUFDO0lBQ3ZFLDhIQUE2SCxpSEFBQTtJQUU3SCxxQ0FBcUQ7SUFBQSxZQUFjO0lBQUEsaUJBQVk7SUFDL0Usa0lBR2E7SUFDZixpQkFBVzs7OztJQVAyQyxlQUFnQjtJQUFoQixvQ0FB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LEVBQUU7WUFDL0IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbEIsT0FBTyxNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEtBQUs7UUFFakMsSUFBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxFQUFDO1lBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixPQUFPO1NBQ1I7UUFFRCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3RDLFNBQVMsRUFBRSxhQUFhO1lBQ3hCLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLFFBQVEsRUFBRSxnQkFBZ0I7U0FDM0IsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbkIsQ0FBQzs4RUE5T1UsYUFBYTtvRUFBYixhQUFhO1lDbEIxQix3RUE4RFcsaUVBQUE7O1lBOURxRCwrRUFBa0Q7WUErRHBHLGVBQXNCO1lBQXRCLDJDQUFzQjs7O2lGRDdDdkIsYUFBYTtjQUx6QixTQUFTOzJCQUNFLFVBQVU7O2tGQUlULGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNZW51Q29udHJvbGxlciwgTmF2Q29udHJvbGxlciwgUG9wb3ZlckNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJNb2RlbCc7XG5pbXBvcnQgeyBNeU5vdGlmaWNhdGlvbnNQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvcG9wb3ZlcnMvbXktbm90aWZpY2F0aW9ucy9teS1ub3RpZmljYXRpb25zLnBhZ2UnO1xuaW1wb3J0IHsgTXlQcm9maWxlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL3BvcG92ZXJzL215LXByb2ZpbGUvbXktcHJvZmlsZS5wYWdlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvQmFzZVBhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51Q29tcG9uZW50IGV4dGVuZHMgQmFzZVBhZ2UgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyBtZW51czogTWVudUl0ZW1bXTtcbiAgcHVibGljIGFwcFZlcnNpb24gPSBMaWJDb25zdGFudHMuYXBwVmVyc2lvbjtcbiAgcHVibGljIHNob3dGYXZCdXR0b24gPSBmYWxzZTtcbiAgcHVibGljIHJlUmVuZGVyTWVudSA9IHRydWU7XG4gIHB1YmxpYyBsZWdhY3lNZW51ID0gTGliQ29uc3RhbnRzLmxlZ2FjeU1lbnU7XG4gIHB1YmxpYyBzaG93UHJvZmlsZVBvcHVwIDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmF2OiBOYXZDb250cm9sbGVyLCBwdWJsaWMgcG9wdXA6IFBvcG92ZXJDb250cm9sbGVyLCBwdWJsaWMgbHM6IExvZ2luU2VydmljZSwgcHVibGljIG5zOiBOb3RpZmljYXRpb25TZXJ2aWNlLCBcbiAgICAgICAgICAgICAgcHVibGljIHI6IFJvdXRlciwgcHVibGljIG1lbnU6IE1lbnVDb250cm9sbGVyLCBwdWJsaWMgdXRpbDogVXRpbFNlcnZpY2UsIHB1YmxpYyBhciA6IEFjdGl2YXRlZFJvdXRlKSB7IFxuICAgICAgICAgICAgICAgIHN1cGVyKCk7XG4gICAgICAgICAgICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHVwVXNlck1lbnUoKTtcbiAgICB0aGlzLnNob3dGYXZCdXR0b24gPSB0aGlzLmxzLmlzQ3NyKCk7XG4gIH1cblxuICBzZXRNZW51KHVzZXI6IFVzZXJNb2RlbCkge1xuICAgIGlmICh1c2VyKSB7XG4gICAgICB0aGlzLm5zLnNldHVwTm90aWZpY2F0aW9uVGltZXIoKTtcbiAgICAgIGlmKCF0aGlzLmxzLmlzQ2xhaW1hbnQoKSB8fCB0aGlzLmxlZ2FjeU1lbnUgPT0gJ3RydWUnKXtcbiAgICAgICAgdGhpcy5sb2FkTWVudSgpO1xuICAgICAgfWVsc2Uge1xuICAgICAgICB0aGlzLnNldENsYWltYW50TWVudSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1lbnVzID0gW107XG4gICAgICB0aGlzLm5zLnJlbW92ZU5vdGlmaWNhdGlvblRpbWVyKCk7XG4gICAgfVxuICAgIHRoaXMuc2hvd0ZhdkJ1dHRvbiA9IHRoaXMubHMuaXNDc3IoKTtcbiAgfVxuXG4gIHNldENsYWltYW50TWVudSgpe1xuICAgIHRoaXMubWVudXMgPSBbXG4gICAgIHtcbiAgICAgICBsYWJlbDogXCJNZW51c1wiLFxuICAgICAgICBpdGVtczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIFwibGFiZWxcIjogXCJIb21lXCIsIFxuICAgICAgICAgICAgXCJzdGF0ZVwiIDoge1xuICAgICAgICAgICAgICBcImNvbnNvcnRpdW1TdGF0ZVwiIDogW1wibXNcIl0sXG4gICAgICAgICAgICAgIFwicm9sZXNcIiA6IFtcImNsYWltYW50XCJdLFxuICAgICAgICAgICAgICBcInJvdXRlckxpbmtcIjogXCJ3ZWxjb21lXCIsXG4gICAgICAgICAgICAgIFwiY29udGV4dFwiIDogXCJjcFwiLFxuICAgICAgICAgICAgICBcImlkXCI6IFwibWVudS0xOFwiXG4gICAgICAgICAgICB9fSxcbiAgICAgICAgICAgIC4uLighdGhpcy5pc01TKCkgPyBbe1xuICAgICAgICAgICAgICBsYWJlbDogXCJDbGFpbXNcIixcbiAgICAgICAgICAgICAgc3RhdGU6IHtcbiAgICAgICAgICAgICAgICBjb25zb3J0aXVtU3RhdGU6IFtcIm1zXCJdLFxuICAgICAgICAgICAgICAgIHJvbGVzOiBbXCJjbGFpbWFudFwiXSxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBcImNsYWltYW50LWluZHVjdGlvblwiLFxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IFwiY3BcIixcbiAgICAgICAgICAgICAgICBpZDogXCJtZW51LTE5XCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfV0gOiBbXSksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICBcImxhYmVsXCI6IFwiV2Vla2x5XCIsIFxuICAgICAgICAgICAgXCJzdGF0ZVwiIDoge1xuICAgICAgICAgICAgICBcImNvbnNvcnRpdW1TdGF0ZVwiIDogW1wibXNcIl0sXG4gICAgICAgICAgICAgIFwicm9sZXNcIiA6IFtcImNsYWltYW50XCJdLFxuICAgICAgICAgICAgICBcInJvdXRlckxpbmtcIjogXCJ2My93ZWVrbGllc1wiLFxuICAgICAgICAgICAgICBcImNvbnRleHRcIiA6IFwiY3BcIixcbiAgICAgICAgICAgICAgXCJpZFwiOiBcIm1lbnUtMTZcIlxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBcImxhYmVsXCI6IFwiSGlzdG9yeVwiLCBcbiAgICAgICAgICAgIFwic3RhdGVcIiA6IHtcbiAgICAgICAgICAgICAgXCJjb25zb3J0aXVtU3RhdGVcIiA6IFtcIm1zXCJdLFxuICAgICAgICAgICAgICBcInJvbGVzXCIgOiBbXCJjbGFpbWFudFwiXSxcbiAgICAgICAgICAgICAgXCJyb3V0ZXJMaW5rXCI6IFwiaGlzdG9yeVwiLFxuICAgICAgICAgICAgICBcImNvbnRleHRcIiA6IFwiY3BcIixcbiAgICAgICAgICAgICAgXCJpZFwiOiBcIm1lbnUtMTdcIlxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgfVxuICAgIF07XG4gICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KHRoaXMubWVudXMpO1xuICB9XG5cbiAgbG9hZE1lbnUoKXtcbiAgICB0aGlzLmxzXG4gICAgICAgIC5nZXRVc2VyTWVudXMoKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgICB0aGlzLm1lbnVzID0gcmVzO1xuICAgICAgICAgICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KHRoaXMubWVudXMpO1xuICAgICAgICAgICAgdGhpcy5mZXRjaE5vdGlmaWNhdGlvbnMoKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLm1lbnVzID0gW107XG4gICAgICAgICAgICB0aGlzLmxzLmdldE1lbnVCcygpLm5leHQobnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICB9XG5cbiAgZmV0Y2hOb3RpZmljYXRpb25zKCl7XG4gICAgdGhpcy5uc1xuICAgICAgICAuZ2V0Tm90aWZpY2F0aW9ucygpXG4gICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICAgIHRoaXMubnMubm90aWZpY2F0aW9ucy5uZXh0KHJlcyk7XG4gICAgICAgICAgICB0aGlzLm5zLmdldFVucmVhZE5vdGlmaWNhdGlvbkNvdW50KCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnIgPT4ge1xuICAgICAgICAgICAgdGhpcy5ucy5ub3RpZmljYXRpb25Db3VudC5uZXh0KDApO1xuICAgICAgICAgICAgdGhpcy5ucy5ub3RpZmljYXRpb25zLm5leHQoW10pO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBVc2VyTWVudSgpIHtcbiAgICB0aGlzLmxzXG4gICAgICAuZ2V0VXNlckJzKClcbiAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgIGlmKHVzZXIgJiYgIXVzZXIuaXMyRkFSZXF1aXJlZCl7XG4gICAgICAgICAgdGhpcy5zZXRNZW51KHVzZXIpO1xuICAgICAgICB9IGVsc2V7XG4gICAgICAgICAgdGhpcy5tZW51cyA9IFtdO1xuICAgICAgICAgIHRoaXMubnMucmVtb3ZlTm90aWZpY2F0aW9uVGltZXIoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvcGVuUGFnZShtZW51OiBNZW51SXRlbSkge1xuICAgIGlmICghbWVudSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgYXBwTmFtZSA9IG1lbnUuc3RhdGUuYXBwO1xuICAgIGxldCBtZW51Q29udGV4dFJvb3QgPSBgLyR7bWVudS5zdGF0ZS5jb250ZXh0fWA7XG4gICAgbGV0IHBhZ2VUb05hdmlnYXRlIDogc3RyaW5nID0gbWVudS5zdGF0ZS5yb3V0ZXJMaW5rO1xuXG4gICAgaWYoYXBwTmFtZSA9PSAnYmVuJyl7XG4gICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xuICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0ke21lbnVDb250ZXh0Um9vdH0vJHtwYWdlVG9OYXZpZ2F0ZX0/YT0ke3RoaXMubHMuZ2V0VXNlcigpLmFjY2Vzc190b2tlbn0mcj0ke3RoaXMubHMuZ2V0VXNlcigpLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xuICAgICAgfSk7XG4gICAgfWVsc2UgaWYoYXBwTmFtZSA9PSAndGF4Jyl7XG4gICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xuICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMudGF4VXJsRXh0ZXJuYWx9JHttZW51Q29udGV4dFJvb3R9LyR7cGFnZVRvTmF2aWdhdGV9P2E9JHt0aGlzLmxzLmdldFVzZXIoKS5hY2Nlc3NfdG9rZW59JnI9JHt0aGlzLmxzLmdldFVzZXIoKS5yZWZyZXNoX3Rva2VufSZ2PTIyOTlgLCAnX3NlbGYnKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGxldCBjdXJyZW50Q29udGV4dFJvb3QgPSB0aGlzLnV0aWwuZ2V0Q29udGV4dFJvb3QoKTtcbiAgICBcbiAgICBpZihjdXJyZW50Q29udGV4dFJvb3QgPT0gbWVudUNvbnRleHRSb290KXtcbiAgICAgIHRoaXMuci5uYXZpZ2F0ZUJ5VXJsKGAvJHtwYWdlVG9OYXZpZ2F0ZX1gKTtcbiAgICB9IGVsc2V7XG4gICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290KG1lbnVDb250ZXh0Um9vdCwgbWVudS5zdGF0ZS5yb3V0ZXJMaW5rKTtcbiAgICB9XG4gICAgdGhpcy5tZW51LmNsb3NlKCk7XG4gIH1cblxuICBtYXJrRmF2b3VyaXRlKGl0ZW0pe1xuICAgIGlmKGl0ZW0uc3RhdGUuaXNGYXYpe1xuICAgICAgaXRlbS5zdGF0ZS5pc0ZhdiA9ICFpdGVtLnN0YXRlLmlzRmF2O1xuICAgICAgdGhpcy5sc1xuICAgICAgICAgIC5yZW1vdmVGYXYoaXRlbS5zdGF0ZS5pZClcbiAgICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICB0aGlzLmxzLmdldE1lbnVCcygpLm5leHQocmVzKTtcbiAgICAgICAgICAgIHRoaXMudXRpbC50b2FzdChcIlJlbW92ZWQgRmF2b3VyaXRlLlwiKTtcbiAgICAgICAgICB9KTtcbiAgICB9ZWxzZSB7XG4gICAgICBpdGVtLnN0YXRlLmlzRmF2ID0gIWl0ZW0uc3RhdGUuaXNGYXY7XG4gICAgICB0aGlzLmxzXG4gICAgICAgICAgLm1hcmtGYXYoaXRlbS5zdGF0ZS5pZClcbiAgICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICB0aGlzLmxzLmdldE1lbnVCcygpLm5leHQocmVzKTtcbiAgICAgICAgICAgIHRoaXMudXRpbC50b2FzdChcIk1hcmtlZCBGYXZvdXJpdGUuXCIpO1xuICAgICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9wZW5Ib21lKCl7XG4gICAgdGhpcy5uYXYubmF2aWdhdGVSb290KCcvd2VsY29tZScpO1xuICB9XG5cbiAgbWVudU9wZW5lZCgpe1xuICAgIHRoaXMucmVSZW5kZXJNZW51ID0gZmFsc2U7XG4gICAgdGhpcy5yZVJlbmRlck1lbnUgPSB0cnVlO1xuICB9XG5cbiAgc2hvd0ljb24oaXRlbSl7XG4gICAgbGV0IGN1cnJlbnRSb3V0ZSA9IHRoaXMuci51cmwucmVwbGFjZSgnLycsICcnKTtcbiAgICByZXR1cm4gY3VycmVudFJvdXRlLmluY2x1ZGVzKGl0ZW0uc3RhdGUucm91dGVyTGluayk7XG4gIH1cblxuICBuYXZpZ2F0ZShjb250ZXh0Um9vdCwgdXJpKXtcbiAgICBsZXQgY3VycmVudENvbnRleHRSb290ID0gdGhpcy51dGlsLmdldENvbnRleHRSb290KCk7XG4gICAgbGV0IHRhcmdldCA9IGAvJHtjb250ZXh0Um9vdH1gO1xuXG4gICAgaWYoY3VycmVudENvbnRleHRSb290ID09IHRhcmdldCl7XG4gICAgICB0aGlzLm5hdi5uYXZpZ2F0ZUZvcndhcmQoYC8ke3VyaX1gKTtcbiAgICB9ZWxzZXtcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QodGFyZ2V0LCB1cmkpO1xuICAgIH1cbiAgICB0aGlzLm1lbnUuY2xvc2UoKTtcbiAgfVxuXG4gIGFzeW5jIHByZXNlbnRNeU5vdGlmaWNhdGlvblBvcG92ZXIoZXZlbnQpIHtcbiAgICBjb25zdCBwb3BvdmVyID0gYXdhaXQgdGhpcy5wb3B1cC5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBNeU5vdGlmaWNhdGlvbnNQYWdlLFxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgICBiYWNrZHJvcERpc21pc3M6IHRydWUsXG4gICAgICBjc3NDbGFzczogJ2hlYWRlci1wb3BvdmVyJ1xuICAgIH0pO1xuXG4gICAgcG9wb3Zlci5vbkRpZERpc21pc3MoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMubnMudXBkYXRlUmVhZEZsYWcoKTtcbiAgICB9KVxuICAgIHRoaXMubWVudS5jbG9zZSgpO1xuICAgIHJldHVybiBhd2FpdCBwb3BvdmVyLnByZXNlbnQoKTtcbiAgfVxuXG4gIGFzeW5jIHByZXNlbnRNeVByb2ZpbGVQb3BvdmVyKGV2ZW50KSB7XG5cbiAgICBpZih0aGlzLmxzLmlzQ2xhaW1hbnQoKSl7XG4gICAgICB0aGlzLnNob3dQcm9maWxlUG9wdXAgPSB0cnVlO1xuICAgICAgdGhpcy5tZW51LmNsb3NlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIFxuICAgIGNvbnN0IHBvcG92ZXIgPSBhd2FpdCB0aGlzLnBvcHVwLmNyZWF0ZSh7XG4gICAgICBjb21wb25lbnQ6IE15UHJvZmlsZVBhZ2UsXG4gICAgICB0cmFuc2x1Y2VudDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogdHJ1ZSxcbiAgICAgIGNzc0NsYXNzOiAnaGVhZGVyLXBvcG92ZXInXG4gICAgfSk7XG4gICAgXG4gICAgcmV0dXJuIGF3YWl0IHBvcG92ZXIucHJlc2VudCgpO1xuICB9XG5cbiAgbG9nb3V0KCl7XG4gICAgdGhpcy5uYXYubmF2aWdhdGVSb290KCcvbGFuZGluZycpO1xuICAgIHRoaXMubHMubG9nb3V0KCk7XG4gIH1cbn1cbiIsIjxpb24tbWVudSBzaWRlPVwic3RhcnRcIiBtZW51SWQ9XCJmaXJzdFwiIGNvbnRlbnRJZD1cIm1haW4tY29udGVudFwiICpuZ0lmPVwibHMuaXNMb2dnZWRJbigpICYmIG1lbnVzICYmIG1lbnVzLmxlbmd0aCA+IDBcIiAoaW9uRGlkT3Blbik9XCJtZW51T3BlbmVkKClcIj5cclxuICA8aW9uLWhlYWRlcj5cclxuICAgIDxpb24tdG9vbGJhcj5cclxuICAgICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiPlxyXG4gICAgICAgIDxpb24tbWVudS1idXR0b24gYXV0b0hpZGU9XCJmYWxzZVwiIHBUb29sdGlwPVwiQ2xvc2UgbWVudVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJscy5pc0xvZ2dlZEluKClcIj4gICAgXHJcbiAgICAgICAgICAgICAgPGlvbi1pY29uIGNvbG9yPVwic3VjY2Vzc1wiIG5hbWU9XCJjbG9zZVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgPC9pb24tbWVudS1idXR0b24+XHJcbiAgICAgIDwvaW9uLWJ1dHRvbnM+XHJcbiAgICA8L2lvbi10b29sYmFyPlxyXG4gIDwvaW9uLWhlYWRlcj5cclxuICA8aW9uLWNvbnRlbnQ+XHJcbiAgICA8cC1hY2NvcmRpb24gKm5nSWY9XCJtZW51cyAmJiBtZW51cy5sZW5ndGggPiAwICYmICghbHMuaXNDbGFpbWFudCgpIHx8IGxlZ2FjeU1lbnUgPT0gJ3RydWUnKVwiPlxyXG4gICAgICA8cC1hY2NvcmRpb25UYWIgKm5nRm9yPVwibGV0IG1lbnUgb2YgbHMuZ2V0TWVudUJzKCkgfCBhc3luYzsgbGV0IGkgPSBpbmRleFwiIFtoZWFkZXJdPVwibWVudS5sYWJlbFwiPlxyXG4gICAgICAgIDxpb24tbGlzdD5cclxuICAgICAgICAgIDxpb24taXRlbSBidXR0b24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgbWVudS5pdGVtc1wiIChjbGljayk9XCJvcGVuUGFnZShpdGVtKVwiIGxpbmVzPVwibm9uZVwiPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxpbmtcIiBjb2xvcj1cInByaW1hcnlcIiBzbG90PVwic3RhcnRcIiAqbmdJZj1cIiFpdGVtLmljb25cIiBzdHlsZT1cIm1hcmdpbi1pbmxpbmUtZW5kOiAxNXB4ICFpbXBvcnRhbnQ7XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cIml0ZW0uaWNvblwiIGNvbG9yPVwicHJpbWFyeVwiIHNsb3Q9XCJzdGFydFwiICpuZ0lmPVwiaXRlbS5pY29uXCIgc3R5bGU9XCJtYXJnaW4taW5saW5lLWVuZDogMTVweCAhaW1wb3J0YW50O1wiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJmb250LXNpemU6IHNtYWxsO1wiPnt7aXRlbS5sYWJlbH19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNsb3Q9XCJlbmRcIiAoY2xpY2spPVwibWFya0Zhdm91cml0ZShpdGVtKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiIGNvbG9yPVwid2FybmluZ1wiICpuZ0lmPVwic2hvd0ZhdkJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwic3Rhci1vdXRsaW5lXCIgKm5nSWY9XCIhaXRlbS5zdGF0ZS5pc0ZhdlwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzdGFyLXNoYXJwXCIgKm5nSWY9XCJpdGVtLnN0YXRlLmlzRmF2XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8L2lvbi1saXN0PlxyXG4gICAgICA8L3AtYWNjb3JkaW9uVGFiPlxyXG4gICAgPC9wLWFjY29yZGlvbj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwibWVudXMgJiYgbWVudXMubGVuZ3RoID4gMCAmJiAobHMuaXNDbGFpbWFudCgpICYmIGxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJylcIj5cclxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbWVudSBvZiBscy5nZXRNZW51QnMoKSB8IGFzeW5jOyBsZXQgaSA9IGluZGV4OyBsZXQgaXNMYXN0ID0gbGFzdFwiPlxyXG4gICAgICAgIDxpb24tbGlzdD5cclxuICAgICAgICAgIDxpb24taXRlbSBidXR0b24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgbWVudS5pdGVtc1wiIChjbGljayk9XCJvcGVuUGFnZShpdGVtKVwiIGxpbmVzPVwibm9uZVwiPlxyXG4gICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiAzMXB4O1wiIFtuZ0NsYXNzXT1cInNob3dJY29uKGl0ZW0pID8gJ3NlbGVjdGVkLW1lbnUnIDogJ3NlbGVjdGVkLW1lbnUtdW5zZWxlY3QnXCI+e3tpdGVtLmxhYmVsfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgPC9pb24tbGlzdD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxwLWRpdmlkZXI+PC9wLWRpdmlkZXI+XHJcblxyXG4gICAgICA8aW9uLWxpc3Q+XHJcbiAgICAgICAgPGlvbi1pdGVtIGJ1dHRvbiBsaW5lcz1cIm5vbmVcIiAoY2xpY2spPVwicHJlc2VudE15UHJvZmlsZVBvcG92ZXIoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJwZXJzb24tY2lyY2xlLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiBjbGFzcz1cIm1lbnUtaWNvblwiIGNvbG9yPVwicHJpbWFyeVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiAzMXB4O1wiPlVzZXIgUHJvZmlsZTwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgPGlvbi1pdGVtIGJ1dHRvbiBsaW5lcz1cIm5vbmVcIiAoY2xpY2spPVwibmF2aWdhdGUoJ2NwJywgJ2RvY3VtZW50cycpXCI+XHJcbiAgICAgICAgICA8aSBjbGFzcz0ncGkgcGktZmlsZScgc3R5bGU9XCJjb2xvcjogcmdiYSg2OCwgMTIwLCAxNzAsIDEpOyBwYWRkaW5nLXJpZ2h0OiAxNXB4O1wiPjwvaT5cclxuICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJmb250LXNpemU6IDMxcHg7XCI+RG9jdW1lbnRzPC9pb24tbGFiZWw+XHJcbiAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8aW9uLWl0ZW0gYnV0dG9uIGxpbmVzPVwibm9uZVwiIChjbGljayk9XCJwcmVzZW50TXlOb3RpZmljYXRpb25Qb3BvdmVyKCRldmVudClcIj5cclxuICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibm90aWZpY2F0aW9ucy1vdXRsaW5lXCIgc2xvdD1cInN0YXJ0XCIgY2xhc3M9XCJtZW51LWljb25cIiBjb2xvcj1cInByaW1hcnlcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cImZvbnQtc2l6ZTogMzFweDtcIj5Ob3RpZmljYXRpb25zPC9pb24tbGFiZWw+XHJcbiAgICAgICAgICA8aW9uLWJhZGdlIGNvbG9yPVwiZGFya1wiICpuZ0lmPVwibnMubm90aWZpY2F0aW9uQ291bnQuZ2V0VmFsdWUoKSA+IDBcIj5cclxuICAgICAgICAgICAgPGlvbi1sYWJlbD57e25zLm5vdGlmaWNhdGlvbkNvdW50LmdldFZhbHVlKCl9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgPC9pb24tYmFkZ2U+XHJcbiAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8aW9uLWl0ZW0gYnV0dG9uIGxpbmVzPVwibm9uZVwiIChjbGljayk9XCJsb2dvdXQoKVwiPlxyXG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJsb2ctb3V0LW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiBjbGFzcz1cIm1lbnUtaWNvblwiIGNvbG9yPVwicHJpbWFyeVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiAzMXB4O1wiPkxvZ291dDwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgIDwvaW9uLWxpc3Q+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9pb24tY29udGVudD5cclxuPC9pb24tbWVudT5cclxuPGFwcC1wcm9maWxlICpuZ0lmPVwic2hvd1Byb2ZpbGVQb3B1cFwiIChvbkNhbmNlbCk9XCJzaG93UHJvZmlsZVBvcHVwID0gIXNob3dQcm9maWxlUG9wdXBcIj48L2FwcC1wcm9maWxlPiJdfQ==
452
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUlsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDbEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7Ozs7Ozs7OztJQ0h4RSwwQ0FDOEI7O0lBQ3hCLDhCQUFrRDtJQUN4RCxpQkFBa0I7O0lBSGdCLCtFQUE4Qzs7O0lBWTVFLCtCQUE2SDs7O0lBQzdILCtCQUFtSTs7O0lBQXpILG1DQUFrQjs7O0lBRzFCLCtCQUFtRTs7O0lBQ25FLCtCQUFnRTs7OztJQUZsRSxzQ0FBc0g7SUFBL0YsMFFBQVMsOEJBQW1CLFNBQUUsZUFBQSx3QkFBd0IsQ0FBQSxJQUFFO0lBQzdFLDJJQUFtRSw4SEFBQTtJQUVyRSxpQkFBYTs7O0lBRm9CLGVBQXVCO0lBQXZCLDJDQUF1QjtJQUN6QixlQUFzQjtJQUF0QiwwQ0FBc0I7Ozs7SUFOdkQsb0NBQXVGO0lBQXRDLHlRQUFTLGVBQUEseUJBQWMsQ0FBQSxJQUFDO0lBQ3ZFLDhIQUE2SCxpSEFBQTtJQUU3SCxxQ0FBcUQ7SUFBQSxZQUFjO0lBQUEsaUJBQVk7SUFDL0Usa0lBR2E7SUFDZixpQkFBVzs7OztJQVAyQyxlQUFnQjtJQUFoQixvQ0FBZ0I7SUFDVCxlQUFlO0lBQWYsbUNB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QUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDN0QsQ0FBQzs4RUF6UlUsYUFBYTtvRUFBYixhQUFhO1lDbEIxQix3RUF1RFcsaUVBQUE7O1lBdkRxRCwrRUFBa0Q7WUF3RHBHLGVBQXNCO1lBQXRCLDJDQUFzQjs7O2lGRHRDdkIsYUFBYTtjQUx6QixTQUFTOzJCQUNFLFVBQVU7O2tGQUlULGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTWVudUNvbnRyb2xsZXIsIE5hdkNvbnRyb2xsZXIsIFBvcG92ZXJDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XHJcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9Vc2VyTW9kZWwnO1xyXG5pbXBvcnQgeyBNeU5vdGlmaWNhdGlvbnNQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvcG9wb3ZlcnMvbXktbm90aWZpY2F0aW9ucy9teS1ub3RpZmljYXRpb25zLnBhZ2UnO1xyXG5pbXBvcnQgeyBNeVByb2ZpbGVQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvcG9wb3ZlcnMvbXktcHJvZmlsZS9teS1wcm9maWxlLnBhZ2UnO1xyXG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tZW51JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHB1YmxpYyBtZW51czogTWVudUl0ZW1bXTtcclxuICBwdWJsaWMgYXBwVmVyc2lvbiA9IExpYkNvbnN0YW50cy5hcHBWZXJzaW9uO1xyXG4gIHB1YmxpYyBzaG93RmF2QnV0dG9uID0gZmFsc2U7XHJcbiAgcHVibGljIHJlUmVuZGVyTWVudSA9IHRydWU7XHJcbiAgcHVibGljIGxlZ2FjeU1lbnUgPSBMaWJDb25zdGFudHMubGVnYWN5TWVudTtcclxuICBwdWJsaWMgc2hvd1Byb2ZpbGVQb3B1cCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXY6IE5hdkNvbnRyb2xsZXIsIHB1YmxpYyBwb3B1cDogUG9wb3ZlckNvbnRyb2xsZXIsIHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLCBwdWJsaWMgbnM6IE5vdGlmaWNhdGlvblNlcnZpY2UsIFxyXG4gICAgICAgICAgICAgIHB1YmxpYyByOiBSb3V0ZXIsIHB1YmxpYyBtZW51OiBNZW51Q29udHJvbGxlciwgcHVibGljIHV0aWw6IFV0aWxTZXJ2aWNlLCBwdWJsaWMgYXIgOiBBY3RpdmF0ZWRSb3V0ZSwgcHVibGljIHRyYW5zbGF0ZVNlcnZpY2UgOiBUcmFuc2xhdGVTZXJ2aWNlICkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnVzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImxhbmd1YWdlXCIpKTsgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudXNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibGFuZ3VhZ2VcIikpO1xyXG4gICAgdGhpcy5zZXR1cFVzZXJNZW51KCk7XHJcbiAgICB0aGlzLnNob3dGYXZCdXR0b24gPSB0aGlzLmxzLmlzQ3NyKCk7XHJcbiAgfVxyXG5cclxuICBzZXRNZW51KHVzZXI6IFVzZXJNb2RlbCkge1xyXG4gICAgaWYgKHVzZXIpIHtcclxuICAgICAgdGhpcy5ucy5zZXR1cE5vdGlmaWNhdGlvblRpbWVyKCk7XHJcbiAgICAgIGlmKCF0aGlzLmxzLmlzQ2xhaW1hbnQoKSB8fCB0aGlzLmxlZ2FjeU1lbnUgPT0gJ3RydWUnKXtcclxuICAgICAgICB0aGlzLmxvYWRNZW51KCk7XHJcbiAgICAgIH1lbHNlIHtcclxuICAgICAgICB0aGlzLnNldENsYWltYW50TWVudSgpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1lbnVzID0gW107XHJcbiAgICAgIHRoaXMubnMucmVtb3ZlTm90aWZpY2F0aW9uVGltZXIoKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2hvd0ZhdkJ1dHRvbiA9IHRoaXMubHMuaXNDc3IoKTtcclxuICB9XHJcblxyXG4gIHNldENsYWltYW50TWVudSgpe1xyXG4gICAgdGhpcy5tZW51cyA9IFtcclxuICAgICB7XHJcbiAgICAgICBsYWJlbDogXCJNZW51c1wiLFxyXG4gICAgICAgIGl0ZW1zOiBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIFwibGFiZWxcIjogIHRoaXMuZ2V0SG9tZUxhYmVsKCksXHJcbiAgICAgICAgICAgIFwic3RhdGVcIiA6IHtcclxuICAgICAgICAgICAgICBcImNvbnNvcnRpdW1TdGF0ZVwiIDogW1wibXNcIl0sXHJcbiAgICAgICAgICAgICAgXCJyb2xlc1wiIDogW1wiY2xhaW1hbnRcIl0sXHJcbiAgICAgICAgICAgICAgXCJyb3V0ZXJMaW5rXCI6IFwid2VsY29tZVwiLFxyXG4gICAgICAgICAgICAgIFwiY29udGV4dFwiIDogXCJjcFwiLFxyXG4gICAgICAgICAgICAgIFwiaWRcIjogXCJtZW51LTE4XCJcclxuICAgICAgICAgICAgfX0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBcImxhYmVsXCI6IHRoaXMuZ2V0Q2xhaW1zTGFiZWwoKSwgXHJcbiAgICAgICAgICAgICAgXCJzdGF0ZVwiIDoge1xyXG4gICAgICAgICAgICAgICAgXCJjb25zb3J0aXVtU3RhdGVcIiA6IFtcIm1zXCJdLFxyXG4gICAgICAgICAgICAgICAgXCJyb2xlc1wiIDogW1wiY2xhaW1hbnRcIl0sXHJcbiAgICAgICAgICAgICAgICBcInJvdXRlckxpbmtcIjogXCJjbGFpbWFudC1pbmR1Y3Rpb25cIixcclxuICAgICAgICAgICAgICAgIFwiY29udGV4dFwiIDogXCJjcFwiLFxyXG4gICAgICAgICAgICAgICAgXCJpZFwiOiBcIm1lbnUtMTlcIlxyXG4gICAgICAgICAgICB9fSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICBcImxhYmVsXCI6IHRoaXMuZ2V0V2Vla2x5TGFiZWwoKSwgXHJcbiAgICAgICAgICAgIFwic3RhdGVcIiA6IHtcclxuICAgICAgICAgICAgICBcImNvbnNvcnRpdW1TdGF0ZVwiIDogW1wibXNcIl0sXHJcbiAgICAgICAgICAgICAgXCJyb2xlc1wiIDogW1wiY2xhaW1hbnRcIl0sXHJcbiAgICAgICAgICAgICAgXCJyb3V0ZXJMaW5rXCI6IFwidjMvd2Vla2xpZXNcIixcclxuICAgICAgICAgICAgICBcImNvbnRleHRcIiA6IFwiY3BcIixcclxuICAgICAgICAgICAgICBcImlkXCI6IFwibWVudS0xNlwiXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgXCJsYWJlbFwiOiB0aGlzLmdldEhpc3RvcnlMYWJlbCgpLCBcclxuICAgICAgICAgICAgXCJzdGF0ZVwiIDoge1xyXG4gICAgICAgICAgICAgIFwiY29uc29ydGl1bVN0YXRlXCIgOiBbXCJtc1wiXSxcclxuICAgICAgICAgICAgICBcInJvbGVzXCIgOiBbXCJjbGFpbWFudFwiXSxcclxuICAgICAgICAgICAgICBcInJvdXRlckxpbmtcIjogXCJoaXN0b3J5XCIsXHJcbiAgICAgICAgICAgICAgXCJjb250ZXh0XCIgOiBcImNwXCIsXHJcbiAgICAgICAgICAgICAgXCJpZFwiOiBcIm1lbnUtMTdcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIFwibGFiZWxcIjogdGhpcy5nZXRXb3JrU2VhcmNoTGFiZWwoKSwgXHJcbiAgICAgICAgICAgIFwic3RhdGVcIiA6IHtcclxuICAgICAgICAgICAgICBcImNvbnNvcnRpdW1TdGF0ZVwiIDogW1wia3NcIl0sXHJcbiAgICAgICAgICAgICAgXCJyb2xlc1wiIDogW1wid29yay1zZWFyY2gtam91cm5hbFwiXSxcclxuICAgICAgICAgICAgICBcInJvdXRlckxpbmtcIjogXCJ3b3JrLXNlYXJjaC1qb3VybmFsXCIsXHJcbiAgICAgICAgICAgICAgXCJjb250ZXh0XCIgOiBcImNwXCIsXHJcbiAgICAgICAgICAgICAgXCJpZFwiOiBcIm1lbnUtMjBcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIF1cclxuICAgICB9XHJcbiAgICBdO1xyXG4gICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KHRoaXMubWVudXMpO1xyXG4gIH1cclxuXHJcbiAgbG9hZE1lbnUoKXtcclxuICAgIHRoaXMubHNcclxuICAgICAgICAuZ2V0VXNlck1lbnVzKClcclxuICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tZW51cyA9IHJlcztcclxuICAgICAgICAgICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KHRoaXMubWVudXMpO1xyXG4gICAgICAgICAgICB0aGlzLmZldGNoTm90aWZpY2F0aW9ucygpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubWVudXMgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KG51bGwpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgfVxyXG5cclxuICBmZXRjaE5vdGlmaWNhdGlvbnMoKXtcclxuICAgIHRoaXMubnNcclxuICAgICAgICAuZ2V0Tm90aWZpY2F0aW9ucygpXHJcbiAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubnMubm90aWZpY2F0aW9ucy5uZXh0KHJlcyk7XHJcbiAgICAgICAgICAgIHRoaXMubnMuZ2V0VW5yZWFkTm90aWZpY2F0aW9uQ291bnQoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnIgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm5zLm5vdGlmaWNhdGlvbkNvdW50Lm5leHQoMCk7XHJcbiAgICAgICAgICAgIHRoaXMubnMubm90aWZpY2F0aW9ucy5uZXh0KFtdKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXR1cFVzZXJNZW51KCkge1xyXG4gICAgdGhpcy5sc1xyXG4gICAgICAuZ2V0VXNlckJzKClcclxuICAgICAgLnN1YnNjcmliZSh1c2VyID0+IHtcclxuICAgICAgICBpZih1c2VyICYmICF1c2VyLmlzMkZBUmVxdWlyZWQpe1xyXG4gICAgICAgICAgdGhpcy5zZXRNZW51KHVzZXIpO1xyXG4gICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgIHRoaXMubWVudXMgPSBbXTtcclxuICAgICAgICAgIHRoaXMubnMucmVtb3ZlTm90aWZpY2F0aW9uVGltZXIoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlblBhZ2UobWVudTogTWVudUl0ZW0pIHtcclxuICAgIGlmICghbWVudSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgYXBwTmFtZSA9IG1lbnUuc3RhdGUuYXBwO1xyXG4gICAgbGV0IG1lbnVDb250ZXh0Um9vdCA9IGAvJHttZW51LnN0YXRlLmNvbnRleHR9YDtcclxuICAgIGxldCBwYWdlVG9OYXZpZ2F0ZSA6IHN0cmluZyA9IG1lbnUuc3RhdGUucm91dGVyTGluaztcclxuXHJcbiAgICBpZihhcHBOYW1lID09ICdiZW4nKXtcclxuICAgICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKS50aGVuKCgpID0+IHtcclxuICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0ke21lbnVDb250ZXh0Um9vdH0vJHtwYWdlVG9OYXZpZ2F0ZX0/YT0ke3RoaXMubHMuZ2V0VXNlcigpLmFjY2Vzc190b2tlbn0mcj0ke3RoaXMubHMuZ2V0VXNlcigpLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xyXG4gICAgICB9KTtcclxuICAgIH1lbHNlIGlmKGFwcE5hbWUgPT0gJ3RheCcpe1xyXG4gICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy50YXhVcmxFeHRlcm5hbH0ke21lbnVDb250ZXh0Um9vdH0vJHtwYWdlVG9OYXZpZ2F0ZX0/YT0ke3RoaXMubHMuZ2V0VXNlcigpLmFjY2Vzc190b2tlbn0mcj0ke3RoaXMubHMuZ2V0VXNlcigpLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgY3VycmVudENvbnRleHRSb290ID0gdGhpcy51dGlsLmdldENvbnRleHRSb290KCk7XHJcbiAgICBcclxuICAgIGlmKGN1cnJlbnRDb250ZXh0Um9vdCA9PSBtZW51Q29udGV4dFJvb3Qpe1xyXG4gICAgICB0aGlzLnIubmF2aWdhdGVCeVVybChgLyR7cGFnZVRvTmF2aWdhdGV9YCk7XHJcbiAgICB9IGVsc2V7XHJcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QobWVudUNvbnRleHRSb290LCBtZW51LnN0YXRlLnJvdXRlckxpbmspO1xyXG4gICAgfVxyXG4gICAgdGhpcy5tZW51LmNsb3NlKCk7XHJcbiAgfVxyXG5cclxuICBtYXJrRmF2b3VyaXRlKGl0ZW0pe1xyXG4gICAgaWYoaXRlbS5zdGF0ZS5pc0Zhdil7XHJcbiAgICAgIGl0ZW0uc3RhdGUuaXNGYXYgPSAhaXRlbS5zdGF0ZS5pc0ZhdjtcclxuICAgICAgdGhpcy5sc1xyXG4gICAgICAgICAgLnJlbW92ZUZhdihpdGVtLnN0YXRlLmlkKVxyXG4gICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxzLmdldE1lbnVCcygpLm5leHQocmVzKTtcclxuICAgICAgICAgICAgdGhpcy51dGlsLnRvYXN0KFwiUmVtb3ZlZCBGYXZvdXJpdGUuXCIpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICB9ZWxzZSB7XHJcbiAgICAgIGl0ZW0uc3RhdGUuaXNGYXYgPSAhaXRlbS5zdGF0ZS5pc0ZhdjtcclxuICAgICAgdGhpcy5sc1xyXG4gICAgICAgICAgLm1hcmtGYXYoaXRlbS5zdGF0ZS5pZClcclxuICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgICAgdGhpcy5scy5nZXRNZW51QnMoKS5uZXh0KHJlcyk7XHJcbiAgICAgICAgICAgIHRoaXMudXRpbC50b2FzdChcIk1hcmtlZCBGYXZvdXJpdGUuXCIpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuSG9tZSgpe1xyXG4gICAgdGhpcy5uYXYubmF2aWdhdGVSb290KCcvd2VsY29tZScpO1xyXG4gIH1cclxuXHJcbiAgbWVudU9wZW5lZCgpe1xyXG4gICAgdGhpcy5yZVJlbmRlck1lbnUgPSBmYWxzZTtcclxuICAgIHRoaXMucmVSZW5kZXJNZW51ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHNob3dJY29uKGl0ZW0pe1xyXG4gICAgbGV0IGN1cnJlbnRSb3V0ZSA9IHRoaXMuci51cmwucmVwbGFjZSgnLycsICcnKTtcclxuICAgIHJldHVybiBjdXJyZW50Um91dGUuaW5jbHVkZXMoaXRlbS5zdGF0ZS5yb3V0ZXJMaW5rKTtcclxuICB9XHJcblxyXG4gIG5hdmlnYXRlKGNvbnRleHRSb290LCB1cmkpe1xyXG4gICAgbGV0IGN1cnJlbnRDb250ZXh0Um9vdCA9IHRoaXMudXRpbC5nZXRDb250ZXh0Um9vdCgpO1xyXG4gICAgbGV0IHRhcmdldCA9IGAvJHtjb250ZXh0Um9vdH1gO1xyXG5cclxuICAgIGlmKGN1cnJlbnRDb250ZXh0Um9vdCA9PSB0YXJnZXQpe1xyXG4gICAgICB0aGlzLm5hdi5uYXZpZ2F0ZUZvcndhcmQoYC8ke3VyaX1gKTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290KHRhcmdldCwgdXJpKTtcclxuICAgIH1cclxuICAgIHRoaXMubWVudS5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcHJlc2VudE15Tm90aWZpY2F0aW9uUG9wb3ZlcihldmVudCkge1xyXG4gICAgY29uc3QgcG9wb3ZlciA9IGF3YWl0IHRoaXMucG9wdXAuY3JlYXRlKHtcclxuICAgICAgY29tcG9uZW50OiBNeU5vdGlmaWNhdGlvbnNQYWdlLFxyXG4gICAgICB0cmFuc2x1Y2VudDogdHJ1ZSxcclxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiB0cnVlLFxyXG4gICAgICBjc3NDbGFzczogJ2hlYWRlci1wb3BvdmVyJ1xyXG4gICAgfSk7XHJcblxyXG4gICAgcG9wb3Zlci5vbkRpZERpc21pc3MoKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5ucy51cGRhdGVSZWFkRmxhZygpO1xyXG4gICAgfSlcclxuICAgIHRoaXMubWVudS5jbG9zZSgpO1xyXG4gICAgcmV0dXJuIGF3YWl0IHBvcG92ZXIucHJlc2VudCgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcHJlc2VudE15UHJvZmlsZVBvcG92ZXIoZXZlbnQpIHtcclxuXHJcbiAgICBpZih0aGlzLmxzLmlzQ2xhaW1hbnQoKSl7XHJcbiAgICAgIHRoaXMuc2hvd1Byb2ZpbGVQb3B1cCA9IHRydWU7XHJcbiAgICAgIHRoaXMubWVudS5jbG9zZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGNvbnN0IHBvcG92ZXIgPSBhd2FpdCB0aGlzLnBvcHVwLmNyZWF0ZSh7XHJcbiAgICAgIGNvbXBvbmVudDogTXlQcm9maWxlUGFnZSxcclxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXHJcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogdHJ1ZSxcclxuICAgICAgY3NzQ2xhc3M6ICdoZWFkZXItcG9wb3ZlcidcclxuICAgIH0pO1xyXG4gICAgXHJcbiAgICByZXR1cm4gYXdhaXQgcG9wb3Zlci5wcmVzZW50KCk7XHJcbiAgfVxyXG5cclxuICBsb2dvdXQoKXtcclxuICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdCgnL2xhbmRpbmcnKTtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwibGFuZ3VhZ2VcIixcImVuXCIpO1xyXG4gICAgdGhpcy5scy5sb2dvdXQoKTtcclxuICB9XHJcblxyXG4gIGdldCB1c2VyUHJvZmlsZUxhYmVsKCl7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2NvbW1vbi51c2VyLnByb2ZpbGUnKTtcclxuICB9XHJcblxyXG4gIGdldCB1c2VyRG9jdW1lbnRzTGFiZWwoKXtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnY29tbW9uLmRvY3VtZW50cycpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHVzZXJMb2dvdXRMYWJlbCgpe1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdjb21tb24ubG9nb3V0Jyk7XHJcbiAgfVxyXG5cclxuICBnZXRIb21lTGFiZWwoKXtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnY29tbW9uLmhvbWUnKTtcclxuICB9XHJcblxyXG4gIGdldENsYWltc0xhYmVsKCl7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2NvbW1vbi5jbGFpbXMnKTtcclxuICB9XHJcblxyXG4gIGdldFdlZWtseUxhYmVsKCl7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2NvbW1vbi53ZWVrbHknKTtcclxuICB9XHJcblxyXG4gIGdldEhpc3RvcnlMYWJlbCgpe1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdjb21tb24uaGlzdG9yeScpO1xyXG4gIH1cclxuXHJcbiAgZ2V0V29ya1NlYXJjaExhYmVsKCl7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2NvbW1vbi53b3JrLnNlYXJjaCcpO1xyXG4gIH1cclxufVxyXG4iLCI8aW9uLW1lbnUgc2lkZT1cInN0YXJ0XCIgbWVudUlkPVwiZmlyc3RcIiBjb250ZW50SWQ9XCJtYWluLWNvbnRlbnRcIiAqbmdJZj1cImxzLmlzTG9nZ2VkSW4oKSAmJiBtZW51cyAmJiBtZW51cy5sZW5ndGggPiAwXCIgKGlvbkRpZE9wZW4pPVwibWVudU9wZW5lZCgpXCI+XHJcbiAgPGlvbi1oZWFkZXI+XHJcbiAgICA8aW9uLXRvb2xiYXI+XHJcbiAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwic3RhcnRcIj5cclxuICAgICAgICA8aW9uLW1lbnUtYnV0dG9uIGF1dG9IaWRlPVwiZmFsc2VcIiBwVG9vbHRpcD1cInt7J2hlYWRlci5tZW51LmNsb3NlJyB8IHRyYW5zbGF0ZX19XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cImxzLmlzTG9nZ2VkSW4oKVwiPiAgICBcclxuICAgICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJzdWNjZXNzXCIgbmFtZT1cImNsb3NlXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1tZW51LWJ1dHRvbj5cclxuICAgICAgPC9pb24tYnV0dG9ucz5cclxuICAgIDwvaW9uLXRvb2xiYXI+XHJcbiAgPC9pb24taGVhZGVyPlxyXG4gIDxpb24tY29udGVudD5cclxuICAgIDxwLWFjY29yZGlvbiAqbmdJZj1cIm1lbnVzICYmIG1lbnVzLmxlbmd0aCA+IDAgJiYgKCFscy5pc0NsYWltYW50KCkgfHwgbGVnYWN5TWVudSA9PSAndHJ1ZScpXCI+XHJcbiAgICAgIDxwLWFjY29yZGlvblRhYiAqbmdGb3I9XCJsZXQgbWVudSBvZiBscy5nZXRNZW51QnMoKSB8IGFzeW5jOyBsZXQgaSA9IGluZGV4XCIgW2hlYWRlcl09XCJtZW51LmxhYmVsXCI+XHJcbiAgICAgICAgPGlvbi1saXN0PlxyXG4gICAgICAgICAgPGlvbi1pdGVtIGJ1dHRvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51Lml0ZW1zXCIgKGNsaWNrKT1cIm9wZW5QYWdlKGl0ZW0pXCIgbGluZXM9XCJub25lXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibGlua1wiIGNvbG9yPVwicHJpbWFyeVwiIHNsb3Q9XCJzdGFydFwiICpuZ0lmPVwiIWl0ZW0uaWNvblwiIHN0eWxlPVwibWFyZ2luLWlubGluZS1lbmQ6IDE1cHggIWltcG9ydGFudDtcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwiaXRlbS5pY29uXCIgY29sb3I9XCJwcmltYXJ5XCIgc2xvdD1cInN0YXJ0XCIgKm5nSWY9XCJpdGVtLmljb25cIiBzdHlsZT1cIm1hcmdpbi1pbmxpbmUtZW5kOiAxNXB4ICFpbXBvcnRhbnQ7XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cImZvbnQtc2l6ZTogc21hbGw7XCI+e3tpdGVtLmxhYmVsfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gc2xvdD1cImVuZFwiIChjbGljayk9XCJtYXJrRmF2b3VyaXRlKGl0ZW0pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XCIgY29sb3I9XCJ3YXJuaW5nXCIgKm5nSWY9XCJzaG93RmF2QnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzdGFyLW91dGxpbmVcIiAqbmdJZj1cIiFpdGVtLnN0YXRlLmlzRmF2XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInN0YXItc2hhcnBcIiAqbmdJZj1cIml0ZW0uc3RhdGUuaXNGYXZcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2lvbi1pdGVtPlxyXG4gICAgICAgIDwvaW9uLWxpc3Q+XHJcbiAgICAgIDwvcC1hY2NvcmRpb25UYWI+XHJcbiAgICA8L3AtYWNjb3JkaW9uPlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJtZW51cyAmJiBtZW51cy5sZW5ndGggPiAwICYmIChscy5pc0NsYWltYW50KCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnKVwiPlxyXG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBtZW51IG9mIGxzLmdldE1lbnVCcygpIHwgYXN5bmM7IGxldCBpID0gaW5kZXg7IGxldCBpc0xhc3QgPSBsYXN0XCI+XHJcbiAgICAgICAgPGlvbi1saXN0PlxyXG4gICAgICAgICAgPGlvbi1pdGVtIGJ1dHRvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51Lml0ZW1zXCIgKGNsaWNrKT1cIm9wZW5QYWdlKGl0ZW0pXCIgbGluZXM9XCJub25lXCI+XHJcbiAgICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJmb250LXNpemU6IDMxcHg7XCIgW25nQ2xhc3NdPVwic2hvd0ljb24oaXRlbSkgPyAnc2VsZWN0ZWQtbWVudScgOiAnc2VsZWN0ZWQtbWVudS11bnNlbGVjdCdcIj57e2l0ZW0ubGFiZWx9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICA8L2lvbi1saXN0PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPHAtZGl2aWRlcj48L3AtZGl2aWRlcj5cclxuXHJcbiAgICAgIDxpb24tbGlzdD5cclxuICAgICAgICA8aW9uLWl0ZW0gYnV0dG9uIGxpbmVzPVwibm9uZVwiIChjbGljayk9XCJwcmVzZW50TXlQcm9maWxlUG9wb3ZlcigkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInBlcnNvbi1jaXJjbGUtb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiIGNsYXNzPVwibWVudS1pY29uXCIgY29sb3I9XCJwcmltYXJ5XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJmb250LXNpemU6IDMxcHg7XCI+e3t1c2VyUHJvZmlsZUxhYmVsfX08L2lvbi1sYWJlbD5cclxuICAgICAgICA8L2lvbi1pdGVtPlxyXG4gICAgICAgIDxpb24taXRlbSBidXR0b24gbGluZXM9XCJub25lXCIgKGNsaWNrKT1cIm5hdmlnYXRlKCdjcCcsICdkb2N1bWVudHMnKVwiPlxyXG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJkb2N1bWVudC10ZXh0LW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiBjbGFzcz1cIm1lbnUtaWNvblwiIGNvbG9yPVwicHJpbWFyeVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiAzMXB4O1wiPnt7dXNlckRvY3VtZW50c0xhYmVsfX08L2lvbi1sYWJlbD5cclxuICAgICAgICA8L2lvbi1pdGVtPlxyXG4gICAgICAgIDxpb24taXRlbSBidXR0b24gbGluZXM9XCJub25lXCIgKGNsaWNrKT1cImxvZ291dCgpXCI+XHJcbiAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxvZy1vdXQtb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiIGNsYXNzPVwibWVudS1pY29uXCIgY29sb3I9XCJwcmltYXJ5XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJmb250LXNpemU6IDMxcHg7XCI+e3t1c2VyTG9nb3V0TGFiZWx9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgIDwvaW9uLWxpc3Q+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9pb24tY29udGVudD5cclxuPC9pb24tbWVudT5cclxuPGFwcC1wcm9maWxlICpuZ0lmPVwic2hvd1Byb2ZpbGVQb3B1cFwiIChvbkNhbmNlbCk9XCJzaG93UHJvZmlsZVBvcHVwID0gIXNob3dQcm9maWxlUG9wdXBcIj48L2FwcC1wcm9maWxlPiJdfQ==