@reusa/ngx-reusa-app-lib 0.0.1374 → 0.0.1377

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 (545) hide show
  1. package/esm2022/lib/components/add-employer/add-employer.component.mjs +2392 -1322
  2. package/esm2022/lib/components/add-participant/add-participant.component.mjs +159 -105
  3. package/esm2022/lib/components/add-payment/add-payment.component.mjs +59 -53
  4. package/esm2022/lib/components/add-wage/add-wage.component.mjs +161 -0
  5. package/esm2022/lib/components/address/address.component.mjs +287 -152
  6. package/esm2022/lib/components/address-popup/address-popup.component.mjs +97 -0
  7. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +289 -0
  8. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +245 -0
  9. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +203 -0
  10. package/esm2022/lib/components/bank-details/bank-details.component.mjs +79 -219
  11. package/esm2022/lib/components/claim-info/claim-info.component.mjs +408 -0
  12. package/esm2022/lib/components/contact-us/contact-us.component.mjs +17 -43
  13. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +3 -9
  14. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +32 -4
  15. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +30 -15
  16. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  17. package/esm2022/lib/components/dropdown/dropdown.component.mjs +4 -4
  18. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  19. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +596 -0
  20. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +356 -0
  21. package/esm2022/lib/components/email-update/email-update.component.mjs +63 -140
  22. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +422 -574
  23. package/esm2022/lib/components/employer-info/employer-info.component.mjs +319 -0
  24. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +238 -0
  25. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +302 -0
  26. package/esm2022/lib/components/error/error.component.mjs +22 -5
  27. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +172 -0
  28. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  29. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +178 -49
  30. package/esm2022/lib/components/footer/footer.component.mjs +112 -101
  31. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +201 -0
  32. package/esm2022/lib/components/header/header.component.mjs +440 -174
  33. package/esm2022/lib/components/history-page/history-page.component.mjs +571 -0
  34. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +25 -36
  35. package/esm2022/lib/components/idme/idme.component.mjs +84 -0
  36. package/esm2022/lib/components/info/info.component.mjs +4 -12
  37. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +16 -22
  38. package/esm2022/lib/components/job-title/job-title.component.mjs +92 -97
  39. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +143 -513
  40. package/esm2022/lib/components/link/link.component.mjs +1 -1
  41. package/esm2022/lib/components/menu/menu.component.mjs +68 -100
  42. package/esm2022/lib/components/mfa/mfa.component.mjs +158 -288
  43. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +11 -18
  44. package/esm2022/lib/components/money-expect/money-expect.component.mjs +158 -54
  45. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +3661 -0
  46. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +258 -0
  47. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +853 -0
  48. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +251 -0
  49. package/esm2022/lib/components/profile/profile.component.mjs +749 -353
  50. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +108 -38
  51. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +261 -0
  52. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +560 -0
  53. package/esm2022/lib/components/questionnaire/AppValidators.mjs +296 -47
  54. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +110 -65
  55. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +377 -173
  56. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +76 -95
  57. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +877 -1153
  58. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +208 -699
  59. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +28 -22
  60. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +128 -41
  61. package/esm2022/lib/components/questionnaire/question-control.service.mjs +2 -1
  62. package/esm2022/lib/components/questionnaire/question.service.mjs +5 -7
  63. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +15 -29
  64. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +497 -237
  65. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +25 -0
  66. package/esm2022/lib/components/search-employer/search-employer.component.mjs +155 -30
  67. package/esm2022/lib/components/select/select.component.mjs +5 -10
  68. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  69. package/esm2022/lib/components/sms/sms.component.mjs +336 -0
  70. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +52 -72
  71. package/esm2022/lib/components/user-login/user-login.component.mjs +139 -360
  72. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +527 -0
  73. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +274 -0
  74. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +147 -0
  75. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +167 -0
  76. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +655 -387
  77. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +125 -61
  78. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +828 -0
  79. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +129 -0
  80. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +136 -0
  81. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +72 -0
  82. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +50 -0
  83. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +92 -0
  84. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +1190 -0
  85. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +690 -0
  86. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +524 -0
  87. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +394 -0
  88. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +640 -0
  89. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +33 -0
  90. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +9 -0
  91. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +5 -0
  92. package/esm2022/lib/guards/auth.guard.mjs +50 -2
  93. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  94. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +51 -3
  95. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  96. package/esm2022/lib/models/ActiveClaimModel.mjs +3 -0
  97. package/esm2022/lib/models/CountyModel.mjs +3 -0
  98. package/esm2022/lib/models/DuaAppDataModel.mjs +3 -0
  99. package/esm2022/lib/models/DuaRequestModel.mjs +3 -0
  100. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +6 -0
  101. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  102. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +4 -0
  103. package/esm2022/lib/models/EmployerPayInfoModel.mjs +6 -0
  104. package/esm2022/lib/models/FarmUsageComponentModel.mjs +2 -0
  105. package/esm2022/lib/models/GrossEarningsModel.mjs +3 -0
  106. package/esm2022/lib/models/HelpConstants.mjs +5 -0
  107. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +3 -0
  108. package/esm2022/lib/models/LibConstants.mjs +45 -6
  109. package/esm2022/lib/models/OtpAuthModel.mjs +1 -1
  110. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  111. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +3 -0
  112. package/esm2022/lib/models/RetroWeeksModel.mjs +3 -0
  113. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +3 -0
  114. package/esm2022/lib/models/SendOtpRequestModel.mjs +3 -0
  115. package/esm2022/lib/models/UserModel.mjs +1 -1
  116. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +3 -0
  117. package/esm2022/lib/models/WageCalculatorModel.mjs +3 -0
  118. package/esm2022/lib/models/WageInfoModel.mjs +4 -0
  119. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +3 -0
  120. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +3 -0
  121. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +3 -0
  122. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +3 -0
  123. package/esm2022/lib/models/combo-model.mjs +343 -0
  124. package/esm2022/lib/models/dashboard-model.mjs +1 -1
  125. package/esm2022/lib/models/dependent.model.mjs +1 -1
  126. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +7 -0
  127. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +3 -0
  128. package/esm2022/lib/models/fileupload/FileObject.mjs +3 -0
  129. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +7 -0
  130. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +8 -0
  131. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  132. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +2 -1
  133. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  134. package/esm2022/lib/models/questionnaire/ComboModel.mjs +96 -653
  135. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  136. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  137. package/esm2022/lib/models/questionnaire/QuestionnaireSaveModel.mjs +1 -1
  138. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +3 -0
  139. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  140. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +3 -0
  141. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +3 -0
  142. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +2 -0
  143. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +7 -0
  144. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +7 -0
  145. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +6 -0
  146. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +34 -0
  147. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +15 -0
  148. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +11 -0
  149. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +135 -23
  150. package/esm2022/lib/pages/BasePage.mjs +4 -23
  151. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +22 -18
  152. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +142 -124
  153. package/esm2022/lib/pages/common/landing/landing.component.mjs +7 -8
  154. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  155. package/esm2022/lib/pages/common/login/login.component.mjs +7 -13
  156. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  157. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  158. package/esm2022/lib/pages/popovers/language/language.page.mjs +1 -2
  159. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +4 -4
  160. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +7 -2
  161. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +101 -0
  162. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +2 -2
  163. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +151 -0
  164. package/esm2022/lib/services/appeal/appeal.service.mjs +37 -0
  165. package/esm2022/lib/services/base-service.mjs +4 -1
  166. package/esm2022/lib/services/birt-service/birt.service.mjs +57 -0
  167. package/esm2022/lib/services/chatbot/chatbot.service.mjs +1 -2
  168. package/esm2022/lib/services/claimant-service/claimant.service.mjs +7 -13
  169. package/esm2022/lib/services/claims/claims.service.mjs +105 -14
  170. package/esm2022/lib/services/employer/employer-service.mjs +35 -0
  171. package/esm2022/lib/services/event-service/event-service.mjs +44 -0
  172. package/esm2022/lib/services/help/help.service.mjs +1 -1
  173. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  174. package/esm2022/lib/services/login/login.service.mjs +29 -14
  175. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +327 -0
  176. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +4 -1
  177. package/esm2022/lib/services/questionnaire/validation.service.mjs +4 -1
  178. package/esm2022/lib/services/security-service/security.service.mjs +23 -6
  179. package/esm2022/lib/services/util/util.service.mjs +61 -5
  180. package/esm2022/lib/services/weekly-cert/review.service.mjs +101 -0
  181. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +186 -14
  182. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +37 -0
  183. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +58 -0
  184. package/esm2022/lib/validations/AppRegex.mjs +1 -3
  185. package/esm2022/lib/validations/AppValidators.mjs +78 -62
  186. package/esm2022/public-api.mjs +47 -5
  187. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +41277 -23401
  188. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  189. package/lib/components/add-employer/add-employer.component.d.ts +137 -53
  190. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  191. package/lib/components/add-participant/add-participant.component.d.ts +11 -5
  192. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -1
  193. package/lib/components/add-payment/add-payment.component.d.ts +9 -3
  194. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  195. package/lib/components/add-wage/add-wage.component.d.ts +30 -0
  196. package/lib/components/add-wage/add-wage.component.d.ts.map +1 -0
  197. package/lib/components/address/address.component.d.ts +42 -15
  198. package/lib/components/address/address.component.d.ts.map +1 -1
  199. package/lib/components/address-popup/address-popup.component.d.ts +16 -0
  200. package/lib/components/address-popup/address-popup.component.d.ts.map +1 -0
  201. package/lib/components/address-suggestion/address-suggestion.component.d.ts +43 -0
  202. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +1 -0
  203. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +37 -0
  204. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +1 -0
  205. package/lib/components/associate-ssn/associate-ssn.component.d.ts +33 -0
  206. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +1 -0
  207. package/lib/components/bank-details/bank-details.component.d.ts +1 -23
  208. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -1
  209. package/lib/components/claim-info/claim-info.component.d.ts +49 -0
  210. package/lib/components/claim-info/claim-info.component.d.ts.map +1 -0
  211. package/lib/components/contact-us/contact-us.component.d.ts +1 -4
  212. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  213. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -1
  214. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  215. package/lib/components/dua-request-page/dua-request-page.component.d.ts +74 -0
  216. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +1 -0
  217. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +61 -0
  218. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +1 -0
  219. package/lib/components/email-update/email-update.component.d.ts +1 -12
  220. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  221. package/lib/components/employer-grid/employer-grid.component.d.ts +25 -15
  222. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  223. package/lib/components/employer-info/employer-info.component.d.ts +50 -0
  224. package/lib/components/employer-info/employer-info.component.d.ts.map +1 -0
  225. package/lib/components/employer-pay/employer-pay.component.d.ts +51 -0
  226. package/lib/components/employer-pay/employer-pay.component.d.ts.map +1 -0
  227. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +43 -0
  228. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +1 -0
  229. package/lib/components/error/error.component.d.ts +3 -2
  230. package/lib/components/error/error.component.d.ts.map +1 -1
  231. package/lib/components/farm-usage/farm-usage.component.d.ts +33 -0
  232. package/lib/components/farm-usage/farm-usage.component.d.ts.map +1 -0
  233. package/lib/components/file-uploader/file-uploader.component.d.ts +5 -1
  234. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -1
  235. package/lib/components/footer/footer.component.d.ts.map +1 -1
  236. package/lib/components/gross-earnings/gross-earnings.component.d.ts +42 -0
  237. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +1 -0
  238. package/lib/components/header/header.component.d.ts +17 -5
  239. package/lib/components/header/header.component.d.ts.map +1 -1
  240. package/lib/components/history-page/history-page.component.d.ts +80 -0
  241. package/lib/components/history-page/history-page.component.d.ts.map +1 -0
  242. package/lib/components/idme/idme.component.d.ts +19 -0
  243. package/lib/components/idme/idme.component.d.ts.map +1 -0
  244. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +1 -3
  245. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -1
  246. package/lib/components/job-title/job-title.component.d.ts +22 -23
  247. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  248. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +5 -6
  249. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  250. package/lib/components/menu/menu.component.d.ts +3 -12
  251. package/lib/components/menu/menu.component.d.ts.map +1 -1
  252. package/lib/components/mfa/mfa.component.d.ts +7 -19
  253. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  254. package/lib/components/mfa-popup/mfa-popup.component.d.ts +6 -8
  255. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  256. package/lib/components/money-expect/money-expect.component.d.ts +15 -4
  257. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  258. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +311 -0
  259. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +1 -0
  260. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +33 -0
  261. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +1 -0
  262. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +97 -0
  263. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +1 -0
  264. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +33 -0
  265. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +1 -0
  266. package/lib/components/profile/profile.component.d.ts +82 -49
  267. package/lib/components/profile/profile.component.d.ts.map +1 -1
  268. package/lib/components/profile-redirect/profile-redirect.component.d.ts +9 -2
  269. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  270. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +54 -0
  271. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +1 -0
  272. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +74 -0
  273. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +1 -0
  274. package/lib/components/questionnaire/AppValidators.d.ts +1 -0
  275. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  276. package/lib/components/questionnaire/account-success/account-success.page.d.ts +13 -10
  277. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  278. package/lib/components/questionnaire/common-success/common-success.page.d.ts +7 -1
  279. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  280. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +3 -1
  281. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -1
  282. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +33 -35
  283. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  284. package/lib/components/questionnaire/dynamic-form.component.d.ts +10 -34
  285. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  286. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +0 -7
  287. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  288. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +7 -1
  289. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  290. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  291. package/lib/components/questionnaire/question.service.d.ts +0 -1
  292. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  293. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +1 -7
  294. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  295. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +11 -3
  296. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  297. package/lib/components/scrollable-text/scrollable-text.component.d.ts +11 -0
  298. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +1 -0
  299. package/lib/components/search-employer/search-employer.component.d.ts +5 -4
  300. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  301. package/lib/components/sms/sms.component.d.ts +63 -0
  302. package/lib/components/sms/sms.component.d.ts.map +1 -0
  303. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +1 -5
  304. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -1
  305. package/lib/components/user-login/user-login.component.d.ts +5 -38
  306. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  307. package/lib/components/wage-calculator/wage-calculator.component.d.ts +44 -0
  308. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +1 -0
  309. package/lib/components/wage-grid/wage-grid.component.d.ts +43 -0
  310. package/lib/components/wage-grid/wage-grid.component.d.ts.map +1 -0
  311. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +28 -0
  312. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +1 -0
  313. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +28 -0
  314. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +1 -0
  315. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +27 -10
  316. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  317. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +9 -3
  318. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  319. package/lib/components/weekly-certification/weekly-certification.component.d.ts +101 -0
  320. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +1 -0
  321. package/lib/components/weekly-confirmation/confirmation.component.d.ts +21 -0
  322. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +1 -0
  323. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +34 -0
  324. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +1 -0
  325. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +17 -0
  326. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +1 -0
  327. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +10 -0
  328. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +1 -0
  329. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +17 -0
  330. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +1 -0
  331. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +105 -0
  332. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +1 -0
  333. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +71 -0
  334. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +1 -0
  335. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +59 -0
  336. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +1 -0
  337. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +47 -0
  338. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +1 -0
  339. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +78 -0
  340. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +1 -0
  341. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +8 -0
  342. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +1 -0
  343. package/lib/enums/AddressValidationResponseEnum.d.ts +8 -0
  344. package/lib/enums/AddressValidationResponseEnum.d.ts.map +1 -0
  345. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +4 -0
  346. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +1 -0
  347. package/lib/guards/auth.guard.d.ts.map +1 -1
  348. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -1
  349. package/lib/models/ActiveClaimModel.d.ts +8 -0
  350. package/lib/models/ActiveClaimModel.d.ts.map +1 -0
  351. package/lib/models/CountyModel.d.ts +8 -0
  352. package/lib/models/CountyModel.d.ts.map +1 -0
  353. package/lib/models/DuaAppDataModel.d.ts +5 -0
  354. package/lib/models/DuaAppDataModel.d.ts.map +1 -0
  355. package/lib/models/DuaRequestModel.d.ts +10 -0
  356. package/lib/models/DuaRequestModel.d.ts.map +1 -0
  357. package/lib/models/DuaRetroWeeksComponentModel.d.ts +5 -0
  358. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +1 -0
  359. package/lib/models/EmployerDetailSearchResult.d.ts +4 -1
  360. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  361. package/lib/models/EmployerInfoComponentModel.d.ts +9 -0
  362. package/lib/models/EmployerInfoComponentModel.d.ts.map +1 -0
  363. package/lib/models/EmployerPayInfoModel.d.ts +20 -0
  364. package/lib/models/EmployerPayInfoModel.d.ts.map +1 -0
  365. package/lib/models/FarmUsageComponentModel.d.ts +10 -0
  366. package/lib/models/FarmUsageComponentModel.d.ts.map +1 -0
  367. package/lib/models/GrossEarningsModel.d.ts +6 -0
  368. package/lib/models/GrossEarningsModel.d.ts.map +1 -0
  369. package/lib/models/HelpConstants.d.ts +5 -0
  370. package/lib/models/HelpConstants.d.ts.map +1 -0
  371. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +7 -0
  372. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +1 -0
  373. package/lib/models/LibConstants.d.ts +40 -1
  374. package/lib/models/LibConstants.d.ts.map +1 -1
  375. package/lib/models/OtpAuthModel.d.ts +0 -1
  376. package/lib/models/OtpAuthModel.d.ts.map +1 -1
  377. package/lib/models/PaymentComponentModel.d.ts +1 -1
  378. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  379. package/lib/models/ReasonSeparationRequestModel.d.ts +7 -0
  380. package/lib/models/ReasonSeparationRequestModel.d.ts.map +1 -0
  381. package/lib/models/RetroWeeksModel.d.ts +11 -0
  382. package/lib/models/RetroWeeksModel.d.ts.map +1 -0
  383. package/lib/models/SecurityQuestionAnswerModel.d.ts +7 -0
  384. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +1 -0
  385. package/lib/models/SendOtpRequestModel.d.ts +12 -0
  386. package/lib/models/SendOtpRequestModel.d.ts.map +1 -0
  387. package/lib/models/UserModel.d.ts +0 -1
  388. package/lib/models/UserModel.d.ts.map +1 -1
  389. package/lib/models/VerifyOtpRequestModel.d.ts +8 -0
  390. package/lib/models/VerifyOtpRequestModel.d.ts.map +1 -0
  391. package/lib/models/WageCalculatorModel.d.ts +15 -0
  392. package/lib/models/WageCalculatorModel.d.ts.map +1 -0
  393. package/lib/models/WageInfoModel.d.ts +9 -0
  394. package/lib/models/WageInfoModel.d.ts.map +1 -0
  395. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +12 -0
  396. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +1 -0
  397. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +11 -0
  398. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +1 -0
  399. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +6 -0
  400. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +1 -0
  401. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +16 -0
  402. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +1 -0
  403. package/lib/models/combo-model.d.ts +42 -0
  404. package/lib/models/combo-model.d.ts.map +1 -0
  405. package/lib/models/dashboard-model.d.ts +22 -0
  406. package/lib/models/dashboard-model.d.ts.map +1 -1
  407. package/lib/models/fileupload/DocUploadModel.d.ts +22 -0
  408. package/lib/models/fileupload/DocUploadModel.d.ts.map +1 -0
  409. package/lib/models/fileupload/EmployerDataModel.d.ts +6 -0
  410. package/lib/models/fileupload/EmployerDataModel.d.ts.map +1 -0
  411. package/lib/models/fileupload/FileObject.d.ts +8 -0
  412. package/lib/models/fileupload/FileObject.d.ts.map +1 -0
  413. package/lib/models/fileupload/FileObjectArray.d.ts +8 -0
  414. package/lib/models/fileupload/FileObjectArray.d.ts.map +1 -0
  415. package/lib/models/questionnaire/AppealParticipantModel.d.ts +17 -0
  416. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +1 -0
  417. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +3 -0
  418. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  419. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +15 -4
  420. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  421. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +4 -1
  422. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  423. package/lib/models/questionnaire/ComboModel.d.ts +14 -82
  424. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  425. package/lib/models/questionnaire/ElementsModel.d.ts +0 -1
  426. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  427. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +2 -0
  428. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  429. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +0 -1
  430. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts.map +1 -1
  431. package/lib/models/questionnaire/ScrollableTextModel.d.ts +4 -0
  432. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +1 -0
  433. package/lib/models/questionnaire/StatusModel.d.ts +1 -0
  434. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  435. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +4 -0
  436. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +1 -0
  437. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +9 -0
  438. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +1 -0
  439. package/lib/models/weekly-cert/address-detail-model.d.ts +14 -0
  440. package/lib/models/weekly-cert/address-detail-model.d.ts.map +1 -0
  441. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +15 -0
  442. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +1 -0
  443. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +27 -0
  444. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +1 -0
  445. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +57 -0
  446. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +1 -0
  447. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +59 -0
  448. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +1 -0
  449. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +66 -0
  450. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +1 -0
  451. package/lib/models/weekly-cert/work-search-v2-model.d.ts +18 -0
  452. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +1 -0
  453. package/lib/ngx-reusa-app-lib.module.d.ts +124 -86
  454. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  455. package/lib/pages/BasePage.d.ts +3 -6
  456. package/lib/pages/BasePage.d.ts.map +1 -1
  457. package/lib/pages/common/change-password/change-password.page.d.ts +3 -0
  458. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  459. package/lib/pages/common/login/login.component.d.ts.map +1 -1
  460. package/lib/pages/popovers/language/language.page.d.ts.map +1 -1
  461. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -1
  462. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +14 -0
  463. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +1 -0
  464. package/lib/services/address-validation-service/address-validation.service.d.ts +44 -0
  465. package/lib/services/address-validation-service/address-validation.service.d.ts.map +1 -0
  466. package/lib/services/appeal/appeal.service.d.ts +16 -0
  467. package/lib/services/appeal/appeal.service.d.ts.map +1 -0
  468. package/lib/services/base-service.d.ts +12 -0
  469. package/lib/services/base-service.d.ts.map +1 -1
  470. package/lib/services/birt-service/birt.service.d.ts +17 -0
  471. package/lib/services/birt-service/birt.service.d.ts.map +1 -0
  472. package/lib/services/claimant-service/claimant.service.d.ts +5 -6
  473. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  474. package/lib/services/claims/claims.service.d.ts +39 -5
  475. package/lib/services/claims/claims.service.d.ts.map +1 -1
  476. package/lib/services/employer/employer-service.d.ts +16 -0
  477. package/lib/services/employer/employer-service.d.ts.map +1 -0
  478. package/lib/services/event-service/event-service.d.ts +20 -0
  479. package/lib/services/event-service/event-service.d.ts.map +1 -0
  480. package/lib/services/login/login.service.d.ts +5 -3
  481. package/lib/services/login/login.service.d.ts.map +1 -1
  482. package/lib/services/offline-claims/offline-claims.service.d.ts +64 -0
  483. package/lib/services/offline-claims/offline-claims.service.d.ts.map +1 -0
  484. package/lib/services/questionnaire/questionnaire.service.d.ts +1 -0
  485. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  486. package/lib/services/questionnaire/validation.service.d.ts +3 -0
  487. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  488. package/lib/services/security-service/security.service.d.ts +12 -4
  489. package/lib/services/security-service/security.service.d.ts.map +1 -1
  490. package/lib/services/util/util.service.d.ts +6 -0
  491. package/lib/services/util/util.service.d.ts.map +1 -1
  492. package/lib/services/weekly-cert/review.service.d.ts +23 -0
  493. package/lib/services/weekly-cert/review.service.d.ts.map +1 -0
  494. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +47 -5
  495. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -1
  496. package/lib/services/weekly-cert/weekly-cert.service.d.ts +17 -0
  497. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +1 -0
  498. package/lib/services/weekly-cert/work-search.service.d.ts +26 -0
  499. package/lib/services/weekly-cert/work-search.service.d.ts.map +1 -0
  500. package/lib/validations/AppRegex.d.ts +0 -2
  501. package/lib/validations/AppRegex.d.ts.map +1 -1
  502. package/lib/validations/AppValidators.d.ts +20 -24
  503. package/lib/validations/AppValidators.d.ts.map +1 -1
  504. package/package.json +2 -2
  505. package/public-api.d.ts +46 -4
  506. package/public-api.d.ts.map +1 -1
  507. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +0 -402
  508. package/esm2022/lib/components/mfa2/mfa2.component.mjs +0 -285
  509. package/esm2022/lib/components/security-question/security-question.component.mjs +0 -199
  510. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +0 -2
  511. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +0 -2
  512. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +0 -2
  513. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +0 -2
  514. package/esm2022/lib/models/LexisNexisResponseModel.mjs +0 -3
  515. package/esm2022/lib/models/PartialEmploymentModel.mjs +0 -3
  516. package/esm2022/lib/models/SecurityQuestionModel.mjs +0 -3
  517. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +0 -36
  518. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +0 -60
  519. package/esm2022/lib/services/ovp/ovp.service.mjs +0 -43
  520. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +0 -59
  521. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +0 -1
  522. package/lib/components/mfa2/mfa2.component.d.ts +0 -48
  523. package/lib/components/mfa2/mfa2.component.d.ts.map +0 -1
  524. package/lib/components/security-question/security-question.component.d.ts +0 -37
  525. package/lib/components/security-question/security-question.component.d.ts.map +0 -1
  526. package/lib/models/LexisNexisAccountCreationModel.d.ts +0 -15
  527. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +0 -1
  528. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +0 -16
  529. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +0 -1
  530. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +0 -39
  531. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +0 -1
  532. package/lib/models/LexisNexisEnabledResponseModel.d.ts +0 -5
  533. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +0 -1
  534. package/lib/models/LexisNexisResponseModel.d.ts +0 -7
  535. package/lib/models/LexisNexisResponseModel.d.ts.map +0 -1
  536. package/lib/models/PartialEmploymentModel.d.ts +0 -6
  537. package/lib/models/PartialEmploymentModel.d.ts.map +0 -1
  538. package/lib/models/SecurityQuestionModel.d.ts +0 -7
  539. package/lib/models/SecurityQuestionModel.d.ts.map +0 -1
  540. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +0 -16
  541. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +0 -1
  542. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +0 -26
  543. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +0 -1
  544. package/lib/services/ovp/ovp.service.d.ts +0 -17
  545. package/lib/services/ovp/ovp.service.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Output, ViewChild } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
2
+ import { NG_VALUE_ACCESSOR, UntypedFormControl, Validators } from '@angular/forms';
3
3
  import { ClaimAppEmpRequestModel } from '../../models/questionnaire/ClaimAppEmpRequestModel';
4
4
  import { Input } from '@angular/core';
5
5
  import { RequalifyLiftPageModel } from '../../models/RequalifyLiftPageModel';
@@ -14,34 +14,40 @@ import * as i7 from "@angular/common";
14
14
  import * as i8 from "primeng/api";
15
15
  import * as i9 from "primeng/dialog";
16
16
  import * as i10 from "primeng/table";
17
- import * as i11 from "primeng/dropdown";
17
+ import * as i11 from "primeng/inputtext";
18
18
  import * as i12 from "../error/error.component";
19
- import * as i13 from "@ngx-translate/core";
19
+ import * as i13 from "../dropdown/dropdown.component";
20
+ import * as i14 from "@ngx-translate/core";
20
21
  const _c0 = ["requalifyFormDirective"];
21
- function RequalifyLiftPreviousIssuesComponent_div_12_Template(rf, ctx) { if (rf & 1) {
22
- i0.ɵɵelementStart(0, "div", 15);
23
- i0.ɵɵelement(1, "ion-spinner", 16);
22
+ function RequalifyLiftPreviousIssuesComponent_div_13_Template(rf, ctx) { if (rf & 1) {
23
+ i0.ɵɵelementStart(0, "div", 17);
24
+ i0.ɵɵelement(1, "ion-spinner", 18);
24
25
  i0.ɵɵelementEnd();
25
26
  } }
26
- function RequalifyLiftPreviousIssuesComponent_div_13_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
27
+ function RequalifyLiftPreviousIssuesComponent_div_14_div_1_Template(rf, ctx) { if (rf & 1) {
28
+ i0.ɵɵelementStart(0, "div")(1, "p");
29
+ i0.ɵɵtext(2, "No Records found.");
30
+ i0.ɵɵelementEnd()();
31
+ } }
32
+ function RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
27
33
  i0.ɵɵelementStart(0, "th")(1, "b");
28
34
  i0.ɵɵtext(2);
29
35
  i0.ɵɵelementEnd()();
30
36
  } if (rf & 2) {
31
- const col_r17 = ctx.$implicit;
37
+ const col_r22 = ctx.$implicit;
32
38
  i0.ɵɵadvance(2);
33
- i0.ɵɵtextInterpolate(col_r17.header);
39
+ i0.ɵɵtextInterpolate(col_r22.header);
34
40
  } }
35
- function RequalifyLiftPreviousIssuesComponent_div_13_ng_template_3_Template(rf, ctx) { if (rf & 1) {
41
+ function RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
36
42
  i0.ɵɵelementStart(0, "tr");
37
- i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_13_ng_template_3_th_1_Template, 3, 1, "th", 22);
43
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
38
44
  i0.ɵɵelementEnd();
39
45
  } if (rf & 2) {
40
- const columns_r15 = ctx.$implicit;
46
+ const columns_r20 = ctx.$implicit;
41
47
  i0.ɵɵadvance(1);
42
- i0.ɵɵproperty("ngForOf", columns_r15);
48
+ i0.ɵɵproperty("ngForOf", columns_r20);
43
49
  } }
44
- function RequalifyLiftPreviousIssuesComponent_div_13_ng_template_4_Template(rf, ctx) { if (rf & 1) {
50
+ function RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
45
51
  i0.ɵɵelementStart(0, "tr")(1, "td");
46
52
  i0.ɵɵtext(2);
47
53
  i0.ɵɵelementEnd();
@@ -66,58 +72,69 @@ function RequalifyLiftPreviousIssuesComponent_div_13_ng_template_4_Template(rf,
66
72
  i0.ɵɵpipe(17, "currency");
67
73
  i0.ɵɵelementEnd()();
68
74
  } if (rf & 2) {
69
- const employer_r18 = ctx.$implicit;
75
+ const employer_r23 = ctx.$implicit;
70
76
  i0.ɵɵadvance(2);
71
- i0.ɵɵtextInterpolate(employer_r18.employerData.displayName);
77
+ i0.ɵɵtextInterpolate(employer_r23.employerData.displayName);
72
78
  i0.ɵɵadvance(2);
73
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 6, employer_r18.employerProvidedWages.wagesListQtrWise[0] == null ? null : employer_r18.employerProvidedWages.wagesListQtrWise[0].wageAmount));
79
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 6, employer_r23.employerProvidedWages == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[0] == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[0].wageAmount));
74
80
  i0.ɵɵadvance(3);
75
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(8, 8, employer_r18.employerProvidedWages.wagesListQtrWise[1] == null ? null : employer_r18.employerProvidedWages.wagesListQtrWise[1].wageAmount));
81
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(8, 8, employer_r23.employerProvidedWages == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[1] == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[1].wageAmount));
76
82
  i0.ɵɵadvance(3);
77
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 10, employer_r18.employerProvidedWages.wagesListQtrWise[2] == null ? null : employer_r18.employerProvidedWages.wagesListQtrWise[2].wageAmount));
83
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 10, employer_r23.employerProvidedWages == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[2] == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[2].wageAmount));
78
84
  i0.ɵɵadvance(3);
79
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(14, 12, employer_r18.employerProvidedWages.wagesListQtrWise[3] == null ? null : employer_r18.employerProvidedWages.wagesListQtrWise[3].wageAmount));
85
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(14, 12, employer_r23.employerProvidedWages == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[3] == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[3].wageAmount));
80
86
  i0.ɵɵadvance(3);
81
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(17, 14, employer_r18.employerProvidedWages.wagesListQtrWise[4] == null ? null : employer_r18.employerProvidedWages.wagesListQtrWise[4].wageAmount));
87
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(17, 14, employer_r23.employerProvidedWages == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[4] == null ? null : employer_r23.employerProvidedWages.wagesListQtrWise[4].wageAmount));
82
88
  } }
83
- function RequalifyLiftPreviousIssuesComponent_div_13_ng_template_5_Template(rf, ctx) { if (rf & 1) {
84
- i0.ɵɵelementStart(0, "tr")(1, "td", 23);
85
- i0.ɵɵtext(2, "No Records found.");
89
+ function RequalifyLiftPreviousIssuesComponent_div_14_div_2_Template(rf, ctx) { if (rf & 1) {
90
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 19, 20);
91
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_14_div_2_ng_template_4_Template, 18, 16, "ng-template", 22);
86
92
  i0.ɵɵelementEnd()();
93
+ } if (rf & 2) {
94
+ const ctx_r16 = i0.ɵɵnextContext(2);
95
+ i0.ɵɵadvance(1);
96
+ i0.ɵɵproperty("value", ctx_r16.bpEmployerWagesListFiltered)("columns", ctx_r16.cols)("rowHover", true);
87
97
  } }
88
- function RequalifyLiftPreviousIssuesComponent_div_13_Template(rf, ctx) { if (rf & 1) {
89
- i0.ɵɵelementStart(0, "div")(1, "p-table", 17, 18);
90
- i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_13_ng_template_3_Template, 2, 1, "ng-template", 19)(4, RequalifyLiftPreviousIssuesComponent_div_13_ng_template_4_Template, 18, 16, "ng-template", 20)(5, RequalifyLiftPreviousIssuesComponent_div_13_ng_template_5_Template, 3, 0, "ng-template", 21);
91
- i0.ɵɵelementEnd()();
98
+ function RequalifyLiftPreviousIssuesComponent_div_14_Template(rf, ctx) { if (rf & 1) {
99
+ i0.ɵɵelementStart(0, "div");
100
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_14_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_14_div_2_Template, 5, 3, "div", 5);
101
+ i0.ɵɵelementEnd();
92
102
  } if (rf & 2) {
93
- const ctx_r1 = i0.ɵɵnextContext();
103
+ const ctx_r2 = i0.ɵɵnextContext();
94
104
  i0.ɵɵadvance(1);
95
- i0.ɵɵproperty("value", ctx_r1.bpEmployerWagesListFiltered)("columns", ctx_r1.cols)("rowHover", true);
105
+ i0.ɵɵproperty("ngIf", ctx_r2.bpEmployerWagesListFiltered.length === 0 || !ctx_r2.empProvidedWages);
106
+ i0.ɵɵadvance(1);
107
+ i0.ɵɵproperty("ngIf", ctx_r2.bpEmployerWagesListFiltered && ctx_r2.empProvidedWages);
96
108
  } }
97
- function RequalifyLiftPreviousIssuesComponent_div_19_Template(rf, ctx) { if (rf & 1) {
98
- i0.ɵɵelementStart(0, "div", 15);
99
- i0.ɵɵelement(1, "ion-spinner", 16);
109
+ function RequalifyLiftPreviousIssuesComponent_div_20_Template(rf, ctx) { if (rf & 1) {
110
+ i0.ɵɵelementStart(0, "div", 17);
111
+ i0.ɵɵelement(1, "ion-spinner", 18);
100
112
  i0.ɵɵelementEnd();
101
113
  } }
102
- function RequalifyLiftPreviousIssuesComponent_div_20_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
114
+ function RequalifyLiftPreviousIssuesComponent_div_21_div_1_Template(rf, ctx) { if (rf & 1) {
115
+ i0.ɵɵelementStart(0, "div")(1, "p");
116
+ i0.ɵɵtext(2, "No Records found.");
117
+ i0.ɵɵelementEnd()();
118
+ } }
119
+ function RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
103
120
  i0.ɵɵelementStart(0, "th")(1, "b");
104
121
  i0.ɵɵtext(2);
105
122
  i0.ɵɵelementEnd()();
106
123
  } if (rf & 2) {
107
- const col_r26 = ctx.$implicit;
124
+ const col_r32 = ctx.$implicit;
108
125
  i0.ɵɵadvance(2);
109
- i0.ɵɵtextInterpolate(col_r26.header);
126
+ i0.ɵɵtextInterpolate(col_r32.header);
110
127
  } }
111
- function RequalifyLiftPreviousIssuesComponent_div_20_ng_template_3_Template(rf, ctx) { if (rf & 1) {
128
+ function RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
112
129
  i0.ɵɵelementStart(0, "tr");
113
- i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_20_ng_template_3_th_1_Template, 3, 1, "th", 22);
130
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
114
131
  i0.ɵɵelementEnd();
115
132
  } if (rf & 2) {
116
- const columns_r24 = ctx.$implicit;
133
+ const columns_r30 = ctx.$implicit;
117
134
  i0.ɵɵadvance(1);
118
- i0.ɵɵproperty("ngForOf", columns_r24);
135
+ i0.ɵɵproperty("ngForOf", columns_r30);
119
136
  } }
120
- function RequalifyLiftPreviousIssuesComponent_div_20_ng_template_4_Template(rf, ctx) { if (rf & 1) {
137
+ function RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
121
138
  i0.ɵɵelementStart(0, "tr")(1, "td");
122
139
  i0.ɵɵtext(2);
123
140
  i0.ɵɵelementEnd();
@@ -134,56 +151,185 @@ function RequalifyLiftPreviousIssuesComponent_div_20_ng_template_4_Template(rf,
134
151
  i0.ɵɵtext(10);
135
152
  i0.ɵɵelementEnd()();
136
153
  } if (rf & 2) {
137
- const employer_r27 = ctx.$implicit;
154
+ const employer_r33 = ctx.$implicit;
138
155
  i0.ɵɵadvance(2);
139
- i0.ɵɵtextInterpolate(employer_r27.employerName);
156
+ i0.ɵɵtextInterpolate(employer_r33.employerName);
140
157
  i0.ɵɵadvance(2);
141
- i0.ɵɵtextInterpolate(employer_r27.proofRecievedDate);
158
+ i0.ɵɵtextInterpolate(employer_r33.proofRecievedDate);
142
159
  i0.ɵɵadvance(2);
143
- i0.ɵɵtextInterpolate(employer_r27.earningsBeginDate);
160
+ i0.ɵɵtextInterpolate(employer_r33.earningsBeginDate);
144
161
  i0.ɵɵadvance(2);
145
- i0.ɵɵtextInterpolate(employer_r27.earningsEndDate);
162
+ i0.ɵɵtextInterpolate(employer_r33.earningsEndDate);
146
163
  i0.ɵɵadvance(2);
147
- i0.ɵɵtextInterpolate(employer_r27.amountOfEarnings);
164
+ i0.ɵɵtextInterpolate(employer_r33.amountOfEarnings);
165
+ } }
166
+ function RequalifyLiftPreviousIssuesComponent_div_21_div_2_Template(rf, ctx) { if (rf & 1) {
167
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 19, 20);
168
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_21_div_2_ng_template_4_Template, 11, 5, "ng-template", 22);
169
+ i0.ɵɵelementEnd()();
170
+ } if (rf & 2) {
171
+ const ctx_r26 = i0.ɵɵnextContext(2);
172
+ i0.ɵɵadvance(1);
173
+ i0.ɵɵproperty("value", ctx_r26.ui512AResponseList)("columns", ctx_r26.col512AResponseLst)("rowHover", true);
174
+ } }
175
+ function RequalifyLiftPreviousIssuesComponent_div_21_Template(rf, ctx) { if (rf & 1) {
176
+ i0.ɵɵelementStart(0, "div");
177
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_21_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_21_div_2_Template, 5, 3, "div", 5);
178
+ i0.ɵɵelementEnd();
179
+ } if (rf & 2) {
180
+ const ctx_r4 = i0.ɵɵnextContext();
181
+ i0.ɵɵadvance(1);
182
+ i0.ɵɵproperty("ngIf", !ctx_r4.ui512AResponseList);
183
+ i0.ɵɵadvance(1);
184
+ i0.ɵɵproperty("ngIf", ctx_r4.ui512AResponseList);
185
+ } }
186
+ function RequalifyLiftPreviousIssuesComponent_div_27_Template(rf, ctx) { if (rf & 1) {
187
+ i0.ɵɵelementStart(0, "div", 17);
188
+ i0.ɵɵelement(1, "ion-spinner", 18);
189
+ i0.ɵɵelementEnd();
148
190
  } }
149
- function RequalifyLiftPreviousIssuesComponent_div_20_ng_template_5_Template(rf, ctx) { if (rf & 1) {
150
- i0.ɵɵelementStart(0, "tr")(1, "td", 24);
191
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_1_Template(rf, ctx) { if (rf & 1) {
192
+ i0.ɵɵelementStart(0, "div")(1, "p");
151
193
  i0.ɵɵtext(2, "No Records found.");
152
194
  i0.ɵɵelementEnd()();
153
195
  } }
154
- function RequalifyLiftPreviousIssuesComponent_div_20_Template(rf, ctx) { if (rf & 1) {
155
- i0.ɵɵelementStart(0, "div")(1, "p-table", 17, 18);
156
- i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_20_ng_template_3_Template, 2, 1, "ng-template", 19)(4, RequalifyLiftPreviousIssuesComponent_div_20_ng_template_4_Template, 11, 5, "ng-template", 20)(5, RequalifyLiftPreviousIssuesComponent_div_20_ng_template_5_Template, 3, 0, "ng-template", 21);
196
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
197
+ i0.ɵɵelementStart(0, "th")(1, "b");
198
+ i0.ɵɵtext(2);
199
+ i0.ɵɵelementEnd()();
200
+ } if (rf & 2) {
201
+ const col_r42 = ctx.$implicit;
202
+ i0.ɵɵadvance(2);
203
+ i0.ɵɵtextInterpolate(col_r42.header);
204
+ } }
205
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
206
+ i0.ɵɵelementStart(0, "tr");
207
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
208
+ i0.ɵɵelementEnd();
209
+ } if (rf & 2) {
210
+ const columns_r40 = ctx.$implicit;
211
+ i0.ɵɵadvance(1);
212
+ i0.ɵɵproperty("ngForOf", columns_r40);
213
+ } }
214
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_9_Template(rf, ctx) { if (rf & 1) {
215
+ i0.ɵɵelementStart(0, "td");
216
+ i0.ɵɵtext(1);
217
+ i0.ɵɵelementEnd();
218
+ } if (rf & 2) {
219
+ const employer_r43 = i0.ɵɵnextContext().$implicit;
220
+ i0.ɵɵadvance(1);
221
+ i0.ɵɵtextInterpolate(employer_r43.value.actionTaken);
222
+ } }
223
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_10_div_6_Template(rf, ctx) { if (rf & 1) {
224
+ i0.ɵɵelementStart(0, "div", 28);
225
+ i0.ɵɵtext(1, " required ");
226
+ i0.ɵɵelementEnd();
227
+ } }
228
+ const _c1 = () => ({ required: "required" });
229
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_10_Template(rf, ctx) { if (rf & 1) {
230
+ const _r51 = i0.ɵɵgetCurrentView();
231
+ i0.ɵɵelementStart(0, "td", 25)(1, "div", 0, 1)(3, "app-dropdown", 26);
232
+ i0.ɵɵlistener("onChange", function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_10_Template_app_dropdown_onChange_3_listener($event) { i0.ɵɵrestoreView(_r51); const ctx_r50 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r50.changeActionForIssueDropdown($event)); });
233
+ i0.ɵɵelementEnd();
234
+ i0.ɵɵelement(4, "br")(5, "app-error", 16);
235
+ i0.ɵɵtemplate(6, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_10_div_6_Template, 2, 0, "div", 7);
236
+ i0.ɵɵelement(7, "input", 27);
237
+ i0.ɵɵelementEnd()();
238
+ } if (rf & 2) {
239
+ const _r48 = i0.ɵɵreference(2);
240
+ const employer_r43 = i0.ɵɵnextContext().$implicit;
241
+ const ctx_r46 = i0.ɵɵnextContext(3);
242
+ i0.ɵɵadvance(1);
243
+ i0.ɵɵproperty("formGroup", employer_r43);
244
+ i0.ɵɵadvance(2);
245
+ i0.ɵɵproperty("options", ctx_r46.actionOptions)("autoDisplayFirst", false);
246
+ i0.ɵɵadvance(2);
247
+ i0.ɵɵclassMap("app-grid");
248
+ i0.ɵɵproperty("field", employer_r43.controls["actionTakenPotentialIssue"])("form", _r48)("errDef", i0.ɵɵpureFunction0(10, _c1));
249
+ i0.ɵɵadvance(1);
250
+ i0.ɵɵproperty("ngIf", employer_r43.controls["actionTakenPotentialIssue"].invalid);
251
+ i0.ɵɵadvance(1);
252
+ i0.ɵɵpropertyInterpolate("value", employer_r43.value.claimAppEmployerId);
253
+ } }
254
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
255
+ i0.ɵɵelementStart(0, "tr")(1, "td");
256
+ i0.ɵɵtext(2);
257
+ i0.ɵɵelementEnd();
258
+ i0.ɵɵelementStart(3, "td");
259
+ i0.ɵɵtext(4);
260
+ i0.ɵɵelementEnd();
261
+ i0.ɵɵelementStart(5, "td");
262
+ i0.ɵɵtext(6);
263
+ i0.ɵɵelementEnd();
264
+ i0.ɵɵelementStart(7, "td");
265
+ i0.ɵɵtext(8);
266
+ i0.ɵɵelementEnd();
267
+ i0.ɵɵtemplate(9, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_9_Template, 2, 1, "td", 5)(10, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_td_10_Template, 8, 11, "td", 24);
268
+ i0.ɵɵelementEnd();
269
+ } if (rf & 2) {
270
+ const employer_r43 = ctx.$implicit;
271
+ i0.ɵɵadvance(2);
272
+ i0.ɵɵtextInterpolate(employer_r43.value.employerName);
273
+ i0.ɵɵadvance(2);
274
+ i0.ɵɵtextInterpolate(employer_r43.value.startDate);
275
+ i0.ɵɵadvance(2);
276
+ i0.ɵɵtextInterpolate(employer_r43.value.reason);
277
+ i0.ɵɵadvance(2);
278
+ i0.ɵɵtextInterpolate(employer_r43.value.requalificationWage);
279
+ i0.ɵɵadvance(1);
280
+ i0.ɵɵproperty("ngIf", employer_r43.value.actionTaken != null);
281
+ i0.ɵɵadvance(1);
282
+ i0.ɵɵproperty("ngIf", employer_r43.value.actionTaken === null);
283
+ } }
284
+ function RequalifyLiftPreviousIssuesComponent_div_28_div_2_Template(rf, ctx) { if (rf & 1) {
285
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 19, 20);
286
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_28_div_2_ng_template_4_Template, 11, 6, "ng-template", 22);
157
287
  i0.ɵɵelementEnd()();
158
288
  } if (rf & 2) {
159
- const ctx_r3 = i0.ɵɵnextContext();
289
+ const ctx_r36 = i0.ɵɵnextContext(2);
290
+ i0.ɵɵadvance(1);
291
+ i0.ɵɵproperty("value", ctx_r36.beanActionList.controls)("columns", ctx_r36.colBeanLst)("rowHover", true);
292
+ } }
293
+ function RequalifyLiftPreviousIssuesComponent_div_28_Template(rf, ctx) { if (rf & 1) {
294
+ i0.ɵɵelementStart(0, "div");
295
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_28_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_28_div_2_Template, 5, 3, "div", 5);
296
+ i0.ɵɵelementEnd();
297
+ } if (rf & 2) {
298
+ const ctx_r6 = i0.ɵɵnextContext();
299
+ i0.ɵɵadvance(1);
300
+ i0.ɵɵproperty("ngIf", ctx_r6.beanList.length === 0);
160
301
  i0.ɵɵadvance(1);
161
- i0.ɵɵproperty("value", ctx_r3.ui512AResponseList)("columns", ctx_r3.col512AResponseLst)("rowHover", true);
302
+ i0.ɵɵproperty("ngIf", ctx_r6.beanList && ctx_r6.beanList.length > 0);
162
303
  } }
163
- function RequalifyLiftPreviousIssuesComponent_div_33_Template(rf, ctx) { if (rf & 1) {
164
- i0.ɵɵelementStart(0, "div", 15);
165
- i0.ɵɵelement(1, "ion-spinner", 16);
304
+ function RequalifyLiftPreviousIssuesComponent_div_34_Template(rf, ctx) { if (rf & 1) {
305
+ i0.ɵɵelementStart(0, "div", 17);
306
+ i0.ɵɵelement(1, "ion-spinner", 18);
166
307
  i0.ɵɵelementEnd();
167
308
  } }
168
- function RequalifyLiftPreviousIssuesComponent_div_34_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
309
+ function RequalifyLiftPreviousIssuesComponent_div_35_div_1_Template(rf, ctx) { if (rf & 1) {
310
+ i0.ɵɵelementStart(0, "div")(1, "p");
311
+ i0.ɵɵtext(2, "No Records found.");
312
+ i0.ɵɵelementEnd()();
313
+ } }
314
+ function RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
169
315
  i0.ɵɵelementStart(0, "th")(1, "b");
170
316
  i0.ɵɵtext(2);
171
317
  i0.ɵɵelementEnd()();
172
318
  } if (rf & 2) {
173
- const col_r35 = ctx.$implicit;
319
+ const col_r60 = ctx.$implicit;
174
320
  i0.ɵɵadvance(2);
175
- i0.ɵɵtextInterpolate(col_r35.header);
321
+ i0.ɵɵtextInterpolate(col_r60.header);
176
322
  } }
177
- function RequalifyLiftPreviousIssuesComponent_div_34_ng_template_3_Template(rf, ctx) { if (rf & 1) {
323
+ function RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
178
324
  i0.ɵɵelementStart(0, "tr");
179
- i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_34_ng_template_3_th_1_Template, 3, 1, "th", 22);
325
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
180
326
  i0.ɵɵelementEnd();
181
327
  } if (rf & 2) {
182
- const columns_r33 = ctx.$implicit;
328
+ const columns_r58 = ctx.$implicit;
183
329
  i0.ɵɵadvance(1);
184
- i0.ɵɵproperty("ngForOf", columns_r33);
330
+ i0.ɵɵproperty("ngForOf", columns_r58);
185
331
  } }
186
- function RequalifyLiftPreviousIssuesComponent_div_34_ng_template_4_Template(rf, ctx) { if (rf & 1) {
332
+ function RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
187
333
  i0.ɵɵelementStart(0, "tr")(1, "td");
188
334
  i0.ɵɵtext(2);
189
335
  i0.ɵɵelementEnd();
@@ -200,142 +346,162 @@ function RequalifyLiftPreviousIssuesComponent_div_34_ng_template_4_Template(rf,
200
346
  i0.ɵɵtext(10);
201
347
  i0.ɵɵelementEnd()();
202
348
  } if (rf & 2) {
203
- const employer_r36 = ctx.$implicit;
349
+ const employer_r61 = ctx.$implicit;
204
350
  i0.ɵɵadvance(2);
205
- i0.ɵɵtextInterpolate(employer_r36.employerName);
351
+ i0.ɵɵtextInterpolate(employer_r61.employerName);
206
352
  i0.ɵɵadvance(2);
207
- i0.ɵɵtextInterpolate(employer_r36.startDate);
353
+ i0.ɵɵtextInterpolate(employer_r61.startDate);
208
354
  i0.ɵɵadvance(2);
209
- i0.ɵɵtextInterpolate(employer_r36.reason);
355
+ i0.ɵɵtextInterpolate(employer_r61.reason);
210
356
  i0.ɵɵadvance(2);
211
- i0.ɵɵtextInterpolate(employer_r36.requalificationWage);
357
+ i0.ɵɵtextInterpolate(employer_r61.requalificationWage);
212
358
  i0.ɵɵadvance(2);
213
- i0.ɵɵtextInterpolate(employer_r36.actionTaken);
359
+ i0.ɵɵtextInterpolate(employer_r61.actionTaken);
214
360
  } }
215
- function RequalifyLiftPreviousIssuesComponent_div_34_ng_template_5_Template(rf, ctx) { if (rf & 1) {
216
- i0.ɵɵelementStart(0, "tr")(1, "td", 24);
217
- i0.ɵɵtext(2, "No Records found.");
361
+ function RequalifyLiftPreviousIssuesComponent_div_35_div_2_Template(rf, ctx) { if (rf & 1) {
362
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 19, 20);
363
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_35_div_2_ng_template_4_Template, 11, 5, "ng-template", 22);
218
364
  i0.ɵɵelementEnd()();
365
+ } if (rf & 2) {
366
+ const ctx_r54 = i0.ɵɵnextContext(2);
367
+ i0.ɵɵadvance(1);
368
+ i0.ɵɵproperty("value", ctx_r54.sepIssueLiftedList)("columns", ctx_r54.colPreviousIssueLst)("rowHover", true);
219
369
  } }
220
- function RequalifyLiftPreviousIssuesComponent_div_34_Template(rf, ctx) { if (rf & 1) {
221
- i0.ɵɵelementStart(0, "div")(1, "p-table", 17, 18);
222
- i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_34_ng_template_3_Template, 2, 1, "ng-template", 19)(4, RequalifyLiftPreviousIssuesComponent_div_34_ng_template_4_Template, 11, 5, "ng-template", 20)(5, RequalifyLiftPreviousIssuesComponent_div_34_ng_template_5_Template, 3, 0, "ng-template", 21);
223
- i0.ɵɵelementEnd()();
370
+ function RequalifyLiftPreviousIssuesComponent_div_35_Template(rf, ctx) { if (rf & 1) {
371
+ i0.ɵɵelementStart(0, "div");
372
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_35_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_35_div_2_Template, 5, 3, "div", 5);
373
+ i0.ɵɵelementEnd();
224
374
  } if (rf & 2) {
225
- const ctx_r5 = i0.ɵɵnextContext();
375
+ const ctx_r8 = i0.ɵɵnextContext();
226
376
  i0.ɵɵadvance(1);
227
- i0.ɵɵproperty("value", ctx_r5.SepIssueLiftedList)("columns", ctx_r5.colPreviousIssueLst)("rowHover", true);
377
+ i0.ɵɵproperty("ngIf", ctx_r8.sepIssueLiftedList.length === 0);
378
+ i0.ɵɵadvance(1);
379
+ i0.ɵɵproperty("ngIf", ctx_r8.sepIssueLiftedList && ctx_r8.sepIssueLiftedList.length > 0);
228
380
  } }
229
- function RequalifyLiftPreviousIssuesComponent_div_40_Template(rf, ctx) { if (rf & 1) {
230
- i0.ɵɵelementStart(0, "div", 15);
231
- i0.ɵɵelement(1, "ion-spinner", 16);
381
+ function RequalifyLiftPreviousIssuesComponent_div_41_Template(rf, ctx) { if (rf & 1) {
382
+ i0.ɵɵelementStart(0, "div", 17);
383
+ i0.ɵɵelement(1, "ion-spinner", 18);
232
384
  i0.ɵɵelementEnd();
233
385
  } }
234
- function RequalifyLiftPreviousIssuesComponent_div_41_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
386
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_1_Template(rf, ctx) { if (rf & 1) {
387
+ i0.ɵɵelementStart(0, "div")(1, "p");
388
+ i0.ɵɵtext(2, "No Records found.");
389
+ i0.ɵɵelementEnd()();
390
+ } }
391
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
235
392
  i0.ɵɵelementStart(0, "th")(1, "b");
236
393
  i0.ɵɵtext(2);
237
394
  i0.ɵɵelementEnd()();
238
395
  } if (rf & 2) {
239
- const col_r44 = ctx.$implicit;
396
+ const col_r70 = ctx.$implicit;
240
397
  i0.ɵɵadvance(2);
241
- i0.ɵɵtextInterpolate(col_r44.header);
398
+ i0.ɵɵtextInterpolate(col_r70.header);
242
399
  } }
243
- function RequalifyLiftPreviousIssuesComponent_div_41_ng_template_3_Template(rf, ctx) { if (rf & 1) {
244
- i0.ɵɵelementStart(0, "tr", 25);
245
- i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_41_ng_template_3_th_1_Template, 3, 1, "th", 22);
400
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
401
+ i0.ɵɵelementStart(0, "tr", 29);
402
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
246
403
  i0.ɵɵelementEnd();
247
404
  } if (rf & 2) {
248
- const columns_r42 = ctx.$implicit;
405
+ const columns_r68 = ctx.$implicit;
249
406
  i0.ɵɵadvance(1);
250
- i0.ɵɵproperty("ngForOf", columns_r42);
407
+ i0.ɵɵproperty("ngForOf", columns_r68);
251
408
  } }
252
- function RequalifyLiftPreviousIssuesComponent_div_41_ng_template_4_ng_container_9_Template(rf, ctx) { if (rf & 1) {
253
- i0.ɵɵelementContainerStart(0);
254
- i0.ɵɵelementStart(1, "div", 0, 5)(3, "td");
255
- i0.ɵɵelement(4, "p-dropdown", 26);
409
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_4_div_15_Template(rf, ctx) { if (rf & 1) {
410
+ i0.ɵɵelementStart(0, "div", 28);
411
+ i0.ɵɵtext(1, " required ");
256
412
  i0.ɵɵelementEnd();
257
- i0.ɵɵelementStart(5, "td");
258
- i0.ɵɵelement(6, "input", 27);
259
- i0.ɵɵelementEnd()();
260
- i0.ɵɵelementContainerEnd();
261
- } if (rf & 2) {
262
- const temp_r48 = ctx.$implicit;
263
- const employer_r45 = i0.ɵɵnextContext().$implicit;
264
- const ctx_r47 = i0.ɵɵnextContext(2);
265
- i0.ɵɵadvance(1);
266
- i0.ɵɵproperty("formGroup", temp_r48);
267
- i0.ɵɵadvance(3);
268
- i0.ɵɵproperty("options", ctx_r47.actionOptions)("autoDisplayFirst", false);
269
- i0.ɵɵadvance(2);
270
- i0.ɵɵpropertyInterpolate("value", employer_r45.issueId);
271
413
  } }
272
- function RequalifyLiftPreviousIssuesComponent_div_41_ng_template_4_Template(rf, ctx) { if (rf & 1) {
273
- i0.ɵɵelementStart(0, "tr")(1, "td");
414
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
415
+ i0.ɵɵelementStart(0, "tr")(1, "td", 30);
274
416
  i0.ɵɵtext(2);
275
417
  i0.ɵɵelementEnd();
276
- i0.ɵɵelementStart(3, "td");
418
+ i0.ɵɵelementStart(3, "td", 30);
277
419
  i0.ɵɵtext(4);
278
420
  i0.ɵɵelementEnd();
279
- i0.ɵɵelementStart(5, "td");
421
+ i0.ɵɵelementStart(5, "td", 30);
280
422
  i0.ɵɵtext(6);
281
423
  i0.ɵɵelementEnd();
282
- i0.ɵɵelementStart(7, "td");
424
+ i0.ɵɵelementStart(7, "td", 31);
283
425
  i0.ɵɵtext(8);
284
426
  i0.ɵɵelementEnd();
285
- i0.ɵɵtemplate(9, RequalifyLiftPreviousIssuesComponent_div_41_ng_template_4_ng_container_9_Template, 7, 4, "ng-container", 22);
286
- i0.ɵɵelementEnd();
427
+ i0.ɵɵelementStart(9, "td", 25)(10, "div", 0, 1);
428
+ i0.ɵɵelement(12, "app-dropdown", 32)(13, "br")(14, "app-error", 16);
429
+ i0.ɵɵtemplate(15, RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_4_div_15_Template, 2, 0, "div", 7);
430
+ i0.ɵɵelement(16, "input", 33);
431
+ i0.ɵɵelementEnd()()();
287
432
  } if (rf & 2) {
288
- const employer_r45 = ctx.$implicit;
289
- const ctx_r40 = i0.ɵɵnextContext(2);
433
+ const employer_r71 = ctx.$implicit;
434
+ const _r73 = i0.ɵɵreference(11);
435
+ const ctx_r67 = i0.ɵɵnextContext(3);
436
+ i0.ɵɵadvance(2);
437
+ i0.ɵɵtextInterpolate(employer_r71.value.employerName);
290
438
  i0.ɵɵadvance(2);
291
- i0.ɵɵtextInterpolate(employer_r45.employerName);
439
+ i0.ɵɵtextInterpolate(employer_r71.value.startDate);
292
440
  i0.ɵɵadvance(2);
293
- i0.ɵɵtextInterpolate(employer_r45.startDate);
441
+ i0.ɵɵtextInterpolate(employer_r71.value.reason);
294
442
  i0.ɵɵadvance(2);
295
- i0.ɵɵtextInterpolate(employer_r45.reason);
443
+ i0.ɵɵtextInterpolate(employer_r71.value.requalificationWage);
296
444
  i0.ɵɵadvance(2);
297
- i0.ɵɵtextInterpolate(employer_r45.requalificationWage);
445
+ i0.ɵɵproperty("formGroup", employer_r71);
446
+ i0.ɵɵadvance(2);
447
+ i0.ɵɵproperty("options", ctx_r67.actionOptions)("autoDisplayFirst", false);
448
+ i0.ɵɵadvance(2);
449
+ i0.ɵɵclassMap("app-grid");
450
+ i0.ɵɵproperty("field", employer_r71.controls["actionPreviousIssue"])("form", _r73)("errDef", i0.ɵɵpureFunction0(14, _c1));
451
+ i0.ɵɵadvance(1);
452
+ i0.ɵɵproperty("ngIf", employer_r71.controls["actionPreviousIssue"].invalid);
298
453
  i0.ɵɵadvance(1);
299
- i0.ɵɵproperty("ngForOf", ctx_r40.preIssuesActionList.controls);
454
+ i0.ɵɵpropertyInterpolate("value", employer_r71.value.issueId);
300
455
  } }
301
- function RequalifyLiftPreviousIssuesComponent_div_41_ng_template_5_Template(rf, ctx) { if (rf & 1) {
302
- i0.ɵɵelementStart(0, "tr")(1, "td", 24);
303
- i0.ɵɵtext(2, "No Records found.");
456
+ function RequalifyLiftPreviousIssuesComponent_div_42_div_2_Template(rf, ctx) { if (rf & 1) {
457
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 19, 20);
458
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_42_div_2_ng_template_4_Template, 17, 15, "ng-template", 22);
304
459
  i0.ɵɵelementEnd()();
460
+ } if (rf & 2) {
461
+ const ctx_r64 = i0.ɵɵnextContext(2);
462
+ i0.ɵɵadvance(1);
463
+ i0.ɵɵproperty("value", ctx_r64.preIssuesActionList.controls)("columns", ctx_r64.colPreviousIssueLst)("rowHover", true);
305
464
  } }
306
- function RequalifyLiftPreviousIssuesComponent_div_41_Template(rf, ctx) { if (rf & 1) {
307
- i0.ɵɵelementStart(0, "div")(1, "p-table", 17, 18);
308
- i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_41_ng_template_3_Template, 2, 1, "ng-template", 19)(4, RequalifyLiftPreviousIssuesComponent_div_41_ng_template_4_Template, 10, 5, "ng-template", 20)(5, RequalifyLiftPreviousIssuesComponent_div_41_ng_template_5_Template, 3, 0, "ng-template", 21);
309
- i0.ɵɵelementEnd()();
465
+ function RequalifyLiftPreviousIssuesComponent_div_42_Template(rf, ctx) { if (rf & 1) {
466
+ i0.ɵɵelementStart(0, "div");
467
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_42_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_42_div_2_Template, 5, 3, "div", 5);
468
+ i0.ɵɵelementEnd();
310
469
  } if (rf & 2) {
311
- const ctx_r7 = i0.ɵɵnextContext();
470
+ const ctx_r10 = i0.ɵɵnextContext();
471
+ i0.ɵɵadvance(1);
472
+ i0.ɵɵproperty("ngIf", ctx_r10.preIssueList.length === 0);
312
473
  i0.ɵɵadvance(1);
313
- i0.ɵɵproperty("value", ctx_r7.preIssueList)("columns", ctx_r7.colPreviousIssueLst)("rowHover", true);
474
+ i0.ɵɵproperty("ngIf", ctx_r10.preIssueList && ctx_r10.preIssueList.length > 0);
314
475
  } }
315
- function RequalifyLiftPreviousIssuesComponent_div_47_Template(rf, ctx) { if (rf & 1) {
316
- i0.ɵɵelementStart(0, "div", 15);
317
- i0.ɵɵelement(1, "ion-spinner", 16);
476
+ function RequalifyLiftPreviousIssuesComponent_div_48_Template(rf, ctx) { if (rf & 1) {
477
+ i0.ɵɵelementStart(0, "div", 17);
478
+ i0.ɵɵelement(1, "ion-spinner", 18);
318
479
  i0.ɵɵelementEnd();
319
480
  } }
320
- function RequalifyLiftPreviousIssuesComponent_div_48_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
481
+ function RequalifyLiftPreviousIssuesComponent_div_49_div_1_Template(rf, ctx) { if (rf & 1) {
482
+ i0.ɵɵelementStart(0, "div")(1, "p");
483
+ i0.ɵɵtext(2, "No Records found.");
484
+ i0.ɵɵelementEnd()();
485
+ } }
486
+ function RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_3_th_1_Template(rf, ctx) { if (rf & 1) {
321
487
  i0.ɵɵelementStart(0, "th")(1, "b");
322
488
  i0.ɵɵtext(2);
323
489
  i0.ɵɵelementEnd()();
324
490
  } if (rf & 2) {
325
- const col_r58 = ctx.$implicit;
491
+ const col_r82 = ctx.$implicit;
326
492
  i0.ɵɵadvance(2);
327
- i0.ɵɵtextInterpolate(col_r58.header);
493
+ i0.ɵɵtextInterpolate(col_r82.header);
328
494
  } }
329
- function RequalifyLiftPreviousIssuesComponent_div_48_ng_template_3_Template(rf, ctx) { if (rf & 1) {
495
+ function RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
330
496
  i0.ɵɵelementStart(0, "tr");
331
- i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_48_ng_template_3_th_1_Template, 3, 1, "th", 22);
497
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_3_th_1_Template, 3, 1, "th", 23);
332
498
  i0.ɵɵelementEnd();
333
499
  } if (rf & 2) {
334
- const columns_r56 = ctx.$implicit;
500
+ const columns_r80 = ctx.$implicit;
335
501
  i0.ɵɵadvance(1);
336
- i0.ɵɵproperty("ngForOf", columns_r56);
502
+ i0.ɵɵproperty("ngForOf", columns_r80);
337
503
  } }
338
- function RequalifyLiftPreviousIssuesComponent_div_48_ng_template_4_Template(rf, ctx) { if (rf & 1) {
504
+ function RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_4_Template(rf, ctx) { if (rf & 1) {
339
505
  i0.ɵɵelementStart(0, "tr")(1, "td");
340
506
  i0.ɵɵtext(2);
341
507
  i0.ɵɵelementEnd();
@@ -349,33 +515,44 @@ function RequalifyLiftPreviousIssuesComponent_div_48_ng_template_4_Template(rf,
349
515
  i0.ɵɵtext(8);
350
516
  i0.ɵɵelementEnd()();
351
517
  } if (rf & 2) {
352
- const employer_r59 = ctx.$implicit;
518
+ const employer_r83 = ctx.$implicit;
353
519
  i0.ɵɵadvance(2);
354
- i0.ɵɵtextInterpolate(employer_r59.employerName);
520
+ i0.ɵɵtextInterpolate(employer_r83.employerName);
355
521
  i0.ɵɵadvance(2);
356
- i0.ɵɵtextInterpolate(employer_r59.startDate);
522
+ i0.ɵɵtextInterpolate(employer_r83.startDate);
357
523
  i0.ɵɵadvance(2);
358
- i0.ɵɵtextInterpolate(employer_r59.reason);
524
+ i0.ɵɵtextInterpolate(employer_r83.reason);
359
525
  i0.ɵɵadvance(2);
360
- i0.ɵɵtextInterpolate(employer_r59.actionTaken);
526
+ i0.ɵɵtextInterpolate(employer_r83.actionTaken);
361
527
  } }
362
- function RequalifyLiftPreviousIssuesComponent_div_48_ng_template_5_Template(rf, ctx) { if (rf & 1) {
363
- i0.ɵɵelementStart(0, "tr")(1, "td", 29);
364
- i0.ɵɵtext(2, "No Records found.");
528
+ function RequalifyLiftPreviousIssuesComponent_div_49_div_2_Template(rf, ctx) { if (rf & 1) {
529
+ i0.ɵɵelementStart(0, "div")(1, "p-table", 34, 20);
530
+ i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_3_Template, 2, 1, "ng-template", 21)(4, RequalifyLiftPreviousIssuesComponent_div_49_div_2_ng_template_4_Template, 9, 4, "ng-template", 22);
365
531
  i0.ɵɵelementEnd()();
532
+ } if (rf & 2) {
533
+ const ctx_r76 = i0.ɵɵnextContext(2);
534
+ i0.ɵɵadvance(1);
535
+ i0.ɵɵproperty("value", ctx_r76.allowedSepIssueList)("columns", ctx_r76.colAllowIssueLst);
366
536
  } }
367
- function RequalifyLiftPreviousIssuesComponent_div_48_Template(rf, ctx) { if (rf & 1) {
368
- i0.ɵɵelementStart(0, "div")(1, "p-table", 28, 18);
369
- i0.ɵɵtemplate(3, RequalifyLiftPreviousIssuesComponent_div_48_ng_template_3_Template, 2, 1, "ng-template", 19)(4, RequalifyLiftPreviousIssuesComponent_div_48_ng_template_4_Template, 9, 4, "ng-template", 20)(5, RequalifyLiftPreviousIssuesComponent_div_48_ng_template_5_Template, 3, 0, "ng-template", 21);
370
- i0.ɵɵelementEnd()();
537
+ function RequalifyLiftPreviousIssuesComponent_div_49_Template(rf, ctx) { if (rf & 1) {
538
+ i0.ɵɵelementStart(0, "div");
539
+ i0.ɵɵtemplate(1, RequalifyLiftPreviousIssuesComponent_div_49_div_1_Template, 3, 0, "div", 5)(2, RequalifyLiftPreviousIssuesComponent_div_49_div_2_Template, 5, 2, "div", 5);
540
+ i0.ɵɵelementEnd();
371
541
  } if (rf & 2) {
372
- const ctx_r9 = i0.ɵɵnextContext();
542
+ const ctx_r12 = i0.ɵɵnextContext();
373
543
  i0.ɵɵadvance(1);
374
- i0.ɵɵproperty("value", ctx_r9.allowedSepIssueList)("columns", ctx_r9.colAllowIssueLst);
544
+ i0.ɵɵproperty("ngIf", ctx_r12.allowedSepIssueList.length === 0);
545
+ i0.ɵɵadvance(1);
546
+ i0.ɵɵproperty("ngIf", ctx_r12.allowedSepIssueList && ctx_r12.allowedSepIssueList.length > 0);
547
+ } }
548
+ function RequalifyLiftPreviousIssuesComponent_div_57_Template(rf, ctx) { if (rf & 1) {
549
+ i0.ɵɵelementStart(0, "div", 28);
550
+ i0.ɵɵtext(1, " required ");
551
+ i0.ɵɵelementEnd();
375
552
  } }
376
- const _c1 = () => ({ width: "60vw" });
377
- const _c2 = () => ({ "960px": "80vw", "640px": "100vw" });
378
- const _c3 = () => ({ required: "required" });
553
+ const _c2 = () => ({ width: "60vw" });
554
+ const _c3 = () => ({ "960px": "80vw", "640px": "100vw" });
555
+ const _c4 = () => ({ required: "required." });
379
556
  export class RequalifyLiftPreviousIssuesComponent {
380
557
  constructor(cs, ls, activatedRoute, fb, logger) {
381
558
  this.cs = cs;
@@ -387,8 +564,9 @@ export class RequalifyLiftPreviousIssuesComponent {
387
564
  this.bpEmployerWagesListFiltered = [];
388
565
  this.allowedSepIssueList = [];
389
566
  this.preIssueList = [];
390
- this.SepIssueLiftedList = [];
567
+ this.sepIssueLiftedList = [];
391
568
  this.ui512AResponseList = [];
569
+ this.beanList = [];
392
570
  this.modelDisplay = new EventEmitter();
393
571
  this.onCompleteRequalify = new EventEmitter();
394
572
  this.showWagesList = false;
@@ -396,10 +574,13 @@ export class RequalifyLiftPreviousIssuesComponent {
396
574
  this.showPreIssueList = false;
397
575
  this.showSepIssueList = false;
398
576
  this.show512AResponse = false;
577
+ this.showBeanList = false;
578
+ this.empProvidedWages = true;
399
579
  this.showData = false;
400
580
  this.payForm = this.fb.group({
401
581
  preIssuesActionList: this.fb.array([]),
402
- additionalInfo: ['', Validators.required]
582
+ beanActionList: this.fb.array([]),
583
+ additionalInfo: ['', null]
403
584
  });
404
585
  this.onChange = (value) => {
405
586
  };
@@ -411,14 +592,9 @@ export class RequalifyLiftPreviousIssuesComponent {
411
592
  if (this.ls.isClaimant() === true) {
412
593
  ssnLastFourFromDb = this.ls.getUser().ssn.substring(5, 9);
413
594
  }
414
- else {
415
- let data = this.activatedRoute.snapshot.queryParamMap.get('key');
416
- if (data) {
417
- let ssnForCSR;
418
- ssnForCSR = atob(data);
419
- this.ssn = ssnForCSR;
420
- }
421
- }
595
+ this.logger.debug('question as input value is : ', this.question);
596
+ this.form.addControl('requalifyReqHidden', new UntypedFormControl(null, [Validators.requiredTrue, Validators.required]));
597
+ this.question.name = "requalifyReqHidden";
422
598
  this.loadBasePeriodWagesForSSN();
423
599
  this.loadRequalifyLiftIssuesForSSN();
424
600
  this.loadAllowSepPreviousIssuesForSSN();
@@ -444,11 +620,19 @@ export class RequalifyLiftPreviousIssuesComponent {
444
620
  { header: 'Earning End Date' },
445
621
  { header: 'Amount ($)' }
446
622
  ];
623
+ this.colBeanLst = [
624
+ { header: 'Employer Name' },
625
+ { header: 'Date of Separation' },
626
+ { header: 'Reason for Separation' },
627
+ { header: 'Required Wage ($)' },
628
+ { header: 'Action' }
629
+ ];
447
630
  const obj = JSON.parse(this.componentData);
448
631
  this.requalifyLiftIssuesData = obj;
632
+ this.requalifyReqHidden.setValue(null);
449
633
  }
450
634
  loadUI512AResponses() {
451
- this.cs.getRequalifyLiftIssuesForSSN(this.ssn).subscribe(res => {
635
+ this.cs.getUI512AResponses().subscribe(res => {
452
636
  let requalifyLiftIssueModelFromService = res;
453
637
  this.ui512AResponseList = requalifyLiftIssueModelFromService.ui512AResponseList;
454
638
  this.show512AResponse = true;
@@ -462,27 +646,35 @@ export class RequalifyLiftPreviousIssuesComponent {
462
646
  }
463
647
  loadBasePeriodWagesForSSN() {
464
648
  let clmEmpRequestModel = new ClaimAppEmpRequestModel();
465
- clmEmpRequestModel.ssn = this.ssn;
466
649
  this.cs.loadBasePeriodWages(clmEmpRequestModel).subscribe(res => {
467
650
  let temp = res;
468
651
  this.bpEmployerWagesList = temp.bpEmpList;
469
652
  if (this.bpEmployerWagesList) {
470
653
  this.bpEmployerWagesListFiltered = this.bpEmployerWagesList.filter(c => c.osaBpEmployerFlag === '0');
471
- let qtrYearList = this.bpEmployerWagesListFiltered[0].employerProvidedWages.wagesListQtrWise;
472
- this.cols = [
473
- { header: 'Employer Name' },
474
- { header: qtrYearList[0].qtrYearDisplayString },
475
- { header: qtrYearList[1].qtrYearDisplayString },
476
- { header: qtrYearList[2].qtrYearDisplayString },
477
- { header: qtrYearList[3].qtrYearDisplayString },
478
- { header: qtrYearList[4].qtrYearDisplayString }
479
- ];
654
+ this.logger.debug('bp list bpEmployerWagesListFiltered ', this.bpEmployerWagesListFiltered);
655
+ let qtrYearList = [];
656
+ if (this.bpEmployerWagesListFiltered[0]?.employerProvidedWages === null) {
657
+ this.empProvidedWages = false;
658
+ }
659
+ else {
660
+ qtrYearList = this.bpEmployerWagesListFiltered[0]?.employerProvidedWages?.wagesListQtrWise;
661
+ }
662
+ if (qtrYearList != null && qtrYearList.length > 0) {
663
+ this.cols = [
664
+ { header: 'Employer Name' },
665
+ { header: qtrYearList[0].qtrYearDisplayString },
666
+ { header: qtrYearList[1].qtrYearDisplayString },
667
+ { header: qtrYearList[2].qtrYearDisplayString },
668
+ { header: qtrYearList[3].qtrYearDisplayString },
669
+ { header: qtrYearList[4].qtrYearDisplayString }
670
+ ];
671
+ }
480
672
  this.showWagesList = true;
481
673
  }
482
674
  });
483
675
  }
484
676
  loadAllowSepPreviousIssuesForSSN() {
485
- this.cs.getAllowSepPreviousIssuesForSSN(this.ssn).subscribe(res1 => {
677
+ this.cs.getAllowSepPreviousIssuesForSSN().subscribe(res1 => {
486
678
  let requalifyLiftIssueModel1 = new RequalifyLiftPageModel();
487
679
  requalifyLiftIssueModel1 = res1;
488
680
  this.allowedSepIssueList = requalifyLiftIssueModel1.allowedSepIssueList;
@@ -492,25 +684,46 @@ export class RequalifyLiftPreviousIssuesComponent {
492
684
  });
493
685
  }
494
686
  loadRequalifyLiftIssuesForSSN() {
495
- this.cs.getRequalifyLiftIssuesForSSN(this.ssn).subscribe(res => {
687
+ this.cs.getRequalifyLiftIssuesForSSN().subscribe(res => {
496
688
  let requalifyLiftIssueModelFromService = res;
689
+ this.logger.debug('loadRequalifyLiftIssuesForSSN ====', res);
497
690
  this.preIssueList = requalifyLiftIssueModelFromService.preIssueList;
498
691
  if (this.preIssueList) {
499
692
  this.showPreIssueList = true;
500
693
  for (let data of this.preIssueList) {
501
694
  const tempInfo = this.fb.group({
502
695
  employerName: [data.employerName],
503
- issueStartDate: [data.startDate],
696
+ startDate: [data.startDate],
697
+ reason: [data.reason],
698
+ requalificationWage: [data.requalificationWage],
504
699
  employerId: [data.employerId],
700
+ claimAppEmployerId: [data.claimAppEmployerId],
505
701
  actionPreviousIssue: ['', Validators.required],
506
702
  issueId: [data.issueId]
507
703
  });
508
704
  this.preIssuesActionList.push(tempInfo);
509
705
  }
706
+ this.logger.debug('pre Issue Action List == ', this.preIssuesActionList);
510
707
  }
511
- this.SepIssueLiftedList = requalifyLiftIssueModelFromService.preLiftedIssueList;
512
- if (this.SepIssueLiftedList) {
513
- this.showSepIssueList = true;
708
+ this.sepIssueLiftedList = requalifyLiftIssueModelFromService.preLiftedIssueList;
709
+ this.showSepIssueList = true;
710
+ this.beanList = requalifyLiftIssueModelFromService.beanList;
711
+ this.showBeanList = true;
712
+ for (let data of this.beanList) {
713
+ this.logger.debug('data == ', data);
714
+ // if(data.actionTaken === null){
715
+ const tempInfo = this.fb.group({
716
+ employerName: [data.employerName],
717
+ startDate: [data.startDate],
718
+ reason: [data.reason],
719
+ requalificationWage: [data.requalificationWage],
720
+ actionTaken: [data.actionTaken],
721
+ actionTakenPotentialIssue: ['', data.actionTaken ? null : Validators.required],
722
+ claimAppEmployerId: [data.claimAppEmployerId]
723
+ });
724
+ this.beanActionList.push(tempInfo);
725
+ // }
726
+ this.logger.debug('bean action list is ', this.beanActionList);
514
727
  }
515
728
  });
516
729
  }
@@ -519,23 +732,60 @@ export class RequalifyLiftPreviousIssuesComponent {
519
732
  }
520
733
  saveData() {
521
734
  if (!this.payForm.valid) {
735
+ this.logger.debug(this.payForm);
736
+ this.requalifyFormDirective.onSubmit(null);
522
737
  return;
523
738
  }
739
+ this.logger.debug('Save Data for Valid Form', this.payForm);
524
740
  this.form.addControl('preIssuesActionLists', this.preIssuesActionList);
741
+ this.form.addControl('beanActionList', this.beanActionList);
525
742
  this.form.addControl('additionalInfo', this.additionalInfo);
526
743
  this.showData = false;
744
+ this.requalifyReqHidden.setValue(true);
527
745
  this.modelDisplay.emit(true);
528
746
  this.onCompleteRequalify.emit(this.payForm);
529
747
  }
530
748
  onModelCancel() {
531
749
  this.showData = false;
750
+ console.log("onModelCancel", this.beanActionList.controls);
751
+ if (this.beanActionList.controls.length === 0 && this.preIssuesActionList.controls.length === 0) {
752
+ this.requalifyReqHidden.setValue(true);
753
+ }
754
+ else {
755
+ this.requalifyReqHidden.setValue(null);
756
+ }
757
+ }
758
+ changeActionForIssueDropdown(event) {
759
+ if (event.value.value === 'PRFR') {
760
+ this.additionalInfo.addValidators([Validators.required]);
761
+ }
762
+ else {
763
+ let exist = false;
764
+ for (let element of this.beanActionList.controls) {
765
+ if (element.value.actionTakenPotentialIssue === 'PRFR') {
766
+ exist = true;
767
+ break;
768
+ }
769
+ }
770
+ if (!exist) {
771
+ this.additionalInfo.clearValidators();
772
+ }
773
+ }
774
+ this.payForm.updateValueAndValidity();
775
+ this.additionalInfo.updateValueAndValidity();
532
776
  }
533
777
  get preIssuesActionList() {
534
778
  return this.payForm.controls['preIssuesActionList'];
535
779
  }
780
+ get beanActionList() {
781
+ return this.payForm.controls['beanActionList'];
782
+ }
536
783
  get additionalInfo() {
537
784
  return this.payForm.controls['additionalInfo'];
538
785
  }
786
+ get requalifyReqHidden() {
787
+ return this.form.get('requalifyReqHidden');
788
+ }
539
789
  writeValue(value) {
540
790
  }
541
791
  registerOnChange(fn) {
@@ -554,69 +804,73 @@ export class RequalifyLiftPreviousIssuesComponent {
554
804
  provide: NG_VALUE_ACCESSOR,
555
805
  useExisting: RequalifyLiftPreviousIssuesComponent,
556
806
  multi: true
557
- }])], decls: 70, vars: 36, consts: [[3, "formGroup"], ["modal", "true", "appendTo", "body", 3, "showHeader", "breakpoints", "visible"], [2, "margin-left", "-5px"], ["class", "ion-text-center", 4, "ngIf"], [4, "ngIf"], ["requalifyFormDirective", "ngForm"], ["id", "additionalInfo", "autoResize", "true", "formControlName", "additionalInfo", "maxLength", "256", "rows", "3", "cols", "35"], [3, "field", "form", "errDef"], [1, "ion-text-right"], ["shape", "round", "type", "reset", "fill", "outline", 3, "click"], ["shape", "round", "type", "submit", "fill", "solid", 3, "click"], [1, "form-label"], [1, "grid", "p-nogutter"], [1, "col-12"], ["shape", "round", "color", "success", "fill", "outline", "type", "submit", 3, "click"], [1, "ion-text-center"], ["name", "dots"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "value", "columns", "rowHover"], ["dt", ""], ["pTemplate", "header"], ["pTemplate", "body"], ["pTemplate", "emptymessage"], [4, "ngFor", "ngForOf"], ["colspan", "6"], ["colspan", "5"], [2, "padding", "50px"], ["formControlName", "actionPreviousIssue", "optionLabel", "text", "appendTo", "body", 3, "options", "autoDisplayFirst"], ["type", "hidden", "formControlName", "issueId", 3, "value"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "value", "columns"], ["colspan", "4"]], template: function RequalifyLiftPreviousIssuesComponent_Template(rf, ctx) { if (rf & 1) {
558
- i0.ɵɵelementStart(0, "form", 0)(1, "p-dialog", 1)(2, "div", 2)(3, "ion-row")(4, "ion-col")(5, "h1");
559
- i0.ɵɵtext(6);
807
+ }])], decls: 73, vars: 39, consts: [[3, "formGroup"], ["requalifyFormDirective", "ngForm"], ["modal", "true", "appendTo", "body", 3, "showHeader", "breakpoints", "visible"], [2, "margin-left", "-5px"], ["class", "ion-text-center", 4, "ngIf"], [4, "ngIf"], ["id", "additionalInfo", "autoResize", "true", "formControlName", "additionalInfo", "maxLength", "256", "rows", "3", "cols", "35"], ["style", "color:#e60e0e; margin-left: 0px; font-size: 15px", 4, "ngIf"], [1, "ion-text-right"], ["shape", "round", "type", "reset", "fill", "outline", 3, "click"], ["shape", "round", "type", "submit", "fill", "solid", 3, "click"], [1, "form-label"], [1, "grid", "p-nogutter"], [1, "col-12"], ["type", "text", "id", "requalifyReqHidden", "pInputText", "", "formControlName", "requalifyReqHidden", "hidden", ""], ["shape", "round", "color", "success", "fill", "outline", "type", "submit", 3, "click"], [3, "field", "form", "errDef"], [1, "ion-text-center"], ["name", "dots"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "value", "columns", "rowHover"], ["dt", ""], ["pTemplate", "header"], ["pTemplate", "body"], [4, "ngFor", "ngForOf"], ["style", "width:30%", 4, "ngIf"], [2, "width", "30%"], ["formControlName", "actionTakenPotentialIssue", "optionLabel", "text", "appendTo", "body", "required", "", 3, "options", "autoDisplayFirst", "onChange"], ["type", "hidden", "formControlName", "claimAppEmployerId", 3, "value"], [2, "color", "#e60e0e", "margin-left", "0px", "font-size", "15px"], [2, "padding", "50px"], [2, "width", "20%"], [2, "width", "10%"], ["formControlName", "actionPreviousIssue", "optionLabel", "text", "appendTo", "body", "required", "", 3, "options", "autoDisplayFirst"], ["type", "hidden", "formControlName", "issueId", 3, "value"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "value", "columns"]], template: function RequalifyLiftPreviousIssuesComponent_Template(rf, ctx) { if (rf & 1) {
808
+ i0.ɵɵelementStart(0, "form", 0, 1)(2, "p-dialog", 2)(3, "div", 3)(4, "ion-row")(5, "ion-col")(6, "h1");
809
+ i0.ɵɵtext(7);
560
810
  i0.ɵɵelementEnd()()();
561
- i0.ɵɵelementStart(7, "ion-row")(8, "ion-col")(9, "div")(10, "h2");
562
- i0.ɵɵtext(11);
811
+ i0.ɵɵelementStart(8, "ion-row")(9, "ion-col")(10, "div")(11, "h2");
812
+ i0.ɵɵtext(12);
563
813
  i0.ɵɵelementEnd()();
564
- i0.ɵɵtemplate(12, RequalifyLiftPreviousIssuesComponent_div_12_Template, 2, 0, "div", 3)(13, RequalifyLiftPreviousIssuesComponent_div_13_Template, 6, 3, "div", 4);
814
+ i0.ɵɵtemplate(13, RequalifyLiftPreviousIssuesComponent_div_13_Template, 2, 0, "div", 4)(14, RequalifyLiftPreviousIssuesComponent_div_14_Template, 3, 2, "div", 5);
565
815
  i0.ɵɵelementEnd()();
566
- i0.ɵɵelementStart(14, "ion-row")(15, "ion-col")(16, "div")(17, "h2");
567
- i0.ɵɵtext(18);
816
+ i0.ɵɵelementStart(15, "ion-row")(16, "ion-col")(17, "div")(18, "h2");
817
+ i0.ɵɵtext(19);
568
818
  i0.ɵɵelementEnd()();
569
- i0.ɵɵtemplate(19, RequalifyLiftPreviousIssuesComponent_div_19_Template, 2, 0, "div", 3);
819
+ i0.ɵɵtemplate(20, RequalifyLiftPreviousIssuesComponent_div_20_Template, 2, 0, "div", 4)(21, RequalifyLiftPreviousIssuesComponent_div_21_Template, 3, 2, "div", 5);
570
820
  i0.ɵɵelementEnd()();
571
- i0.ɵɵtemplate(20, RequalifyLiftPreviousIssuesComponent_div_20_Template, 6, 3, "div", 4);
572
- i0.ɵɵelementStart(21, "ion-row")(22, "ion-col")(23, "div")(24, "h2");
573
- i0.ɵɵtext(25);
821
+ i0.ɵɵelementStart(22, "ion-row")(23, "ion-col")(24, "div")(25, "h2");
822
+ i0.ɵɵtext(26);
574
823
  i0.ɵɵelementEnd()();
575
- i0.ɵɵelementStart(26, "div");
576
- i0.ɵɵtext(27, " TBD ");
577
- i0.ɵɵelementEnd()()();
578
- i0.ɵɵelementStart(28, "ion-row")(29, "ion-col")(30, "div")(31, "h2");
579
- i0.ɵɵtext(32);
824
+ i0.ɵɵtemplate(27, RequalifyLiftPreviousIssuesComponent_div_27_Template, 2, 0, "div", 4)(28, RequalifyLiftPreviousIssuesComponent_div_28_Template, 3, 2, "div", 5);
580
825
  i0.ɵɵelementEnd()();
581
- i0.ɵɵtemplate(33, RequalifyLiftPreviousIssuesComponent_div_33_Template, 2, 0, "div", 3)(34, RequalifyLiftPreviousIssuesComponent_div_34_Template, 6, 3, "div", 4);
826
+ i0.ɵɵelementStart(29, "ion-row")(30, "ion-col")(31, "div")(32, "h2");
827
+ i0.ɵɵtext(33);
582
828
  i0.ɵɵelementEnd()();
583
- i0.ɵɵelementStart(35, "ion-row")(36, "ion-col")(37, "div")(38, "h2");
584
- i0.ɵɵtext(39);
829
+ i0.ɵɵtemplate(34, RequalifyLiftPreviousIssuesComponent_div_34_Template, 2, 0, "div", 4)(35, RequalifyLiftPreviousIssuesComponent_div_35_Template, 3, 2, "div", 5);
585
830
  i0.ɵɵelementEnd()();
586
- i0.ɵɵtemplate(40, RequalifyLiftPreviousIssuesComponent_div_40_Template, 2, 0, "div", 3)(41, RequalifyLiftPreviousIssuesComponent_div_41_Template, 6, 3, "div", 4);
831
+ i0.ɵɵelementStart(36, "ion-row")(37, "ion-col")(38, "div")(39, "h2");
832
+ i0.ɵɵtext(40);
587
833
  i0.ɵɵelementEnd()();
588
- i0.ɵɵelementStart(42, "ion-row")(43, "ion-col")(44, "div")(45, "h2");
589
- i0.ɵɵtext(46);
834
+ i0.ɵɵtemplate(41, RequalifyLiftPreviousIssuesComponent_div_41_Template, 2, 0, "div", 4)(42, RequalifyLiftPreviousIssuesComponent_div_42_Template, 3, 2, "div", 5);
590
835
  i0.ɵɵelementEnd()();
591
- i0.ɵɵtemplate(47, RequalifyLiftPreviousIssuesComponent_div_47_Template, 2, 0, "div", 3)(48, RequalifyLiftPreviousIssuesComponent_div_48_Template, 6, 2, "div", 4);
836
+ i0.ɵɵelementStart(43, "ion-row")(44, "ion-col")(45, "div")(46, "h2");
837
+ i0.ɵɵtext(47);
592
838
  i0.ɵɵelementEnd()();
593
- i0.ɵɵelementStart(49, "ion-row")(50, "ion-col")(51, "p");
594
- i0.ɵɵtext(52);
839
+ i0.ɵɵtemplate(48, RequalifyLiftPreviousIssuesComponent_div_48_Template, 2, 0, "div", 4)(49, RequalifyLiftPreviousIssuesComponent_div_49_Template, 3, 2, "div", 5);
840
+ i0.ɵɵelementEnd()();
841
+ i0.ɵɵelementStart(50, "ion-row")(51, "ion-col")(52, "p");
842
+ i0.ɵɵtext(53);
595
843
  i0.ɵɵelementEnd();
596
- i0.ɵɵelementStart(53, "div", 0, 5);
597
- i0.ɵɵelement(55, "textarea", 6)(56, "app-error", 7);
844
+ i0.ɵɵelementStart(54, "div", 0, 1);
845
+ i0.ɵɵelement(56, "textarea", 6);
846
+ i0.ɵɵtemplate(57, RequalifyLiftPreviousIssuesComponent_div_57_Template, 2, 0, "div", 7);
598
847
  i0.ɵɵelementEnd()()();
599
- i0.ɵɵelementStart(57, "ion-row")(58, "ion-col", 8)(59, "ion-button", 9);
600
- i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_59_listener() { return ctx.onModelCancel(); });
601
- i0.ɵɵtext(60);
848
+ i0.ɵɵelementStart(58, "ion-row")(59, "ion-col", 8)(60, "ion-button", 9);
849
+ i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_60_listener() { return ctx.onModelCancel(); });
850
+ i0.ɵɵtext(61);
602
851
  i0.ɵɵelementEnd();
603
- i0.ɵɵelementStart(61, "ion-button", 10);
604
- i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_61_listener() { return ctx.saveData(); });
605
- i0.ɵɵtext(62);
852
+ i0.ɵɵelementStart(62, "ion-button", 10);
853
+ i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_62_listener() { return ctx.saveData(); });
854
+ i0.ɵɵtext(63);
606
855
  i0.ɵɵelementEnd()()()()();
607
- i0.ɵɵelementStart(63, "p", 11);
608
- i0.ɵɵtext(64);
609
- i0.ɵɵpipe(65, "translate");
856
+ i0.ɵɵelementStart(64, "p", 11);
857
+ i0.ɵɵtext(65);
858
+ i0.ɵɵpipe(66, "translate");
859
+ i0.ɵɵelementEnd();
860
+ i0.ɵɵelementStart(67, "div", 12)(68, "div", 13);
861
+ i0.ɵɵelement(69, "input", 14);
862
+ i0.ɵɵelementStart(70, "ion-button", 15);
863
+ i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_70_listener() { return ctx.openDialog(); });
864
+ i0.ɵɵtext(71, " Review ");
610
865
  i0.ɵɵelementEnd();
611
- i0.ɵɵelementStart(66, "div", 12)(67, "div", 13)(68, "ion-button", 14);
612
- i0.ɵɵlistener("click", function RequalifyLiftPreviousIssuesComponent_Template_ion_button_click_68_listener() { return ctx.openDialog(); });
613
- i0.ɵɵtext(69, " Review ");
614
- i0.ɵɵelementEnd()()()();
866
+ i0.ɵɵelement(72, "app-error", 16);
867
+ i0.ɵɵelementEnd()()();
615
868
  } if (rf & 2) {
869
+ const _r0 = i0.ɵɵreference(1);
616
870
  i0.ɵɵproperty("formGroup", ctx.form);
617
- i0.ɵɵadvance(1);
618
- i0.ɵɵstyleMap(i0.ɵɵpureFunction0(33, _c1));
619
- i0.ɵɵproperty("showHeader", false)("breakpoints", i0.ɵɵpureFunction0(34, _c2))("visible", ctx.showData);
871
+ i0.ɵɵadvance(2);
872
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction0(36, _c2));
873
+ i0.ɵɵproperty("showHeader", false)("breakpoints", i0.ɵɵpureFunction0(37, _c3))("visible", ctx.showData);
620
874
  i0.ɵɵadvance(5);
621
875
  i0.ɵɵtextInterpolate(ctx.requalifyLiftIssuesData.pageTitle);
622
876
  i0.ɵɵadvance(5);
@@ -633,7 +887,11 @@ export class RequalifyLiftPreviousIssuesComponent {
633
887
  i0.ɵɵproperty("ngIf", ctx.show512AResponse);
634
888
  i0.ɵɵadvance(5);
635
889
  i0.ɵɵtextInterpolate(ctx.requalifyLiftIssuesData.potentialIssues);
636
- i0.ɵɵadvance(7);
890
+ i0.ɵɵadvance(1);
891
+ i0.ɵɵproperty("ngIf", !ctx.showBeanList);
892
+ i0.ɵɵadvance(1);
893
+ i0.ɵɵproperty("ngIf", ctx.showBeanList);
894
+ i0.ɵɵadvance(5);
637
895
  i0.ɵɵtextInterpolate(ctx.requalifyLiftIssuesData.separationIssues);
638
896
  i0.ɵɵadvance(1);
639
897
  i0.ɵɵproperty("ngIf", !ctx.showSepIssueList);
@@ -656,14 +914,16 @@ export class RequalifyLiftPreviousIssuesComponent {
656
914
  i0.ɵɵadvance(1);
657
915
  i0.ɵɵproperty("formGroup", ctx.payForm);
658
916
  i0.ɵɵadvance(3);
659
- i0.ɵɵproperty("field", ctx.additionalInfo)("form", ctx.payForm)("errDef", i0.ɵɵpureFunction0(35, _c3));
917
+ i0.ɵɵproperty("ngIf", ctx.additionalInfo.invalid);
660
918
  i0.ɵɵadvance(4);
661
919
  i0.ɵɵtextInterpolate1(" ", ctx.requalifyLiftIssuesData.cancelButton, " ");
662
920
  i0.ɵɵadvance(2);
663
921
  i0.ɵɵtextInterpolate1(" ", ctx.requalifyLiftIssuesData.saveButton, " ");
664
922
  i0.ɵɵadvance(2);
665
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(65, 31, ctx.requalifyLiftIssuesData.questionHeading), "");
666
- } }, dependencies: [i6.IonButton, i6.IonCol, i6.IonRow, i6.IonSpinner, i7.NgForOf, i7.NgIf, i8.PrimeTemplate, i4.ɵNgNoValidate, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, i9.Dialog, i10.Table, i11.Dropdown, i12.ErrorComponent, i7.CurrencyPipe, i13.TranslatePipe] }); }
923
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(66, 34, ctx.requalifyLiftIssuesData.questionHeading), "");
924
+ i0.ɵɵadvance(7);
925
+ i0.ɵɵproperty("field", ctx.requalifyReqHidden)("form", _r0)("errDef", i0.ɵɵpureFunction0(38, _c4));
926
+ } }, dependencies: [i6.IonButton, i6.IonCol, i6.IonRow, i6.IonSpinner, i7.NgForOf, i7.NgIf, i8.PrimeTemplate, i4.ɵNgNoValidate, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.RequiredValidator, i4.FormGroupDirective, i4.FormControlName, i9.Dialog, i10.Table, i11.InputText, i12.ErrorComponent, i13.Dropdown, i7.CurrencyPipe, i14.TranslatePipe] }); }
667
927
  }
668
928
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RequalifyLiftPreviousIssuesComponent, [{
669
929
  type: Component,
@@ -671,7 +931,7 @@ export class RequalifyLiftPreviousIssuesComponent {
671
931
  provide: NG_VALUE_ACCESSOR,
672
932
  useExisting: RequalifyLiftPreviousIssuesComponent,
673
933
  multi: true
674
- }], changeDetection: ChangeDetectionStrategy.Default, template: "<form [formGroup]=\"form\">\r\n <p-dialog modal=\"true\" [showHeader]=\"false\" appendTo=\"body\" [breakpoints]=\"{'960px': '80vw', '640px': '100vw'}\" [style]=\"{width: '60vw'}\" [visible]=\"showData\">\r\n <div style=\"margin-left: -5px;\">\r\n <ion-row>\r\n <ion-col>\r\n <h1>{{requalifyLiftIssuesData.pageTitle}}</h1>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div> \r\n <h2>{{requalifyLiftIssuesData.baseWageInfo}}</h2>\r\n </div>\r\n <div *ngIf=\"!showWagesList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf=\"showWagesList\"> \r\n <p-table #dt [value]=\"bpEmployerWagesListFiltered\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"cols\" [rowHover]=\"true\">\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerData.displayName}}</td>\r\n <td>{{employer.employerProvidedWages.wagesListQtrWise[0]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages.wagesListQtrWise[1]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages.wagesListQtrWise[2]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages.wagesListQtrWise[3]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages.wagesListQtrWise[4]?.wageAmount | currency}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td colspan=\"6\">No Records found.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.earningsProof}}</h2></div>\r\n <div *ngIf=\"!show512AResponse\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n <div *ngIf = \"show512AResponse\"> \r\n <p-table #dt [value]=\"ui512AResponseList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"col512AResponseLst\" [rowHover]=\"true\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.proofRecievedDate}}</td>\r\n <td>{{employer.earningsBeginDate}}</td>\r\n <td>{{employer.earningsEndDate}}</td>\r\n <td>{{employer.amountOfEarnings}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td colspan=\"5\">No Records found.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.potentialIssues}}</h2></div>\r\n <div> \r\n TBD\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.separationIssues}}</h2>\r\n </div>\r\n <div *ngIf=\"!showSepIssueList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showSepIssueList\"> \r\n <p-table #dt [value]=\"SepIssueLiftedList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colPreviousIssueLst\" [rowHover]=\"true\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.startDate}}</td>\r\n <td>{{employer.reason}}</td>\r\n <td>{{employer.requalificationWage}}</td>\r\n <td>{{employer.actionTaken}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td colspan=\"5\">No Records found.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.previousDecisions}}</h2>\r\n </div>\r\n <div *ngIf=\"!showPreIssueList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showPreIssueList\"> \r\n <p-table #dt [value]=\"preIssueList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colPreviousIssueLst\" [rowHover]=\"true\">\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr style=\"padding: 50px;\"> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.startDate}}</td>\r\n <td>{{employer.reason}}</td>\r\n <td>{{employer.requalificationWage}}</td>\r\n \r\n <ng-container *ngFor=\"let temp of preIssuesActionList.controls; let i = index\"> \r\n <div [formGroup]=\"temp\" #requalifyFormDirective=\"ngForm\"> \r\n <td><p-dropdown [options]=\"actionOptions\" formControlName=\"actionPreviousIssue\" optionLabel=\"text\" appendTo=\"body\"\r\n [autoDisplayFirst]=\"false\" ></p-dropdown></td>\r\n <td><input type=\"hidden\" formControlName=\"issueId\" value = \"{{employer.issueId}}\"/></td>\r\n </div>\r\n </ng-container>\r\n \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td colspan=\"5\">No Records found.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.otherIssues}}</h2>\r\n </div>\r\n <div *ngIf=\"!showAllowSepList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showAllowSepList\"> \r\n <p-table #dt [value]=\"allowedSepIssueList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colAllowIssueLst\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr> \r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.startDate}}</td>\r\n <td>{{employer.reason}}</td>\r\n <td>{{employer.actionTaken}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td colspan=\"4\">No Records found.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <p>{{requalifyLiftIssuesData.remarks}}</p>\r\n <div [formGroup]=\"payForm\" #requalifyFormDirective=\"ngForm\">\r\n <textarea id=\"additionalInfo\" autoResize=\"true\" formControlName=\"additionalInfo\"\r\n maxLength=\"256\" rows=\"3\" cols=\"35\"></textarea>\r\n <app-error [field]=\"additionalInfo\" [form]=\"payForm\" [errDef]=\"{required: 'required'}\"></app-error>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col class=\"ion-text-right\">\r\n <ion-button shape=\"round\" (click)=\"onModelCancel()\" type=\"reset\" fill=\"outline\">\r\n {{requalifyLiftIssuesData.cancelButton}}\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" (click)=\"saveData()\" fill=\"solid\">\r\n {{requalifyLiftIssuesData.saveButton}}\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </div>\r\n </p-dialog>\r\n\r\n <p class=\"form-label\"> {{requalifyLiftIssuesData.questionHeading | translate}}</p>\r\n <div class=\"grid p-nogutter\">\r\n <div class=\"col-12\">\r\n <ion-button shape=\"round\" color=\"success\" fill=\"outline\" type=\"submit\"\r\n (click)=\"openDialog();\">\r\n Review\r\n </ion-button>\r\n </div>\r\n </div>\r\n </form>" }]
934
+ }], changeDetection: ChangeDetectionStrategy.Default, template: "<form [formGroup]=\"form\" #requalifyFormDirective = \"ngForm\">\r\n <p-dialog modal=\"true\" [showHeader]=\"false\" appendTo=\"body\" [breakpoints]=\"{'960px': '80vw', '640px': '100vw'}\" [style]=\"{width: '60vw'}\" [visible]=\"showData\">\r\n <div style=\"margin-left: -5px;\">\r\n <ion-row>\r\n <ion-col>\r\n <h1>{{requalifyLiftIssuesData.pageTitle}}</h1>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div> \r\n <h2>{{requalifyLiftIssuesData.baseWageInfo}}</h2>\r\n </div>\r\n <div *ngIf=\"!showWagesList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf=\"showWagesList\"> \r\n <div *ngIf = \"bpEmployerWagesListFiltered.length === 0 || !empProvidedWages \"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"bpEmployerWagesListFiltered && empProvidedWages\"> \r\n <p-table #dt [value]=\"bpEmployerWagesListFiltered\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"cols\" [rowHover]=\"true\">\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerData.displayName}}</td>\r\n <td>{{employer.employerProvidedWages?.wagesListQtrWise[0]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages?.wagesListQtrWise[1]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages?.wagesListQtrWise[2]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages?.wagesListQtrWise[3]?.wageAmount | currency}}</td>\r\n <td>{{employer.employerProvidedWages?.wagesListQtrWise[4]?.wageAmount | currency}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.earningsProof}}</h2></div>\r\n <div *ngIf=\"!show512AResponse\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"show512AResponse\"> \r\n <div *ngIf = \"!ui512AResponseList\"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"ui512AResponseList\"> \r\n <p-table #dt [value]=\"ui512AResponseList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"col512AResponseLst\" [rowHover]=\"true\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.proofRecievedDate}}</td>\r\n <td>{{employer.earningsBeginDate}}</td>\r\n <td>{{employer.earningsEndDate}}</td>\r\n <td>{{employer.amountOfEarnings}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table> \r\n </div> \r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.potentialIssues}}</h2></div>\r\n <div *ngIf=\"!showBeanList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showBeanList\">\r\n <div *ngIf = \"beanList.length === 0\"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"beanList && beanList.length > 0\"> \r\n <p-table #dt [value]=\"beanActionList.controls\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colBeanLst\" [rowHover]=\"true\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <!-- <ng-container *ngFor=\"let employer of beanActionList.controls; let i = index\" [formGroupName]=\"i\"> -->\r\n <tr>\r\n <td>{{employer.value.employerName}}</td>\r\n <td>{{employer.value.startDate}}</td>\r\n <td>{{employer.value.reason}}</td>\r\n <td>{{employer.value.requalificationWage}}</td>\r\n <td *ngIf= \"employer.value.actionTaken != null\">{{employer.value.actionTaken}}</td>\r\n <td style=\"width:30%\" *ngIf= \"employer.value.actionTaken === null\">\r\n <div [formGroup]=\"employer\" #requalifyFormDirective=\"ngForm\">\r\n <app-dropdown [options]=\"actionOptions\" formControlName=\"actionTakenPotentialIssue\" optionLabel=\"text\" appendTo=\"body\"\r\n [autoDisplayFirst]=\"false\" (onChange)=\"changeActionForIssueDropdown($event)\" required></app-dropdown><br>\r\n <app-error [class]=\"'app-grid'\" [field]='employer.controls[\"actionTakenPotentialIssue\"]' [form]=\"requalifyFormDirective\" [errDef]=\"{ \r\n required: 'required'\r\n }\"></app-error>\r\n <div *ngIf=\"employer.controls['actionTakenPotentialIssue'].invalid\" style=\"color:#e60e0e; margin-left: 0px; font-size: 15px\">\r\n required\r\n </div> \r\n <input type=\"hidden\" formControlName=\"claimAppEmployerId\" value = \"{{employer.value.claimAppEmployerId}}\"/>\r\n </div> \r\n </td>\r\n </tr> \r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.separationIssues}}</h2>\r\n </div>\r\n <div *ngIf=\"!showSepIssueList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showSepIssueList\">\r\n <div *ngIf = \"sepIssueLiftedList.length === 0\"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"sepIssueLiftedList && sepIssueLiftedList.length > 0\"> \r\n <p-table #dt [value]=\"sepIssueLiftedList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colPreviousIssueLst\" [rowHover]=\"true\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.startDate}}</td>\r\n <td>{{employer.reason}}</td>\r\n <td>{{employer.requalificationWage}}</td>\r\n <td>{{employer.actionTaken}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.previousDecisions}}</h2>\r\n </div>\r\n <div *ngIf=\"!showPreIssueList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showPreIssueList\">\r\n <div *ngIf = \"preIssueList.length === 0\"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"preIssueList && preIssueList.length > 0\"> \r\n <p-table #dt [value]=\"preIssuesActionList.controls\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colPreviousIssueLst\" [rowHover]=\"true\">\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr style=\"padding: 50px;\"> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td style=\"width:20%\">{{employer.value.employerName}}</td>\r\n <td style=\"width:20%\">{{employer.value.startDate}}</td>\r\n <td style=\"width:20%\">{{employer.value.reason}}</td>\r\n <td style=\"width:10%\">{{employer.value.requalificationWage}}</td>\r\n \r\n <td style=\"width:30%\"> \r\n <div [formGroup]=\"employer\" #requalifyFormDirective=\"ngForm\"> \r\n <app-dropdown [options]=\"actionOptions\" formControlName=\"actionPreviousIssue\" optionLabel=\"text\" appendTo=\"body\"\r\n [autoDisplayFirst]=\"false\" required></app-dropdown><br>\r\n <app-error [class]=\"'app-grid'\" [field]='employer.controls[\"actionPreviousIssue\"]' [form]=\"requalifyFormDirective\" [errDef]=\"{ \r\n required: 'required'\r\n }\"></app-error>\r\n <div *ngIf=\"employer.controls['actionPreviousIssue'].invalid\" style=\"color:#e60e0e; margin-left: 0px; font-size: 15px\">\r\n required\r\n </div> \r\n <input type=\"hidden\" formControlName=\"issueId\" value = \"{{employer.value.issueId}}\"/>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n <div><h2>{{requalifyLiftIssuesData.otherIssues}}</h2>\r\n </div>\r\n <div *ngIf=\"!showAllowSepList\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div *ngIf = \"showAllowSepList\">\r\n <div *ngIf = \"allowedSepIssueList.length === 0\"> \r\n <p>No Records found.</p>\r\n </div>\r\n <div *ngIf = \"allowedSepIssueList && allowedSepIssueList.length > 0\"> \r\n <p-table #dt [value]=\"allowedSepIssueList\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\" \r\n [columns]=\"colAllowIssueLst\" >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr> \r\n <th *ngFor=\"let col of columns\">\r\n <b>{{col.header}}</b>\r\n </th> \r\n </tr> \r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td>{{employer.employerName}}</td>\r\n <td>{{employer.startDate}}</td>\r\n <td>{{employer.reason}}</td>\r\n <td>{{employer.actionTaken}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col>\r\n \r\n <p>{{requalifyLiftIssuesData.remarks}}</p>\r\n <div [formGroup]=\"payForm\" #requalifyFormDirective=\"ngForm\">\r\n <textarea id=\"additionalInfo\" autoResize=\"true\" formControlName=\"additionalInfo\"\r\n maxLength=\"256\" rows=\"3\" cols=\"35\"></textarea>\r\n <div *ngIf=\"additionalInfo.invalid\" style=\"color:#e60e0e; margin-left: 0px; font-size: 15px\">\r\n required\r\n </div> \r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n\r\n <ion-row>\r\n <ion-col class=\"ion-text-right\"> \r\n <ion-button shape=\"round\" (click)=\"onModelCancel()\" type=\"reset\" fill=\"outline\">\r\n {{requalifyLiftIssuesData.cancelButton}}\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" (click)=\"saveData()\" fill=\"solid\">\r\n {{requalifyLiftIssuesData.saveButton}}\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </div>\r\n </p-dialog>\r\n\r\n <p class=\"form-label\"> {{requalifyLiftIssuesData.questionHeading | translate}}</p>\r\n <div class=\"grid p-nogutter\">\r\n <div class=\"col-12\">\r\n <input type=\"text\" id=\"requalifyReqHidden\" pInputText formControlName=\"requalifyReqHidden\" hidden />\r\n <ion-button shape=\"round\" color=\"success\" fill=\"outline\" type=\"submit\"\r\n (click)=\"openDialog();\">\r\n Review\r\n </ion-button>\r\n <app-error [field]='requalifyReqHidden' [form]=\"requalifyFormDirective\" [errDef]=\"{\r\n required: 'required.'\r\n }\"></app-error>\r\n </div>\r\n </div>\r\n </form>" }]
675
935
  }], () => [{ type: i1.ClaimService }, { type: i2.LoginService }, { type: i3.ActivatedRoute }, { type: i4.FormBuilder }, { type: i5.LoggerService }], { question: [{
676
936
  type: Input
677
937
  }], componentData: [{
@@ -687,4 +947,4 @@ export class RequalifyLiftPreviousIssuesComponent {
687
947
  args: ['requalifyFormDirective', { static: false }]
688
948
  }] }); })();
689
949
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RequalifyLiftPreviousIssuesComponent, { className: "RequalifyLiftPreviousIssuesComponent", filePath: "lib\\components\\requalify-lift-previous-issues\\requalify-lift-previous-issues.component.ts", lineNumber: 30 }); })();
690
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMvcmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMvcmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUE0QyxpQkFBaUIsRUFBd0MsVUFBVSxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBR2pLLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRzdGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDS3pELCtCQUFvRDtJQUNsRCxrQ0FBdUM7SUFDekMsaUJBQU07OztJQU1JLDBCQUFnQyxRQUFBO0lBQ3pCLFlBQWM7SUFBQSxpQkFBSSxFQUFBOzs7SUFBbEIsZUFBYztJQUFkLG9DQUFjOzs7SUFGekIsMEJBQUk7SUFDQSx5R0FFSztJQUNULGlCQUFLOzs7SUFIbUIsZUFBVTtJQUFWLHFDQUFVOzs7SUFNbEMsMEJBQUksU0FBQTtJQUNFLFlBQXFDO0lBQUEsaUJBQUs7SUFD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Z0N0QixlQUF5QztZQUF6QywrREFBeUM7WUFDNUMsZUFBdUI7WUFBdkIsNENBQXVCO1lBSzNCLGVBQXdCO1lBQXhCLDJDQUF3QjtZQTRCakIsZUFBMkM7WUFBM0MsaUVBQTJDO1lBUzNDLGVBQTRDO1lBQTVDLGtFQUE0QztZQUUvQyxlQUF1QjtZQUF2Qiw0Q0FBdUI7WUFHdkIsZUFBd0I7WUFBeEIsMkNBQXdCO1lBK0JyQixlQUE2QztZQUE3QyxtRUFBNkM7WUFFaEQsZUFBdUI7WUFBdkIsNENBQXVCO1lBR3ZCLGVBQXdCO1lBQXhCLDJDQUF3QjtZQXVDckIsZUFBdUM7WUFBdkMsNkRBQXVDO1lBRTFDLGVBQXVCO1lBQXZCLDRDQUF1QjtZQUd2QixlQUF3QjtZQUF4QiwyQ0FBd0I7WUE4QjNCLGVBQW1DO1lBQW5DLHlEQUFtQztZQUNqQyxlQUFxQjtZQUFyQix1Q0FBcUI7WUFHWCxlQUF3QjtZQUF4QiwwQ0FBd0IscUJBQUEsdUNBQUE7WUFRckMsZUFDRjtZQURFLHlFQUNGO1lBRUUsZUFDRjtZQURFLHVFQUNGO1lBTWEsZUFBdUQ7WUFBdkQsbUdBQXVEOzs7aUZEeE1yRSxvQ0FBb0M7Y0FaaEQsU0FBUzsyQkFDRSxvQ0FBb0MsYUFHbkMsQ0FBQzt3QkFDVixPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLHNDQUFzQzt3QkFDakQsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQyxtQkFDZSx1QkFBdUIsQ0FBQyxPQUFPOzJKQVl2QyxRQUFRO2tCQUFoQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUNJLFlBQVk7a0JBQXJCLE1BQU07WUFDRyxtQkFBbUI7a0JBQTVCLE1BQU07WUFLQSxzQkFBc0I7a0JBRDVCLFNBQVM7bUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztrRkFqQjNDLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvcixGb3JtQnVpbGRlciwgTmdGb3JtLCBOR19WQUxVRV9BQ0NFU1NPUiwgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzLCBVbnR5cGVkRm9ybUFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9nZ2VyL2xvZ2dlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsJztcclxuaW1wb3J0IHsgQ2xhaW1BcHBFbXBSZXF1ZXN0TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCc7XHJcbmltcG9ydCB7IENsYWltU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsYWltcy9jbGFpbXMuc2VydmljZSc7XHJcbmltcG9ydCB7IENpblJlcXVhbGlmaWNhdGlvbkNyaXRlcmlhTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvQ2luUmVxdWFsaWZpY2F0aW9uQ3JpdGVyaWFNb2RlbCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFF0clllYXJFbXBsb3llcldhZ2VNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL1F0clllYXJFbXBsb3llcldhZ2VNb2RlbCc7XHJcbmltcG9ydCB7IFJlcXVhbGlmeUxpZnRQYWdlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvUmVxdWFsaWZ5TGlmdFBhZ2VNb2RlbCc7XHJcbmltcG9ydCB7IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsJztcclxuaW1wb3J0IHsgRWxlbWVudHNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL0VsZW1lbnRzTW9kZWwnO1xyXG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBSZXF1YWxpZnlMaWZ0SXNzdWVzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9SZXF1YWxpZnlMaWZ0SXNzdWVzTW9kZWwnO1xyXG5pbXBvcnQgeyBVSTUxMkFSZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvVUk1MTJBUmVzcG9uc2VNb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlcXVhbGlmeS1saWZ0LXByZXZpb3VzLWlzc3Vlcy5jb21wb25lbnQuY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogUmVxdWFsaWZ5TGlmdFByZXZpb3VzSXNzdWVzQ29tcG9uZW50LFxyXG4gICAgbXVsdGk6IHRydWVcclxuICB9XSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHRcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBSZXF1YWxpZnlMaWZ0UHJldmlvdXNJc3N1ZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBcclxuICBwdWJsaWMgYnBFbXBsb3llcldhZ2VzTGlzdD86IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBicEVtcGxveWVyV2FnZXNMaXN0RmlsdGVyZWQ/OiBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgYWxsb3dlZFNlcElzc3VlTGlzdD86IENpblJlcXVhbGlmaWNhdGlvbkNyaXRlcmlhTW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBwcmVJc3N1ZUxpc3Q/OiBDaW5SZXF1YWxpZmljYXRpb25Dcml0ZXJpYU1vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgU2VwSXNzdWVMaWZ0ZWRMaXN0PzogQ2luUmVxdWFsaWZpY2F0aW9uQ3JpdGVyaWFNb2RlbFtdID0gW107XHJcbiAgcHVibGljIHVpNTEyQVJlc3BvbnNlTGlzdD86IFVJNTEyQVJlc3BvbnNlTW9kZWxbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBxdWVzdGlvbjogRWxlbWVudHNNb2RlbDtcclxuICBASW5wdXQoKSBjb21wb25lbnREYXRhOnN0cmluZztcclxuICBASW5wdXQoKSBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG4gIEBPdXRwdXQoKSBtb2RlbERpc3BsYXkgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgQE91dHB1dCgpIG9uQ29tcGxldGVSZXF1YWxpZnkgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHB1YmxpYyByZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YTpSZXF1YWxpZnlMaWZ0SXNzdWVzTW9kZWw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3JlcXVhbGlmeUZvcm1EaXJlY3RpdmUnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBwdWJsaWMgcmVxdWFsaWZ5Rm9ybURpcmVjdGl2ZTogTmdGb3JtO1xyXG5cclxuICBzc246IHN0cmluZztcclxuICBjb2xzOiBhbnlbXTtcclxuICBjb2xBbGxvd0lzc3VlTHN0OiBhbnlbXTtcclxuICBjb2xQcmV2aW91c0lzc3VlTHN0OiBhbnlbXTtcclxuICBjb2w1MTJBUmVzcG9uc2VMc3Q6IGFueVtdO1xyXG5cclxuICBwdWJsaWMgc2hvd1dhZ2VzTGlzdCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0FsbG93U2VwTGlzdCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1ByZUlzc3VlTGlzdCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1NlcElzc3VlTGlzdCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvdzUxMkFSZXNwb25zZSA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIGFjdGlvbk9wdGlvbnMgOiBhbnlbXTtcclxuICBwdWJsaWMgc2hvd0RhdGE6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjczogQ2xhaW1TZXJ2aWNlLCBwdWJsaWMgbHM6IExvZ2luU2VydmljZSwgcHVibGljIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHB1YmxpYyBmYjogRm9ybUJ1aWxkZXIsIHB1YmxpYyBsb2dnZXI6TG9nZ2VyU2VydmljZSkgeyB9XHJcblxyXG4gIHB1YmxpYyBwYXlGb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICBwcmVJc3N1ZXNBY3Rpb25MaXN0OiB0aGlzLmZiLmFycmF5KFtdKSxcclxuICAgIGFkZGl0aW9uYWxJbmZvOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXHJcbiAgfSk7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgbGV0IHNzbkxhc3RGb3VyRnJvbURiOiBzdHJpbmc7XHJcbiAgICBpZih0aGlzLmxzLmlzQ2xhaW1hbnQoKSA9PT0gdHJ1ZSl7XHJcbiAgICAgIHNzbkxhc3RGb3VyRnJvbURiID0gdGhpcy5scy5nZXRVc2VyKCkuc3NuLnN1YnN0cmluZyg1LDkpXHJcbiAgICB9IGVsc2V7XHJcbiAgICAgIGxldCBkYXRhID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgna2V5Jyk7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICBsZXQgc3NuRm9yQ1NSOiBzdHJpbmc7XHJcbiAgICAgICAgICBzc25Gb3JDU1IgPSBhdG9iKGRhdGEpO1xyXG4gICAgICAgICAgdGhpcy5zc24gPSBzc25Gb3JDU1I7XHJcbiAgICAgICAgfSAgIFxyXG4gICAgfVxyXG4gICAgdGhpcy5sb2FkQmFzZVBlcmlvZFdhZ2VzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRSZXF1YWxpZnlMaWZ0SXNzdWVzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRBbGxvd1NlcFByZXZpb3VzSXNzdWVzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRNYXN0ZXJEYXRhKCk7XHJcbiAgICB0aGlzLmxvYWRVSTUxMkFSZXNwb25zZXMoKTtcclxuXHJcbiAgICB0aGlzLmNvbEFsbG93SXNzdWVMc3QgPSBbXHJcbiAgICAgIHtoZWFkZXIgOiAnRW1wbG95ZXIgTmFtZSd9LFxyXG4gICAgICB7aGVhZGVyIDogJ0lzc3VlIFN0YXJ0IERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdJc3N1ZSBEZXNjcmlwdGlvbid9LFxyXG4gICAgICB7aGVhZGVyIDogJ0RlY2lzaW9uJ31cclxuICAgIF07XHJcblxyXG4gICAgdGhpcy5jb2xQcmV2aW91c0lzc3VlTHN0ID0gW1xyXG4gICAgICB7aGVhZGVyIDogJ0VtcGxveWVyIE5hbWUnfSxcclxuICAgICAge2hlYWRlciA6ICdJc3N1ZSBTdGFydCBEYXRlJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnSXNzdWUgRGVzY3JpcHRpb24nfSxcclxuICAgICAge2hlYWRlciA6ICdSZXF1YWxpZnlpbmcgQW1vdW50KCQpJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnQWN0aW9uJ31cclxuICAgIF07XHJcblxyXG4gICAgdGhpcy5jb2w1MTJBUmVzcG9uc2VMc3QgPSBbXHJcbiAgICAgIHtoZWFkZXIgOiAnRW1wbG95ZXIgTmFtZSd9LFxyXG4gICAgICB7aGVhZGVyIDogJ1Byb29mIHJlY2VpdmVkIERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdFYXJuaW5nIEJlZ2luIERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdFYXJuaW5nIEVuZCBEYXRlJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnQW1vdW50ICgkKSd9XHJcbiAgICBdO1xyXG4gICAgY29uc3Qgb2JqID0gSlNPTi5wYXJzZSh0aGlzLmNvbXBvbmVudERhdGEpO1xyXG4gICAgdGhpcy5yZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YSA9IG9iajtcclxuICB9XHJcblxyXG4gIGxvYWRVSTUxMkFSZXNwb25zZXMoKSB7XHJcbiAgICB0aGlzLmNzLmdldFJlcXVhbGlmeUxpZnRJc3N1ZXNGb3JTU04odGhpcy5zc24pLnN1YnNjcmliZShcclxuICAgICAgcmVzID0+IHtcclxuICAgICAgICBsZXQgcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWxGcm9tU2VydmljZSA6IFJlcXVhbGlmeUxpZnRQYWdlTW9kZWw9ICByZXM7XHJcbiAgICAgICAgdGhpcy51aTUxMkFSZXNwb25zZUxpc3QgPSByZXF1YWxpZnlMaWZ0SXNzdWVNb2RlbEZyb21TZXJ2aWNlLnVpNTEyQVJlc3BvbnNlTGlzdDtcclxuICAgICAgICB0aGlzLnNob3c1MTJBUmVzcG9uc2UgPSB0cnVlO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgXHJcbiAgbG9hZE1hc3RlckRhdGEoKSB7XHJcbiAgICB0aGlzLmNzLmdldFJlcXVhbGlmeUNyaXRlcmlhRW51bSgpO1xyXG4gICAgdGhpcy5jcy5nZXRBY3Rpb25zTGlzdCgpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLmFjdGlvbk9wdGlvbnMgPSByZXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvYWRCYXNlUGVyaW9kV2FnZXNGb3JTU04oKSB7XHJcbiAgICBsZXQgY2xtRW1wUmVxdWVzdE1vZGVsOiBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCA9IG5ldyBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCgpO1xyXG4gICAgY2xtRW1wUmVxdWVzdE1vZGVsLnNzbiA9IHRoaXMuc3NuO1xyXG4gICAgdGhpcy5jcy5sb2FkQmFzZVBlcmlvZFdhZ2VzKGNsbUVtcFJlcXVlc3RNb2RlbCkuc3Vic2NyaWJlKFxyXG4gICAgICByZXMgPT4ge1xyXG4gICAgICAgIGxldCB0ZW1wIDogQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsID0gcmVzO1xyXG4gICAgICAgIHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdCA9IHRlbXAuYnBFbXBMaXN0O1xyXG4gICAgICAgIGlmKHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdCl7XHJcbiAgICAgICAgICB0aGlzLmJwRW1wbG95ZXJXYWdlc0xpc3RGaWx0ZXJlZCA9IHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdC5maWx0ZXIoYyA9PiBjLm9zYUJwRW1wbG95ZXJGbGFnID09PSAnMCcpO1xyXG4gICAgICAgICAgbGV0IHF0clllYXJMaXN0IDogUXRyWWVhckVtcGxveWVyV2FnZU1vZGVsW10gPSB0aGlzLmJwRW1wbG95ZXJXYWdlc0xpc3RGaWx0ZXJlZFswXS5lbXBsb3llclByb3ZpZGVkV2FnZXMud2FnZXNMaXN0UXRyV2lzZTtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgdGhpcy5jb2xzID0gW1xyXG4gICAgICAgICAgICB7IGhlYWRlcjogJ0VtcGxveWVyIE5hbWUnIH0sXHJcbiAgICAgICAgICAgIHsgaGVhZGVyOiBxdHJZZWFyTGlzdFswXS5xdHJZZWFyRGlzcGxheVN0cmluZyB9LFxyXG4gICAgICAgICAgICB7IGhlYWRlcjogcXRyWWVhckxpc3RbMV0ucXRyWWVhckRpc3BsYXlTdHJpbmcgfSxcclxuICAgICAgICAgICAgeyBoZWFkZXI6IHF0clllYXJMaXN0WzJdLnF0clllYXJEaXNwbGF5U3RyaW5nIH0sXHJcbiAgICAgICAgICAgIHsgaGVhZGVyOiBxdHJZZWFyTGlzdFszXS5xdHJZZWFyRGlzcGxheVN0cmluZyB9LFxyXG4gICAgICAgICAgICB7IGhlYWRlcjogcXRyWWVhckxpc3RbNF0ucXRyWWVhckRpc3BsYXlTdHJpbmcgfVxyXG4gICAgICAgICAgXTtcclxuICAgICAgICAgIHRoaXMuc2hvd1dhZ2VzTGlzdCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gXHJcbiAgbG9hZEFsbG93U2VwUHJldmlvdXNJc3N1ZXNGb3JTU04oKSB7XHJcbiAgICB0aGlzLmNzLmdldEFsbG93U2VwUHJldmlvdXNJc3N1ZXNGb3JTU04odGhpcy5zc24pLnN1YnNjcmliZShcclxuICAgICAgcmVzMSA9PiB7XHJcbiAgICAgICAgbGV0IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsMTogUmVxdWFsaWZ5TGlmdFBhZ2VNb2RlbCA9IG5ldyBSZXF1YWxpZnlMaWZ0UGFnZU1vZGVsKCk7XHJcbiAgICAgICAgcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWwxID0gcmVzMTsgICAgICAgXHJcbiAgICAgICAgdGhpcy5hbGxvd2VkU2VwSXNzdWVMaXN0ID0gcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWwxLmFsbG93ZWRTZXBJc3N1ZUxpc3Q7XHJcbiAgICAgICAgaWYodGhpcy5hbGxvd2VkU2VwSXNzdWVMaXN0KXtcclxuICAgICAgICAgIHRoaXMuc2hvd0FsbG93U2VwTGlzdCA9IHRydWU7XHJcbiAgICAgICAgfSBcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gXHJcbiAgbG9hZFJlcXVhbGlmeUxpZnRJc3N1ZXNGb3JTU04oKSB7XHJcbiAgICB0aGlzLmNzLmdldFJlcXVhbGlmeUxpZnRJc3N1ZXNGb3JTU04odGhpcy5zc24pLnN1YnNjcmliZShcclxuICAgICAgcmVzID0+IHtcclxuICAgICAgICBsZXQgcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWxGcm9tU2VydmljZSA6IFJlcXVhbGlmeUxpZnRQYWdlTW9kZWw9ICByZXM7XHJcbiAgICAgICAgdGhpcy5wcmVJc3N1ZUxpc3QgPSByZXF1YWxpZnlMaWZ0SXNzdWVNb2RlbEZyb21TZXJ2aWNlLnByZUlzc3VlTGlzdDtcclxuICAgICAgICBpZih0aGlzLnByZUlzc3VlTGlzdCl7XHJcbiAgICAgICAgICB0aGlzLnNob3dQcmVJc3N1ZUxpc3QgPSB0cnVlO1xyXG4gICAgICAgICAgZm9yKGxldCBkYXRhIG9mIHRoaXMucHJlSXNzdWVMaXN0KXtcclxuICAgICAgICAgICAgY29uc3QgdGVtcEluZm8gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgICAgICAgICBlbXBsb3llck5hbWU6IFtkYXRhLmVtcGxveWVyTmFtZV0sIFxyXG4gICAgICAgICAgICAgIGlzc3VlU3RhcnREYXRlOiBbZGF0YS5zdGFydERhdGVdLFxyXG4gICAgICAgICAgICAgIGVtcGxveWVySWQ6IFtkYXRhLmVtcGxveWVySWRdLFxyXG4gICAgICAgICAgICAgIGFjdGlvblByZXZpb3VzSXNzdWU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgICAgICAgaXNzdWVJZDogW2RhdGEuaXNzdWVJZF1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgdGhpcy5wcmVJc3N1ZXNBY3Rpb25MaXN0LnB1c2godGVtcEluZm8pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgdGhpcy5TZXBJc3N1ZUxpZnRlZExpc3QgPSByZXF1YWxpZnlMaWZ0SXNzdWVNb2RlbEZyb21TZXJ2aWNlLnByZUxpZnRlZElzc3VlTGlzdDtcclxuICAgICAgICBpZih0aGlzLlNlcElzc3VlTGlmdGVkTGlzdCl7XHJcbiAgICAgICAgICB0aGlzLnNob3dTZXBJc3N1ZUxpc3QgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuRGlhbG9nKCl7XHJcbiAgICB0aGlzLnNob3dEYXRhID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHNhdmVEYXRhKCl7XHJcbiAgICBpZighdGhpcy5wYXlGb3JtLnZhbGlkKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtLmFkZENvbnRyb2woJ3ByZUlzc3Vlc0FjdGlvbkxpc3RzJywgdGhpcy5wcmVJc3N1ZXNBY3Rpb25MaXN0KTtcclxuICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdhZGRpdGlvbmFsSW5mbycsIHRoaXMuYWRkaXRpb25hbEluZm8pO1xyXG4gICAgdGhpcy5zaG93RGF0YSA9IGZhbHNlO1xyXG4gICAgdGhpcy5tb2RlbERpc3BsYXkuZW1pdCh0cnVlKTtcclxuICAgIHRoaXMub25Db21wbGV0ZVJlcXVhbGlmeS5lbWl0KHRoaXMucGF5Rm9ybSk7XHJcbiAgfVxyXG5cclxuICBvbk1vZGVsQ2FuY2VsKCkge1xyXG4gICAgdGhpcy5zaG93RGF0YSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHByZUlzc3Vlc0FjdGlvbkxpc3QoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wYXlGb3JtLmNvbnRyb2xzWydwcmVJc3N1ZXNBY3Rpb25MaXN0J10gYXMgVW50eXBlZEZvcm1BcnJheTtcclxuICB9XHJcblxyXG4gIGdldCBhZGRpdGlvbmFsSW5mbygpe1xyXG4gICAgcmV0dXJuIHRoaXMucGF5Rm9ybS5jb250cm9sc1snYWRkaXRpb25hbEluZm8nXSBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlOiBGdW5jdGlvbiA9ICh2YWx1ZTogU3RyaW5nKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBvblRvdWNoOiBGdW5jdGlvbiA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuXHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmblxyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDxwLWRpYWxvZyBtb2RhbD1cInRydWVcIiBbc2hvd0hlYWRlcl09XCJmYWxzZVwiIGFwcGVuZFRvPVwiYm9keVwiIFticmVha3BvaW50c109XCJ7Jzk2MHB4JzogJzgwdncnLCAnNjQwcHgnOiAnMTAwdncnfVwiIFtzdHlsZV09XCJ7d2lkdGg6ICc2MHZ3J31cIiBbdmlzaWJsZV09XCJzaG93RGF0YVwiPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLWxlZnQ6IC01cHg7XCI+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGgxPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEucGFnZVRpdGxlfX08L2gxPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuYmFzZVdhZ2VJbmZvfX08L2gyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd1dhZ2VzTGlzdFwiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93V2FnZXNMaXN0XCI+ICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwiYnBFbXBsb3llcldhZ2VzTGlzdEZpbHRlcmVkXCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHNcIiBbcm93SG92ZXJdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCIgbGV0LWNvbHVtbnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+e3tjb2wuaGVhZGVyfX08L2I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWVtcGxveWVyIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJEYXRhLmRpc3BsYXlOYW1lfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJQcm92aWRlZFdhZ2VzLndhZ2VzTGlzdFF0cldpc2VbMF0/LndhZ2VBbW91bnQgfCBjdXJyZW5jeX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyUHJvdmlkZWRXYWdlcy53YWdlc0xpc3RRdHJXaXNlWzFdPy53YWdlQW1vdW50IHwgY3VycmVuY3l9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lbXBsb3llclByb3ZpZGVkV2FnZXMud2FnZXNMaXN0UXRyV2lzZVsyXT8ud2FnZUFtb3VudCB8IGN1cnJlbmN5fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJQcm92aWRlZFdhZ2VzLndhZ2VzTGlzdFF0cldpc2VbM10/LndhZ2VBbW91bnQgfCBjdXJyZW5jeX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyUHJvdmlkZWRXYWdlcy53YWdlc0xpc3RRdHJXaXNlWzRdPy53YWdlQW1vdW50IHwgY3VycmVuY3l9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCI2XCI+Tm8gUmVjb3JkcyBmb3VuZC48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGRpdj48aDI+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5lYXJuaW5nc1Byb29mfX08L2gyPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvdzUxMkFSZXNwb25zZVwiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzaG93NTEyQVJlc3BvbnNlXCI+ICAgICAgICBcclxuICAgICAgICAgICAgPHAtdGFibGUgI2R0IFt2YWx1ZV09XCJ1aTUxMkFSZXNwb25zZUxpc3RcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZCBhcHAtZGF0YXRhYmxlIGlvbi1wYWRkaW5nLXRvcFwiIFxyXG4gICAgICAgICAgICBbY29sdW1uc109XCJjb2w1MTJBUmVzcG9uc2VMc3RcIiBbcm93SG92ZXJdPVwidHJ1ZVwiID5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCIgbGV0LWNvbHVtbnM+XHJcbiAgICAgICAgICAgICAgICA8dHI+ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGI+e3tjb2wuaGVhZGVyfX08L2I+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aD4gXHJcbiAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZW1wbG95ZXIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJOYW1lfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5wcm9vZlJlY2lldmVkRGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZWFybmluZ3NCZWdpbkRhdGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVhcm5pbmdzRW5kRGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuYW1vdW50T2ZFYXJuaW5nc319PC90ZD5cclxuICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiNVwiPk5vIFJlY29yZHMgZm91bmQuPC90ZD5cclxuICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvcC10YWJsZT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxkaXY+PGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEucG90ZW50aWFsSXNzdWVzfX08L2gyPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXY+ICAgICAgICBcclxuICAgICAgICAgICAgICAgIFRCRFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxkaXY+PGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuc2VwYXJhdGlvbklzc3Vlc319PC9oMj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXNob3dTZXBJc3N1ZUxpc3RcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzaG93U2VwSXNzdWVMaXN0XCI+ICAgICAgICBcclxuICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwiU2VwSXNzdWVMaWZ0ZWRMaXN0XCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbFByZXZpb3VzSXNzdWVMc3RcIiBbcm93SG92ZXJdPVwidHJ1ZVwiID5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj4gICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7Y29sLmhlYWRlcn19PC9iPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPiBcclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1lbXBsb3llciBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnN0YXJ0RGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnJlYXNvbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnJlcXVhbGlmaWNhdGlvbldhZ2V9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5hY3Rpb25UYWtlbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCI1XCI+Tm8gUmVjb3JkcyBmb3VuZC48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxkaXY+PGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEucHJldmlvdXNEZWNpc2lvbnN9fTwvaDI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFzaG93UHJlSXNzdWVMaXN0XCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiZG90c1wiPjwvaW9uLXNwaW5uZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZiA9IFwic2hvd1ByZUlzc3VlTGlzdFwiPiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8cC10YWJsZSAjZHQgW3ZhbHVlXT1cInByZUlzc3VlTGlzdFwiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkIGFwcC1kYXRhdGFibGUgaW9uLXBhZGRpbmctdG9wXCIgXHJcbiAgICAgICAgICAgICAgICBbY29sdW1uc109XCJjb2xQcmV2aW91c0lzc3VlTHN0XCIgW3Jvd0hvdmVyXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT1cInBhZGRpbmc6IDUwcHg7XCI+ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj57e2NvbC5oZWFkZXJ9fTwvYj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD4gXHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZW1wbG95ZXIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lbXBsb3llck5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5zdGFydERhdGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5yZWFzb259fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5yZXF1YWxpZmljYXRpb25XYWdlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRlbXAgb2YgcHJlSXNzdWVzQWN0aW9uTGlzdC5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJ0ZW1wXCIgI3JlcXVhbGlmeUZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHAtZHJvcGRvd24gW29wdGlvbnNdPVwiYWN0aW9uT3B0aW9uc1wiIGZvcm1Db250cm9sTmFtZT1cImFjdGlvblByZXZpb3VzSXNzdWVcIiBvcHRpb25MYWJlbD1cInRleHRcIiBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiA+PC9wLWRyb3Bkb3duPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgZm9ybUNvbnRyb2xOYW1lPVwiaXNzdWVJZFwiIHZhbHVlID0gXCJ7e2VtcGxveWVyLmlzc3VlSWR9fVwiLz48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiNVwiPk5vIFJlY29yZHMgZm91bmQuPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvcC10YWJsZT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8ZGl2PjxoMj57e3JlcXVhbGlmeUxpZnRJc3N1ZXNEYXRhLm90aGVySXNzdWVzfX08L2gyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd0FsbG93U2VwTGlzdFwiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWYgPSBcInNob3dBbGxvd1NlcExpc3RcIj4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPHAtdGFibGUgI2R0IFt2YWx1ZV09XCJhbGxvd2VkU2VwSXNzdWVMaXN0XCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbEFsbG93SXNzdWVMc3RcIiA+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj57e2NvbC5oZWFkZXJ9fTwvYj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD4gXHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1lbXBsb3llciBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnN0YXJ0RGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnJlYXNvbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmFjdGlvblRha2VufX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjRcIj5ObyBSZWNvcmRzIGZvdW5kLjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPHA+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5yZW1hcmtzfX08L3A+XHJcbiAgICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwXT1cInBheUZvcm1cIiAjcmVxdWFsaWZ5Rm9ybURpcmVjdGl2ZT1cIm5nRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8dGV4dGFyZWEgaWQ9XCJhZGRpdGlvbmFsSW5mb1wiIGF1dG9SZXNpemU9XCJ0cnVlXCIgZm9ybUNvbnRyb2xOYW1lPVwiYWRkaXRpb25hbEluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgIG1heExlbmd0aD1cIjI1NlwiIHJvd3M9XCIzXCIgY29scz1cIjM1XCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbZmllbGRdPVwiYWRkaXRpb25hbEluZm9cIiBbZm9ybV09XCJwYXlGb3JtXCIgW2VyckRlZl09XCJ7cmVxdWlyZWQ6ICdyZXF1aXJlZCd9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiAoY2xpY2spPVwib25Nb2RlbENhbmNlbCgpXCIgdHlwZT1cInJlc2V0XCIgZmlsbD1cIm91dGxpbmVcIj5cclxuICAgICAgICAgICAgICAgIHt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuY2FuY2VsQnV0dG9ufX1cclxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHR5cGU9XCJzdWJtaXRcIiAoY2xpY2spPVwic2F2ZURhdGEoKVwiIGZpbGw9XCJzb2xpZFwiPlxyXG4gICAgICAgICAgICAgICAge3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5zYXZlQnV0dG9ufX1cclxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L3AtZGlhbG9nPlxyXG5cclxuICAgIDxwIGNsYXNzPVwiZm9ybS1sYWJlbFwiPiB7e3JlcXVhbGlmeUxpZnRJc3N1ZXNEYXRhLnF1ZXN0aW9uSGVhZGluZyB8IHRyYW5zbGF0ZX19PC9wPlxyXG4gICAgPGRpdiBjbGFzcz1cImdyaWQgcC1ub2d1dHRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIGNvbG9yPVwic3VjY2Vzc1wiIGZpbGw9XCJvdXRsaW5lXCIgdHlwZT1cInN1Ym1pdFwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5EaWFsb2coKTtcIj5cclxuICAgICAgICBSZXZpZXdcclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9mb3JtPiJdfQ==
950
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMvcmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXF1YWxpZnktbGlmdC1wcmV2aW91cy1pc3N1ZXMvcmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUE0QyxpQkFBaUIsRUFBb0Isa0JBQWtCLEVBQUUsVUFBVSxFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBRzVLLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRzdGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ0t6RCwrQkFBb0Q7SUFDbEQsa0NBQXVDO0lBQ3pDLGlCQUFNOzs7SUFFSiwyQkFBOEUsUUFBQTtJQUN6RSxpQ0FBaUI7SUFBQSxpQkFBSSxFQUFBOzs7SUFPaEIsMEJBQWdDLFFBQUE7SUFDekIsWUFBYztJQUFBLGlCQUFJLEVBQUE7OztJQUFsQixlQUFjO0lBQWQsb0NBQWM7OztJQUZ6QiwwQkFBSTtJQUNBLCtHQUVLO0lBQ1QsaUJBQUs7OztJQUht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LElBQUk7a0JBQVosS0FBSztZQUNJLFlBQVk7a0JBQXJCLE1BQU07WUFDRyxtQkFBbUI7a0JBQTVCLE1BQU07WUFLQSxzQkFBc0I7a0JBRDVCLFNBQVM7bUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztrRkFsQjNDLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvcixGb3JtQnVpbGRlciwgTmdGb3JtLCBOR19WQUxVRV9BQ0NFU1NPUiwgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzLCBVbnR5cGVkRm9ybUFycmF5LCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwnO1xyXG5pbXBvcnQgeyBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL0NsYWltQXBwRW1wUmVxdWVzdE1vZGVsJztcclxuaW1wb3J0IHsgQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xhaW1zL2NsYWltcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2luUmVxdWFsaWZpY2F0aW9uQ3JpdGVyaWFNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9DaW5SZXF1YWxpZmljYXRpb25Dcml0ZXJpYU1vZGVsJztcclxuaW1wb3J0IHsgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUXRyWWVhckVtcGxveWVyV2FnZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvUXRyWWVhckVtcGxveWVyV2FnZU1vZGVsJztcclxuaW1wb3J0IHsgUmVxdWFsaWZ5TGlmdFBhZ2VNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9SZXF1YWxpZnlMaWZ0UGFnZU1vZGVsJztcclxuaW1wb3J0IHsgQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL0NsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwnO1xyXG5pbXBvcnQgeyBFbGVtZW50c01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvRWxlbWVudHNNb2RlbCc7XHJcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFJlcXVhbGlmeUxpZnRJc3N1ZXNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL1JlcXVhbGlmeUxpZnRJc3N1ZXNNb2RlbCc7XHJcbmltcG9ydCB7IFVJNTEyQVJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9VSTUxMkFSZXNwb25zZU1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJlcXVhbGlmeS1saWZ0LXByZXZpb3VzLWlzc3VlcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlcXVhbGlmeS1saWZ0LXByZXZpb3VzLWlzc3Vlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmVxdWFsaWZ5LWxpZnQtcHJldmlvdXMtaXNzdWVzLmNvbXBvbmVudC5jc3MnXSxcclxuICBwcm92aWRlcnM6IFt7XHJcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgIHVzZUV4aXN0aW5nOiBSZXF1YWxpZnlMaWZ0UHJldmlvdXNJc3N1ZXNDb21wb25lbnQsXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFJlcXVhbGlmeUxpZnRQcmV2aW91c0lzc3Vlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIFxyXG4gIHB1YmxpYyBicEVtcGxveWVyV2FnZXNMaXN0PzogQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbFtdID0gW107XHJcbiAgcHVibGljIGJwRW1wbG95ZXJXYWdlc0xpc3RGaWx0ZXJlZD86IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBhbGxvd2VkU2VwSXNzdWVMaXN0PzogQ2luUmVxdWFsaWZpY2F0aW9uQ3JpdGVyaWFNb2RlbFtdID0gW107XHJcbiAgcHVibGljIHByZUlzc3VlTGlzdD86IENpblJlcXVhbGlmaWNhdGlvbkNyaXRlcmlhTW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBzZXBJc3N1ZUxpZnRlZExpc3Q/OiBDaW5SZXF1YWxpZmljYXRpb25Dcml0ZXJpYU1vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgdWk1MTJBUmVzcG9uc2VMaXN0PzogVUk1MTJBUmVzcG9uc2VNb2RlbFtdID0gW107XHJcbiAgcHVibGljIGJlYW5MaXN0PzogQ2luUmVxdWFsaWZpY2F0aW9uQ3JpdGVyaWFNb2RlbFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uOiBFbGVtZW50c01vZGVsO1xyXG4gIEBJbnB1dCgpIGNvbXBvbmVudERhdGE6c3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XHJcbiAgQE91dHB1dCgpIG1vZGVsRGlzcGxheSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICBAT3V0cHV0KCkgb25Db21wbGV0ZVJlcXVhbGlmeSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIHJlcXVhbGlmeUxpZnRJc3N1ZXNEYXRhOlJlcXVhbGlmeUxpZnRJc3N1ZXNNb2RlbDtcclxuXHJcbiAgQFZpZXdDaGlsZCgncmVxdWFsaWZ5Rm9ybURpcmVjdGl2ZScsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHB1YmxpYyByZXF1YWxpZnlGb3JtRGlyZWN0aXZlOiBOZ0Zvcm07XHJcblxyXG4gIHNzbjogc3RyaW5nO1xyXG4gIGNvbHM6IGFueVtdO1xyXG4gIGNvbEFsbG93SXNzdWVMc3Q6IGFueVtdO1xyXG4gIGNvbFByZXZpb3VzSXNzdWVMc3Q6IGFueVtdO1xyXG4gIGNvbDUxMkFSZXNwb25zZUxzdDogYW55W107XHJcbiAgY29sQmVhbkxzdDogYW55W11cclxuXHJcbiAgcHVibGljIHNob3dXYWdlc0xpc3QgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dBbGxvd1NlcExpc3QgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dQcmVJc3N1ZUxpc3QgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dTZXBJc3N1ZUxpc3QgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3c1MTJBUmVzcG9uc2UgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dCZWFuTGlzdCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgZW1wUHJvdmlkZWRXYWdlcyA6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgYWN0aW9uT3B0aW9ucyA6IGFueVtdO1xyXG4gIHB1YmxpYyBzaG93RGF0YTpib29sZWFuID0gZmFsc2U7XHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHVibGljIGNzOiBDbGFpbVNlcnZpY2UsIHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLCBwdWJsaWMgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHVibGljIGZiOiBGb3JtQnVpbGRlciwgcHVibGljIGxvZ2dlcjpMb2dnZXJTZXJ2aWNlKSB7IH1cclxuXHJcbiAgcHVibGljIHBheUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgIHByZUlzc3Vlc0FjdGlvbkxpc3Q6IHRoaXMuZmIuYXJyYXkoW10pLFxyXG4gICAgYmVhbkFjdGlvbkxpc3Q6IHRoaXMuZmIuYXJyYXkoW10pLFxyXG4gICAgYWRkaXRpb25hbEluZm86IFsnJywgbnVsbF1cclxuICB9KTtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBsZXQgc3NuTGFzdEZvdXJGcm9tRGI6IHN0cmluZztcclxuICAgIGlmKHRoaXMubHMuaXNDbGFpbWFudCgpID09PSB0cnVlKXtcclxuICAgICAgc3NuTGFzdEZvdXJGcm9tRGIgPSB0aGlzLmxzLmdldFVzZXIoKS5zc24uc3Vic3RyaW5nKDUsOSlcclxuICAgIH1cclxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdxdWVzdGlvbiBhcyBpbnB1dCB2YWx1ZSBpcyA6ICcsIHRoaXMucXVlc3Rpb24pO1xyXG4gICAgdGhpcy5mb3JtLmFkZENvbnRyb2woJ3JlcXVhbGlmeVJlcUhpZGRlbicsIG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCxbVmFsaWRhdG9ycy5yZXF1aXJlZFRydWUsVmFsaWRhdG9ycy5yZXF1aXJlZF0pKTtcclxuICAgIHRoaXMucXVlc3Rpb24ubmFtZT1cInJlcXVhbGlmeVJlcUhpZGRlblwiO1xyXG4gICAgdGhpcy5sb2FkQmFzZVBlcmlvZFdhZ2VzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRSZXF1YWxpZnlMaWZ0SXNzdWVzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRBbGxvd1NlcFByZXZpb3VzSXNzdWVzRm9yU1NOKCk7XHJcbiAgICB0aGlzLmxvYWRNYXN0ZXJEYXRhKCk7XHJcbiAgICB0aGlzLmxvYWRVSTUxMkFSZXNwb25zZXMoKTtcclxuXHJcbiAgICB0aGlzLmNvbEFsbG93SXNzdWVMc3QgPSBbXHJcbiAgICAgIHtoZWFkZXIgOiAnRW1wbG95ZXIgTmFtZSd9LFxyXG4gICAgICB7aGVhZGVyIDogJ0lzc3VlIFN0YXJ0IERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdJc3N1ZSBEZXNjcmlwdGlvbid9LFxyXG4gICAgICB7aGVhZGVyIDogJ0RlY2lzaW9uJ31cclxuICAgIF07XHJcblxyXG4gICAgdGhpcy5jb2xQcmV2aW91c0lzc3VlTHN0ID0gW1xyXG4gICAgICB7aGVhZGVyIDogJ0VtcGxveWVyIE5hbWUnfSxcclxuICAgICAge2hlYWRlciA6ICdJc3N1ZSBTdGFydCBEYXRlJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnSXNzdWUgRGVzY3JpcHRpb24nfSxcclxuICAgICAge2hlYWRlciA6ICdSZXF1YWxpZnlpbmcgQW1vdW50KCQpJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnQWN0aW9uJ31cclxuICAgIF07XHJcblxyXG4gICAgdGhpcy5jb2w1MTJBUmVzcG9uc2VMc3QgPSBbXHJcbiAgICAgIHtoZWFkZXIgOiAnRW1wbG95ZXIgTmFtZSd9LFxyXG4gICAgICB7aGVhZGVyIDogJ1Byb29mIHJlY2VpdmVkIERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdFYXJuaW5nIEJlZ2luIERhdGUnfSxcclxuICAgICAge2hlYWRlciA6ICdFYXJuaW5nIEVuZCBEYXRlJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnQW1vdW50ICgkKSd9XHJcbiAgICBdO1xyXG5cclxuICAgIHRoaXMuY29sQmVhbkxzdCA9IFtcclxuICAgICAge2hlYWRlciA6ICdFbXBsb3llciBOYW1lJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnRGF0ZSBvZiBTZXBhcmF0aW9uJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnUmVhc29uIGZvciBTZXBhcmF0aW9uJ30sXHJcbiAgICAgIHtoZWFkZXIgOiAnUmVxdWlyZWQgV2FnZSAoJCknfSxcclxuICAgICAge2hlYWRlciA6ICdBY3Rpb24nfVxyXG4gICAgXVxyXG4gICAgY29uc3Qgb2JqID0gSlNPTi5wYXJzZSh0aGlzLmNvbXBvbmVudERhdGEpO1xyXG4gICAgdGhpcy5yZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YSA9IG9iajtcclxuICAgIHRoaXMucmVxdWFsaWZ5UmVxSGlkZGVuLnNldFZhbHVlKG51bGwpO1xyXG5cclxuICB9XHJcblxyXG4gIGxvYWRVSTUxMkFSZXNwb25zZXMoKSB7XHJcbiAgICB0aGlzLmNzLmdldFVJNTEyQVJlc3BvbnNlcygpLnN1YnNjcmliZShcclxuICAgICAgcmVzID0+IHtcclxuICAgICAgICBsZXQgcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWxGcm9tU2VydmljZSA6IFJlcXVhbGlmeUxpZnRQYWdlTW9kZWw9ICByZXM7XHJcbiAgICAgICAgdGhpcy51aTUxMkFSZXNwb25zZUxpc3QgPSByZXF1YWxpZnlMaWZ0SXNzdWVNb2RlbEZyb21TZXJ2aWNlLnVpNTEyQVJlc3BvbnNlTGlzdDtcclxuICAgICAgICB0aGlzLnNob3c1MTJBUmVzcG9uc2UgPSB0cnVlO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgXHJcbiAgbG9hZE1hc3RlckRhdGEoKSB7XHJcbiAgICB0aGlzLmNzLmdldFJlcXVhbGlmeUNyaXRlcmlhRW51bSgpO1xyXG4gICAgdGhpcy5jcy5nZXRBY3Rpb25zTGlzdCgpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLmFjdGlvbk9wdGlvbnMgPSByZXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvYWRCYXNlUGVyaW9kV2FnZXNGb3JTU04oKSB7XHJcbiAgICBsZXQgY2xtRW1wUmVxdWVzdE1vZGVsOiBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCA9IG5ldyBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCgpO1xyXG4gICAgdGhpcy5jcy5sb2FkQmFzZVBlcmlvZFdhZ2VzKGNsbUVtcFJlcXVlc3RNb2RlbCkuc3Vic2NyaWJlKFxyXG4gICAgICByZXMgPT4ge1xyXG4gICAgICAgIGxldCB0ZW1wIDogQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsID0gcmVzO1xyXG4gICAgICAgIHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdCA9IHRlbXAuYnBFbXBMaXN0O1xyXG4gICAgICAgIGlmKHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdCl7XHJcbiAgICAgICAgICB0aGlzLmJwRW1wbG95ZXJXYWdlc0xpc3RGaWx0ZXJlZCA9IHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdC5maWx0ZXIoYyA9PiBjLm9zYUJwRW1wbG95ZXJGbGFnID09PSAnMCcpO1xyXG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ2JwIGxpc3QgYnBFbXBsb3llcldhZ2VzTGlzdEZpbHRlcmVkICcsIHRoaXMuYnBFbXBsb3llcldhZ2VzTGlzdEZpbHRlcmVkKTtcclxuICAgICAgICAgIGxldCBxdHJZZWFyTGlzdCA6IFF0clllYXJFbXBsb3llcldhZ2VNb2RlbFtdID0gW107XHJcbiAgICAgICAgICBpZih0aGlzLmJwRW1wbG95ZXJXYWdlc0xpc3RGaWx0ZXJlZFswXT8uZW1wbG95ZXJQcm92aWRlZFdhZ2VzID09PSBudWxsKXtcclxuICAgICAgICAgICB0aGlzLmVtcFByb3ZpZGVkV2FnZXMgPSBmYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHF0clllYXJMaXN0ID0gdGhpcy5icEVtcGxveWVyV2FnZXNMaXN0RmlsdGVyZWRbMF0/LmVtcGxveWVyUHJvdmlkZWRXYWdlcz8ud2FnZXNMaXN0UXRyV2lzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgaWYocXRyWWVhckxpc3QgIT0gbnVsbCAmJiBxdHJZZWFyTGlzdC5sZW5ndGggPiAwKXtcclxuICAgICAgICAgICAgICB0aGlzLmNvbHMgPSBbXHJcbiAgICAgICAgICAgICAgICB7IGhlYWRlcjogJ0VtcGxveWVyIE5hbWUnIH0sXHJcbiAgICAgICAgICAgICAgICB7IGhlYWRlcjogcXRyWWVhckxpc3RbMF0ucXRyWWVhckRpc3BsYXlTdHJpbmcgfSxcclxuICAgICAgICAgICAgICAgIHsgaGVhZGVyOiBxdHJZZWFyTGlzdFsxXS5xdHJZZWFyRGlzcGxheVN0cmluZyB9LFxyXG4gICAgICAgICAgICAgICAgeyBoZWFkZXI6IHF0clllYXJMaXN0WzJdLnF0clllYXJEaXNwbGF5U3RyaW5nIH0sXHJcbiAgICAgICAgICAgICAgICB7IGhlYWRlcjogcXRyWWVhckxpc3RbM10ucXRyWWVhckRpc3BsYXlTdHJpbmcgfSxcclxuICAgICAgICAgICAgICAgIHsgaGVhZGVyOiBxdHJZZWFyTGlzdFs0XS5xdHJZZWFyRGlzcGxheVN0cmluZyB9XHJcbiAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zaG93V2FnZXNMaXN0ID0gdHJ1ZTsgICBcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiBcclxuICBsb2FkQWxsb3dTZXBQcmV2aW91c0lzc3Vlc0ZvclNTTigpIHtcclxuICAgIHRoaXMuY3MuZ2V0QWxsb3dTZXBQcmV2aW91c0lzc3Vlc0ZvclNTTigpLnN1YnNjcmliZShcclxuICAgICAgcmVzMSA9PiB7XHJcbiAgICAgICAgbGV0IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsMTogUmVxdWFsaWZ5TGlmdFBhZ2VNb2RlbCA9IG5ldyBSZXF1YWxpZnlMaWZ0UGFnZU1vZGVsKCk7XHJcbiAgICAgICAgcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWwxID0gcmVzMTsgICAgICAgXHJcbiAgICAgICAgdGhpcy5hbGxvd2VkU2VwSXNzdWVMaXN0ID0gcmVxdWFsaWZ5TGlmdElzc3VlTW9kZWwxLmFsbG93ZWRTZXBJc3N1ZUxpc3Q7XHJcbiAgICAgICAgaWYodGhpcy5hbGxvd2VkU2VwSXNzdWVMaXN0KXtcclxuICAgICAgICAgIHRoaXMuc2hvd0FsbG93U2VwTGlzdCA9IHRydWU7XHJcbiAgICAgICAgfSBcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gXHJcbiAgbG9hZFJlcXVhbGlmeUxpZnRJc3N1ZXNGb3JTU04oKSB7XHJcbiAgICB0aGlzLmNzLmdldFJlcXVhbGlmeUxpZnRJc3N1ZXNGb3JTU04oKS5zdWJzY3JpYmUoXHJcbiAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgbGV0IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsRnJvbVNlcnZpY2UgOiBSZXF1YWxpZnlMaWZ0UGFnZU1vZGVsPSAgcmVzO1xyXG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdsb2FkUmVxdWFsaWZ5TGlmdElzc3Vlc0ZvclNTTiA9PT09JywgcmVzKTtcclxuICAgICAgICB0aGlzLnByZUlzc3VlTGlzdCA9IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsRnJvbVNlcnZpY2UucHJlSXNzdWVMaXN0O1xyXG4gICAgICAgIGlmKHRoaXMucHJlSXNzdWVMaXN0KXtcclxuICAgICAgICAgIHRoaXMuc2hvd1ByZUlzc3VlTGlzdCA9IHRydWU7XHJcbiAgICAgICAgICBmb3IobGV0IGRhdGEgb2YgdGhpcy5wcmVJc3N1ZUxpc3Qpe1xyXG4gICAgICAgICAgICBjb25zdCB0ZW1wSW5mbyA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgICAgIGVtcGxveWVyTmFtZTogW2RhdGEuZW1wbG95ZXJOYW1lXSwgXHJcbiAgICAgICAgICAgICAgc3RhcnREYXRlOiBbZGF0YS5zdGFydERhdGVdLFxyXG4gICAgICAgICAgICAgIHJlYXNvbjogW2RhdGEucmVhc29uXSxcclxuICAgICAgICAgICAgICByZXF1YWxpZmljYXRpb25XYWdlOiBbZGF0YS5yZXF1YWxpZmljYXRpb25XYWdlXSxcclxuICAgICAgICAgICAgICBlbXBsb3llcklkOiBbZGF0YS5lbXBsb3llcklkXSxcclxuICAgICAgICAgICAgICBjbGFpbUFwcEVtcGxveWVySWQ6IFtkYXRhLmNsYWltQXBwRW1wbG95ZXJJZF0sXHJcbiAgICAgICAgICAgICAgYWN0aW9uUHJldmlvdXNJc3N1ZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICAgICAgICBpc3N1ZUlkOiBbZGF0YS5pc3N1ZUlkXVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB0aGlzLnByZUlzc3Vlc0FjdGlvbkxpc3QucHVzaCh0ZW1wSW5mbyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygncHJlIElzc3VlIEFjdGlvbiBMaXN0ID09ICcsIHRoaXMucHJlSXNzdWVzQWN0aW9uTGlzdCk7XHJcbiAgICAgICAgfSBcclxuICAgICAgICB0aGlzLnNlcElzc3VlTGlmdGVkTGlzdCA9IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsRnJvbVNlcnZpY2UucHJlTGlmdGVkSXNzdWVMaXN0O1xyXG4gICAgICAgIHRoaXMuc2hvd1NlcElzc3VlTGlzdCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5iZWFuTGlzdCA9IHJlcXVhbGlmeUxpZnRJc3N1ZU1vZGVsRnJvbVNlcnZpY2UuYmVhbkxpc3Q7XHJcbiAgICAgICAgdGhpcy5zaG93QmVhbkxpc3QgPSB0cnVlO1xyXG4gICAgICAgIGZvcihsZXQgZGF0YSBvZiB0aGlzLmJlYW5MaXN0KXtcclxuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdkYXRhID09ICcsIGRhdGEpO1xyXG4gICAgICAgICAgLy8gaWYoZGF0YS5hY3Rpb25UYWtlbiA9PT0gbnVsbCl7XHJcbiAgICAgICAgICAgIGNvbnN0IHRlbXBJbmZvID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgICAgZW1wbG95ZXJOYW1lOiBbZGF0YS5lbXBsb3llck5hbWVdLCBcclxuICAgICAgICAgICAgICBzdGFydERhdGU6IFtkYXRhLnN0YXJ0RGF0ZV0sXHJcbiAgICAgICAgICAgICAgcmVhc29uOiBbZGF0YS5yZWFzb25dLFxyXG4gICAgICAgICAgICAgIHJlcXVhbGlmaWNhdGlvbldhZ2U6IFtkYXRhLnJlcXVhbGlmaWNhdGlvbldhZ2VdLFxyXG4gICAgICAgICAgICAgIGFjdGlvblRha2VuIDogW2RhdGEuYWN0aW9uVGFrZW5dLFxyXG4gICAgICAgICAgICAgIGFjdGlvblRha2VuUG90ZW50aWFsSXNzdWU6IFsnJyxkYXRhLmFjdGlvblRha2VuID8gbnVsbDpWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICAgICAgICBjbGFpbUFwcEVtcGxveWVySWQ6IFtkYXRhLmNsYWltQXBwRW1wbG95ZXJJZF1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgdGhpcy5iZWFuQWN0aW9uTGlzdC5wdXNoKHRlbXBJbmZvKTtcclxuICAgICAgICAgIC8vIH1cclxuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdiZWFuIGFjdGlvbiBsaXN0IGlzICcsIHRoaXMuYmVhbkFjdGlvbkxpc3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuRGlhbG9nKCl7XHJcbiAgICB0aGlzLnNob3dEYXRhID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHNhdmVEYXRhKCl7XHJcbiAgICBpZighdGhpcy5wYXlGb3JtLnZhbGlkKXtcclxuICAgICAgdGhpcy5sb2dnZXIuZGVidWcodGhpcy5wYXlGb3JtKTtcclxuICAgICAgdGhpcy5yZXF1YWxpZnlGb3JtRGlyZWN0aXZlLm9uU3VibWl0KG51bGwpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnU2F2ZSBEYXRhIGZvciBWYWxpZCBGb3JtJyx0aGlzLnBheUZvcm0pO1xyXG4gICAgdGhpcy5mb3JtLmFkZENvbnRyb2woJ3ByZUlzc3Vlc0FjdGlvbkxpc3RzJywgdGhpcy5wcmVJc3N1ZXNBY3Rpb25MaXN0KTtcclxuICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdiZWFuQWN0aW9uTGlzdCcsIHRoaXMuYmVhbkFjdGlvbkxpc3QpXHJcbiAgICB0aGlzLmZvcm0uYWRkQ29udHJvbCgnYWRkaXRpb25hbEluZm8nLCB0aGlzLmFkZGl0aW9uYWxJbmZvKTtcclxuICAgIHRoaXMuc2hvd0RhdGEgPSBmYWxzZTtcclxuICAgIHRoaXMucmVxdWFsaWZ5UmVxSGlkZGVuLnNldFZhbHVlKHRydWUpO1xyXG4gICAgdGhpcy5tb2RlbERpc3BsYXkuZW1pdCh0cnVlKTtcclxuICAgIHRoaXMub25Db21wbGV0ZVJlcXVhbGlmeS5lbWl0KHRoaXMucGF5Rm9ybSk7XHJcbiAgfVxyXG5cclxuICBvbk1vZGVsQ2FuY2VsKCkge1xyXG4gICAgdGhpcy5zaG93RGF0YSA9IGZhbHNlO1xyXG4gICAgY29uc29sZS5sb2coXCJvbk1vZGVsQ2FuY2VsXCIsdGhpcy5iZWFuQWN0aW9uTGlzdC5jb250cm9scylcclxuICAgIGlmKHRoaXMuYmVhbkFjdGlvbkxpc3QuY29udHJvbHMubGVuZ3RoPT09IDAgJiYgdGhpcy5wcmVJc3N1ZXNBY3Rpb25MaXN0LmNvbnRyb2xzLmxlbmd0aCA9PT0gMCl7XHJcbiAgICAgIHRoaXMucmVxdWFsaWZ5UmVxSGlkZGVuLnNldFZhbHVlKHRydWUpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMucmVxdWFsaWZ5UmVxSGlkZGVuLnNldFZhbHVlKG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hhbmdlQWN0aW9uRm9ySXNzdWVEcm9wZG93bihldmVudCl7XHJcbiAgICBpZihldmVudC52YWx1ZS52YWx1ZSA9PT0gJ1BSRlInKXtcclxuICAgICAgICB0aGlzLmFkZGl0aW9uYWxJbmZvLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgIH1lbHNle1xyXG4gICAgICBsZXQgZXhpc3QgPSBmYWxzZTtcclxuICAgICAgZm9yKGxldCBlbGVtZW50IG9mIHRoaXMuYmVhbkFjdGlvbkxpc3QuY29udHJvbHMpe1xyXG4gICAgICAgIGlmKGVsZW1lbnQudmFsdWUuYWN0aW9uVGFrZW5Qb3RlbnRpYWxJc3N1ZSA9PT0gJ1BSRlInKXtcclxuICAgICAgICAgIGV4aXN0ID0gdHJ1ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZighZXhpc3Qpe1xyXG4gICAgICAgIHRoaXMuYWRkaXRpb25hbEluZm8uY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgICAgIHRoaXMucGF5Rm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgdGhpcy5hZGRpdGlvbmFsSW5mby51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgXHJcbiAgfVxyXG4gIGdldCBwcmVJc3N1ZXNBY3Rpb25MaXN0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucGF5Rm9ybS5jb250cm9sc1sncHJlSXNzdWVzQWN0aW9uTGlzdCddIGFzIFVudHlwZWRGb3JtQXJyYXk7XHJcbiAgfVxyXG5cclxuICBnZXQgYmVhbkFjdGlvbkxpc3QoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wYXlGb3JtLmNvbnRyb2xzWydiZWFuQWN0aW9uTGlzdCddIGFzIFVudHlwZWRGb3JtQXJyYXk7XHJcbiAgfVxyXG5cclxuICBnZXQgYWRkaXRpb25hbEluZm8oKXtcclxuICAgIHJldHVybiB0aGlzLnBheUZvcm0uY29udHJvbHNbJ2FkZGl0aW9uYWxJbmZvJ10gYXMgVW50eXBlZEZvcm1Db250cm9sO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHJlcXVhbGlmeVJlcUhpZGRlbigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm0uZ2V0KCdyZXF1YWxpZnlSZXFIaWRkZW4nKVxyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2U6IEZ1bmN0aW9uID0gKHZhbHVlOiBTdHJpbmcpID0+IHtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIG9uVG91Y2g6IEZ1bmN0aW9uID0gKCkgPT4ge1xyXG4gIH07XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm5cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuXHJcbiAgfVxyXG59XHJcbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiICNyZXF1YWxpZnlGb3JtRGlyZWN0aXZlID0gXCJuZ0Zvcm1cIj5cclxuICAgIDxwLWRpYWxvZyBtb2RhbD1cInRydWVcIiBbc2hvd0hlYWRlcl09XCJmYWxzZVwiIGFwcGVuZFRvPVwiYm9keVwiIFticmVha3BvaW50c109XCJ7Jzk2MHB4JzogJzgwdncnLCAnNjQwcHgnOiAnMTAwdncnfVwiIFtzdHlsZV09XCJ7d2lkdGg6ICc2MHZ3J31cIiBbdmlzaWJsZV09XCJzaG93RGF0YVwiPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLWxlZnQ6IC01cHg7XCI+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGgxPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEucGFnZVRpdGxlfX08L2gxPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuYmFzZVdhZ2VJbmZvfX08L2gyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd1dhZ2VzTGlzdFwiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93V2FnZXNMaXN0XCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZiA9IFwiYnBFbXBsb3llcldhZ2VzTGlzdEZpbHRlcmVkLmxlbmd0aCA9PT0gMCB8fCAhZW1wUHJvdmlkZWRXYWdlcyBcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIFJlY29yZHMgZm91bmQuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJicEVtcGxveWVyV2FnZXNMaXN0RmlsdGVyZWQgJiYgZW1wUHJvdmlkZWRXYWdlc1wiPiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwiYnBFbXBsb3llcldhZ2VzTGlzdEZpbHRlcmVkXCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sc1wiIFtyb3dIb3Zlcl09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7Y29sLmhlYWRlcn19PC9iPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWVtcGxveWVyIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyRGF0YS5kaXNwbGF5TmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJQcm92aWRlZFdhZ2VzPy53YWdlc0xpc3RRdHJXaXNlWzBdPy53YWdlQW1vdW50IHwgY3VycmVuY3l9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyUHJvdmlkZWRXYWdlcz8ud2FnZXNMaXN0UXRyV2lzZVsxXT8ud2FnZUFtb3VudCB8IGN1cnJlbmN5fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lbXBsb3llclByb3ZpZGVkV2FnZXM/LndhZ2VzTGlzdFF0cldpc2VbMl0/LndhZ2VBbW91bnQgfCBjdXJyZW5jeX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIuZW1wbG95ZXJQcm92aWRlZFdhZ2VzPy53YWdlc0xpc3RRdHJXaXNlWzNdPy53YWdlQW1vdW50IHwgY3VycmVuY3l9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyUHJvdmlkZWRXYWdlcz8ud2FnZXNMaXN0UXRyV2lzZVs0XT8ud2FnZUFtb3VudCB8IGN1cnJlbmN5fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxkaXY+PGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuZWFybmluZ3NQcm9vZn19PC9oMj48L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXNob3c1MTJBUmVzcG9uc2VcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzaG93NTEyQVJlc3BvbnNlXCI+ICBcclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWYgPSBcIiF1aTUxMkFSZXNwb25zZUxpc3RcIj4gXHJcbiAgICAgICAgICAgICAgICAgIDxwPk5vIFJlY29yZHMgZm91bmQuPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJ1aTUxMkFSZXNwb25zZUxpc3RcIj4gXHJcbiAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwidWk1MTJBUmVzcG9uc2VMaXN0XCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sNTEyQVJlc3BvbnNlTHN0XCIgW3Jvd0hvdmVyXT1cInRydWVcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7Y29sLmhlYWRlcn19PC9iPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWVtcGxveWVyIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVtcGxveWVyTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIucHJvb2ZSZWNpZXZlZERhdGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmVhcm5pbmdzQmVnaW5EYXRlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lYXJuaW5nc0VuZERhdGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLmFtb3VudE9mRWFybmluZ3N9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgIDwvcC10YWJsZT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcblxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxkaXY+PGgyPnt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEucG90ZW50aWFsSXNzdWVzfX08L2gyPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd0JlYW5MaXN0XCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiZG90c1wiPjwvaW9uLXNwaW5uZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZiA9IFwic2hvd0JlYW5MaXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJiZWFuTGlzdC5sZW5ndGggPT09IDBcIj4gXHJcbiAgICAgICAgICAgICAgICAgIDxwPk5vIFJlY29yZHMgZm91bmQuPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJiZWFuTGlzdCAmJiBiZWFuTGlzdC5sZW5ndGggPiAwXCI+ICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwiYmVhbkFjdGlvbkxpc3QuY29udHJvbHNcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZCBhcHAtZGF0YXRhYmxlIGlvbi1wYWRkaW5nLXRvcFwiIFxyXG4gICAgICAgICAgICAgICAgICBbY29sdW1uc109XCJjb2xCZWFuTHN0XCIgW3Jvd0hvdmVyXT1cInRydWVcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7Y29sLmhlYWRlcn19PC9iPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWVtcGxveWVyIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVtcGxveWVyIG9mIGJlYW5BY3Rpb25MaXN0LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4XCIgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiPiAgIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci52YWx1ZS5lbXBsb3llck5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnZhbHVlLnN0YXJ0RGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIudmFsdWUucmVhc29ufX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci52YWx1ZS5yZXF1YWxpZmljYXRpb25XYWdlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9IFwiZW1wbG95ZXIudmFsdWUuYWN0aW9uVGFrZW4gIT0gbnVsbFwiPnt7ZW1wbG95ZXIudmFsdWUuYWN0aW9uVGFrZW59fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOjMwJVwiICpuZ0lmPSBcImVtcGxveWVyLnZhbHVlLmFjdGlvblRha2VuID09PSBudWxsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwXT1cImVtcGxveWVyXCIgI3JlcXVhbGlmeUZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1kcm9wZG93biBbb3B0aW9uc109XCJhY3Rpb25PcHRpb25zXCIgZm9ybUNvbnRyb2xOYW1lPVwiYWN0aW9uVGFrZW5Qb3RlbnRpYWxJc3N1ZVwiIG9wdGlvbkxhYmVsPVwidGV4dFwiIGFwcGVuZFRvPVwiYm9keVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiAob25DaGFuZ2UpPVwiY2hhbmdlQWN0aW9uRm9ySXNzdWVEcm9wZG93bigkZXZlbnQpXCIgcmVxdWlyZWQ+PC9hcHAtZHJvcGRvd24+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdlbXBsb3llci5jb250cm9sc1tcImFjdGlvblRha2VuUG90ZW50aWFsSXNzdWVcIl0nIFtmb3JtXT1cInJlcXVhbGlmeUZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ3JlcXVpcmVkJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW1wbG95ZXIuY29udHJvbHNbJ2FjdGlvblRha2VuUG90ZW50aWFsSXNzdWUnXS5pbnZhbGlkXCIgc3R5bGU9XCJjb2xvcjojZTYwZTBlOyBtYXJnaW4tbGVmdDogMHB4OyBmb250LXNpemU6IDE1cHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBmb3JtQ29udHJvbE5hbWU9XCJjbGFpbUFwcEVtcGxveWVySWRcIiB2YWx1ZSA9IFwie3tlbXBsb3llci52YWx1ZS5jbGFpbUFwcEVtcGxveWVySWR9fVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGRpdj48aDI+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5zZXBhcmF0aW9uSXNzdWVzfX08L2gyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd1NlcElzc3VlTGlzdFwiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWYgPSBcInNob3dTZXBJc3N1ZUxpc3RcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWYgPSBcInNlcElzc3VlTGlmdGVkTGlzdC5sZW5ndGggPT09IDBcIj4gXHJcbiAgICAgICAgICAgICAgICAgIDxwPk5vIFJlY29yZHMgZm91bmQuPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzZXBJc3N1ZUxpZnRlZExpc3QgJiYgc2VwSXNzdWVMaWZ0ZWRMaXN0Lmxlbmd0aCA+IDBcIj4gICAgXHJcbiAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwic2VwSXNzdWVMaWZ0ZWRMaXN0XCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sUHJldmlvdXNJc3N1ZUxzdFwiIFtyb3dIb3Zlcl09XCJ0cnVlXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0cj4gICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj57e2NvbC5oZWFkZXJ9fTwvYj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPiBcclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1lbXBsb3llciBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lbXBsb3llck5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnN0YXJ0RGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIucmVhc29ufX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5yZXF1YWxpZmljYXRpb25XYWdlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5hY3Rpb25UYWtlbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGRpdj48aDI+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5wcmV2aW91c0RlY2lzaW9uc319PC9oMj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXNob3dQcmVJc3N1ZUxpc3RcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzaG93UHJlSXNzdWVMaXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJwcmVJc3N1ZUxpc3QubGVuZ3RoID09PSAwXCI+IFxyXG4gICAgICAgICAgICAgICAgICA8cD5ObyBSZWNvcmRzIGZvdW5kLjwvcD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZiA9IFwicHJlSXNzdWVMaXN0ICYmIHByZUlzc3VlTGlzdC5sZW5ndGggPiAwXCI+ICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDxwLXRhYmxlICNkdCBbdmFsdWVdPVwicHJlSXNzdWVzQWN0aW9uTGlzdC5jb250cm9sc1wiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkIGFwcC1kYXRhdGFibGUgaW9uLXBhZGRpbmctdG9wXCIgXHJcbiAgICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbFByZXZpb3VzSXNzdWVMc3RcIiBbcm93SG92ZXJdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT1cInBhZGRpbmc6IDUwcHg7XCI+ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+e3tjb2wuaGVhZGVyfX08L2I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZW1wbG95ZXIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6MjAlXCI+e3tlbXBsb3llci52YWx1ZS5lbXBsb3llck5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOjIwJVwiPnt7ZW1wbG95ZXIudmFsdWUuc3RhcnREYXRlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDoyMCVcIj57e2VtcGxveWVyLnZhbHVlLnJlYXNvbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6MTAlXCI+e3tlbXBsb3llci52YWx1ZS5yZXF1YWxpZmljYXRpb25XYWdlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOjMwJVwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJlbXBsb3llclwiICNyZXF1YWxpZnlGb3JtRGlyZWN0aXZlPVwibmdGb3JtXCI+ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtZHJvcGRvd24gW29wdGlvbnNdPVwiYWN0aW9uT3B0aW9uc1wiIGZvcm1Db250cm9sTmFtZT1cImFjdGlvblByZXZpb3VzSXNzdWVcIiBvcHRpb25MYWJlbD1cInRleHRcIiBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdXRvRGlzcGxheUZpcnN0XT1cImZhbHNlXCIgcmVxdWlyZWQ+PC9hcHAtZHJvcGRvd24+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdlbXBsb3llci5jb250cm9sc1tcImFjdGlvblByZXZpb3VzSXNzdWVcIl0nIFtmb3JtXT1cInJlcXVhbGlmeUZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ3JlcXVpcmVkJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW1wbG95ZXIuY29udHJvbHNbJ2FjdGlvblByZXZpb3VzSXNzdWUnXS5pbnZhbGlkXCIgc3R5bGU9XCJjb2xvcjojZTYwZTBlOyBtYXJnaW4tbGVmdDogMHB4OyBmb250LXNpemU6IDE1cHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGZvcm1Db250cm9sTmFtZT1cImlzc3VlSWRcIiB2YWx1ZSA9IFwie3tlbXBsb3llci52YWx1ZS5pc3N1ZUlkfX1cIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGRpdj48aDI+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5vdGhlcklzc3Vlc319PC9oMj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXNob3dBbGxvd1NlcExpc3RcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJzaG93QWxsb3dTZXBMaXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmID0gXCJhbGxvd2VkU2VwSXNzdWVMaXN0Lmxlbmd0aCA9PT0gMFwiPiBcclxuICAgICAgICAgICAgICAgICAgPHA+Tm8gUmVjb3JkcyBmb3VuZC48L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWYgPSBcImFsbG93ZWRTZXBJc3N1ZUxpc3QgJiYgYWxsb3dlZFNlcElzc3VlTGlzdC5sZW5ndGggPiAwXCI+ICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgPHAtdGFibGUgI2R0IFt2YWx1ZV09XCJhbGxvd2VkU2VwSXNzdWVMaXN0XCIgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXN0cmlwZWQgYXBwLWRhdGF0YWJsZSBpb24tcGFkZGluZy10b3BcIiBcclxuICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sQWxsb3dJc3N1ZUxzdFwiID5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCIgbGV0LWNvbHVtbnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8dHI+ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+e3tjb2wuaGVhZGVyfX08L2I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RyPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1lbXBsb3llciBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5lbXBsb3llck5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2VtcGxveWVyLnN0YXJ0RGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZW1wbG95ZXIucmVhc29ufX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tlbXBsb3llci5hY3Rpb25UYWtlbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuXHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgPHA+e3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5yZW1hcmtzfX08L3A+XHJcbiAgICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwXT1cInBheUZvcm1cIiAjcmVxdWFsaWZ5Rm9ybURpcmVjdGl2ZT1cIm5nRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8dGV4dGFyZWEgaWQ9XCJhZGRpdGlvbmFsSW5mb1wiIGF1dG9SZXNpemU9XCJ0cnVlXCIgZm9ybUNvbnRyb2xOYW1lPVwiYWRkaXRpb25hbEluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgIG1heExlbmd0aD1cIjI1NlwiIHJvd3M9XCIzXCIgY29scz1cIjM1XCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImFkZGl0aW9uYWxJbmZvLmludmFsaWRcIiBzdHlsZT1cImNvbG9yOiNlNjBlMGU7IG1hcmdpbi1sZWZ0OiAwcHg7IGZvbnQtc2l6ZTogMTVweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0XCI+ICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cIm9uTW9kZWxDYW5jZWwoKVwiIHR5cGU9XCJyZXNldFwiIGZpbGw9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICAgICAgICB7e3JlcXVhbGlmeUxpZnRJc3N1ZXNEYXRhLmNhbmNlbEJ1dHRvbn19XHJcbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgKGNsaWNrKT1cInNhdmVEYXRhKClcIiBmaWxsPVwic29saWRcIj5cclxuICAgICAgICAgICAgICAgIHt7cmVxdWFsaWZ5TGlmdElzc3Vlc0RhdGEuc2F2ZUJ1dHRvbn19XHJcbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9wLWRpYWxvZz5cclxuXHJcbiAgICA8cCBjbGFzcz1cImZvcm0tbGFiZWxcIj4ge3tyZXF1YWxpZnlMaWZ0SXNzdWVzRGF0YS5xdWVzdGlvbkhlYWRpbmcgfCB0cmFuc2xhdGV9fTwvcD5cclxuICAgIDxkaXYgY2xhc3M9XCJncmlkIHAtbm9ndXR0ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwicmVxdWFsaWZ5UmVxSGlkZGVuXCIgcElucHV0VGV4dCBmb3JtQ29udHJvbE5hbWU9XCJyZXF1YWxpZnlSZXFIaWRkZW5cIiBoaWRkZW4gLz5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAoY2xpY2spPVwib3BlbkRpYWxvZygpO1wiPlxyXG4gICAgICAgIFJldmlld1xyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8YXBwLWVycm9yIFtmaWVsZF09J3JlcXVhbGlmeVJlcUhpZGRlbicgW2Zvcm1dPVwicmVxdWFsaWZ5Rm9ybURpcmVjdGl2ZVwiIFtlcnJEZWZdPVwie1xyXG4gICAgICAgICAgcmVxdWlyZWQ6ICdyZXF1aXJlZC4nXHJcbiAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZm9ybT4iXX0=