@angular/common 18.2.5 → 18.2.6

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 (3009) hide show
  1. package/esm2022/http/index.mjs +2 -2
  2. package/esm2022/http/public_api.mjs +2 -2
  3. package/esm2022/http/src/backend.mjs +2 -2
  4. package/esm2022/http/src/client.mjs +5 -5
  5. package/esm2022/http/src/context.mjs +2 -2
  6. package/esm2022/http/src/errors.mjs +2 -2
  7. package/esm2022/http/src/fetch.mjs +5 -5
  8. package/esm2022/http/src/headers.mjs +2 -2
  9. package/esm2022/http/src/interceptor.mjs +5 -5
  10. package/esm2022/http/src/jsonp.mjs +8 -8
  11. package/esm2022/http/src/module.mjs +14 -14
  12. package/esm2022/http/src/params.mjs +2 -2
  13. package/esm2022/http/src/private_export.mjs +2 -2
  14. package/esm2022/http/src/provider.mjs +2 -2
  15. package/esm2022/http/src/request.mjs +2 -2
  16. package/esm2022/http/src/response.mjs +2 -2
  17. package/esm2022/http/src/transfer_cache.mjs +2 -2
  18. package/esm2022/http/src/xhr.mjs +5 -5
  19. package/esm2022/http/src/xsrf.mjs +8 -8
  20. package/esm2022/http/testing/index.mjs +2 -2
  21. package/esm2022/http/testing/public_api.mjs +2 -2
  22. package/esm2022/http/testing/src/api.mjs +2 -2
  23. package/esm2022/http/testing/src/backend.mjs +5 -5
  24. package/esm2022/http/testing/src/module.mjs +6 -6
  25. package/esm2022/http/testing/src/provider.mjs +2 -2
  26. package/esm2022/http/testing/src/request.mjs +2 -2
  27. package/esm2022/index.mjs +2 -2
  28. package/esm2022/public_api.mjs +2 -2
  29. package/esm2022/src/common.mjs +2 -2
  30. package/esm2022/src/common_module.mjs +6 -6
  31. package/esm2022/src/cookie.mjs +2 -2
  32. package/esm2022/src/directives/index.mjs +2 -2
  33. package/esm2022/src/directives/ng_class.mjs +5 -5
  34. package/esm2022/src/directives/ng_component_outlet.mjs +5 -5
  35. package/esm2022/src/directives/ng_for_of.mjs +5 -5
  36. package/esm2022/src/directives/ng_if.mjs +5 -5
  37. package/esm2022/src/directives/ng_optimized_image/asserts.mjs +2 -2
  38. package/esm2022/src/directives/ng_optimized_image/error_helper.mjs +2 -2
  39. package/esm2022/src/directives/ng_optimized_image/image_loaders/cloudflare_loader.mjs +2 -2
  40. package/esm2022/src/directives/ng_optimized_image/image_loaders/cloudinary_loader.mjs +2 -2
  41. package/esm2022/src/directives/ng_optimized_image/image_loaders/constants.mjs +2 -2
  42. package/esm2022/src/directives/ng_optimized_image/image_loaders/image_loader.mjs +2 -2
  43. package/esm2022/src/directives/ng_optimized_image/image_loaders/imagekit_loader.mjs +2 -2
  44. package/esm2022/src/directives/ng_optimized_image/image_loaders/imgix_loader.mjs +2 -2
  45. package/esm2022/src/directives/ng_optimized_image/image_loaders/netlify_loader.mjs +2 -2
  46. package/esm2022/src/directives/ng_optimized_image/index.mjs +2 -2
  47. package/esm2022/src/directives/ng_optimized_image/lcp_image_observer.mjs +5 -5
  48. package/esm2022/src/directives/ng_optimized_image/ng_optimized_image.mjs +5 -5
  49. package/esm2022/src/directives/ng_optimized_image/preconnect_link_checker.mjs +5 -5
  50. package/esm2022/src/directives/ng_optimized_image/preload-link-creator.mjs +5 -5
  51. package/esm2022/src/directives/ng_optimized_image/tokens.mjs +2 -2
  52. package/esm2022/src/directives/ng_optimized_image/url.mjs +2 -2
  53. package/esm2022/src/directives/ng_plural.mjs +8 -8
  54. package/esm2022/src/directives/ng_style.mjs +5 -5
  55. package/esm2022/src/directives/ng_switch.mjs +11 -11
  56. package/esm2022/src/directives/ng_template_outlet.mjs +5 -5
  57. package/esm2022/src/dom_adapter.mjs +2 -2
  58. package/esm2022/src/dom_tokens.mjs +2 -2
  59. package/esm2022/src/errors.mjs +2 -2
  60. package/esm2022/src/i18n/currencies.mjs +2 -2
  61. package/esm2022/src/i18n/format_date.mjs +2 -2
  62. package/esm2022/src/i18n/format_number.mjs +2 -2
  63. package/esm2022/src/i18n/locale_data.mjs +2 -2
  64. package/esm2022/src/i18n/locale_data_api.mjs +2 -2
  65. package/esm2022/src/i18n/localization.mjs +8 -8
  66. package/esm2022/src/location/hash_location_strategy.mjs +5 -5
  67. package/esm2022/src/location/index.mjs +2 -2
  68. package/esm2022/src/location/location.mjs +5 -5
  69. package/esm2022/src/location/location_strategy.mjs +8 -8
  70. package/esm2022/src/location/platform_location.mjs +8 -8
  71. package/esm2022/src/location/util.mjs +2 -2
  72. package/esm2022/src/navigation/navigation_types.mjs +2 -2
  73. package/esm2022/src/navigation/platform_navigation.mjs +5 -5
  74. package/esm2022/src/pipes/async_pipe.mjs +5 -5
  75. package/esm2022/src/pipes/case_conversion_pipes.mjs +11 -11
  76. package/esm2022/src/pipes/date_pipe.mjs +5 -5
  77. package/esm2022/src/pipes/date_pipe_config.mjs +2 -2
  78. package/esm2022/src/pipes/i18n_plural_pipe.mjs +5 -5
  79. package/esm2022/src/pipes/i18n_select_pipe.mjs +5 -5
  80. package/esm2022/src/pipes/index.mjs +2 -2
  81. package/esm2022/src/pipes/invalid_pipe_argument_error.mjs +2 -2
  82. package/esm2022/src/pipes/json_pipe.mjs +5 -5
  83. package/esm2022/src/pipes/keyvalue_pipe.mjs +5 -5
  84. package/esm2022/src/pipes/number_pipe.mjs +11 -11
  85. package/esm2022/src/pipes/slice_pipe.mjs +5 -5
  86. package/esm2022/src/platform_id.mjs +2 -2
  87. package/esm2022/src/private_export.mjs +2 -2
  88. package/esm2022/src/version.mjs +3 -3
  89. package/esm2022/src/viewport_scroller.mjs +2 -2
  90. package/esm2022/src/xhr.mjs +2 -2
  91. package/esm2022/testing/index.mjs +2 -2
  92. package/esm2022/testing/public_api.mjs +2 -2
  93. package/esm2022/testing/src/location_mock.mjs +5 -5
  94. package/esm2022/testing/src/mock_location_strategy.mjs +5 -5
  95. package/esm2022/testing/src/mock_platform_location.mjs +8 -8
  96. package/esm2022/testing/src/navigation/fake_navigation.mjs +2 -2
  97. package/esm2022/testing/src/navigation/navigation_types.mjs +2 -2
  98. package/esm2022/testing/src/navigation/provide_fake_platform_navigation.mjs +2 -2
  99. package/esm2022/testing/src/private_export.mjs +2 -2
  100. package/esm2022/testing/src/provide_location_mocks.mjs +2 -2
  101. package/esm2022/testing/src/testing.mjs +2 -2
  102. package/esm2022/upgrade/index.mjs +2 -2
  103. package/esm2022/upgrade/public_api.mjs +2 -2
  104. package/esm2022/upgrade/src/index.mjs +2 -2
  105. package/esm2022/upgrade/src/location_shim.mjs +2 -2
  106. package/esm2022/upgrade/src/location_upgrade_module.mjs +6 -6
  107. package/esm2022/upgrade/src/params.mjs +2 -2
  108. package/esm2022/upgrade/src/utils.mjs +2 -2
  109. package/fesm2022/common.mjs +117 -117
  110. package/fesm2022/common.mjs.map +1 -1
  111. package/fesm2022/http/testing.mjs +8 -8
  112. package/fesm2022/http/testing.mjs.map +1 -1
  113. package/fesm2022/http.mjs +37 -37
  114. package/fesm2022/http.mjs.map +1 -1
  115. package/fesm2022/testing.mjs +16 -16
  116. package/fesm2022/testing.mjs.map +1 -1
  117. package/fesm2022/upgrade.mjs +5 -5
  118. package/fesm2022/upgrade.mjs.map +1 -1
  119. package/http/index.d.ts +1 -1
  120. package/http/testing/index.d.ts +1 -1
  121. package/index.d.ts +1 -1
  122. package/locales/af-NA.d.ts +1 -1
  123. package/locales/af-NA.mjs +2 -2
  124. package/locales/af.d.ts +1 -1
  125. package/locales/af.mjs +2 -2
  126. package/locales/agq.d.ts +1 -1
  127. package/locales/agq.mjs +2 -2
  128. package/locales/ak.d.ts +1 -1
  129. package/locales/ak.mjs +2 -2
  130. package/locales/am.d.ts +1 -1
  131. package/locales/am.mjs +2 -2
  132. package/locales/ar-AE.d.ts +1 -1
  133. package/locales/ar-AE.mjs +2 -2
  134. package/locales/ar-BH.d.ts +1 -1
  135. package/locales/ar-BH.mjs +2 -2
  136. package/locales/ar-DJ.d.ts +1 -1
  137. package/locales/ar-DJ.mjs +2 -2
  138. package/locales/ar-DZ.d.ts +1 -1
  139. package/locales/ar-DZ.mjs +2 -2
  140. package/locales/ar-EG.d.ts +1 -1
  141. package/locales/ar-EG.mjs +2 -2
  142. package/locales/ar-EH.d.ts +1 -1
  143. package/locales/ar-EH.mjs +2 -2
  144. package/locales/ar-ER.d.ts +1 -1
  145. package/locales/ar-ER.mjs +2 -2
  146. package/locales/ar-IL.d.ts +1 -1
  147. package/locales/ar-IL.mjs +2 -2
  148. package/locales/ar-IQ.d.ts +1 -1
  149. package/locales/ar-IQ.mjs +2 -2
  150. package/locales/ar-JO.d.ts +1 -1
  151. package/locales/ar-JO.mjs +2 -2
  152. package/locales/ar-KM.d.ts +1 -1
  153. package/locales/ar-KM.mjs +2 -2
  154. package/locales/ar-KW.d.ts +1 -1
  155. package/locales/ar-KW.mjs +2 -2
  156. package/locales/ar-LB.d.ts +1 -1
  157. package/locales/ar-LB.mjs +2 -2
  158. package/locales/ar-LY.d.ts +1 -1
  159. package/locales/ar-LY.mjs +2 -2
  160. package/locales/ar-MA.d.ts +1 -1
  161. package/locales/ar-MA.mjs +2 -2
  162. package/locales/ar-MR.d.ts +1 -1
  163. package/locales/ar-MR.mjs +2 -2
  164. package/locales/ar-OM.d.ts +1 -1
  165. package/locales/ar-OM.mjs +2 -2
  166. package/locales/ar-PS.d.ts +1 -1
  167. package/locales/ar-PS.mjs +2 -2
  168. package/locales/ar-QA.d.ts +1 -1
  169. package/locales/ar-QA.mjs +2 -2
  170. package/locales/ar-SA.d.ts +1 -1
  171. package/locales/ar-SA.mjs +2 -2
  172. package/locales/ar-SD.d.ts +1 -1
  173. package/locales/ar-SD.mjs +2 -2
  174. package/locales/ar-SO.d.ts +1 -1
  175. package/locales/ar-SO.mjs +2 -2
  176. package/locales/ar-SS.d.ts +1 -1
  177. package/locales/ar-SS.mjs +2 -2
  178. package/locales/ar-SY.d.ts +1 -1
  179. package/locales/ar-SY.mjs +2 -2
  180. package/locales/ar-TD.d.ts +1 -1
  181. package/locales/ar-TD.mjs +2 -2
  182. package/locales/ar-TN.d.ts +1 -1
  183. package/locales/ar-TN.mjs +2 -2
  184. package/locales/ar-YE.d.ts +1 -1
  185. package/locales/ar-YE.mjs +2 -2
  186. package/locales/ar.d.ts +1 -1
  187. package/locales/ar.mjs +2 -2
  188. package/locales/as.d.ts +1 -1
  189. package/locales/as.mjs +2 -2
  190. package/locales/asa.d.ts +1 -1
  191. package/locales/asa.mjs +2 -2
  192. package/locales/ast.d.ts +1 -1
  193. package/locales/ast.mjs +2 -2
  194. package/locales/az-Cyrl.d.ts +1 -1
  195. package/locales/az-Cyrl.mjs +2 -2
  196. package/locales/az-Latn.d.ts +1 -1
  197. package/locales/az-Latn.mjs +2 -2
  198. package/locales/az.d.ts +1 -1
  199. package/locales/az.mjs +2 -2
  200. package/locales/bas.d.ts +1 -1
  201. package/locales/bas.mjs +2 -2
  202. package/locales/be-tarask.d.ts +1 -1
  203. package/locales/be-tarask.mjs +2 -2
  204. package/locales/be.d.ts +1 -1
  205. package/locales/be.mjs +2 -2
  206. package/locales/bem.d.ts +1 -1
  207. package/locales/bem.mjs +2 -2
  208. package/locales/bez.d.ts +1 -1
  209. package/locales/bez.mjs +2 -2
  210. package/locales/bg.d.ts +1 -1
  211. package/locales/bg.mjs +2 -2
  212. package/locales/bm.d.ts +1 -1
  213. package/locales/bm.mjs +2 -2
  214. package/locales/bn-IN.d.ts +1 -1
  215. package/locales/bn-IN.mjs +2 -2
  216. package/locales/bn.d.ts +1 -1
  217. package/locales/bn.mjs +2 -2
  218. package/locales/bo-IN.d.ts +1 -1
  219. package/locales/bo-IN.mjs +2 -2
  220. package/locales/bo.d.ts +1 -1
  221. package/locales/bo.mjs +2 -2
  222. package/locales/br.d.ts +1 -1
  223. package/locales/br.mjs +2 -2
  224. package/locales/brx.d.ts +1 -1
  225. package/locales/brx.mjs +2 -2
  226. package/locales/bs-Cyrl.d.ts +1 -1
  227. package/locales/bs-Cyrl.mjs +2 -2
  228. package/locales/bs-Latn.d.ts +1 -1
  229. package/locales/bs-Latn.mjs +2 -2
  230. package/locales/bs.d.ts +1 -1
  231. package/locales/bs.mjs +2 -2
  232. package/locales/ca-AD.d.ts +1 -1
  233. package/locales/ca-AD.mjs +2 -2
  234. package/locales/ca-ES-valencia.d.ts +1 -1
  235. package/locales/ca-ES-valencia.mjs +2 -2
  236. package/locales/ca-FR.d.ts +1 -1
  237. package/locales/ca-FR.mjs +2 -2
  238. package/locales/ca-IT.d.ts +1 -1
  239. package/locales/ca-IT.mjs +2 -2
  240. package/locales/ca.d.ts +1 -1
  241. package/locales/ca.mjs +2 -2
  242. package/locales/ccp-IN.d.ts +1 -1
  243. package/locales/ccp-IN.mjs +2 -2
  244. package/locales/ccp.d.ts +1 -1
  245. package/locales/ccp.mjs +2 -2
  246. package/locales/ce.d.ts +1 -1
  247. package/locales/ce.mjs +2 -2
  248. package/locales/ceb.d.ts +1 -1
  249. package/locales/ceb.mjs +2 -2
  250. package/locales/cgg.d.ts +1 -1
  251. package/locales/cgg.mjs +2 -2
  252. package/locales/chr.d.ts +1 -1
  253. package/locales/chr.mjs +2 -2
  254. package/locales/ckb-IR.d.ts +1 -1
  255. package/locales/ckb-IR.mjs +2 -2
  256. package/locales/ckb.d.ts +1 -1
  257. package/locales/ckb.mjs +2 -2
  258. package/locales/cs.d.ts +1 -1
  259. package/locales/cs.mjs +2 -2
  260. package/locales/cy.d.ts +1 -1
  261. package/locales/cy.mjs +2 -2
  262. package/locales/da-GL.d.ts +1 -1
  263. package/locales/da-GL.mjs +2 -2
  264. package/locales/da.d.ts +1 -1
  265. package/locales/da.mjs +2 -2
  266. package/locales/dav.d.ts +1 -1
  267. package/locales/dav.mjs +2 -2
  268. package/locales/de-AT.d.ts +1 -1
  269. package/locales/de-AT.mjs +2 -2
  270. package/locales/de-BE.d.ts +1 -1
  271. package/locales/de-BE.mjs +2 -2
  272. package/locales/de-CH.d.ts +1 -1
  273. package/locales/de-CH.mjs +2 -2
  274. package/locales/de-IT.d.ts +1 -1
  275. package/locales/de-IT.mjs +2 -2
  276. package/locales/de-LI.d.ts +1 -1
  277. package/locales/de-LI.mjs +2 -2
  278. package/locales/de-LU.d.ts +1 -1
  279. package/locales/de-LU.mjs +2 -2
  280. package/locales/de.d.ts +1 -1
  281. package/locales/de.mjs +2 -2
  282. package/locales/dje.d.ts +1 -1
  283. package/locales/dje.mjs +2 -2
  284. package/locales/doi.d.ts +1 -1
  285. package/locales/doi.mjs +2 -2
  286. package/locales/dsb.d.ts +1 -1
  287. package/locales/dsb.mjs +2 -2
  288. package/locales/dua.d.ts +1 -1
  289. package/locales/dua.mjs +2 -2
  290. package/locales/dyo.d.ts +1 -1
  291. package/locales/dyo.mjs +2 -2
  292. package/locales/dz.d.ts +1 -1
  293. package/locales/dz.mjs +2 -2
  294. package/locales/ebu.d.ts +1 -1
  295. package/locales/ebu.mjs +2 -2
  296. package/locales/ee-TG.d.ts +1 -1
  297. package/locales/ee-TG.mjs +2 -2
  298. package/locales/ee.d.ts +1 -1
  299. package/locales/ee.mjs +2 -2
  300. package/locales/el-CY.d.ts +1 -1
  301. package/locales/el-CY.mjs +2 -2
  302. package/locales/el.d.ts +1 -1
  303. package/locales/el.mjs +2 -2
  304. package/locales/en-001.d.ts +1 -1
  305. package/locales/en-001.mjs +2 -2
  306. package/locales/en-150.d.ts +1 -1
  307. package/locales/en-150.mjs +2 -2
  308. package/locales/en-AE.d.ts +1 -1
  309. package/locales/en-AE.mjs +2 -2
  310. package/locales/en-AG.d.ts +1 -1
  311. package/locales/en-AG.mjs +2 -2
  312. package/locales/en-AI.d.ts +1 -1
  313. package/locales/en-AI.mjs +2 -2
  314. package/locales/en-AS.d.ts +1 -1
  315. package/locales/en-AS.mjs +2 -2
  316. package/locales/en-AT.d.ts +1 -1
  317. package/locales/en-AT.mjs +2 -2
  318. package/locales/en-AU.d.ts +1 -1
  319. package/locales/en-AU.mjs +2 -2
  320. package/locales/en-BB.d.ts +1 -1
  321. package/locales/en-BB.mjs +2 -2
  322. package/locales/en-BE.d.ts +1 -1
  323. package/locales/en-BE.mjs +2 -2
  324. package/locales/en-BI.d.ts +1 -1
  325. package/locales/en-BI.mjs +2 -2
  326. package/locales/en-BM.d.ts +1 -1
  327. package/locales/en-BM.mjs +2 -2
  328. package/locales/en-BS.d.ts +1 -1
  329. package/locales/en-BS.mjs +2 -2
  330. package/locales/en-BW.d.ts +1 -1
  331. package/locales/en-BW.mjs +2 -2
  332. package/locales/en-BZ.d.ts +1 -1
  333. package/locales/en-BZ.mjs +2 -2
  334. package/locales/en-CA.d.ts +1 -1
  335. package/locales/en-CA.mjs +2 -2
  336. package/locales/en-CC.d.ts +1 -1
  337. package/locales/en-CC.mjs +2 -2
  338. package/locales/en-CH.d.ts +1 -1
  339. package/locales/en-CH.mjs +2 -2
  340. package/locales/en-CK.d.ts +1 -1
  341. package/locales/en-CK.mjs +2 -2
  342. package/locales/en-CM.d.ts +1 -1
  343. package/locales/en-CM.mjs +2 -2
  344. package/locales/en-CX.d.ts +1 -1
  345. package/locales/en-CX.mjs +2 -2
  346. package/locales/en-CY.d.ts +1 -1
  347. package/locales/en-CY.mjs +2 -2
  348. package/locales/en-DE.d.ts +1 -1
  349. package/locales/en-DE.mjs +2 -2
  350. package/locales/en-DG.d.ts +1 -1
  351. package/locales/en-DG.mjs +2 -2
  352. package/locales/en-DK.d.ts +1 -1
  353. package/locales/en-DK.mjs +2 -2
  354. package/locales/en-DM.d.ts +1 -1
  355. package/locales/en-DM.mjs +2 -2
  356. package/locales/en-ER.d.ts +1 -1
  357. package/locales/en-ER.mjs +2 -2
  358. package/locales/en-FI.d.ts +1 -1
  359. package/locales/en-FI.mjs +2 -2
  360. package/locales/en-FJ.d.ts +1 -1
  361. package/locales/en-FJ.mjs +2 -2
  362. package/locales/en-FK.d.ts +1 -1
  363. package/locales/en-FK.mjs +2 -2
  364. package/locales/en-FM.d.ts +1 -1
  365. package/locales/en-FM.mjs +2 -2
  366. package/locales/en-GB.d.ts +1 -1
  367. package/locales/en-GB.mjs +2 -2
  368. package/locales/en-GD.d.ts +1 -1
  369. package/locales/en-GD.mjs +2 -2
  370. package/locales/en-GG.d.ts +1 -1
  371. package/locales/en-GG.mjs +2 -2
  372. package/locales/en-GH.d.ts +1 -1
  373. package/locales/en-GH.mjs +2 -2
  374. package/locales/en-GI.d.ts +1 -1
  375. package/locales/en-GI.mjs +2 -2
  376. package/locales/en-GM.d.ts +1 -1
  377. package/locales/en-GM.mjs +2 -2
  378. package/locales/en-GU.d.ts +1 -1
  379. package/locales/en-GU.mjs +2 -2
  380. package/locales/en-GY.d.ts +1 -1
  381. package/locales/en-GY.mjs +2 -2
  382. package/locales/en-HK.d.ts +1 -1
  383. package/locales/en-HK.mjs +2 -2
  384. package/locales/en-IE.d.ts +1 -1
  385. package/locales/en-IE.mjs +2 -2
  386. package/locales/en-IL.d.ts +1 -1
  387. package/locales/en-IL.mjs +2 -2
  388. package/locales/en-IM.d.ts +1 -1
  389. package/locales/en-IM.mjs +2 -2
  390. package/locales/en-IN.d.ts +1 -1
  391. package/locales/en-IN.mjs +2 -2
  392. package/locales/en-IO.d.ts +1 -1
  393. package/locales/en-IO.mjs +2 -2
  394. package/locales/en-JE.d.ts +1 -1
  395. package/locales/en-JE.mjs +2 -2
  396. package/locales/en-JM.d.ts +1 -1
  397. package/locales/en-JM.mjs +2 -2
  398. package/locales/en-KE.d.ts +1 -1
  399. package/locales/en-KE.mjs +2 -2
  400. package/locales/en-KI.d.ts +1 -1
  401. package/locales/en-KI.mjs +2 -2
  402. package/locales/en-KN.d.ts +1 -1
  403. package/locales/en-KN.mjs +2 -2
  404. package/locales/en-KY.d.ts +1 -1
  405. package/locales/en-KY.mjs +2 -2
  406. package/locales/en-LC.d.ts +1 -1
  407. package/locales/en-LC.mjs +2 -2
  408. package/locales/en-LR.d.ts +1 -1
  409. package/locales/en-LR.mjs +2 -2
  410. package/locales/en-LS.d.ts +1 -1
  411. package/locales/en-LS.mjs +2 -2
  412. package/locales/en-MG.d.ts +1 -1
  413. package/locales/en-MG.mjs +2 -2
  414. package/locales/en-MH.d.ts +1 -1
  415. package/locales/en-MH.mjs +2 -2
  416. package/locales/en-MO.d.ts +1 -1
  417. package/locales/en-MO.mjs +2 -2
  418. package/locales/en-MP.d.ts +1 -1
  419. package/locales/en-MP.mjs +2 -2
  420. package/locales/en-MS.d.ts +1 -1
  421. package/locales/en-MS.mjs +2 -2
  422. package/locales/en-MT.d.ts +1 -1
  423. package/locales/en-MT.mjs +2 -2
  424. package/locales/en-MU.d.ts +1 -1
  425. package/locales/en-MU.mjs +2 -2
  426. package/locales/en-MV.d.ts +1 -1
  427. package/locales/en-MV.mjs +2 -2
  428. package/locales/en-MW.d.ts +1 -1
  429. package/locales/en-MW.mjs +2 -2
  430. package/locales/en-MY.d.ts +1 -1
  431. package/locales/en-MY.mjs +2 -2
  432. package/locales/en-NA.d.ts +1 -1
  433. package/locales/en-NA.mjs +2 -2
  434. package/locales/en-NF.d.ts +1 -1
  435. package/locales/en-NF.mjs +2 -2
  436. package/locales/en-NG.d.ts +1 -1
  437. package/locales/en-NG.mjs +2 -2
  438. package/locales/en-NL.d.ts +1 -1
  439. package/locales/en-NL.mjs +2 -2
  440. package/locales/en-NR.d.ts +1 -1
  441. package/locales/en-NR.mjs +2 -2
  442. package/locales/en-NU.d.ts +1 -1
  443. package/locales/en-NU.mjs +2 -2
  444. package/locales/en-NZ.d.ts +1 -1
  445. package/locales/en-NZ.mjs +2 -2
  446. package/locales/en-PG.d.ts +1 -1
  447. package/locales/en-PG.mjs +2 -2
  448. package/locales/en-PH.d.ts +1 -1
  449. package/locales/en-PH.mjs +2 -2
  450. package/locales/en-PK.d.ts +1 -1
  451. package/locales/en-PK.mjs +2 -2
  452. package/locales/en-PN.d.ts +1 -1
  453. package/locales/en-PN.mjs +2 -2
  454. package/locales/en-PR.d.ts +1 -1
  455. package/locales/en-PR.mjs +2 -2
  456. package/locales/en-PW.d.ts +1 -1
  457. package/locales/en-PW.mjs +2 -2
  458. package/locales/en-RW.d.ts +1 -1
  459. package/locales/en-RW.mjs +2 -2
  460. package/locales/en-SB.d.ts +1 -1
  461. package/locales/en-SB.mjs +2 -2
  462. package/locales/en-SC.d.ts +1 -1
  463. package/locales/en-SC.mjs +2 -2
  464. package/locales/en-SD.d.ts +1 -1
  465. package/locales/en-SD.mjs +2 -2
  466. package/locales/en-SE.d.ts +1 -1
  467. package/locales/en-SE.mjs +2 -2
  468. package/locales/en-SG.d.ts +1 -1
  469. package/locales/en-SG.mjs +2 -2
  470. package/locales/en-SH.d.ts +1 -1
  471. package/locales/en-SH.mjs +2 -2
  472. package/locales/en-SI.d.ts +1 -1
  473. package/locales/en-SI.mjs +2 -2
  474. package/locales/en-SL.d.ts +1 -1
  475. package/locales/en-SL.mjs +2 -2
  476. package/locales/en-SS.d.ts +1 -1
  477. package/locales/en-SS.mjs +2 -2
  478. package/locales/en-SX.d.ts +1 -1
  479. package/locales/en-SX.mjs +2 -2
  480. package/locales/en-SZ.d.ts +1 -1
  481. package/locales/en-SZ.mjs +2 -2
  482. package/locales/en-TC.d.ts +1 -1
  483. package/locales/en-TC.mjs +2 -2
  484. package/locales/en-TK.d.ts +1 -1
  485. package/locales/en-TK.mjs +2 -2
  486. package/locales/en-TO.d.ts +1 -1
  487. package/locales/en-TO.mjs +2 -2
  488. package/locales/en-TT.d.ts +1 -1
  489. package/locales/en-TT.mjs +2 -2
  490. package/locales/en-TV.d.ts +1 -1
  491. package/locales/en-TV.mjs +2 -2
  492. package/locales/en-TZ.d.ts +1 -1
  493. package/locales/en-TZ.mjs +2 -2
  494. package/locales/en-UG.d.ts +1 -1
  495. package/locales/en-UG.mjs +2 -2
  496. package/locales/en-UM.d.ts +1 -1
  497. package/locales/en-UM.mjs +2 -2
  498. package/locales/en-VC.d.ts +1 -1
  499. package/locales/en-VC.mjs +2 -2
  500. package/locales/en-VG.d.ts +1 -1
  501. package/locales/en-VG.mjs +2 -2
  502. package/locales/en-VI.d.ts +1 -1
  503. package/locales/en-VI.mjs +2 -2
  504. package/locales/en-VU.d.ts +1 -1
  505. package/locales/en-VU.mjs +2 -2
  506. package/locales/en-WS.d.ts +1 -1
  507. package/locales/en-WS.mjs +2 -2
  508. package/locales/en-ZA.d.ts +1 -1
  509. package/locales/en-ZA.mjs +2 -2
  510. package/locales/en-ZM.d.ts +1 -1
  511. package/locales/en-ZM.mjs +2 -2
  512. package/locales/en-ZW.d.ts +1 -1
  513. package/locales/en-ZW.mjs +2 -2
  514. package/locales/en.d.ts +1 -1
  515. package/locales/en.mjs +2 -2
  516. package/locales/eo.d.ts +1 -1
  517. package/locales/eo.mjs +2 -2
  518. package/locales/es-419.d.ts +1 -1
  519. package/locales/es-419.mjs +2 -2
  520. package/locales/es-AR.d.ts +1 -1
  521. package/locales/es-AR.mjs +2 -2
  522. package/locales/es-BO.d.ts +1 -1
  523. package/locales/es-BO.mjs +2 -2
  524. package/locales/es-BR.d.ts +1 -1
  525. package/locales/es-BR.mjs +2 -2
  526. package/locales/es-BZ.d.ts +1 -1
  527. package/locales/es-BZ.mjs +2 -2
  528. package/locales/es-CL.d.ts +1 -1
  529. package/locales/es-CL.mjs +2 -2
  530. package/locales/es-CO.d.ts +1 -1
  531. package/locales/es-CO.mjs +2 -2
  532. package/locales/es-CR.d.ts +1 -1
  533. package/locales/es-CR.mjs +2 -2
  534. package/locales/es-CU.d.ts +1 -1
  535. package/locales/es-CU.mjs +2 -2
  536. package/locales/es-DO.d.ts +1 -1
  537. package/locales/es-DO.mjs +2 -2
  538. package/locales/es-EA.d.ts +1 -1
  539. package/locales/es-EA.mjs +2 -2
  540. package/locales/es-EC.d.ts +1 -1
  541. package/locales/es-EC.mjs +2 -2
  542. package/locales/es-GQ.d.ts +1 -1
  543. package/locales/es-GQ.mjs +2 -2
  544. package/locales/es-GT.d.ts +1 -1
  545. package/locales/es-GT.mjs +2 -2
  546. package/locales/es-HN.d.ts +1 -1
  547. package/locales/es-HN.mjs +2 -2
  548. package/locales/es-IC.d.ts +1 -1
  549. package/locales/es-IC.mjs +2 -2
  550. package/locales/es-MX.d.ts +1 -1
  551. package/locales/es-MX.mjs +2 -2
  552. package/locales/es-NI.d.ts +1 -1
  553. package/locales/es-NI.mjs +2 -2
  554. package/locales/es-PA.d.ts +1 -1
  555. package/locales/es-PA.mjs +2 -2
  556. package/locales/es-PE.d.ts +1 -1
  557. package/locales/es-PE.mjs +2 -2
  558. package/locales/es-PH.d.ts +1 -1
  559. package/locales/es-PH.mjs +2 -2
  560. package/locales/es-PR.d.ts +1 -1
  561. package/locales/es-PR.mjs +2 -2
  562. package/locales/es-PY.d.ts +1 -1
  563. package/locales/es-PY.mjs +2 -2
  564. package/locales/es-SV.d.ts +1 -1
  565. package/locales/es-SV.mjs +2 -2
  566. package/locales/es-US.d.ts +1 -1
  567. package/locales/es-US.mjs +2 -2
  568. package/locales/es-UY.d.ts +1 -1
  569. package/locales/es-UY.mjs +2 -2
  570. package/locales/es-VE.d.ts +1 -1
  571. package/locales/es-VE.mjs +2 -2
  572. package/locales/es.d.ts +1 -1
  573. package/locales/es.mjs +2 -2
  574. package/locales/et.d.ts +1 -1
  575. package/locales/et.mjs +2 -2
  576. package/locales/eu.d.ts +1 -1
  577. package/locales/eu.mjs +2 -2
  578. package/locales/ewo.d.ts +1 -1
  579. package/locales/ewo.mjs +2 -2
  580. package/locales/extra/af-NA.d.ts +1 -1
  581. package/locales/extra/af-NA.mjs +2 -2
  582. package/locales/extra/af.d.ts +1 -1
  583. package/locales/extra/af.mjs +2 -2
  584. package/locales/extra/agq.d.ts +1 -1
  585. package/locales/extra/agq.mjs +2 -2
  586. package/locales/extra/ak.d.ts +1 -1
  587. package/locales/extra/ak.mjs +2 -2
  588. package/locales/extra/am.d.ts +1 -1
  589. package/locales/extra/am.mjs +2 -2
  590. package/locales/extra/ar-AE.d.ts +1 -1
  591. package/locales/extra/ar-AE.mjs +2 -2
  592. package/locales/extra/ar-BH.d.ts +1 -1
  593. package/locales/extra/ar-BH.mjs +2 -2
  594. package/locales/extra/ar-DJ.d.ts +1 -1
  595. package/locales/extra/ar-DJ.mjs +2 -2
  596. package/locales/extra/ar-DZ.d.ts +1 -1
  597. package/locales/extra/ar-DZ.mjs +2 -2
  598. package/locales/extra/ar-EG.d.ts +1 -1
  599. package/locales/extra/ar-EG.mjs +2 -2
  600. package/locales/extra/ar-EH.d.ts +1 -1
  601. package/locales/extra/ar-EH.mjs +2 -2
  602. package/locales/extra/ar-ER.d.ts +1 -1
  603. package/locales/extra/ar-ER.mjs +2 -2
  604. package/locales/extra/ar-IL.d.ts +1 -1
  605. package/locales/extra/ar-IL.mjs +2 -2
  606. package/locales/extra/ar-IQ.d.ts +1 -1
  607. package/locales/extra/ar-IQ.mjs +2 -2
  608. package/locales/extra/ar-JO.d.ts +1 -1
  609. package/locales/extra/ar-JO.mjs +2 -2
  610. package/locales/extra/ar-KM.d.ts +1 -1
  611. package/locales/extra/ar-KM.mjs +2 -2
  612. package/locales/extra/ar-KW.d.ts +1 -1
  613. package/locales/extra/ar-KW.mjs +2 -2
  614. package/locales/extra/ar-LB.d.ts +1 -1
  615. package/locales/extra/ar-LB.mjs +2 -2
  616. package/locales/extra/ar-LY.d.ts +1 -1
  617. package/locales/extra/ar-LY.mjs +2 -2
  618. package/locales/extra/ar-MA.d.ts +1 -1
  619. package/locales/extra/ar-MA.mjs +2 -2
  620. package/locales/extra/ar-MR.d.ts +1 -1
  621. package/locales/extra/ar-MR.mjs +2 -2
  622. package/locales/extra/ar-OM.d.ts +1 -1
  623. package/locales/extra/ar-OM.mjs +2 -2
  624. package/locales/extra/ar-PS.d.ts +1 -1
  625. package/locales/extra/ar-PS.mjs +2 -2
  626. package/locales/extra/ar-QA.d.ts +1 -1
  627. package/locales/extra/ar-QA.mjs +2 -2
  628. package/locales/extra/ar-SA.d.ts +1 -1
  629. package/locales/extra/ar-SA.mjs +2 -2
  630. package/locales/extra/ar-SD.d.ts +1 -1
  631. package/locales/extra/ar-SD.mjs +2 -2
  632. package/locales/extra/ar-SO.d.ts +1 -1
  633. package/locales/extra/ar-SO.mjs +2 -2
  634. package/locales/extra/ar-SS.d.ts +1 -1
  635. package/locales/extra/ar-SS.mjs +2 -2
  636. package/locales/extra/ar-SY.d.ts +1 -1
  637. package/locales/extra/ar-SY.mjs +2 -2
  638. package/locales/extra/ar-TD.d.ts +1 -1
  639. package/locales/extra/ar-TD.mjs +2 -2
  640. package/locales/extra/ar-TN.d.ts +1 -1
  641. package/locales/extra/ar-TN.mjs +2 -2
  642. package/locales/extra/ar-YE.d.ts +1 -1
  643. package/locales/extra/ar-YE.mjs +2 -2
  644. package/locales/extra/ar.d.ts +1 -1
  645. package/locales/extra/ar.mjs +2 -2
  646. package/locales/extra/as.d.ts +1 -1
  647. package/locales/extra/as.mjs +2 -2
  648. package/locales/extra/asa.d.ts +1 -1
  649. package/locales/extra/asa.mjs +2 -2
  650. package/locales/extra/ast.d.ts +1 -1
  651. package/locales/extra/ast.mjs +2 -2
  652. package/locales/extra/az-Cyrl.d.ts +1 -1
  653. package/locales/extra/az-Cyrl.mjs +2 -2
  654. package/locales/extra/az-Latn.d.ts +1 -1
  655. package/locales/extra/az-Latn.mjs +2 -2
  656. package/locales/extra/az.d.ts +1 -1
  657. package/locales/extra/az.mjs +2 -2
  658. package/locales/extra/bas.d.ts +1 -1
  659. package/locales/extra/bas.mjs +2 -2
  660. package/locales/extra/be-tarask.d.ts +1 -1
  661. package/locales/extra/be-tarask.mjs +2 -2
  662. package/locales/extra/be.d.ts +1 -1
  663. package/locales/extra/be.mjs +2 -2
  664. package/locales/extra/bem.d.ts +1 -1
  665. package/locales/extra/bem.mjs +2 -2
  666. package/locales/extra/bez.d.ts +1 -1
  667. package/locales/extra/bez.mjs +2 -2
  668. package/locales/extra/bg.d.ts +1 -1
  669. package/locales/extra/bg.mjs +2 -2
  670. package/locales/extra/bm.d.ts +1 -1
  671. package/locales/extra/bm.mjs +2 -2
  672. package/locales/extra/bn-IN.d.ts +1 -1
  673. package/locales/extra/bn-IN.mjs +2 -2
  674. package/locales/extra/bn.d.ts +1 -1
  675. package/locales/extra/bn.mjs +2 -2
  676. package/locales/extra/bo-IN.d.ts +1 -1
  677. package/locales/extra/bo-IN.mjs +2 -2
  678. package/locales/extra/bo.d.ts +1 -1
  679. package/locales/extra/bo.mjs +2 -2
  680. package/locales/extra/br.d.ts +1 -1
  681. package/locales/extra/br.mjs +2 -2
  682. package/locales/extra/brx.d.ts +1 -1
  683. package/locales/extra/brx.mjs +2 -2
  684. package/locales/extra/bs-Cyrl.d.ts +1 -1
  685. package/locales/extra/bs-Cyrl.mjs +2 -2
  686. package/locales/extra/bs-Latn.d.ts +1 -1
  687. package/locales/extra/bs-Latn.mjs +2 -2
  688. package/locales/extra/bs.d.ts +1 -1
  689. package/locales/extra/bs.mjs +2 -2
  690. package/locales/extra/ca-AD.d.ts +1 -1
  691. package/locales/extra/ca-AD.mjs +2 -2
  692. package/locales/extra/ca-ES-valencia.d.ts +1 -1
  693. package/locales/extra/ca-ES-valencia.mjs +2 -2
  694. package/locales/extra/ca-FR.d.ts +1 -1
  695. package/locales/extra/ca-FR.mjs +2 -2
  696. package/locales/extra/ca-IT.d.ts +1 -1
  697. package/locales/extra/ca-IT.mjs +2 -2
  698. package/locales/extra/ca.d.ts +1 -1
  699. package/locales/extra/ca.mjs +2 -2
  700. package/locales/extra/ccp-IN.d.ts +1 -1
  701. package/locales/extra/ccp-IN.mjs +2 -2
  702. package/locales/extra/ccp.d.ts +1 -1
  703. package/locales/extra/ccp.mjs +2 -2
  704. package/locales/extra/ce.d.ts +1 -1
  705. package/locales/extra/ce.mjs +2 -2
  706. package/locales/extra/ceb.d.ts +1 -1
  707. package/locales/extra/ceb.mjs +2 -2
  708. package/locales/extra/cgg.d.ts +1 -1
  709. package/locales/extra/cgg.mjs +2 -2
  710. package/locales/extra/chr.d.ts +1 -1
  711. package/locales/extra/chr.mjs +2 -2
  712. package/locales/extra/ckb-IR.d.ts +1 -1
  713. package/locales/extra/ckb-IR.mjs +2 -2
  714. package/locales/extra/ckb.d.ts +1 -1
  715. package/locales/extra/ckb.mjs +2 -2
  716. package/locales/extra/cs.d.ts +1 -1
  717. package/locales/extra/cs.mjs +2 -2
  718. package/locales/extra/cy.d.ts +1 -1
  719. package/locales/extra/cy.mjs +2 -2
  720. package/locales/extra/da-GL.d.ts +1 -1
  721. package/locales/extra/da-GL.mjs +2 -2
  722. package/locales/extra/da.d.ts +1 -1
  723. package/locales/extra/da.mjs +2 -2
  724. package/locales/extra/dav.d.ts +1 -1
  725. package/locales/extra/dav.mjs +2 -2
  726. package/locales/extra/de-AT.d.ts +1 -1
  727. package/locales/extra/de-AT.mjs +2 -2
  728. package/locales/extra/de-BE.d.ts +1 -1
  729. package/locales/extra/de-BE.mjs +2 -2
  730. package/locales/extra/de-CH.d.ts +1 -1
  731. package/locales/extra/de-CH.mjs +2 -2
  732. package/locales/extra/de-IT.d.ts +1 -1
  733. package/locales/extra/de-IT.mjs +2 -2
  734. package/locales/extra/de-LI.d.ts +1 -1
  735. package/locales/extra/de-LI.mjs +2 -2
  736. package/locales/extra/de-LU.d.ts +1 -1
  737. package/locales/extra/de-LU.mjs +2 -2
  738. package/locales/extra/de.d.ts +1 -1
  739. package/locales/extra/de.mjs +2 -2
  740. package/locales/extra/dje.d.ts +1 -1
  741. package/locales/extra/dje.mjs +2 -2
  742. package/locales/extra/doi.d.ts +1 -1
  743. package/locales/extra/doi.mjs +2 -2
  744. package/locales/extra/dsb.d.ts +1 -1
  745. package/locales/extra/dsb.mjs +2 -2
  746. package/locales/extra/dua.d.ts +1 -1
  747. package/locales/extra/dua.mjs +2 -2
  748. package/locales/extra/dyo.d.ts +1 -1
  749. package/locales/extra/dyo.mjs +2 -2
  750. package/locales/extra/dz.d.ts +1 -1
  751. package/locales/extra/dz.mjs +2 -2
  752. package/locales/extra/ebu.d.ts +1 -1
  753. package/locales/extra/ebu.mjs +2 -2
  754. package/locales/extra/ee-TG.d.ts +1 -1
  755. package/locales/extra/ee-TG.mjs +2 -2
  756. package/locales/extra/ee.d.ts +1 -1
  757. package/locales/extra/ee.mjs +2 -2
  758. package/locales/extra/el-CY.d.ts +1 -1
  759. package/locales/extra/el-CY.mjs +2 -2
  760. package/locales/extra/el.d.ts +1 -1
  761. package/locales/extra/el.mjs +2 -2
  762. package/locales/extra/en-001.d.ts +1 -1
  763. package/locales/extra/en-001.mjs +2 -2
  764. package/locales/extra/en-150.d.ts +1 -1
  765. package/locales/extra/en-150.mjs +2 -2
  766. package/locales/extra/en-AE.d.ts +1 -1
  767. package/locales/extra/en-AE.mjs +2 -2
  768. package/locales/extra/en-AG.d.ts +1 -1
  769. package/locales/extra/en-AG.mjs +2 -2
  770. package/locales/extra/en-AI.d.ts +1 -1
  771. package/locales/extra/en-AI.mjs +2 -2
  772. package/locales/extra/en-AS.d.ts +1 -1
  773. package/locales/extra/en-AS.mjs +2 -2
  774. package/locales/extra/en-AT.d.ts +1 -1
  775. package/locales/extra/en-AT.mjs +2 -2
  776. package/locales/extra/en-AU.d.ts +1 -1
  777. package/locales/extra/en-AU.mjs +2 -2
  778. package/locales/extra/en-BB.d.ts +1 -1
  779. package/locales/extra/en-BB.mjs +2 -2
  780. package/locales/extra/en-BE.d.ts +1 -1
  781. package/locales/extra/en-BE.mjs +2 -2
  782. package/locales/extra/en-BI.d.ts +1 -1
  783. package/locales/extra/en-BI.mjs +2 -2
  784. package/locales/extra/en-BM.d.ts +1 -1
  785. package/locales/extra/en-BM.mjs +2 -2
  786. package/locales/extra/en-BS.d.ts +1 -1
  787. package/locales/extra/en-BS.mjs +2 -2
  788. package/locales/extra/en-BW.d.ts +1 -1
  789. package/locales/extra/en-BW.mjs +2 -2
  790. package/locales/extra/en-BZ.d.ts +1 -1
  791. package/locales/extra/en-BZ.mjs +2 -2
  792. package/locales/extra/en-CA.d.ts +1 -1
  793. package/locales/extra/en-CA.mjs +2 -2
  794. package/locales/extra/en-CC.d.ts +1 -1
  795. package/locales/extra/en-CC.mjs +2 -2
  796. package/locales/extra/en-CH.d.ts +1 -1
  797. package/locales/extra/en-CH.mjs +2 -2
  798. package/locales/extra/en-CK.d.ts +1 -1
  799. package/locales/extra/en-CK.mjs +2 -2
  800. package/locales/extra/en-CM.d.ts +1 -1
  801. package/locales/extra/en-CM.mjs +2 -2
  802. package/locales/extra/en-CX.d.ts +1 -1
  803. package/locales/extra/en-CX.mjs +2 -2
  804. package/locales/extra/en-CY.d.ts +1 -1
  805. package/locales/extra/en-CY.mjs +2 -2
  806. package/locales/extra/en-DE.d.ts +1 -1
  807. package/locales/extra/en-DE.mjs +2 -2
  808. package/locales/extra/en-DG.d.ts +1 -1
  809. package/locales/extra/en-DG.mjs +2 -2
  810. package/locales/extra/en-DK.d.ts +1 -1
  811. package/locales/extra/en-DK.mjs +2 -2
  812. package/locales/extra/en-DM.d.ts +1 -1
  813. package/locales/extra/en-DM.mjs +2 -2
  814. package/locales/extra/en-ER.d.ts +1 -1
  815. package/locales/extra/en-ER.mjs +2 -2
  816. package/locales/extra/en-FI.d.ts +1 -1
  817. package/locales/extra/en-FI.mjs +2 -2
  818. package/locales/extra/en-FJ.d.ts +1 -1
  819. package/locales/extra/en-FJ.mjs +2 -2
  820. package/locales/extra/en-FK.d.ts +1 -1
  821. package/locales/extra/en-FK.mjs +2 -2
  822. package/locales/extra/en-FM.d.ts +1 -1
  823. package/locales/extra/en-FM.mjs +2 -2
  824. package/locales/extra/en-GB.d.ts +1 -1
  825. package/locales/extra/en-GB.mjs +2 -2
  826. package/locales/extra/en-GD.d.ts +1 -1
  827. package/locales/extra/en-GD.mjs +2 -2
  828. package/locales/extra/en-GG.d.ts +1 -1
  829. package/locales/extra/en-GG.mjs +2 -2
  830. package/locales/extra/en-GH.d.ts +1 -1
  831. package/locales/extra/en-GH.mjs +2 -2
  832. package/locales/extra/en-GI.d.ts +1 -1
  833. package/locales/extra/en-GI.mjs +2 -2
  834. package/locales/extra/en-GM.d.ts +1 -1
  835. package/locales/extra/en-GM.mjs +2 -2
  836. package/locales/extra/en-GU.d.ts +1 -1
  837. package/locales/extra/en-GU.mjs +2 -2
  838. package/locales/extra/en-GY.d.ts +1 -1
  839. package/locales/extra/en-GY.mjs +2 -2
  840. package/locales/extra/en-HK.d.ts +1 -1
  841. package/locales/extra/en-HK.mjs +2 -2
  842. package/locales/extra/en-IE.d.ts +1 -1
  843. package/locales/extra/en-IE.mjs +2 -2
  844. package/locales/extra/en-IL.d.ts +1 -1
  845. package/locales/extra/en-IL.mjs +2 -2
  846. package/locales/extra/en-IM.d.ts +1 -1
  847. package/locales/extra/en-IM.mjs +2 -2
  848. package/locales/extra/en-IN.d.ts +1 -1
  849. package/locales/extra/en-IN.mjs +2 -2
  850. package/locales/extra/en-IO.d.ts +1 -1
  851. package/locales/extra/en-IO.mjs +2 -2
  852. package/locales/extra/en-JE.d.ts +1 -1
  853. package/locales/extra/en-JE.mjs +2 -2
  854. package/locales/extra/en-JM.d.ts +1 -1
  855. package/locales/extra/en-JM.mjs +2 -2
  856. package/locales/extra/en-KE.d.ts +1 -1
  857. package/locales/extra/en-KE.mjs +2 -2
  858. package/locales/extra/en-KI.d.ts +1 -1
  859. package/locales/extra/en-KI.mjs +2 -2
  860. package/locales/extra/en-KN.d.ts +1 -1
  861. package/locales/extra/en-KN.mjs +2 -2
  862. package/locales/extra/en-KY.d.ts +1 -1
  863. package/locales/extra/en-KY.mjs +2 -2
  864. package/locales/extra/en-LC.d.ts +1 -1
  865. package/locales/extra/en-LC.mjs +2 -2
  866. package/locales/extra/en-LR.d.ts +1 -1
  867. package/locales/extra/en-LR.mjs +2 -2
  868. package/locales/extra/en-LS.d.ts +1 -1
  869. package/locales/extra/en-LS.mjs +2 -2
  870. package/locales/extra/en-MG.d.ts +1 -1
  871. package/locales/extra/en-MG.mjs +2 -2
  872. package/locales/extra/en-MH.d.ts +1 -1
  873. package/locales/extra/en-MH.mjs +2 -2
  874. package/locales/extra/en-MO.d.ts +1 -1
  875. package/locales/extra/en-MO.mjs +2 -2
  876. package/locales/extra/en-MP.d.ts +1 -1
  877. package/locales/extra/en-MP.mjs +2 -2
  878. package/locales/extra/en-MS.d.ts +1 -1
  879. package/locales/extra/en-MS.mjs +2 -2
  880. package/locales/extra/en-MT.d.ts +1 -1
  881. package/locales/extra/en-MT.mjs +2 -2
  882. package/locales/extra/en-MU.d.ts +1 -1
  883. package/locales/extra/en-MU.mjs +2 -2
  884. package/locales/extra/en-MV.d.ts +1 -1
  885. package/locales/extra/en-MV.mjs +2 -2
  886. package/locales/extra/en-MW.d.ts +1 -1
  887. package/locales/extra/en-MW.mjs +2 -2
  888. package/locales/extra/en-MY.d.ts +1 -1
  889. package/locales/extra/en-MY.mjs +2 -2
  890. package/locales/extra/en-NA.d.ts +1 -1
  891. package/locales/extra/en-NA.mjs +2 -2
  892. package/locales/extra/en-NF.d.ts +1 -1
  893. package/locales/extra/en-NF.mjs +2 -2
  894. package/locales/extra/en-NG.d.ts +1 -1
  895. package/locales/extra/en-NG.mjs +2 -2
  896. package/locales/extra/en-NL.d.ts +1 -1
  897. package/locales/extra/en-NL.mjs +2 -2
  898. package/locales/extra/en-NR.d.ts +1 -1
  899. package/locales/extra/en-NR.mjs +2 -2
  900. package/locales/extra/en-NU.d.ts +1 -1
  901. package/locales/extra/en-NU.mjs +2 -2
  902. package/locales/extra/en-NZ.d.ts +1 -1
  903. package/locales/extra/en-NZ.mjs +2 -2
  904. package/locales/extra/en-PG.d.ts +1 -1
  905. package/locales/extra/en-PG.mjs +2 -2
  906. package/locales/extra/en-PH.d.ts +1 -1
  907. package/locales/extra/en-PH.mjs +2 -2
  908. package/locales/extra/en-PK.d.ts +1 -1
  909. package/locales/extra/en-PK.mjs +2 -2
  910. package/locales/extra/en-PN.d.ts +1 -1
  911. package/locales/extra/en-PN.mjs +2 -2
  912. package/locales/extra/en-PR.d.ts +1 -1
  913. package/locales/extra/en-PR.mjs +2 -2
  914. package/locales/extra/en-PW.d.ts +1 -1
  915. package/locales/extra/en-PW.mjs +2 -2
  916. package/locales/extra/en-RW.d.ts +1 -1
  917. package/locales/extra/en-RW.mjs +2 -2
  918. package/locales/extra/en-SB.d.ts +1 -1
  919. package/locales/extra/en-SB.mjs +2 -2
  920. package/locales/extra/en-SC.d.ts +1 -1
  921. package/locales/extra/en-SC.mjs +2 -2
  922. package/locales/extra/en-SD.d.ts +1 -1
  923. package/locales/extra/en-SD.mjs +2 -2
  924. package/locales/extra/en-SE.d.ts +1 -1
  925. package/locales/extra/en-SE.mjs +2 -2
  926. package/locales/extra/en-SG.d.ts +1 -1
  927. package/locales/extra/en-SG.mjs +2 -2
  928. package/locales/extra/en-SH.d.ts +1 -1
  929. package/locales/extra/en-SH.mjs +2 -2
  930. package/locales/extra/en-SI.d.ts +1 -1
  931. package/locales/extra/en-SI.mjs +2 -2
  932. package/locales/extra/en-SL.d.ts +1 -1
  933. package/locales/extra/en-SL.mjs +2 -2
  934. package/locales/extra/en-SS.d.ts +1 -1
  935. package/locales/extra/en-SS.mjs +2 -2
  936. package/locales/extra/en-SX.d.ts +1 -1
  937. package/locales/extra/en-SX.mjs +2 -2
  938. package/locales/extra/en-SZ.d.ts +1 -1
  939. package/locales/extra/en-SZ.mjs +2 -2
  940. package/locales/extra/en-TC.d.ts +1 -1
  941. package/locales/extra/en-TC.mjs +2 -2
  942. package/locales/extra/en-TK.d.ts +1 -1
  943. package/locales/extra/en-TK.mjs +2 -2
  944. package/locales/extra/en-TO.d.ts +1 -1
  945. package/locales/extra/en-TO.mjs +2 -2
  946. package/locales/extra/en-TT.d.ts +1 -1
  947. package/locales/extra/en-TT.mjs +2 -2
  948. package/locales/extra/en-TV.d.ts +1 -1
  949. package/locales/extra/en-TV.mjs +2 -2
  950. package/locales/extra/en-TZ.d.ts +1 -1
  951. package/locales/extra/en-TZ.mjs +2 -2
  952. package/locales/extra/en-UG.d.ts +1 -1
  953. package/locales/extra/en-UG.mjs +2 -2
  954. package/locales/extra/en-UM.d.ts +1 -1
  955. package/locales/extra/en-UM.mjs +2 -2
  956. package/locales/extra/en-VC.d.ts +1 -1
  957. package/locales/extra/en-VC.mjs +2 -2
  958. package/locales/extra/en-VG.d.ts +1 -1
  959. package/locales/extra/en-VG.mjs +2 -2
  960. package/locales/extra/en-VI.d.ts +1 -1
  961. package/locales/extra/en-VI.mjs +2 -2
  962. package/locales/extra/en-VU.d.ts +1 -1
  963. package/locales/extra/en-VU.mjs +2 -2
  964. package/locales/extra/en-WS.d.ts +1 -1
  965. package/locales/extra/en-WS.mjs +2 -2
  966. package/locales/extra/en-ZA.d.ts +1 -1
  967. package/locales/extra/en-ZA.mjs +2 -2
  968. package/locales/extra/en-ZM.d.ts +1 -1
  969. package/locales/extra/en-ZM.mjs +2 -2
  970. package/locales/extra/en-ZW.d.ts +1 -1
  971. package/locales/extra/en-ZW.mjs +2 -2
  972. package/locales/extra/en.d.ts +1 -1
  973. package/locales/extra/en.mjs +2 -2
  974. package/locales/extra/eo.d.ts +1 -1
  975. package/locales/extra/eo.mjs +2 -2
  976. package/locales/extra/es-419.d.ts +1 -1
  977. package/locales/extra/es-419.mjs +2 -2
  978. package/locales/extra/es-AR.d.ts +1 -1
  979. package/locales/extra/es-AR.mjs +2 -2
  980. package/locales/extra/es-BO.d.ts +1 -1
  981. package/locales/extra/es-BO.mjs +2 -2
  982. package/locales/extra/es-BR.d.ts +1 -1
  983. package/locales/extra/es-BR.mjs +2 -2
  984. package/locales/extra/es-BZ.d.ts +1 -1
  985. package/locales/extra/es-BZ.mjs +2 -2
  986. package/locales/extra/es-CL.d.ts +1 -1
  987. package/locales/extra/es-CL.mjs +2 -2
  988. package/locales/extra/es-CO.d.ts +1 -1
  989. package/locales/extra/es-CO.mjs +2 -2
  990. package/locales/extra/es-CR.d.ts +1 -1
  991. package/locales/extra/es-CR.mjs +2 -2
  992. package/locales/extra/es-CU.d.ts +1 -1
  993. package/locales/extra/es-CU.mjs +2 -2
  994. package/locales/extra/es-DO.d.ts +1 -1
  995. package/locales/extra/es-DO.mjs +2 -2
  996. package/locales/extra/es-EA.d.ts +1 -1
  997. package/locales/extra/es-EA.mjs +2 -2
  998. package/locales/extra/es-EC.d.ts +1 -1
  999. package/locales/extra/es-EC.mjs +2 -2
  1000. package/locales/extra/es-GQ.d.ts +1 -1
  1001. package/locales/extra/es-GQ.mjs +2 -2
  1002. package/locales/extra/es-GT.d.ts +1 -1
  1003. package/locales/extra/es-GT.mjs +2 -2
  1004. package/locales/extra/es-HN.d.ts +1 -1
  1005. package/locales/extra/es-HN.mjs +2 -2
  1006. package/locales/extra/es-IC.d.ts +1 -1
  1007. package/locales/extra/es-IC.mjs +2 -2
  1008. package/locales/extra/es-MX.d.ts +1 -1
  1009. package/locales/extra/es-MX.mjs +2 -2
  1010. package/locales/extra/es-NI.d.ts +1 -1
  1011. package/locales/extra/es-NI.mjs +2 -2
  1012. package/locales/extra/es-PA.d.ts +1 -1
  1013. package/locales/extra/es-PA.mjs +2 -2
  1014. package/locales/extra/es-PE.d.ts +1 -1
  1015. package/locales/extra/es-PE.mjs +2 -2
  1016. package/locales/extra/es-PH.d.ts +1 -1
  1017. package/locales/extra/es-PH.mjs +2 -2
  1018. package/locales/extra/es-PR.d.ts +1 -1
  1019. package/locales/extra/es-PR.mjs +2 -2
  1020. package/locales/extra/es-PY.d.ts +1 -1
  1021. package/locales/extra/es-PY.mjs +2 -2
  1022. package/locales/extra/es-SV.d.ts +1 -1
  1023. package/locales/extra/es-SV.mjs +2 -2
  1024. package/locales/extra/es-US.d.ts +1 -1
  1025. package/locales/extra/es-US.mjs +2 -2
  1026. package/locales/extra/es-UY.d.ts +1 -1
  1027. package/locales/extra/es-UY.mjs +2 -2
  1028. package/locales/extra/es-VE.d.ts +1 -1
  1029. package/locales/extra/es-VE.mjs +2 -2
  1030. package/locales/extra/es.d.ts +1 -1
  1031. package/locales/extra/es.mjs +2 -2
  1032. package/locales/extra/et.d.ts +1 -1
  1033. package/locales/extra/et.mjs +2 -2
  1034. package/locales/extra/eu.d.ts +1 -1
  1035. package/locales/extra/eu.mjs +2 -2
  1036. package/locales/extra/ewo.d.ts +1 -1
  1037. package/locales/extra/ewo.mjs +2 -2
  1038. package/locales/extra/fa-AF.d.ts +1 -1
  1039. package/locales/extra/fa-AF.mjs +2 -2
  1040. package/locales/extra/fa.d.ts +1 -1
  1041. package/locales/extra/fa.mjs +2 -2
  1042. package/locales/extra/ff-Adlm-BF.d.ts +1 -1
  1043. package/locales/extra/ff-Adlm-BF.mjs +2 -2
  1044. package/locales/extra/ff-Adlm-CM.d.ts +1 -1
  1045. package/locales/extra/ff-Adlm-CM.mjs +2 -2
  1046. package/locales/extra/ff-Adlm-GH.d.ts +1 -1
  1047. package/locales/extra/ff-Adlm-GH.mjs +2 -2
  1048. package/locales/extra/ff-Adlm-GM.d.ts +1 -1
  1049. package/locales/extra/ff-Adlm-GM.mjs +2 -2
  1050. package/locales/extra/ff-Adlm-GW.d.ts +1 -1
  1051. package/locales/extra/ff-Adlm-GW.mjs +2 -2
  1052. package/locales/extra/ff-Adlm-LR.d.ts +1 -1
  1053. package/locales/extra/ff-Adlm-LR.mjs +2 -2
  1054. package/locales/extra/ff-Adlm-MR.d.ts +1 -1
  1055. package/locales/extra/ff-Adlm-MR.mjs +2 -2
  1056. package/locales/extra/ff-Adlm-NE.d.ts +1 -1
  1057. package/locales/extra/ff-Adlm-NE.mjs +2 -2
  1058. package/locales/extra/ff-Adlm-NG.d.ts +1 -1
  1059. package/locales/extra/ff-Adlm-NG.mjs +2 -2
  1060. package/locales/extra/ff-Adlm-SL.d.ts +1 -1
  1061. package/locales/extra/ff-Adlm-SL.mjs +2 -2
  1062. package/locales/extra/ff-Adlm-SN.d.ts +1 -1
  1063. package/locales/extra/ff-Adlm-SN.mjs +2 -2
  1064. package/locales/extra/ff-Adlm.d.ts +1 -1
  1065. package/locales/extra/ff-Adlm.mjs +2 -2
  1066. package/locales/extra/ff-CM.d.ts +1 -1
  1067. package/locales/extra/ff-CM.mjs +2 -2
  1068. package/locales/extra/ff-GN.d.ts +1 -1
  1069. package/locales/extra/ff-GN.mjs +2 -2
  1070. package/locales/extra/ff-Latn-BF.d.ts +1 -1
  1071. package/locales/extra/ff-Latn-BF.mjs +2 -2
  1072. package/locales/extra/ff-Latn-CM.d.ts +1 -1
  1073. package/locales/extra/ff-Latn-CM.mjs +2 -2
  1074. package/locales/extra/ff-Latn-GH.d.ts +1 -1
  1075. package/locales/extra/ff-Latn-GH.mjs +2 -2
  1076. package/locales/extra/ff-Latn-GM.d.ts +1 -1
  1077. package/locales/extra/ff-Latn-GM.mjs +2 -2
  1078. package/locales/extra/ff-Latn-GN.d.ts +1 -1
  1079. package/locales/extra/ff-Latn-GN.mjs +2 -2
  1080. package/locales/extra/ff-Latn-GW.d.ts +1 -1
  1081. package/locales/extra/ff-Latn-GW.mjs +2 -2
  1082. package/locales/extra/ff-Latn-LR.d.ts +1 -1
  1083. package/locales/extra/ff-Latn-LR.mjs +2 -2
  1084. package/locales/extra/ff-Latn-MR.d.ts +1 -1
  1085. package/locales/extra/ff-Latn-MR.mjs +2 -2
  1086. package/locales/extra/ff-Latn-NE.d.ts +1 -1
  1087. package/locales/extra/ff-Latn-NE.mjs +2 -2
  1088. package/locales/extra/ff-Latn-NG.d.ts +1 -1
  1089. package/locales/extra/ff-Latn-NG.mjs +2 -2
  1090. package/locales/extra/ff-Latn-SL.d.ts +1 -1
  1091. package/locales/extra/ff-Latn-SL.mjs +2 -2
  1092. package/locales/extra/ff-Latn.d.ts +1 -1
  1093. package/locales/extra/ff-Latn.mjs +2 -2
  1094. package/locales/extra/ff-MR.d.ts +1 -1
  1095. package/locales/extra/ff-MR.mjs +2 -2
  1096. package/locales/extra/ff.d.ts +1 -1
  1097. package/locales/extra/ff.mjs +2 -2
  1098. package/locales/extra/fi.d.ts +1 -1
  1099. package/locales/extra/fi.mjs +2 -2
  1100. package/locales/extra/fil.d.ts +1 -1
  1101. package/locales/extra/fil.mjs +2 -2
  1102. package/locales/extra/fo-DK.d.ts +1 -1
  1103. package/locales/extra/fo-DK.mjs +2 -2
  1104. package/locales/extra/fo.d.ts +1 -1
  1105. package/locales/extra/fo.mjs +2 -2
  1106. package/locales/extra/fr-BE.d.ts +1 -1
  1107. package/locales/extra/fr-BE.mjs +2 -2
  1108. package/locales/extra/fr-BF.d.ts +1 -1
  1109. package/locales/extra/fr-BF.mjs +2 -2
  1110. package/locales/extra/fr-BI.d.ts +1 -1
  1111. package/locales/extra/fr-BI.mjs +2 -2
  1112. package/locales/extra/fr-BJ.d.ts +1 -1
  1113. package/locales/extra/fr-BJ.mjs +2 -2
  1114. package/locales/extra/fr-BL.d.ts +1 -1
  1115. package/locales/extra/fr-BL.mjs +2 -2
  1116. package/locales/extra/fr-CA.d.ts +1 -1
  1117. package/locales/extra/fr-CA.mjs +2 -2
  1118. package/locales/extra/fr-CD.d.ts +1 -1
  1119. package/locales/extra/fr-CD.mjs +2 -2
  1120. package/locales/extra/fr-CF.d.ts +1 -1
  1121. package/locales/extra/fr-CF.mjs +2 -2
  1122. package/locales/extra/fr-CG.d.ts +1 -1
  1123. package/locales/extra/fr-CG.mjs +2 -2
  1124. package/locales/extra/fr-CH.d.ts +1 -1
  1125. package/locales/extra/fr-CH.mjs +2 -2
  1126. package/locales/extra/fr-CI.d.ts +1 -1
  1127. package/locales/extra/fr-CI.mjs +2 -2
  1128. package/locales/extra/fr-CM.d.ts +1 -1
  1129. package/locales/extra/fr-CM.mjs +2 -2
  1130. package/locales/extra/fr-DJ.d.ts +1 -1
  1131. package/locales/extra/fr-DJ.mjs +2 -2
  1132. package/locales/extra/fr-DZ.d.ts +1 -1
  1133. package/locales/extra/fr-DZ.mjs +2 -2
  1134. package/locales/extra/fr-GA.d.ts +1 -1
  1135. package/locales/extra/fr-GA.mjs +2 -2
  1136. package/locales/extra/fr-GF.d.ts +1 -1
  1137. package/locales/extra/fr-GF.mjs +2 -2
  1138. package/locales/extra/fr-GN.d.ts +1 -1
  1139. package/locales/extra/fr-GN.mjs +2 -2
  1140. package/locales/extra/fr-GP.d.ts +1 -1
  1141. package/locales/extra/fr-GP.mjs +2 -2
  1142. package/locales/extra/fr-GQ.d.ts +1 -1
  1143. package/locales/extra/fr-GQ.mjs +2 -2
  1144. package/locales/extra/fr-HT.d.ts +1 -1
  1145. package/locales/extra/fr-HT.mjs +2 -2
  1146. package/locales/extra/fr-KM.d.ts +1 -1
  1147. package/locales/extra/fr-KM.mjs +2 -2
  1148. package/locales/extra/fr-LU.d.ts +1 -1
  1149. package/locales/extra/fr-LU.mjs +2 -2
  1150. package/locales/extra/fr-MA.d.ts +1 -1
  1151. package/locales/extra/fr-MA.mjs +2 -2
  1152. package/locales/extra/fr-MC.d.ts +1 -1
  1153. package/locales/extra/fr-MC.mjs +2 -2
  1154. package/locales/extra/fr-MF.d.ts +1 -1
  1155. package/locales/extra/fr-MF.mjs +2 -2
  1156. package/locales/extra/fr-MG.d.ts +1 -1
  1157. package/locales/extra/fr-MG.mjs +2 -2
  1158. package/locales/extra/fr-ML.d.ts +1 -1
  1159. package/locales/extra/fr-ML.mjs +2 -2
  1160. package/locales/extra/fr-MQ.d.ts +1 -1
  1161. package/locales/extra/fr-MQ.mjs +2 -2
  1162. package/locales/extra/fr-MR.d.ts +1 -1
  1163. package/locales/extra/fr-MR.mjs +2 -2
  1164. package/locales/extra/fr-MU.d.ts +1 -1
  1165. package/locales/extra/fr-MU.mjs +2 -2
  1166. package/locales/extra/fr-NC.d.ts +1 -1
  1167. package/locales/extra/fr-NC.mjs +2 -2
  1168. package/locales/extra/fr-NE.d.ts +1 -1
  1169. package/locales/extra/fr-NE.mjs +2 -2
  1170. package/locales/extra/fr-PF.d.ts +1 -1
  1171. package/locales/extra/fr-PF.mjs +2 -2
  1172. package/locales/extra/fr-PM.d.ts +1 -1
  1173. package/locales/extra/fr-PM.mjs +2 -2
  1174. package/locales/extra/fr-RE.d.ts +1 -1
  1175. package/locales/extra/fr-RE.mjs +2 -2
  1176. package/locales/extra/fr-RW.d.ts +1 -1
  1177. package/locales/extra/fr-RW.mjs +2 -2
  1178. package/locales/extra/fr-SC.d.ts +1 -1
  1179. package/locales/extra/fr-SC.mjs +2 -2
  1180. package/locales/extra/fr-SN.d.ts +1 -1
  1181. package/locales/extra/fr-SN.mjs +2 -2
  1182. package/locales/extra/fr-SY.d.ts +1 -1
  1183. package/locales/extra/fr-SY.mjs +2 -2
  1184. package/locales/extra/fr-TD.d.ts +1 -1
  1185. package/locales/extra/fr-TD.mjs +2 -2
  1186. package/locales/extra/fr-TG.d.ts +1 -1
  1187. package/locales/extra/fr-TG.mjs +2 -2
  1188. package/locales/extra/fr-TN.d.ts +1 -1
  1189. package/locales/extra/fr-TN.mjs +2 -2
  1190. package/locales/extra/fr-VU.d.ts +1 -1
  1191. package/locales/extra/fr-VU.mjs +2 -2
  1192. package/locales/extra/fr-WF.d.ts +1 -1
  1193. package/locales/extra/fr-WF.mjs +2 -2
  1194. package/locales/extra/fr-YT.d.ts +1 -1
  1195. package/locales/extra/fr-YT.mjs +2 -2
  1196. package/locales/extra/fr.d.ts +1 -1
  1197. package/locales/extra/fr.mjs +2 -2
  1198. package/locales/extra/fur.d.ts +1 -1
  1199. package/locales/extra/fur.mjs +2 -2
  1200. package/locales/extra/fy.d.ts +1 -1
  1201. package/locales/extra/fy.mjs +2 -2
  1202. package/locales/extra/ga-GB.d.ts +1 -1
  1203. package/locales/extra/ga-GB.mjs +2 -2
  1204. package/locales/extra/ga.d.ts +1 -1
  1205. package/locales/extra/ga.mjs +2 -2
  1206. package/locales/extra/gd.d.ts +1 -1
  1207. package/locales/extra/gd.mjs +2 -2
  1208. package/locales/extra/gl.d.ts +1 -1
  1209. package/locales/extra/gl.mjs +2 -2
  1210. package/locales/extra/gsw-FR.d.ts +1 -1
  1211. package/locales/extra/gsw-FR.mjs +2 -2
  1212. package/locales/extra/gsw-LI.d.ts +1 -1
  1213. package/locales/extra/gsw-LI.mjs +2 -2
  1214. package/locales/extra/gsw.d.ts +1 -1
  1215. package/locales/extra/gsw.mjs +2 -2
  1216. package/locales/extra/gu.d.ts +1 -1
  1217. package/locales/extra/gu.mjs +2 -2
  1218. package/locales/extra/guz.d.ts +1 -1
  1219. package/locales/extra/guz.mjs +2 -2
  1220. package/locales/extra/gv.d.ts +1 -1
  1221. package/locales/extra/gv.mjs +2 -2
  1222. package/locales/extra/ha-GH.d.ts +1 -1
  1223. package/locales/extra/ha-GH.mjs +2 -2
  1224. package/locales/extra/ha-NE.d.ts +1 -1
  1225. package/locales/extra/ha-NE.mjs +2 -2
  1226. package/locales/extra/ha.d.ts +1 -1
  1227. package/locales/extra/ha.mjs +2 -2
  1228. package/locales/extra/haw.d.ts +1 -1
  1229. package/locales/extra/haw.mjs +2 -2
  1230. package/locales/extra/he.d.ts +1 -1
  1231. package/locales/extra/he.mjs +2 -2
  1232. package/locales/extra/hi-Latn.d.ts +1 -1
  1233. package/locales/extra/hi-Latn.mjs +2 -2
  1234. package/locales/extra/hi.d.ts +1 -1
  1235. package/locales/extra/hi.mjs +2 -2
  1236. package/locales/extra/hr-BA.d.ts +1 -1
  1237. package/locales/extra/hr-BA.mjs +2 -2
  1238. package/locales/extra/hr.d.ts +1 -1
  1239. package/locales/extra/hr.mjs +2 -2
  1240. package/locales/extra/hsb.d.ts +1 -1
  1241. package/locales/extra/hsb.mjs +2 -2
  1242. package/locales/extra/hu.d.ts +1 -1
  1243. package/locales/extra/hu.mjs +2 -2
  1244. package/locales/extra/hy.d.ts +1 -1
  1245. package/locales/extra/hy.mjs +2 -2
  1246. package/locales/extra/ia.d.ts +1 -1
  1247. package/locales/extra/ia.mjs +2 -2
  1248. package/locales/extra/id.d.ts +1 -1
  1249. package/locales/extra/id.mjs +2 -2
  1250. package/locales/extra/ig.d.ts +1 -1
  1251. package/locales/extra/ig.mjs +2 -2
  1252. package/locales/extra/ii.d.ts +1 -1
  1253. package/locales/extra/ii.mjs +2 -2
  1254. package/locales/extra/is.d.ts +1 -1
  1255. package/locales/extra/is.mjs +2 -2
  1256. package/locales/extra/it-CH.d.ts +1 -1
  1257. package/locales/extra/it-CH.mjs +2 -2
  1258. package/locales/extra/it-SM.d.ts +1 -1
  1259. package/locales/extra/it-SM.mjs +2 -2
  1260. package/locales/extra/it-VA.d.ts +1 -1
  1261. package/locales/extra/it-VA.mjs +2 -2
  1262. package/locales/extra/it.d.ts +1 -1
  1263. package/locales/extra/it.mjs +2 -2
  1264. package/locales/extra/ja.d.ts +1 -1
  1265. package/locales/extra/ja.mjs +2 -2
  1266. package/locales/extra/jgo.d.ts +1 -1
  1267. package/locales/extra/jgo.mjs +2 -2
  1268. package/locales/extra/jmc.d.ts +1 -1
  1269. package/locales/extra/jmc.mjs +2 -2
  1270. package/locales/extra/jv.d.ts +1 -1
  1271. package/locales/extra/jv.mjs +2 -2
  1272. package/locales/extra/ka.d.ts +1 -1
  1273. package/locales/extra/ka.mjs +2 -2
  1274. package/locales/extra/kab.d.ts +1 -1
  1275. package/locales/extra/kab.mjs +2 -2
  1276. package/locales/extra/kam.d.ts +1 -1
  1277. package/locales/extra/kam.mjs +2 -2
  1278. package/locales/extra/kde.d.ts +1 -1
  1279. package/locales/extra/kde.mjs +2 -2
  1280. package/locales/extra/kea.d.ts +1 -1
  1281. package/locales/extra/kea.mjs +2 -2
  1282. package/locales/extra/kgp.d.ts +1 -1
  1283. package/locales/extra/kgp.mjs +2 -2
  1284. package/locales/extra/khq.d.ts +1 -1
  1285. package/locales/extra/khq.mjs +2 -2
  1286. package/locales/extra/ki.d.ts +1 -1
  1287. package/locales/extra/ki.mjs +2 -2
  1288. package/locales/extra/kk.d.ts +1 -1
  1289. package/locales/extra/kk.mjs +2 -2
  1290. package/locales/extra/kkj.d.ts +1 -1
  1291. package/locales/extra/kkj.mjs +2 -2
  1292. package/locales/extra/kl.d.ts +1 -1
  1293. package/locales/extra/kl.mjs +2 -2
  1294. package/locales/extra/kln.d.ts +1 -1
  1295. package/locales/extra/kln.mjs +2 -2
  1296. package/locales/extra/km.d.ts +1 -1
  1297. package/locales/extra/km.mjs +2 -2
  1298. package/locales/extra/kn.d.ts +1 -1
  1299. package/locales/extra/kn.mjs +2 -2
  1300. package/locales/extra/ko-KP.d.ts +1 -1
  1301. package/locales/extra/ko-KP.mjs +2 -2
  1302. package/locales/extra/ko.d.ts +1 -1
  1303. package/locales/extra/ko.mjs +2 -2
  1304. package/locales/extra/kok.d.ts +1 -1
  1305. package/locales/extra/kok.mjs +2 -2
  1306. package/locales/extra/ks-Arab.d.ts +1 -1
  1307. package/locales/extra/ks-Arab.mjs +2 -2
  1308. package/locales/extra/ks-Deva.d.ts +1 -1
  1309. package/locales/extra/ks-Deva.mjs +2 -2
  1310. package/locales/extra/ks.d.ts +1 -1
  1311. package/locales/extra/ks.mjs +2 -2
  1312. package/locales/extra/ksb.d.ts +1 -1
  1313. package/locales/extra/ksb.mjs +2 -2
  1314. package/locales/extra/ksf.d.ts +1 -1
  1315. package/locales/extra/ksf.mjs +2 -2
  1316. package/locales/extra/ksh.d.ts +1 -1
  1317. package/locales/extra/ksh.mjs +2 -2
  1318. package/locales/extra/ku.d.ts +1 -1
  1319. package/locales/extra/ku.mjs +2 -2
  1320. package/locales/extra/kw.d.ts +1 -1
  1321. package/locales/extra/kw.mjs +2 -2
  1322. package/locales/extra/ky.d.ts +1 -1
  1323. package/locales/extra/ky.mjs +2 -2
  1324. package/locales/extra/lag.d.ts +1 -1
  1325. package/locales/extra/lag.mjs +2 -2
  1326. package/locales/extra/lb.d.ts +1 -1
  1327. package/locales/extra/lb.mjs +2 -2
  1328. package/locales/extra/lg.d.ts +1 -1
  1329. package/locales/extra/lg.mjs +2 -2
  1330. package/locales/extra/lkt.d.ts +1 -1
  1331. package/locales/extra/lkt.mjs +2 -2
  1332. package/locales/extra/ln-AO.d.ts +1 -1
  1333. package/locales/extra/ln-AO.mjs +2 -2
  1334. package/locales/extra/ln-CF.d.ts +1 -1
  1335. package/locales/extra/ln-CF.mjs +2 -2
  1336. package/locales/extra/ln-CG.d.ts +1 -1
  1337. package/locales/extra/ln-CG.mjs +2 -2
  1338. package/locales/extra/ln.d.ts +1 -1
  1339. package/locales/extra/ln.mjs +2 -2
  1340. package/locales/extra/lo.d.ts +1 -1
  1341. package/locales/extra/lo.mjs +2 -2
  1342. package/locales/extra/lrc-IQ.d.ts +1 -1
  1343. package/locales/extra/lrc-IQ.mjs +2 -2
  1344. package/locales/extra/lrc.d.ts +1 -1
  1345. package/locales/extra/lrc.mjs +2 -2
  1346. package/locales/extra/lt.d.ts +1 -1
  1347. package/locales/extra/lt.mjs +2 -2
  1348. package/locales/extra/lu.d.ts +1 -1
  1349. package/locales/extra/lu.mjs +2 -2
  1350. package/locales/extra/luo.d.ts +1 -1
  1351. package/locales/extra/luo.mjs +2 -2
  1352. package/locales/extra/luy.d.ts +1 -1
  1353. package/locales/extra/luy.mjs +2 -2
  1354. package/locales/extra/lv.d.ts +1 -1
  1355. package/locales/extra/lv.mjs +2 -2
  1356. package/locales/extra/mai.d.ts +1 -1
  1357. package/locales/extra/mai.mjs +2 -2
  1358. package/locales/extra/mas-TZ.d.ts +1 -1
  1359. package/locales/extra/mas-TZ.mjs +2 -2
  1360. package/locales/extra/mas.d.ts +1 -1
  1361. package/locales/extra/mas.mjs +2 -2
  1362. package/locales/extra/mer.d.ts +1 -1
  1363. package/locales/extra/mer.mjs +2 -2
  1364. package/locales/extra/mfe.d.ts +1 -1
  1365. package/locales/extra/mfe.mjs +2 -2
  1366. package/locales/extra/mg.d.ts +1 -1
  1367. package/locales/extra/mg.mjs +2 -2
  1368. package/locales/extra/mgh.d.ts +1 -1
  1369. package/locales/extra/mgh.mjs +2 -2
  1370. package/locales/extra/mgo.d.ts +1 -1
  1371. package/locales/extra/mgo.mjs +2 -2
  1372. package/locales/extra/mi.d.ts +1 -1
  1373. package/locales/extra/mi.mjs +2 -2
  1374. package/locales/extra/mk.d.ts +1 -1
  1375. package/locales/extra/mk.mjs +2 -2
  1376. package/locales/extra/ml.d.ts +1 -1
  1377. package/locales/extra/ml.mjs +2 -2
  1378. package/locales/extra/mn.d.ts +1 -1
  1379. package/locales/extra/mn.mjs +2 -2
  1380. package/locales/extra/mni-Beng.d.ts +1 -1
  1381. package/locales/extra/mni-Beng.mjs +2 -2
  1382. package/locales/extra/mni.d.ts +1 -1
  1383. package/locales/extra/mni.mjs +2 -2
  1384. package/locales/extra/mr.d.ts +1 -1
  1385. package/locales/extra/mr.mjs +2 -2
  1386. package/locales/extra/ms-BN.d.ts +1 -1
  1387. package/locales/extra/ms-BN.mjs +2 -2
  1388. package/locales/extra/ms-ID.d.ts +1 -1
  1389. package/locales/extra/ms-ID.mjs +2 -2
  1390. package/locales/extra/ms-SG.d.ts +1 -1
  1391. package/locales/extra/ms-SG.mjs +2 -2
  1392. package/locales/extra/ms.d.ts +1 -1
  1393. package/locales/extra/ms.mjs +2 -2
  1394. package/locales/extra/mt.d.ts +1 -1
  1395. package/locales/extra/mt.mjs +2 -2
  1396. package/locales/extra/mua.d.ts +1 -1
  1397. package/locales/extra/mua.mjs +2 -2
  1398. package/locales/extra/my.d.ts +1 -1
  1399. package/locales/extra/my.mjs +2 -2
  1400. package/locales/extra/mzn.d.ts +1 -1
  1401. package/locales/extra/mzn.mjs +2 -2
  1402. package/locales/extra/naq.d.ts +1 -1
  1403. package/locales/extra/naq.mjs +2 -2
  1404. package/locales/extra/nb-SJ.d.ts +1 -1
  1405. package/locales/extra/nb-SJ.mjs +2 -2
  1406. package/locales/extra/nb.d.ts +1 -1
  1407. package/locales/extra/nb.mjs +2 -2
  1408. package/locales/extra/nd.d.ts +1 -1
  1409. package/locales/extra/nd.mjs +2 -2
  1410. package/locales/extra/nds-NL.d.ts +1 -1
  1411. package/locales/extra/nds-NL.mjs +2 -2
  1412. package/locales/extra/nds.d.ts +1 -1
  1413. package/locales/extra/nds.mjs +2 -2
  1414. package/locales/extra/ne-IN.d.ts +1 -1
  1415. package/locales/extra/ne-IN.mjs +2 -2
  1416. package/locales/extra/ne.d.ts +1 -1
  1417. package/locales/extra/ne.mjs +2 -2
  1418. package/locales/extra/nl-AW.d.ts +1 -1
  1419. package/locales/extra/nl-AW.mjs +2 -2
  1420. package/locales/extra/nl-BE.d.ts +1 -1
  1421. package/locales/extra/nl-BE.mjs +2 -2
  1422. package/locales/extra/nl-BQ.d.ts +1 -1
  1423. package/locales/extra/nl-BQ.mjs +2 -2
  1424. package/locales/extra/nl-CW.d.ts +1 -1
  1425. package/locales/extra/nl-CW.mjs +2 -2
  1426. package/locales/extra/nl-SR.d.ts +1 -1
  1427. package/locales/extra/nl-SR.mjs +2 -2
  1428. package/locales/extra/nl-SX.d.ts +1 -1
  1429. package/locales/extra/nl-SX.mjs +2 -2
  1430. package/locales/extra/nl.d.ts +1 -1
  1431. package/locales/extra/nl.mjs +2 -2
  1432. package/locales/extra/nmg.d.ts +1 -1
  1433. package/locales/extra/nmg.mjs +2 -2
  1434. package/locales/extra/nn.d.ts +1 -1
  1435. package/locales/extra/nn.mjs +2 -2
  1436. package/locales/extra/nnh.d.ts +1 -1
  1437. package/locales/extra/nnh.mjs +2 -2
  1438. package/locales/extra/no.d.ts +1 -1
  1439. package/locales/extra/no.mjs +2 -2
  1440. package/locales/extra/nus.d.ts +1 -1
  1441. package/locales/extra/nus.mjs +2 -2
  1442. package/locales/extra/nyn.d.ts +1 -1
  1443. package/locales/extra/nyn.mjs +2 -2
  1444. package/locales/extra/om-KE.d.ts +1 -1
  1445. package/locales/extra/om-KE.mjs +2 -2
  1446. package/locales/extra/om.d.ts +1 -1
  1447. package/locales/extra/om.mjs +2 -2
  1448. package/locales/extra/or.d.ts +1 -1
  1449. package/locales/extra/or.mjs +2 -2
  1450. package/locales/extra/os-RU.d.ts +1 -1
  1451. package/locales/extra/os-RU.mjs +2 -2
  1452. package/locales/extra/os.d.ts +1 -1
  1453. package/locales/extra/os.mjs +2 -2
  1454. package/locales/extra/pa-Arab.d.ts +1 -1
  1455. package/locales/extra/pa-Arab.mjs +2 -2
  1456. package/locales/extra/pa-Guru.d.ts +1 -1
  1457. package/locales/extra/pa-Guru.mjs +2 -2
  1458. package/locales/extra/pa.d.ts +1 -1
  1459. package/locales/extra/pa.mjs +2 -2
  1460. package/locales/extra/pcm.d.ts +1 -1
  1461. package/locales/extra/pcm.mjs +2 -2
  1462. package/locales/extra/pl.d.ts +1 -1
  1463. package/locales/extra/pl.mjs +2 -2
  1464. package/locales/extra/ps-PK.d.ts +1 -1
  1465. package/locales/extra/ps-PK.mjs +2 -2
  1466. package/locales/extra/ps.d.ts +1 -1
  1467. package/locales/extra/ps.mjs +2 -2
  1468. package/locales/extra/pt-AO.d.ts +1 -1
  1469. package/locales/extra/pt-AO.mjs +2 -2
  1470. package/locales/extra/pt-CH.d.ts +1 -1
  1471. package/locales/extra/pt-CH.mjs +2 -2
  1472. package/locales/extra/pt-CV.d.ts +1 -1
  1473. package/locales/extra/pt-CV.mjs +2 -2
  1474. package/locales/extra/pt-GQ.d.ts +1 -1
  1475. package/locales/extra/pt-GQ.mjs +2 -2
  1476. package/locales/extra/pt-GW.d.ts +1 -1
  1477. package/locales/extra/pt-GW.mjs +2 -2
  1478. package/locales/extra/pt-LU.d.ts +1 -1
  1479. package/locales/extra/pt-LU.mjs +2 -2
  1480. package/locales/extra/pt-MO.d.ts +1 -1
  1481. package/locales/extra/pt-MO.mjs +2 -2
  1482. package/locales/extra/pt-MZ.d.ts +1 -1
  1483. package/locales/extra/pt-MZ.mjs +2 -2
  1484. package/locales/extra/pt-PT.d.ts +1 -1
  1485. package/locales/extra/pt-PT.mjs +2 -2
  1486. package/locales/extra/pt-ST.d.ts +1 -1
  1487. package/locales/extra/pt-ST.mjs +2 -2
  1488. package/locales/extra/pt-TL.d.ts +1 -1
  1489. package/locales/extra/pt-TL.mjs +2 -2
  1490. package/locales/extra/pt.d.ts +1 -1
  1491. package/locales/extra/pt.mjs +2 -2
  1492. package/locales/extra/qu-BO.d.ts +1 -1
  1493. package/locales/extra/qu-BO.mjs +2 -2
  1494. package/locales/extra/qu-EC.d.ts +1 -1
  1495. package/locales/extra/qu-EC.mjs +2 -2
  1496. package/locales/extra/qu.d.ts +1 -1
  1497. package/locales/extra/qu.mjs +2 -2
  1498. package/locales/extra/rm.d.ts +1 -1
  1499. package/locales/extra/rm.mjs +2 -2
  1500. package/locales/extra/rn.d.ts +1 -1
  1501. package/locales/extra/rn.mjs +2 -2
  1502. package/locales/extra/ro-MD.d.ts +1 -1
  1503. package/locales/extra/ro-MD.mjs +2 -2
  1504. package/locales/extra/ro.d.ts +1 -1
  1505. package/locales/extra/ro.mjs +2 -2
  1506. package/locales/extra/rof.d.ts +1 -1
  1507. package/locales/extra/rof.mjs +2 -2
  1508. package/locales/extra/ru-BY.d.ts +1 -1
  1509. package/locales/extra/ru-BY.mjs +2 -2
  1510. package/locales/extra/ru-KG.d.ts +1 -1
  1511. package/locales/extra/ru-KG.mjs +2 -2
  1512. package/locales/extra/ru-KZ.d.ts +1 -1
  1513. package/locales/extra/ru-KZ.mjs +2 -2
  1514. package/locales/extra/ru-MD.d.ts +1 -1
  1515. package/locales/extra/ru-MD.mjs +2 -2
  1516. package/locales/extra/ru-UA.d.ts +1 -1
  1517. package/locales/extra/ru-UA.mjs +2 -2
  1518. package/locales/extra/ru.d.ts +1 -1
  1519. package/locales/extra/ru.mjs +2 -2
  1520. package/locales/extra/rw.d.ts +1 -1
  1521. package/locales/extra/rw.mjs +2 -2
  1522. package/locales/extra/rwk.d.ts +1 -1
  1523. package/locales/extra/rwk.mjs +2 -2
  1524. package/locales/extra/sa.d.ts +1 -1
  1525. package/locales/extra/sa.mjs +2 -2
  1526. package/locales/extra/sah.d.ts +1 -1
  1527. package/locales/extra/sah.mjs +2 -2
  1528. package/locales/extra/saq.d.ts +1 -1
  1529. package/locales/extra/saq.mjs +2 -2
  1530. package/locales/extra/sat-Olck.d.ts +1 -1
  1531. package/locales/extra/sat-Olck.mjs +2 -2
  1532. package/locales/extra/sat.d.ts +1 -1
  1533. package/locales/extra/sat.mjs +2 -2
  1534. package/locales/extra/sbp.d.ts +1 -1
  1535. package/locales/extra/sbp.mjs +2 -2
  1536. package/locales/extra/sc.d.ts +1 -1
  1537. package/locales/extra/sc.mjs +2 -2
  1538. package/locales/extra/sd-Arab.d.ts +1 -1
  1539. package/locales/extra/sd-Arab.mjs +2 -2
  1540. package/locales/extra/sd-Deva.d.ts +1 -1
  1541. package/locales/extra/sd-Deva.mjs +2 -2
  1542. package/locales/extra/sd.d.ts +1 -1
  1543. package/locales/extra/sd.mjs +2 -2
  1544. package/locales/extra/se-FI.d.ts +1 -1
  1545. package/locales/extra/se-FI.mjs +2 -2
  1546. package/locales/extra/se-SE.d.ts +1 -1
  1547. package/locales/extra/se-SE.mjs +2 -2
  1548. package/locales/extra/se.d.ts +1 -1
  1549. package/locales/extra/se.mjs +2 -2
  1550. package/locales/extra/seh.d.ts +1 -1
  1551. package/locales/extra/seh.mjs +2 -2
  1552. package/locales/extra/ses.d.ts +1 -1
  1553. package/locales/extra/ses.mjs +2 -2
  1554. package/locales/extra/sg.d.ts +1 -1
  1555. package/locales/extra/sg.mjs +2 -2
  1556. package/locales/extra/shi-Latn.d.ts +1 -1
  1557. package/locales/extra/shi-Latn.mjs +2 -2
  1558. package/locales/extra/shi-Tfng.d.ts +1 -1
  1559. package/locales/extra/shi-Tfng.mjs +2 -2
  1560. package/locales/extra/shi.d.ts +1 -1
  1561. package/locales/extra/shi.mjs +2 -2
  1562. package/locales/extra/si.d.ts +1 -1
  1563. package/locales/extra/si.mjs +2 -2
  1564. package/locales/extra/sk.d.ts +1 -1
  1565. package/locales/extra/sk.mjs +2 -2
  1566. package/locales/extra/sl.d.ts +1 -1
  1567. package/locales/extra/sl.mjs +2 -2
  1568. package/locales/extra/smn.d.ts +1 -1
  1569. package/locales/extra/smn.mjs +2 -2
  1570. package/locales/extra/sn.d.ts +1 -1
  1571. package/locales/extra/sn.mjs +2 -2
  1572. package/locales/extra/so-DJ.d.ts +1 -1
  1573. package/locales/extra/so-DJ.mjs +2 -2
  1574. package/locales/extra/so-ET.d.ts +1 -1
  1575. package/locales/extra/so-ET.mjs +2 -2
  1576. package/locales/extra/so-KE.d.ts +1 -1
  1577. package/locales/extra/so-KE.mjs +2 -2
  1578. package/locales/extra/so.d.ts +1 -1
  1579. package/locales/extra/so.mjs +2 -2
  1580. package/locales/extra/sq-MK.d.ts +1 -1
  1581. package/locales/extra/sq-MK.mjs +2 -2
  1582. package/locales/extra/sq-XK.d.ts +1 -1
  1583. package/locales/extra/sq-XK.mjs +2 -2
  1584. package/locales/extra/sq.d.ts +1 -1
  1585. package/locales/extra/sq.mjs +2 -2
  1586. package/locales/extra/sr-Cyrl-BA.d.ts +1 -1
  1587. package/locales/extra/sr-Cyrl-BA.mjs +2 -2
  1588. package/locales/extra/sr-Cyrl-ME.d.ts +1 -1
  1589. package/locales/extra/sr-Cyrl-ME.mjs +2 -2
  1590. package/locales/extra/sr-Cyrl-XK.d.ts +1 -1
  1591. package/locales/extra/sr-Cyrl-XK.mjs +2 -2
  1592. package/locales/extra/sr-Cyrl.d.ts +1 -1
  1593. package/locales/extra/sr-Cyrl.mjs +2 -2
  1594. package/locales/extra/sr-Latn-BA.d.ts +1 -1
  1595. package/locales/extra/sr-Latn-BA.mjs +2 -2
  1596. package/locales/extra/sr-Latn-ME.d.ts +1 -1
  1597. package/locales/extra/sr-Latn-ME.mjs +2 -2
  1598. package/locales/extra/sr-Latn-XK.d.ts +1 -1
  1599. package/locales/extra/sr-Latn-XK.mjs +2 -2
  1600. package/locales/extra/sr-Latn.d.ts +1 -1
  1601. package/locales/extra/sr-Latn.mjs +2 -2
  1602. package/locales/extra/sr.d.ts +1 -1
  1603. package/locales/extra/sr.mjs +2 -2
  1604. package/locales/extra/su-Latn.d.ts +1 -1
  1605. package/locales/extra/su-Latn.mjs +2 -2
  1606. package/locales/extra/su.d.ts +1 -1
  1607. package/locales/extra/su.mjs +2 -2
  1608. package/locales/extra/sv-AX.d.ts +1 -1
  1609. package/locales/extra/sv-AX.mjs +2 -2
  1610. package/locales/extra/sv-FI.d.ts +1 -1
  1611. package/locales/extra/sv-FI.mjs +2 -2
  1612. package/locales/extra/sv.d.ts +1 -1
  1613. package/locales/extra/sv.mjs +2 -2
  1614. package/locales/extra/sw-CD.d.ts +1 -1
  1615. package/locales/extra/sw-CD.mjs +2 -2
  1616. package/locales/extra/sw-KE.d.ts +1 -1
  1617. package/locales/extra/sw-KE.mjs +2 -2
  1618. package/locales/extra/sw-UG.d.ts +1 -1
  1619. package/locales/extra/sw-UG.mjs +2 -2
  1620. package/locales/extra/sw.d.ts +1 -1
  1621. package/locales/extra/sw.mjs +2 -2
  1622. package/locales/extra/ta-LK.d.ts +1 -1
  1623. package/locales/extra/ta-LK.mjs +2 -2
  1624. package/locales/extra/ta-MY.d.ts +1 -1
  1625. package/locales/extra/ta-MY.mjs +2 -2
  1626. package/locales/extra/ta-SG.d.ts +1 -1
  1627. package/locales/extra/ta-SG.mjs +2 -2
  1628. package/locales/extra/ta.d.ts +1 -1
  1629. package/locales/extra/ta.mjs +2 -2
  1630. package/locales/extra/te.d.ts +1 -1
  1631. package/locales/extra/te.mjs +2 -2
  1632. package/locales/extra/teo-KE.d.ts +1 -1
  1633. package/locales/extra/teo-KE.mjs +2 -2
  1634. package/locales/extra/teo.d.ts +1 -1
  1635. package/locales/extra/teo.mjs +2 -2
  1636. package/locales/extra/tg.d.ts +1 -1
  1637. package/locales/extra/tg.mjs +2 -2
  1638. package/locales/extra/th.d.ts +1 -1
  1639. package/locales/extra/th.mjs +2 -2
  1640. package/locales/extra/ti-ER.d.ts +1 -1
  1641. package/locales/extra/ti-ER.mjs +2 -2
  1642. package/locales/extra/ti.d.ts +1 -1
  1643. package/locales/extra/ti.mjs +2 -2
  1644. package/locales/extra/tk.d.ts +1 -1
  1645. package/locales/extra/tk.mjs +2 -2
  1646. package/locales/extra/to.d.ts +1 -1
  1647. package/locales/extra/to.mjs +2 -2
  1648. package/locales/extra/tr-CY.d.ts +1 -1
  1649. package/locales/extra/tr-CY.mjs +2 -2
  1650. package/locales/extra/tr.d.ts +1 -1
  1651. package/locales/extra/tr.mjs +2 -2
  1652. package/locales/extra/tt.d.ts +1 -1
  1653. package/locales/extra/tt.mjs +2 -2
  1654. package/locales/extra/twq.d.ts +1 -1
  1655. package/locales/extra/twq.mjs +2 -2
  1656. package/locales/extra/tzm.d.ts +1 -1
  1657. package/locales/extra/tzm.mjs +2 -2
  1658. package/locales/extra/ug.d.ts +1 -1
  1659. package/locales/extra/ug.mjs +2 -2
  1660. package/locales/extra/uk.d.ts +1 -1
  1661. package/locales/extra/uk.mjs +2 -2
  1662. package/locales/extra/und.d.ts +1 -1
  1663. package/locales/extra/und.mjs +2 -2
  1664. package/locales/extra/ur-IN.d.ts +1 -1
  1665. package/locales/extra/ur-IN.mjs +2 -2
  1666. package/locales/extra/ur.d.ts +1 -1
  1667. package/locales/extra/ur.mjs +2 -2
  1668. package/locales/extra/uz-Arab.d.ts +1 -1
  1669. package/locales/extra/uz-Arab.mjs +2 -2
  1670. package/locales/extra/uz-Cyrl.d.ts +1 -1
  1671. package/locales/extra/uz-Cyrl.mjs +2 -2
  1672. package/locales/extra/uz-Latn.d.ts +1 -1
  1673. package/locales/extra/uz-Latn.mjs +2 -2
  1674. package/locales/extra/uz.d.ts +1 -1
  1675. package/locales/extra/uz.mjs +2 -2
  1676. package/locales/extra/vai-Latn.d.ts +1 -1
  1677. package/locales/extra/vai-Latn.mjs +2 -2
  1678. package/locales/extra/vai-Vaii.d.ts +1 -1
  1679. package/locales/extra/vai-Vaii.mjs +2 -2
  1680. package/locales/extra/vai.d.ts +1 -1
  1681. package/locales/extra/vai.mjs +2 -2
  1682. package/locales/extra/vi.d.ts +1 -1
  1683. package/locales/extra/vi.mjs +2 -2
  1684. package/locales/extra/vun.d.ts +1 -1
  1685. package/locales/extra/vun.mjs +2 -2
  1686. package/locales/extra/wae.d.ts +1 -1
  1687. package/locales/extra/wae.mjs +2 -2
  1688. package/locales/extra/wo.d.ts +1 -1
  1689. package/locales/extra/wo.mjs +2 -2
  1690. package/locales/extra/xh.d.ts +1 -1
  1691. package/locales/extra/xh.mjs +2 -2
  1692. package/locales/extra/xog.d.ts +1 -1
  1693. package/locales/extra/xog.mjs +2 -2
  1694. package/locales/extra/yav.d.ts +1 -1
  1695. package/locales/extra/yav.mjs +2 -2
  1696. package/locales/extra/yi.d.ts +1 -1
  1697. package/locales/extra/yi.mjs +2 -2
  1698. package/locales/extra/yo-BJ.d.ts +1 -1
  1699. package/locales/extra/yo-BJ.mjs +2 -2
  1700. package/locales/extra/yo.d.ts +1 -1
  1701. package/locales/extra/yo.mjs +2 -2
  1702. package/locales/extra/yrl-CO.d.ts +1 -1
  1703. package/locales/extra/yrl-CO.mjs +2 -2
  1704. package/locales/extra/yrl-VE.d.ts +1 -1
  1705. package/locales/extra/yrl-VE.mjs +2 -2
  1706. package/locales/extra/yrl.d.ts +1 -1
  1707. package/locales/extra/yrl.mjs +2 -2
  1708. package/locales/extra/yue-Hans.d.ts +1 -1
  1709. package/locales/extra/yue-Hans.mjs +2 -2
  1710. package/locales/extra/yue-Hant.d.ts +1 -1
  1711. package/locales/extra/yue-Hant.mjs +2 -2
  1712. package/locales/extra/yue.d.ts +1 -1
  1713. package/locales/extra/yue.mjs +2 -2
  1714. package/locales/extra/zgh.d.ts +1 -1
  1715. package/locales/extra/zgh.mjs +2 -2
  1716. package/locales/extra/zh-Hans-HK.d.ts +1 -1
  1717. package/locales/extra/zh-Hans-HK.mjs +2 -2
  1718. package/locales/extra/zh-Hans-MO.d.ts +1 -1
  1719. package/locales/extra/zh-Hans-MO.mjs +2 -2
  1720. package/locales/extra/zh-Hans-SG.d.ts +1 -1
  1721. package/locales/extra/zh-Hans-SG.mjs +2 -2
  1722. package/locales/extra/zh-Hans.d.ts +1 -1
  1723. package/locales/extra/zh-Hans.mjs +2 -2
  1724. package/locales/extra/zh-Hant-HK.d.ts +1 -1
  1725. package/locales/extra/zh-Hant-HK.mjs +2 -2
  1726. package/locales/extra/zh-Hant-MO.d.ts +1 -1
  1727. package/locales/extra/zh-Hant-MO.mjs +2 -2
  1728. package/locales/extra/zh-Hant.d.ts +1 -1
  1729. package/locales/extra/zh-Hant.mjs +2 -2
  1730. package/locales/extra/zh.d.ts +1 -1
  1731. package/locales/extra/zh.mjs +2 -2
  1732. package/locales/extra/zu.d.ts +1 -1
  1733. package/locales/extra/zu.mjs +2 -2
  1734. package/locales/fa-AF.d.ts +1 -1
  1735. package/locales/fa-AF.mjs +2 -2
  1736. package/locales/fa.d.ts +1 -1
  1737. package/locales/fa.mjs +2 -2
  1738. package/locales/ff-Adlm-BF.d.ts +1 -1
  1739. package/locales/ff-Adlm-BF.mjs +2 -2
  1740. package/locales/ff-Adlm-CM.d.ts +1 -1
  1741. package/locales/ff-Adlm-CM.mjs +2 -2
  1742. package/locales/ff-Adlm-GH.d.ts +1 -1
  1743. package/locales/ff-Adlm-GH.mjs +2 -2
  1744. package/locales/ff-Adlm-GM.d.ts +1 -1
  1745. package/locales/ff-Adlm-GM.mjs +2 -2
  1746. package/locales/ff-Adlm-GW.d.ts +1 -1
  1747. package/locales/ff-Adlm-GW.mjs +2 -2
  1748. package/locales/ff-Adlm-LR.d.ts +1 -1
  1749. package/locales/ff-Adlm-LR.mjs +2 -2
  1750. package/locales/ff-Adlm-MR.d.ts +1 -1
  1751. package/locales/ff-Adlm-MR.mjs +2 -2
  1752. package/locales/ff-Adlm-NE.d.ts +1 -1
  1753. package/locales/ff-Adlm-NE.mjs +2 -2
  1754. package/locales/ff-Adlm-NG.d.ts +1 -1
  1755. package/locales/ff-Adlm-NG.mjs +2 -2
  1756. package/locales/ff-Adlm-SL.d.ts +1 -1
  1757. package/locales/ff-Adlm-SL.mjs +2 -2
  1758. package/locales/ff-Adlm-SN.d.ts +1 -1
  1759. package/locales/ff-Adlm-SN.mjs +2 -2
  1760. package/locales/ff-Adlm.d.ts +1 -1
  1761. package/locales/ff-Adlm.mjs +2 -2
  1762. package/locales/ff-CM.d.ts +1 -1
  1763. package/locales/ff-CM.mjs +2 -2
  1764. package/locales/ff-GN.d.ts +1 -1
  1765. package/locales/ff-GN.mjs +2 -2
  1766. package/locales/ff-Latn-BF.d.ts +1 -1
  1767. package/locales/ff-Latn-BF.mjs +2 -2
  1768. package/locales/ff-Latn-CM.d.ts +1 -1
  1769. package/locales/ff-Latn-CM.mjs +2 -2
  1770. package/locales/ff-Latn-GH.d.ts +1 -1
  1771. package/locales/ff-Latn-GH.mjs +2 -2
  1772. package/locales/ff-Latn-GM.d.ts +1 -1
  1773. package/locales/ff-Latn-GM.mjs +2 -2
  1774. package/locales/ff-Latn-GN.d.ts +1 -1
  1775. package/locales/ff-Latn-GN.mjs +2 -2
  1776. package/locales/ff-Latn-GW.d.ts +1 -1
  1777. package/locales/ff-Latn-GW.mjs +2 -2
  1778. package/locales/ff-Latn-LR.d.ts +1 -1
  1779. package/locales/ff-Latn-LR.mjs +2 -2
  1780. package/locales/ff-Latn-MR.d.ts +1 -1
  1781. package/locales/ff-Latn-MR.mjs +2 -2
  1782. package/locales/ff-Latn-NE.d.ts +1 -1
  1783. package/locales/ff-Latn-NE.mjs +2 -2
  1784. package/locales/ff-Latn-NG.d.ts +1 -1
  1785. package/locales/ff-Latn-NG.mjs +2 -2
  1786. package/locales/ff-Latn-SL.d.ts +1 -1
  1787. package/locales/ff-Latn-SL.mjs +2 -2
  1788. package/locales/ff-Latn.d.ts +1 -1
  1789. package/locales/ff-Latn.mjs +2 -2
  1790. package/locales/ff-MR.d.ts +1 -1
  1791. package/locales/ff-MR.mjs +2 -2
  1792. package/locales/ff.d.ts +1 -1
  1793. package/locales/ff.mjs +2 -2
  1794. package/locales/fi.d.ts +1 -1
  1795. package/locales/fi.mjs +2 -2
  1796. package/locales/fil.d.ts +1 -1
  1797. package/locales/fil.mjs +2 -2
  1798. package/locales/fo-DK.d.ts +1 -1
  1799. package/locales/fo-DK.mjs +2 -2
  1800. package/locales/fo.d.ts +1 -1
  1801. package/locales/fo.mjs +2 -2
  1802. package/locales/fr-BE.d.ts +1 -1
  1803. package/locales/fr-BE.mjs +2 -2
  1804. package/locales/fr-BF.d.ts +1 -1
  1805. package/locales/fr-BF.mjs +2 -2
  1806. package/locales/fr-BI.d.ts +1 -1
  1807. package/locales/fr-BI.mjs +2 -2
  1808. package/locales/fr-BJ.d.ts +1 -1
  1809. package/locales/fr-BJ.mjs +2 -2
  1810. package/locales/fr-BL.d.ts +1 -1
  1811. package/locales/fr-BL.mjs +2 -2
  1812. package/locales/fr-CA.d.ts +1 -1
  1813. package/locales/fr-CA.mjs +2 -2
  1814. package/locales/fr-CD.d.ts +1 -1
  1815. package/locales/fr-CD.mjs +2 -2
  1816. package/locales/fr-CF.d.ts +1 -1
  1817. package/locales/fr-CF.mjs +2 -2
  1818. package/locales/fr-CG.d.ts +1 -1
  1819. package/locales/fr-CG.mjs +2 -2
  1820. package/locales/fr-CH.d.ts +1 -1
  1821. package/locales/fr-CH.mjs +2 -2
  1822. package/locales/fr-CI.d.ts +1 -1
  1823. package/locales/fr-CI.mjs +2 -2
  1824. package/locales/fr-CM.d.ts +1 -1
  1825. package/locales/fr-CM.mjs +2 -2
  1826. package/locales/fr-DJ.d.ts +1 -1
  1827. package/locales/fr-DJ.mjs +2 -2
  1828. package/locales/fr-DZ.d.ts +1 -1
  1829. package/locales/fr-DZ.mjs +2 -2
  1830. package/locales/fr-GA.d.ts +1 -1
  1831. package/locales/fr-GA.mjs +2 -2
  1832. package/locales/fr-GF.d.ts +1 -1
  1833. package/locales/fr-GF.mjs +2 -2
  1834. package/locales/fr-GN.d.ts +1 -1
  1835. package/locales/fr-GN.mjs +2 -2
  1836. package/locales/fr-GP.d.ts +1 -1
  1837. package/locales/fr-GP.mjs +2 -2
  1838. package/locales/fr-GQ.d.ts +1 -1
  1839. package/locales/fr-GQ.mjs +2 -2
  1840. package/locales/fr-HT.d.ts +1 -1
  1841. package/locales/fr-HT.mjs +2 -2
  1842. package/locales/fr-KM.d.ts +1 -1
  1843. package/locales/fr-KM.mjs +2 -2
  1844. package/locales/fr-LU.d.ts +1 -1
  1845. package/locales/fr-LU.mjs +2 -2
  1846. package/locales/fr-MA.d.ts +1 -1
  1847. package/locales/fr-MA.mjs +2 -2
  1848. package/locales/fr-MC.d.ts +1 -1
  1849. package/locales/fr-MC.mjs +2 -2
  1850. package/locales/fr-MF.d.ts +1 -1
  1851. package/locales/fr-MF.mjs +2 -2
  1852. package/locales/fr-MG.d.ts +1 -1
  1853. package/locales/fr-MG.mjs +2 -2
  1854. package/locales/fr-ML.d.ts +1 -1
  1855. package/locales/fr-ML.mjs +2 -2
  1856. package/locales/fr-MQ.d.ts +1 -1
  1857. package/locales/fr-MQ.mjs +2 -2
  1858. package/locales/fr-MR.d.ts +1 -1
  1859. package/locales/fr-MR.mjs +2 -2
  1860. package/locales/fr-MU.d.ts +1 -1
  1861. package/locales/fr-MU.mjs +2 -2
  1862. package/locales/fr-NC.d.ts +1 -1
  1863. package/locales/fr-NC.mjs +2 -2
  1864. package/locales/fr-NE.d.ts +1 -1
  1865. package/locales/fr-NE.mjs +2 -2
  1866. package/locales/fr-PF.d.ts +1 -1
  1867. package/locales/fr-PF.mjs +2 -2
  1868. package/locales/fr-PM.d.ts +1 -1
  1869. package/locales/fr-PM.mjs +2 -2
  1870. package/locales/fr-RE.d.ts +1 -1
  1871. package/locales/fr-RE.mjs +2 -2
  1872. package/locales/fr-RW.d.ts +1 -1
  1873. package/locales/fr-RW.mjs +2 -2
  1874. package/locales/fr-SC.d.ts +1 -1
  1875. package/locales/fr-SC.mjs +2 -2
  1876. package/locales/fr-SN.d.ts +1 -1
  1877. package/locales/fr-SN.mjs +2 -2
  1878. package/locales/fr-SY.d.ts +1 -1
  1879. package/locales/fr-SY.mjs +2 -2
  1880. package/locales/fr-TD.d.ts +1 -1
  1881. package/locales/fr-TD.mjs +2 -2
  1882. package/locales/fr-TG.d.ts +1 -1
  1883. package/locales/fr-TG.mjs +2 -2
  1884. package/locales/fr-TN.d.ts +1 -1
  1885. package/locales/fr-TN.mjs +2 -2
  1886. package/locales/fr-VU.d.ts +1 -1
  1887. package/locales/fr-VU.mjs +2 -2
  1888. package/locales/fr-WF.d.ts +1 -1
  1889. package/locales/fr-WF.mjs +2 -2
  1890. package/locales/fr-YT.d.ts +1 -1
  1891. package/locales/fr-YT.mjs +2 -2
  1892. package/locales/fr.d.ts +1 -1
  1893. package/locales/fr.mjs +2 -2
  1894. package/locales/fur.d.ts +1 -1
  1895. package/locales/fur.mjs +2 -2
  1896. package/locales/fy.d.ts +1 -1
  1897. package/locales/fy.mjs +2 -2
  1898. package/locales/ga-GB.d.ts +1 -1
  1899. package/locales/ga-GB.mjs +2 -2
  1900. package/locales/ga.d.ts +1 -1
  1901. package/locales/ga.mjs +2 -2
  1902. package/locales/gd.d.ts +1 -1
  1903. package/locales/gd.mjs +2 -2
  1904. package/locales/gl.d.ts +1 -1
  1905. package/locales/gl.mjs +2 -2
  1906. package/locales/global/af-NA.js +1 -1
  1907. package/locales/global/af.js +1 -1
  1908. package/locales/global/agq.js +1 -1
  1909. package/locales/global/ak.js +1 -1
  1910. package/locales/global/am.js +1 -1
  1911. package/locales/global/ar-AE.js +1 -1
  1912. package/locales/global/ar-BH.js +1 -1
  1913. package/locales/global/ar-DJ.js +1 -1
  1914. package/locales/global/ar-DZ.js +1 -1
  1915. package/locales/global/ar-EG.js +1 -1
  1916. package/locales/global/ar-EH.js +1 -1
  1917. package/locales/global/ar-ER.js +1 -1
  1918. package/locales/global/ar-IL.js +1 -1
  1919. package/locales/global/ar-IQ.js +1 -1
  1920. package/locales/global/ar-JO.js +1 -1
  1921. package/locales/global/ar-KM.js +1 -1
  1922. package/locales/global/ar-KW.js +1 -1
  1923. package/locales/global/ar-LB.js +1 -1
  1924. package/locales/global/ar-LY.js +1 -1
  1925. package/locales/global/ar-MA.js +1 -1
  1926. package/locales/global/ar-MR.js +1 -1
  1927. package/locales/global/ar-OM.js +1 -1
  1928. package/locales/global/ar-PS.js +1 -1
  1929. package/locales/global/ar-QA.js +1 -1
  1930. package/locales/global/ar-SA.js +1 -1
  1931. package/locales/global/ar-SD.js +1 -1
  1932. package/locales/global/ar-SO.js +1 -1
  1933. package/locales/global/ar-SS.js +1 -1
  1934. package/locales/global/ar-SY.js +1 -1
  1935. package/locales/global/ar-TD.js +1 -1
  1936. package/locales/global/ar-TN.js +1 -1
  1937. package/locales/global/ar-YE.js +1 -1
  1938. package/locales/global/ar.js +1 -1
  1939. package/locales/global/as.js +1 -1
  1940. package/locales/global/asa.js +1 -1
  1941. package/locales/global/ast.js +1 -1
  1942. package/locales/global/az-Cyrl.js +1 -1
  1943. package/locales/global/az-Latn.js +1 -1
  1944. package/locales/global/az.js +1 -1
  1945. package/locales/global/bas.js +1 -1
  1946. package/locales/global/be-tarask.js +1 -1
  1947. package/locales/global/be.js +1 -1
  1948. package/locales/global/bem.js +1 -1
  1949. package/locales/global/bez.js +1 -1
  1950. package/locales/global/bg.js +1 -1
  1951. package/locales/global/bm.js +1 -1
  1952. package/locales/global/bn-IN.js +1 -1
  1953. package/locales/global/bn.js +1 -1
  1954. package/locales/global/bo-IN.js +1 -1
  1955. package/locales/global/bo.js +1 -1
  1956. package/locales/global/br.js +1 -1
  1957. package/locales/global/brx.js +1 -1
  1958. package/locales/global/bs-Cyrl.js +1 -1
  1959. package/locales/global/bs-Latn.js +1 -1
  1960. package/locales/global/bs.js +1 -1
  1961. package/locales/global/ca-AD.js +1 -1
  1962. package/locales/global/ca-ES-valencia.js +1 -1
  1963. package/locales/global/ca-FR.js +1 -1
  1964. package/locales/global/ca-IT.js +1 -1
  1965. package/locales/global/ca.js +1 -1
  1966. package/locales/global/ccp-IN.js +1 -1
  1967. package/locales/global/ccp.js +1 -1
  1968. package/locales/global/ce.js +1 -1
  1969. package/locales/global/ceb.js +1 -1
  1970. package/locales/global/cgg.js +1 -1
  1971. package/locales/global/chr.js +1 -1
  1972. package/locales/global/ckb-IR.js +1 -1
  1973. package/locales/global/ckb.js +1 -1
  1974. package/locales/global/cs.js +1 -1
  1975. package/locales/global/cy.js +1 -1
  1976. package/locales/global/da-GL.js +1 -1
  1977. package/locales/global/da.js +1 -1
  1978. package/locales/global/dav.js +1 -1
  1979. package/locales/global/de-AT.js +1 -1
  1980. package/locales/global/de-BE.js +1 -1
  1981. package/locales/global/de-CH.js +1 -1
  1982. package/locales/global/de-IT.js +1 -1
  1983. package/locales/global/de-LI.js +1 -1
  1984. package/locales/global/de-LU.js +1 -1
  1985. package/locales/global/de.js +1 -1
  1986. package/locales/global/dje.js +1 -1
  1987. package/locales/global/doi.js +1 -1
  1988. package/locales/global/dsb.js +1 -1
  1989. package/locales/global/dua.js +1 -1
  1990. package/locales/global/dyo.js +1 -1
  1991. package/locales/global/dz.js +1 -1
  1992. package/locales/global/ebu.js +1 -1
  1993. package/locales/global/ee-TG.js +1 -1
  1994. package/locales/global/ee.js +1 -1
  1995. package/locales/global/el-CY.js +1 -1
  1996. package/locales/global/el.js +1 -1
  1997. package/locales/global/en-001.js +1 -1
  1998. package/locales/global/en-150.js +1 -1
  1999. package/locales/global/en-AE.js +1 -1
  2000. package/locales/global/en-AG.js +1 -1
  2001. package/locales/global/en-AI.js +1 -1
  2002. package/locales/global/en-AS.js +1 -1
  2003. package/locales/global/en-AT.js +1 -1
  2004. package/locales/global/en-AU.js +1 -1
  2005. package/locales/global/en-BB.js +1 -1
  2006. package/locales/global/en-BE.js +1 -1
  2007. package/locales/global/en-BI.js +1 -1
  2008. package/locales/global/en-BM.js +1 -1
  2009. package/locales/global/en-BS.js +1 -1
  2010. package/locales/global/en-BW.js +1 -1
  2011. package/locales/global/en-BZ.js +1 -1
  2012. package/locales/global/en-CA.js +1 -1
  2013. package/locales/global/en-CC.js +1 -1
  2014. package/locales/global/en-CH.js +1 -1
  2015. package/locales/global/en-CK.js +1 -1
  2016. package/locales/global/en-CM.js +1 -1
  2017. package/locales/global/en-CX.js +1 -1
  2018. package/locales/global/en-CY.js +1 -1
  2019. package/locales/global/en-DE.js +1 -1
  2020. package/locales/global/en-DG.js +1 -1
  2021. package/locales/global/en-DK.js +1 -1
  2022. package/locales/global/en-DM.js +1 -1
  2023. package/locales/global/en-ER.js +1 -1
  2024. package/locales/global/en-FI.js +1 -1
  2025. package/locales/global/en-FJ.js +1 -1
  2026. package/locales/global/en-FK.js +1 -1
  2027. package/locales/global/en-FM.js +1 -1
  2028. package/locales/global/en-GB.js +1 -1
  2029. package/locales/global/en-GD.js +1 -1
  2030. package/locales/global/en-GG.js +1 -1
  2031. package/locales/global/en-GH.js +1 -1
  2032. package/locales/global/en-GI.js +1 -1
  2033. package/locales/global/en-GM.js +1 -1
  2034. package/locales/global/en-GU.js +1 -1
  2035. package/locales/global/en-GY.js +1 -1
  2036. package/locales/global/en-HK.js +1 -1
  2037. package/locales/global/en-IE.js +1 -1
  2038. package/locales/global/en-IL.js +1 -1
  2039. package/locales/global/en-IM.js +1 -1
  2040. package/locales/global/en-IN.js +1 -1
  2041. package/locales/global/en-IO.js +1 -1
  2042. package/locales/global/en-JE.js +1 -1
  2043. package/locales/global/en-JM.js +1 -1
  2044. package/locales/global/en-KE.js +1 -1
  2045. package/locales/global/en-KI.js +1 -1
  2046. package/locales/global/en-KN.js +1 -1
  2047. package/locales/global/en-KY.js +1 -1
  2048. package/locales/global/en-LC.js +1 -1
  2049. package/locales/global/en-LR.js +1 -1
  2050. package/locales/global/en-LS.js +1 -1
  2051. package/locales/global/en-MG.js +1 -1
  2052. package/locales/global/en-MH.js +1 -1
  2053. package/locales/global/en-MO.js +1 -1
  2054. package/locales/global/en-MP.js +1 -1
  2055. package/locales/global/en-MS.js +1 -1
  2056. package/locales/global/en-MT.js +1 -1
  2057. package/locales/global/en-MU.js +1 -1
  2058. package/locales/global/en-MV.js +1 -1
  2059. package/locales/global/en-MW.js +1 -1
  2060. package/locales/global/en-MY.js +1 -1
  2061. package/locales/global/en-NA.js +1 -1
  2062. package/locales/global/en-NF.js +1 -1
  2063. package/locales/global/en-NG.js +1 -1
  2064. package/locales/global/en-NL.js +1 -1
  2065. package/locales/global/en-NR.js +1 -1
  2066. package/locales/global/en-NU.js +1 -1
  2067. package/locales/global/en-NZ.js +1 -1
  2068. package/locales/global/en-PG.js +1 -1
  2069. package/locales/global/en-PH.js +1 -1
  2070. package/locales/global/en-PK.js +1 -1
  2071. package/locales/global/en-PN.js +1 -1
  2072. package/locales/global/en-PR.js +1 -1
  2073. package/locales/global/en-PW.js +1 -1
  2074. package/locales/global/en-RW.js +1 -1
  2075. package/locales/global/en-SB.js +1 -1
  2076. package/locales/global/en-SC.js +1 -1
  2077. package/locales/global/en-SD.js +1 -1
  2078. package/locales/global/en-SE.js +1 -1
  2079. package/locales/global/en-SG.js +1 -1
  2080. package/locales/global/en-SH.js +1 -1
  2081. package/locales/global/en-SI.js +1 -1
  2082. package/locales/global/en-SL.js +1 -1
  2083. package/locales/global/en-SS.js +1 -1
  2084. package/locales/global/en-SX.js +1 -1
  2085. package/locales/global/en-SZ.js +1 -1
  2086. package/locales/global/en-TC.js +1 -1
  2087. package/locales/global/en-TK.js +1 -1
  2088. package/locales/global/en-TO.js +1 -1
  2089. package/locales/global/en-TT.js +1 -1
  2090. package/locales/global/en-TV.js +1 -1
  2091. package/locales/global/en-TZ.js +1 -1
  2092. package/locales/global/en-UG.js +1 -1
  2093. package/locales/global/en-UM.js +1 -1
  2094. package/locales/global/en-VC.js +1 -1
  2095. package/locales/global/en-VG.js +1 -1
  2096. package/locales/global/en-VI.js +1 -1
  2097. package/locales/global/en-VU.js +1 -1
  2098. package/locales/global/en-WS.js +1 -1
  2099. package/locales/global/en-ZA.js +1 -1
  2100. package/locales/global/en-ZM.js +1 -1
  2101. package/locales/global/en-ZW.js +1 -1
  2102. package/locales/global/en.js +1 -1
  2103. package/locales/global/eo.js +1 -1
  2104. package/locales/global/es-419.js +1 -1
  2105. package/locales/global/es-AR.js +1 -1
  2106. package/locales/global/es-BO.js +1 -1
  2107. package/locales/global/es-BR.js +1 -1
  2108. package/locales/global/es-BZ.js +1 -1
  2109. package/locales/global/es-CL.js +1 -1
  2110. package/locales/global/es-CO.js +1 -1
  2111. package/locales/global/es-CR.js +1 -1
  2112. package/locales/global/es-CU.js +1 -1
  2113. package/locales/global/es-DO.js +1 -1
  2114. package/locales/global/es-EA.js +1 -1
  2115. package/locales/global/es-EC.js +1 -1
  2116. package/locales/global/es-GQ.js +1 -1
  2117. package/locales/global/es-GT.js +1 -1
  2118. package/locales/global/es-HN.js +1 -1
  2119. package/locales/global/es-IC.js +1 -1
  2120. package/locales/global/es-MX.js +1 -1
  2121. package/locales/global/es-NI.js +1 -1
  2122. package/locales/global/es-PA.js +1 -1
  2123. package/locales/global/es-PE.js +1 -1
  2124. package/locales/global/es-PH.js +1 -1
  2125. package/locales/global/es-PR.js +1 -1
  2126. package/locales/global/es-PY.js +1 -1
  2127. package/locales/global/es-SV.js +1 -1
  2128. package/locales/global/es-US.js +1 -1
  2129. package/locales/global/es-UY.js +1 -1
  2130. package/locales/global/es-VE.js +1 -1
  2131. package/locales/global/es.js +1 -1
  2132. package/locales/global/et.js +1 -1
  2133. package/locales/global/eu.js +1 -1
  2134. package/locales/global/ewo.js +1 -1
  2135. package/locales/global/fa-AF.js +1 -1
  2136. package/locales/global/fa.js +1 -1
  2137. package/locales/global/ff-Adlm-BF.js +1 -1
  2138. package/locales/global/ff-Adlm-CM.js +1 -1
  2139. package/locales/global/ff-Adlm-GH.js +1 -1
  2140. package/locales/global/ff-Adlm-GM.js +1 -1
  2141. package/locales/global/ff-Adlm-GW.js +1 -1
  2142. package/locales/global/ff-Adlm-LR.js +1 -1
  2143. package/locales/global/ff-Adlm-MR.js +1 -1
  2144. package/locales/global/ff-Adlm-NE.js +1 -1
  2145. package/locales/global/ff-Adlm-NG.js +1 -1
  2146. package/locales/global/ff-Adlm-SL.js +1 -1
  2147. package/locales/global/ff-Adlm-SN.js +1 -1
  2148. package/locales/global/ff-Adlm.js +1 -1
  2149. package/locales/global/ff-CM.js +1 -1
  2150. package/locales/global/ff-GN.js +1 -1
  2151. package/locales/global/ff-Latn-BF.js +1 -1
  2152. package/locales/global/ff-Latn-CM.js +1 -1
  2153. package/locales/global/ff-Latn-GH.js +1 -1
  2154. package/locales/global/ff-Latn-GM.js +1 -1
  2155. package/locales/global/ff-Latn-GN.js +1 -1
  2156. package/locales/global/ff-Latn-GW.js +1 -1
  2157. package/locales/global/ff-Latn-LR.js +1 -1
  2158. package/locales/global/ff-Latn-MR.js +1 -1
  2159. package/locales/global/ff-Latn-NE.js +1 -1
  2160. package/locales/global/ff-Latn-NG.js +1 -1
  2161. package/locales/global/ff-Latn-SL.js +1 -1
  2162. package/locales/global/ff-Latn.js +1 -1
  2163. package/locales/global/ff-MR.js +1 -1
  2164. package/locales/global/ff.js +1 -1
  2165. package/locales/global/fi.js +1 -1
  2166. package/locales/global/fil.js +1 -1
  2167. package/locales/global/fo-DK.js +1 -1
  2168. package/locales/global/fo.js +1 -1
  2169. package/locales/global/fr-BE.js +1 -1
  2170. package/locales/global/fr-BF.js +1 -1
  2171. package/locales/global/fr-BI.js +1 -1
  2172. package/locales/global/fr-BJ.js +1 -1
  2173. package/locales/global/fr-BL.js +1 -1
  2174. package/locales/global/fr-CA.js +1 -1
  2175. package/locales/global/fr-CD.js +1 -1
  2176. package/locales/global/fr-CF.js +1 -1
  2177. package/locales/global/fr-CG.js +1 -1
  2178. package/locales/global/fr-CH.js +1 -1
  2179. package/locales/global/fr-CI.js +1 -1
  2180. package/locales/global/fr-CM.js +1 -1
  2181. package/locales/global/fr-DJ.js +1 -1
  2182. package/locales/global/fr-DZ.js +1 -1
  2183. package/locales/global/fr-GA.js +1 -1
  2184. package/locales/global/fr-GF.js +1 -1
  2185. package/locales/global/fr-GN.js +1 -1
  2186. package/locales/global/fr-GP.js +1 -1
  2187. package/locales/global/fr-GQ.js +1 -1
  2188. package/locales/global/fr-HT.js +1 -1
  2189. package/locales/global/fr-KM.js +1 -1
  2190. package/locales/global/fr-LU.js +1 -1
  2191. package/locales/global/fr-MA.js +1 -1
  2192. package/locales/global/fr-MC.js +1 -1
  2193. package/locales/global/fr-MF.js +1 -1
  2194. package/locales/global/fr-MG.js +1 -1
  2195. package/locales/global/fr-ML.js +1 -1
  2196. package/locales/global/fr-MQ.js +1 -1
  2197. package/locales/global/fr-MR.js +1 -1
  2198. package/locales/global/fr-MU.js +1 -1
  2199. package/locales/global/fr-NC.js +1 -1
  2200. package/locales/global/fr-NE.js +1 -1
  2201. package/locales/global/fr-PF.js +1 -1
  2202. package/locales/global/fr-PM.js +1 -1
  2203. package/locales/global/fr-RE.js +1 -1
  2204. package/locales/global/fr-RW.js +1 -1
  2205. package/locales/global/fr-SC.js +1 -1
  2206. package/locales/global/fr-SN.js +1 -1
  2207. package/locales/global/fr-SY.js +1 -1
  2208. package/locales/global/fr-TD.js +1 -1
  2209. package/locales/global/fr-TG.js +1 -1
  2210. package/locales/global/fr-TN.js +1 -1
  2211. package/locales/global/fr-VU.js +1 -1
  2212. package/locales/global/fr-WF.js +1 -1
  2213. package/locales/global/fr-YT.js +1 -1
  2214. package/locales/global/fr.js +1 -1
  2215. package/locales/global/fur.js +1 -1
  2216. package/locales/global/fy.js +1 -1
  2217. package/locales/global/ga-GB.js +1 -1
  2218. package/locales/global/ga.js +1 -1
  2219. package/locales/global/gd.js +1 -1
  2220. package/locales/global/gl.js +1 -1
  2221. package/locales/global/gsw-FR.js +1 -1
  2222. package/locales/global/gsw-LI.js +1 -1
  2223. package/locales/global/gsw.js +1 -1
  2224. package/locales/global/gu.js +1 -1
  2225. package/locales/global/guz.js +1 -1
  2226. package/locales/global/gv.js +1 -1
  2227. package/locales/global/ha-GH.js +1 -1
  2228. package/locales/global/ha-NE.js +1 -1
  2229. package/locales/global/ha.js +1 -1
  2230. package/locales/global/haw.js +1 -1
  2231. package/locales/global/he.js +1 -1
  2232. package/locales/global/hi-Latn.js +1 -1
  2233. package/locales/global/hi.js +1 -1
  2234. package/locales/global/hr-BA.js +1 -1
  2235. package/locales/global/hr.js +1 -1
  2236. package/locales/global/hsb.js +1 -1
  2237. package/locales/global/hu.js +1 -1
  2238. package/locales/global/hy.js +1 -1
  2239. package/locales/global/ia.js +1 -1
  2240. package/locales/global/id.js +1 -1
  2241. package/locales/global/ig.js +1 -1
  2242. package/locales/global/ii.js +1 -1
  2243. package/locales/global/is.js +1 -1
  2244. package/locales/global/it-CH.js +1 -1
  2245. package/locales/global/it-SM.js +1 -1
  2246. package/locales/global/it-VA.js +1 -1
  2247. package/locales/global/it.js +1 -1
  2248. package/locales/global/ja.js +1 -1
  2249. package/locales/global/jgo.js +1 -1
  2250. package/locales/global/jmc.js +1 -1
  2251. package/locales/global/jv.js +1 -1
  2252. package/locales/global/ka.js +1 -1
  2253. package/locales/global/kab.js +1 -1
  2254. package/locales/global/kam.js +1 -1
  2255. package/locales/global/kde.js +1 -1
  2256. package/locales/global/kea.js +1 -1
  2257. package/locales/global/kgp.js +1 -1
  2258. package/locales/global/khq.js +1 -1
  2259. package/locales/global/ki.js +1 -1
  2260. package/locales/global/kk.js +1 -1
  2261. package/locales/global/kkj.js +1 -1
  2262. package/locales/global/kl.js +1 -1
  2263. package/locales/global/kln.js +1 -1
  2264. package/locales/global/km.js +1 -1
  2265. package/locales/global/kn.js +1 -1
  2266. package/locales/global/ko-KP.js +1 -1
  2267. package/locales/global/ko.js +1 -1
  2268. package/locales/global/kok.js +1 -1
  2269. package/locales/global/ks-Arab.js +1 -1
  2270. package/locales/global/ks-Deva.js +1 -1
  2271. package/locales/global/ks.js +1 -1
  2272. package/locales/global/ksb.js +1 -1
  2273. package/locales/global/ksf.js +1 -1
  2274. package/locales/global/ksh.js +1 -1
  2275. package/locales/global/ku.js +1 -1
  2276. package/locales/global/kw.js +1 -1
  2277. package/locales/global/ky.js +1 -1
  2278. package/locales/global/lag.js +1 -1
  2279. package/locales/global/lb.js +1 -1
  2280. package/locales/global/lg.js +1 -1
  2281. package/locales/global/lkt.js +1 -1
  2282. package/locales/global/ln-AO.js +1 -1
  2283. package/locales/global/ln-CF.js +1 -1
  2284. package/locales/global/ln-CG.js +1 -1
  2285. package/locales/global/ln.js +1 -1
  2286. package/locales/global/lo.js +1 -1
  2287. package/locales/global/lrc-IQ.js +1 -1
  2288. package/locales/global/lrc.js +1 -1
  2289. package/locales/global/lt.js +1 -1
  2290. package/locales/global/lu.js +1 -1
  2291. package/locales/global/luo.js +1 -1
  2292. package/locales/global/luy.js +1 -1
  2293. package/locales/global/lv.js +1 -1
  2294. package/locales/global/mai.js +1 -1
  2295. package/locales/global/mas-TZ.js +1 -1
  2296. package/locales/global/mas.js +1 -1
  2297. package/locales/global/mer.js +1 -1
  2298. package/locales/global/mfe.js +1 -1
  2299. package/locales/global/mg.js +1 -1
  2300. package/locales/global/mgh.js +1 -1
  2301. package/locales/global/mgo.js +1 -1
  2302. package/locales/global/mi.js +1 -1
  2303. package/locales/global/mk.js +1 -1
  2304. package/locales/global/ml.js +1 -1
  2305. package/locales/global/mn.js +1 -1
  2306. package/locales/global/mni-Beng.js +1 -1
  2307. package/locales/global/mni.js +1 -1
  2308. package/locales/global/mr.js +1 -1
  2309. package/locales/global/ms-BN.js +1 -1
  2310. package/locales/global/ms-ID.js +1 -1
  2311. package/locales/global/ms-SG.js +1 -1
  2312. package/locales/global/ms.js +1 -1
  2313. package/locales/global/mt.js +1 -1
  2314. package/locales/global/mua.js +1 -1
  2315. package/locales/global/my.js +1 -1
  2316. package/locales/global/mzn.js +1 -1
  2317. package/locales/global/naq.js +1 -1
  2318. package/locales/global/nb-SJ.js +1 -1
  2319. package/locales/global/nb.js +1 -1
  2320. package/locales/global/nd.js +1 -1
  2321. package/locales/global/nds-NL.js +1 -1
  2322. package/locales/global/nds.js +1 -1
  2323. package/locales/global/ne-IN.js +1 -1
  2324. package/locales/global/ne.js +1 -1
  2325. package/locales/global/nl-AW.js +1 -1
  2326. package/locales/global/nl-BE.js +1 -1
  2327. package/locales/global/nl-BQ.js +1 -1
  2328. package/locales/global/nl-CW.js +1 -1
  2329. package/locales/global/nl-SR.js +1 -1
  2330. package/locales/global/nl-SX.js +1 -1
  2331. package/locales/global/nl.js +1 -1
  2332. package/locales/global/nmg.js +1 -1
  2333. package/locales/global/nn.js +1 -1
  2334. package/locales/global/nnh.js +1 -1
  2335. package/locales/global/no.js +1 -1
  2336. package/locales/global/nus.js +1 -1
  2337. package/locales/global/nyn.js +1 -1
  2338. package/locales/global/om-KE.js +1 -1
  2339. package/locales/global/om.js +1 -1
  2340. package/locales/global/or.js +1 -1
  2341. package/locales/global/os-RU.js +1 -1
  2342. package/locales/global/os.js +1 -1
  2343. package/locales/global/pa-Arab.js +1 -1
  2344. package/locales/global/pa-Guru.js +1 -1
  2345. package/locales/global/pa.js +1 -1
  2346. package/locales/global/pcm.js +1 -1
  2347. package/locales/global/pl.js +1 -1
  2348. package/locales/global/ps-PK.js +1 -1
  2349. package/locales/global/ps.js +1 -1
  2350. package/locales/global/pt-AO.js +1 -1
  2351. package/locales/global/pt-CH.js +1 -1
  2352. package/locales/global/pt-CV.js +1 -1
  2353. package/locales/global/pt-GQ.js +1 -1
  2354. package/locales/global/pt-GW.js +1 -1
  2355. package/locales/global/pt-LU.js +1 -1
  2356. package/locales/global/pt-MO.js +1 -1
  2357. package/locales/global/pt-MZ.js +1 -1
  2358. package/locales/global/pt-PT.js +1 -1
  2359. package/locales/global/pt-ST.js +1 -1
  2360. package/locales/global/pt-TL.js +1 -1
  2361. package/locales/global/pt.js +1 -1
  2362. package/locales/global/qu-BO.js +1 -1
  2363. package/locales/global/qu-EC.js +1 -1
  2364. package/locales/global/qu.js +1 -1
  2365. package/locales/global/rm.js +1 -1
  2366. package/locales/global/rn.js +1 -1
  2367. package/locales/global/ro-MD.js +1 -1
  2368. package/locales/global/ro.js +1 -1
  2369. package/locales/global/rof.js +1 -1
  2370. package/locales/global/ru-BY.js +1 -1
  2371. package/locales/global/ru-KG.js +1 -1
  2372. package/locales/global/ru-KZ.js +1 -1
  2373. package/locales/global/ru-MD.js +1 -1
  2374. package/locales/global/ru-UA.js +1 -1
  2375. package/locales/global/ru.js +1 -1
  2376. package/locales/global/rw.js +1 -1
  2377. package/locales/global/rwk.js +1 -1
  2378. package/locales/global/sa.js +1 -1
  2379. package/locales/global/sah.js +1 -1
  2380. package/locales/global/saq.js +1 -1
  2381. package/locales/global/sat-Olck.js +1 -1
  2382. package/locales/global/sat.js +1 -1
  2383. package/locales/global/sbp.js +1 -1
  2384. package/locales/global/sc.js +1 -1
  2385. package/locales/global/sd-Arab.js +1 -1
  2386. package/locales/global/sd-Deva.js +1 -1
  2387. package/locales/global/sd.js +1 -1
  2388. package/locales/global/se-FI.js +1 -1
  2389. package/locales/global/se-SE.js +1 -1
  2390. package/locales/global/se.js +1 -1
  2391. package/locales/global/seh.js +1 -1
  2392. package/locales/global/ses.js +1 -1
  2393. package/locales/global/sg.js +1 -1
  2394. package/locales/global/shi-Latn.js +1 -1
  2395. package/locales/global/shi-Tfng.js +1 -1
  2396. package/locales/global/shi.js +1 -1
  2397. package/locales/global/si.js +1 -1
  2398. package/locales/global/sk.js +1 -1
  2399. package/locales/global/sl.js +1 -1
  2400. package/locales/global/smn.js +1 -1
  2401. package/locales/global/sn.js +1 -1
  2402. package/locales/global/so-DJ.js +1 -1
  2403. package/locales/global/so-ET.js +1 -1
  2404. package/locales/global/so-KE.js +1 -1
  2405. package/locales/global/so.js +1 -1
  2406. package/locales/global/sq-MK.js +1 -1
  2407. package/locales/global/sq-XK.js +1 -1
  2408. package/locales/global/sq.js +1 -1
  2409. package/locales/global/sr-Cyrl-BA.js +1 -1
  2410. package/locales/global/sr-Cyrl-ME.js +1 -1
  2411. package/locales/global/sr-Cyrl-XK.js +1 -1
  2412. package/locales/global/sr-Cyrl.js +1 -1
  2413. package/locales/global/sr-Latn-BA.js +1 -1
  2414. package/locales/global/sr-Latn-ME.js +1 -1
  2415. package/locales/global/sr-Latn-XK.js +1 -1
  2416. package/locales/global/sr-Latn.js +1 -1
  2417. package/locales/global/sr.js +1 -1
  2418. package/locales/global/su-Latn.js +1 -1
  2419. package/locales/global/su.js +1 -1
  2420. package/locales/global/sv-AX.js +1 -1
  2421. package/locales/global/sv-FI.js +1 -1
  2422. package/locales/global/sv.js +1 -1
  2423. package/locales/global/sw-CD.js +1 -1
  2424. package/locales/global/sw-KE.js +1 -1
  2425. package/locales/global/sw-UG.js +1 -1
  2426. package/locales/global/sw.js +1 -1
  2427. package/locales/global/ta-LK.js +1 -1
  2428. package/locales/global/ta-MY.js +1 -1
  2429. package/locales/global/ta-SG.js +1 -1
  2430. package/locales/global/ta.js +1 -1
  2431. package/locales/global/te.js +1 -1
  2432. package/locales/global/teo-KE.js +1 -1
  2433. package/locales/global/teo.js +1 -1
  2434. package/locales/global/tg.js +1 -1
  2435. package/locales/global/th.js +1 -1
  2436. package/locales/global/ti-ER.js +1 -1
  2437. package/locales/global/ti.js +1 -1
  2438. package/locales/global/tk.js +1 -1
  2439. package/locales/global/to.js +1 -1
  2440. package/locales/global/tr-CY.js +1 -1
  2441. package/locales/global/tr.js +1 -1
  2442. package/locales/global/tt.js +1 -1
  2443. package/locales/global/twq.js +1 -1
  2444. package/locales/global/tzm.js +1 -1
  2445. package/locales/global/ug.js +1 -1
  2446. package/locales/global/uk.js +1 -1
  2447. package/locales/global/und.js +1 -1
  2448. package/locales/global/ur-IN.js +1 -1
  2449. package/locales/global/ur.js +1 -1
  2450. package/locales/global/uz-Arab.js +1 -1
  2451. package/locales/global/uz-Cyrl.js +1 -1
  2452. package/locales/global/uz-Latn.js +1 -1
  2453. package/locales/global/uz.js +1 -1
  2454. package/locales/global/vai-Latn.js +1 -1
  2455. package/locales/global/vai-Vaii.js +1 -1
  2456. package/locales/global/vai.js +1 -1
  2457. package/locales/global/vi.js +1 -1
  2458. package/locales/global/vun.js +1 -1
  2459. package/locales/global/wae.js +1 -1
  2460. package/locales/global/wo.js +1 -1
  2461. package/locales/global/xh.js +1 -1
  2462. package/locales/global/xog.js +1 -1
  2463. package/locales/global/yav.js +1 -1
  2464. package/locales/global/yi.js +1 -1
  2465. package/locales/global/yo-BJ.js +1 -1
  2466. package/locales/global/yo.js +1 -1
  2467. package/locales/global/yrl-CO.js +1 -1
  2468. package/locales/global/yrl-VE.js +1 -1
  2469. package/locales/global/yrl.js +1 -1
  2470. package/locales/global/yue-Hans.js +1 -1
  2471. package/locales/global/yue-Hant.js +1 -1
  2472. package/locales/global/yue.js +1 -1
  2473. package/locales/global/zgh.js +1 -1
  2474. package/locales/global/zh-Hans-HK.js +1 -1
  2475. package/locales/global/zh-Hans-MO.js +1 -1
  2476. package/locales/global/zh-Hans-SG.js +1 -1
  2477. package/locales/global/zh-Hans.js +1 -1
  2478. package/locales/global/zh-Hant-HK.js +1 -1
  2479. package/locales/global/zh-Hant-MO.js +1 -1
  2480. package/locales/global/zh-Hant.js +1 -1
  2481. package/locales/global/zh.js +1 -1
  2482. package/locales/global/zu.js +1 -1
  2483. package/locales/gsw-FR.d.ts +1 -1
  2484. package/locales/gsw-FR.mjs +2 -2
  2485. package/locales/gsw-LI.d.ts +1 -1
  2486. package/locales/gsw-LI.mjs +2 -2
  2487. package/locales/gsw.d.ts +1 -1
  2488. package/locales/gsw.mjs +2 -2
  2489. package/locales/gu.d.ts +1 -1
  2490. package/locales/gu.mjs +2 -2
  2491. package/locales/guz.d.ts +1 -1
  2492. package/locales/guz.mjs +2 -2
  2493. package/locales/gv.d.ts +1 -1
  2494. package/locales/gv.mjs +2 -2
  2495. package/locales/ha-GH.d.ts +1 -1
  2496. package/locales/ha-GH.mjs +2 -2
  2497. package/locales/ha-NE.d.ts +1 -1
  2498. package/locales/ha-NE.mjs +2 -2
  2499. package/locales/ha.d.ts +1 -1
  2500. package/locales/ha.mjs +2 -2
  2501. package/locales/haw.d.ts +1 -1
  2502. package/locales/haw.mjs +2 -2
  2503. package/locales/he.d.ts +1 -1
  2504. package/locales/he.mjs +2 -2
  2505. package/locales/hi-Latn.d.ts +1 -1
  2506. package/locales/hi-Latn.mjs +2 -2
  2507. package/locales/hi.d.ts +1 -1
  2508. package/locales/hi.mjs +2 -2
  2509. package/locales/hr-BA.d.ts +1 -1
  2510. package/locales/hr-BA.mjs +2 -2
  2511. package/locales/hr.d.ts +1 -1
  2512. package/locales/hr.mjs +2 -2
  2513. package/locales/hsb.d.ts +1 -1
  2514. package/locales/hsb.mjs +2 -2
  2515. package/locales/hu.d.ts +1 -1
  2516. package/locales/hu.mjs +2 -2
  2517. package/locales/hy.d.ts +1 -1
  2518. package/locales/hy.mjs +2 -2
  2519. package/locales/ia.d.ts +1 -1
  2520. package/locales/ia.mjs +2 -2
  2521. package/locales/id.d.ts +1 -1
  2522. package/locales/id.mjs +2 -2
  2523. package/locales/ig.d.ts +1 -1
  2524. package/locales/ig.mjs +2 -2
  2525. package/locales/ii.d.ts +1 -1
  2526. package/locales/ii.mjs +2 -2
  2527. package/locales/is.d.ts +1 -1
  2528. package/locales/is.mjs +2 -2
  2529. package/locales/it-CH.d.ts +1 -1
  2530. package/locales/it-CH.mjs +2 -2
  2531. package/locales/it-SM.d.ts +1 -1
  2532. package/locales/it-SM.mjs +2 -2
  2533. package/locales/it-VA.d.ts +1 -1
  2534. package/locales/it-VA.mjs +2 -2
  2535. package/locales/it.d.ts +1 -1
  2536. package/locales/it.mjs +2 -2
  2537. package/locales/ja.d.ts +1 -1
  2538. package/locales/ja.mjs +2 -2
  2539. package/locales/jgo.d.ts +1 -1
  2540. package/locales/jgo.mjs +2 -2
  2541. package/locales/jmc.d.ts +1 -1
  2542. package/locales/jmc.mjs +2 -2
  2543. package/locales/jv.d.ts +1 -1
  2544. package/locales/jv.mjs +2 -2
  2545. package/locales/ka.d.ts +1 -1
  2546. package/locales/ka.mjs +2 -2
  2547. package/locales/kab.d.ts +1 -1
  2548. package/locales/kab.mjs +2 -2
  2549. package/locales/kam.d.ts +1 -1
  2550. package/locales/kam.mjs +2 -2
  2551. package/locales/kde.d.ts +1 -1
  2552. package/locales/kde.mjs +2 -2
  2553. package/locales/kea.d.ts +1 -1
  2554. package/locales/kea.mjs +2 -2
  2555. package/locales/kgp.d.ts +1 -1
  2556. package/locales/kgp.mjs +2 -2
  2557. package/locales/khq.d.ts +1 -1
  2558. package/locales/khq.mjs +2 -2
  2559. package/locales/ki.d.ts +1 -1
  2560. package/locales/ki.mjs +2 -2
  2561. package/locales/kk.d.ts +1 -1
  2562. package/locales/kk.mjs +2 -2
  2563. package/locales/kkj.d.ts +1 -1
  2564. package/locales/kkj.mjs +2 -2
  2565. package/locales/kl.d.ts +1 -1
  2566. package/locales/kl.mjs +2 -2
  2567. package/locales/kln.d.ts +1 -1
  2568. package/locales/kln.mjs +2 -2
  2569. package/locales/km.d.ts +1 -1
  2570. package/locales/km.mjs +2 -2
  2571. package/locales/kn.d.ts +1 -1
  2572. package/locales/kn.mjs +2 -2
  2573. package/locales/ko-KP.d.ts +1 -1
  2574. package/locales/ko-KP.mjs +2 -2
  2575. package/locales/ko.d.ts +1 -1
  2576. package/locales/ko.mjs +2 -2
  2577. package/locales/kok.d.ts +1 -1
  2578. package/locales/kok.mjs +2 -2
  2579. package/locales/ks-Arab.d.ts +1 -1
  2580. package/locales/ks-Arab.mjs +2 -2
  2581. package/locales/ks-Deva.d.ts +1 -1
  2582. package/locales/ks-Deva.mjs +2 -2
  2583. package/locales/ks.d.ts +1 -1
  2584. package/locales/ks.mjs +2 -2
  2585. package/locales/ksb.d.ts +1 -1
  2586. package/locales/ksb.mjs +2 -2
  2587. package/locales/ksf.d.ts +1 -1
  2588. package/locales/ksf.mjs +2 -2
  2589. package/locales/ksh.d.ts +1 -1
  2590. package/locales/ksh.mjs +2 -2
  2591. package/locales/ku.d.ts +1 -1
  2592. package/locales/ku.mjs +2 -2
  2593. package/locales/kw.d.ts +1 -1
  2594. package/locales/kw.mjs +2 -2
  2595. package/locales/ky.d.ts +1 -1
  2596. package/locales/ky.mjs +2 -2
  2597. package/locales/lag.d.ts +1 -1
  2598. package/locales/lag.mjs +2 -2
  2599. package/locales/lb.d.ts +1 -1
  2600. package/locales/lb.mjs +2 -2
  2601. package/locales/lg.d.ts +1 -1
  2602. package/locales/lg.mjs +2 -2
  2603. package/locales/lkt.d.ts +1 -1
  2604. package/locales/lkt.mjs +2 -2
  2605. package/locales/ln-AO.d.ts +1 -1
  2606. package/locales/ln-AO.mjs +2 -2
  2607. package/locales/ln-CF.d.ts +1 -1
  2608. package/locales/ln-CF.mjs +2 -2
  2609. package/locales/ln-CG.d.ts +1 -1
  2610. package/locales/ln-CG.mjs +2 -2
  2611. package/locales/ln.d.ts +1 -1
  2612. package/locales/ln.mjs +2 -2
  2613. package/locales/lo.d.ts +1 -1
  2614. package/locales/lo.mjs +2 -2
  2615. package/locales/lrc-IQ.d.ts +1 -1
  2616. package/locales/lrc-IQ.mjs +2 -2
  2617. package/locales/lrc.d.ts +1 -1
  2618. package/locales/lrc.mjs +2 -2
  2619. package/locales/lt.d.ts +1 -1
  2620. package/locales/lt.mjs +2 -2
  2621. package/locales/lu.d.ts +1 -1
  2622. package/locales/lu.mjs +2 -2
  2623. package/locales/luo.d.ts +1 -1
  2624. package/locales/luo.mjs +2 -2
  2625. package/locales/luy.d.ts +1 -1
  2626. package/locales/luy.mjs +2 -2
  2627. package/locales/lv.d.ts +1 -1
  2628. package/locales/lv.mjs +2 -2
  2629. package/locales/mai.d.ts +1 -1
  2630. package/locales/mai.mjs +2 -2
  2631. package/locales/mas-TZ.d.ts +1 -1
  2632. package/locales/mas-TZ.mjs +2 -2
  2633. package/locales/mas.d.ts +1 -1
  2634. package/locales/mas.mjs +2 -2
  2635. package/locales/mer.d.ts +1 -1
  2636. package/locales/mer.mjs +2 -2
  2637. package/locales/mfe.d.ts +1 -1
  2638. package/locales/mfe.mjs +2 -2
  2639. package/locales/mg.d.ts +1 -1
  2640. package/locales/mg.mjs +2 -2
  2641. package/locales/mgh.d.ts +1 -1
  2642. package/locales/mgh.mjs +2 -2
  2643. package/locales/mgo.d.ts +1 -1
  2644. package/locales/mgo.mjs +2 -2
  2645. package/locales/mi.d.ts +1 -1
  2646. package/locales/mi.mjs +2 -2
  2647. package/locales/mk.d.ts +1 -1
  2648. package/locales/mk.mjs +2 -2
  2649. package/locales/ml.d.ts +1 -1
  2650. package/locales/ml.mjs +2 -2
  2651. package/locales/mn.d.ts +1 -1
  2652. package/locales/mn.mjs +2 -2
  2653. package/locales/mni-Beng.d.ts +1 -1
  2654. package/locales/mni-Beng.mjs +2 -2
  2655. package/locales/mni.d.ts +1 -1
  2656. package/locales/mni.mjs +2 -2
  2657. package/locales/mr.d.ts +1 -1
  2658. package/locales/mr.mjs +2 -2
  2659. package/locales/ms-BN.d.ts +1 -1
  2660. package/locales/ms-BN.mjs +2 -2
  2661. package/locales/ms-ID.d.ts +1 -1
  2662. package/locales/ms-ID.mjs +2 -2
  2663. package/locales/ms-SG.d.ts +1 -1
  2664. package/locales/ms-SG.mjs +2 -2
  2665. package/locales/ms.d.ts +1 -1
  2666. package/locales/ms.mjs +2 -2
  2667. package/locales/mt.d.ts +1 -1
  2668. package/locales/mt.mjs +2 -2
  2669. package/locales/mua.d.ts +1 -1
  2670. package/locales/mua.mjs +2 -2
  2671. package/locales/my.d.ts +1 -1
  2672. package/locales/my.mjs +2 -2
  2673. package/locales/mzn.d.ts +1 -1
  2674. package/locales/mzn.mjs +2 -2
  2675. package/locales/naq.d.ts +1 -1
  2676. package/locales/naq.mjs +2 -2
  2677. package/locales/nb-SJ.d.ts +1 -1
  2678. package/locales/nb-SJ.mjs +2 -2
  2679. package/locales/nb.d.ts +1 -1
  2680. package/locales/nb.mjs +2 -2
  2681. package/locales/nd.d.ts +1 -1
  2682. package/locales/nd.mjs +2 -2
  2683. package/locales/nds-NL.d.ts +1 -1
  2684. package/locales/nds-NL.mjs +2 -2
  2685. package/locales/nds.d.ts +1 -1
  2686. package/locales/nds.mjs +2 -2
  2687. package/locales/ne-IN.d.ts +1 -1
  2688. package/locales/ne-IN.mjs +2 -2
  2689. package/locales/ne.d.ts +1 -1
  2690. package/locales/ne.mjs +2 -2
  2691. package/locales/nl-AW.d.ts +1 -1
  2692. package/locales/nl-AW.mjs +2 -2
  2693. package/locales/nl-BE.d.ts +1 -1
  2694. package/locales/nl-BE.mjs +2 -2
  2695. package/locales/nl-BQ.d.ts +1 -1
  2696. package/locales/nl-BQ.mjs +2 -2
  2697. package/locales/nl-CW.d.ts +1 -1
  2698. package/locales/nl-CW.mjs +2 -2
  2699. package/locales/nl-SR.d.ts +1 -1
  2700. package/locales/nl-SR.mjs +2 -2
  2701. package/locales/nl-SX.d.ts +1 -1
  2702. package/locales/nl-SX.mjs +2 -2
  2703. package/locales/nl.d.ts +1 -1
  2704. package/locales/nl.mjs +2 -2
  2705. package/locales/nmg.d.ts +1 -1
  2706. package/locales/nmg.mjs +2 -2
  2707. package/locales/nn.d.ts +1 -1
  2708. package/locales/nn.mjs +2 -2
  2709. package/locales/nnh.d.ts +1 -1
  2710. package/locales/nnh.mjs +2 -2
  2711. package/locales/no.d.ts +1 -1
  2712. package/locales/no.mjs +2 -2
  2713. package/locales/nus.d.ts +1 -1
  2714. package/locales/nus.mjs +2 -2
  2715. package/locales/nyn.d.ts +1 -1
  2716. package/locales/nyn.mjs +2 -2
  2717. package/locales/om-KE.d.ts +1 -1
  2718. package/locales/om-KE.mjs +2 -2
  2719. package/locales/om.d.ts +1 -1
  2720. package/locales/om.mjs +2 -2
  2721. package/locales/or.d.ts +1 -1
  2722. package/locales/or.mjs +2 -2
  2723. package/locales/os-RU.d.ts +1 -1
  2724. package/locales/os-RU.mjs +2 -2
  2725. package/locales/os.d.ts +1 -1
  2726. package/locales/os.mjs +2 -2
  2727. package/locales/pa-Arab.d.ts +1 -1
  2728. package/locales/pa-Arab.mjs +2 -2
  2729. package/locales/pa-Guru.d.ts +1 -1
  2730. package/locales/pa-Guru.mjs +2 -2
  2731. package/locales/pa.d.ts +1 -1
  2732. package/locales/pa.mjs +2 -2
  2733. package/locales/pcm.d.ts +1 -1
  2734. package/locales/pcm.mjs +2 -2
  2735. package/locales/pl.d.ts +1 -1
  2736. package/locales/pl.mjs +2 -2
  2737. package/locales/ps-PK.d.ts +1 -1
  2738. package/locales/ps-PK.mjs +2 -2
  2739. package/locales/ps.d.ts +1 -1
  2740. package/locales/ps.mjs +2 -2
  2741. package/locales/pt-AO.d.ts +1 -1
  2742. package/locales/pt-AO.mjs +2 -2
  2743. package/locales/pt-CH.d.ts +1 -1
  2744. package/locales/pt-CH.mjs +2 -2
  2745. package/locales/pt-CV.d.ts +1 -1
  2746. package/locales/pt-CV.mjs +2 -2
  2747. package/locales/pt-GQ.d.ts +1 -1
  2748. package/locales/pt-GQ.mjs +2 -2
  2749. package/locales/pt-GW.d.ts +1 -1
  2750. package/locales/pt-GW.mjs +2 -2
  2751. package/locales/pt-LU.d.ts +1 -1
  2752. package/locales/pt-LU.mjs +2 -2
  2753. package/locales/pt-MO.d.ts +1 -1
  2754. package/locales/pt-MO.mjs +2 -2
  2755. package/locales/pt-MZ.d.ts +1 -1
  2756. package/locales/pt-MZ.mjs +2 -2
  2757. package/locales/pt-PT.d.ts +1 -1
  2758. package/locales/pt-PT.mjs +2 -2
  2759. package/locales/pt-ST.d.ts +1 -1
  2760. package/locales/pt-ST.mjs +2 -2
  2761. package/locales/pt-TL.d.ts +1 -1
  2762. package/locales/pt-TL.mjs +2 -2
  2763. package/locales/pt.d.ts +1 -1
  2764. package/locales/pt.mjs +2 -2
  2765. package/locales/qu-BO.d.ts +1 -1
  2766. package/locales/qu-BO.mjs +2 -2
  2767. package/locales/qu-EC.d.ts +1 -1
  2768. package/locales/qu-EC.mjs +2 -2
  2769. package/locales/qu.d.ts +1 -1
  2770. package/locales/qu.mjs +2 -2
  2771. package/locales/rm.d.ts +1 -1
  2772. package/locales/rm.mjs +2 -2
  2773. package/locales/rn.d.ts +1 -1
  2774. package/locales/rn.mjs +2 -2
  2775. package/locales/ro-MD.d.ts +1 -1
  2776. package/locales/ro-MD.mjs +2 -2
  2777. package/locales/ro.d.ts +1 -1
  2778. package/locales/ro.mjs +2 -2
  2779. package/locales/rof.d.ts +1 -1
  2780. package/locales/rof.mjs +2 -2
  2781. package/locales/ru-BY.d.ts +1 -1
  2782. package/locales/ru-BY.mjs +2 -2
  2783. package/locales/ru-KG.d.ts +1 -1
  2784. package/locales/ru-KG.mjs +2 -2
  2785. package/locales/ru-KZ.d.ts +1 -1
  2786. package/locales/ru-KZ.mjs +2 -2
  2787. package/locales/ru-MD.d.ts +1 -1
  2788. package/locales/ru-MD.mjs +2 -2
  2789. package/locales/ru-UA.d.ts +1 -1
  2790. package/locales/ru-UA.mjs +2 -2
  2791. package/locales/ru.d.ts +1 -1
  2792. package/locales/ru.mjs +2 -2
  2793. package/locales/rw.d.ts +1 -1
  2794. package/locales/rw.mjs +2 -2
  2795. package/locales/rwk.d.ts +1 -1
  2796. package/locales/rwk.mjs +2 -2
  2797. package/locales/sa.d.ts +1 -1
  2798. package/locales/sa.mjs +2 -2
  2799. package/locales/sah.d.ts +1 -1
  2800. package/locales/sah.mjs +2 -2
  2801. package/locales/saq.d.ts +1 -1
  2802. package/locales/saq.mjs +2 -2
  2803. package/locales/sat-Olck.d.ts +1 -1
  2804. package/locales/sat-Olck.mjs +2 -2
  2805. package/locales/sat.d.ts +1 -1
  2806. package/locales/sat.mjs +2 -2
  2807. package/locales/sbp.d.ts +1 -1
  2808. package/locales/sbp.mjs +2 -2
  2809. package/locales/sc.d.ts +1 -1
  2810. package/locales/sc.mjs +2 -2
  2811. package/locales/sd-Arab.d.ts +1 -1
  2812. package/locales/sd-Arab.mjs +2 -2
  2813. package/locales/sd-Deva.d.ts +1 -1
  2814. package/locales/sd-Deva.mjs +2 -2
  2815. package/locales/sd.d.ts +1 -1
  2816. package/locales/sd.mjs +2 -2
  2817. package/locales/se-FI.d.ts +1 -1
  2818. package/locales/se-FI.mjs +2 -2
  2819. package/locales/se-SE.d.ts +1 -1
  2820. package/locales/se-SE.mjs +2 -2
  2821. package/locales/se.d.ts +1 -1
  2822. package/locales/se.mjs +2 -2
  2823. package/locales/seh.d.ts +1 -1
  2824. package/locales/seh.mjs +2 -2
  2825. package/locales/ses.d.ts +1 -1
  2826. package/locales/ses.mjs +2 -2
  2827. package/locales/sg.d.ts +1 -1
  2828. package/locales/sg.mjs +2 -2
  2829. package/locales/shi-Latn.d.ts +1 -1
  2830. package/locales/shi-Latn.mjs +2 -2
  2831. package/locales/shi-Tfng.d.ts +1 -1
  2832. package/locales/shi-Tfng.mjs +2 -2
  2833. package/locales/shi.d.ts +1 -1
  2834. package/locales/shi.mjs +2 -2
  2835. package/locales/si.d.ts +1 -1
  2836. package/locales/si.mjs +2 -2
  2837. package/locales/sk.d.ts +1 -1
  2838. package/locales/sk.mjs +2 -2
  2839. package/locales/sl.d.ts +1 -1
  2840. package/locales/sl.mjs +2 -2
  2841. package/locales/smn.d.ts +1 -1
  2842. package/locales/smn.mjs +2 -2
  2843. package/locales/sn.d.ts +1 -1
  2844. package/locales/sn.mjs +2 -2
  2845. package/locales/so-DJ.d.ts +1 -1
  2846. package/locales/so-DJ.mjs +2 -2
  2847. package/locales/so-ET.d.ts +1 -1
  2848. package/locales/so-ET.mjs +2 -2
  2849. package/locales/so-KE.d.ts +1 -1
  2850. package/locales/so-KE.mjs +2 -2
  2851. package/locales/so.d.ts +1 -1
  2852. package/locales/so.mjs +2 -2
  2853. package/locales/sq-MK.d.ts +1 -1
  2854. package/locales/sq-MK.mjs +2 -2
  2855. package/locales/sq-XK.d.ts +1 -1
  2856. package/locales/sq-XK.mjs +2 -2
  2857. package/locales/sq.d.ts +1 -1
  2858. package/locales/sq.mjs +2 -2
  2859. package/locales/sr-Cyrl-BA.d.ts +1 -1
  2860. package/locales/sr-Cyrl-BA.mjs +2 -2
  2861. package/locales/sr-Cyrl-ME.d.ts +1 -1
  2862. package/locales/sr-Cyrl-ME.mjs +2 -2
  2863. package/locales/sr-Cyrl-XK.d.ts +1 -1
  2864. package/locales/sr-Cyrl-XK.mjs +2 -2
  2865. package/locales/sr-Cyrl.d.ts +1 -1
  2866. package/locales/sr-Cyrl.mjs +2 -2
  2867. package/locales/sr-Latn-BA.d.ts +1 -1
  2868. package/locales/sr-Latn-BA.mjs +2 -2
  2869. package/locales/sr-Latn-ME.d.ts +1 -1
  2870. package/locales/sr-Latn-ME.mjs +2 -2
  2871. package/locales/sr-Latn-XK.d.ts +1 -1
  2872. package/locales/sr-Latn-XK.mjs +2 -2
  2873. package/locales/sr-Latn.d.ts +1 -1
  2874. package/locales/sr-Latn.mjs +2 -2
  2875. package/locales/sr.d.ts +1 -1
  2876. package/locales/sr.mjs +2 -2
  2877. package/locales/su-Latn.d.ts +1 -1
  2878. package/locales/su-Latn.mjs +2 -2
  2879. package/locales/su.d.ts +1 -1
  2880. package/locales/su.mjs +2 -2
  2881. package/locales/sv-AX.d.ts +1 -1
  2882. package/locales/sv-AX.mjs +2 -2
  2883. package/locales/sv-FI.d.ts +1 -1
  2884. package/locales/sv-FI.mjs +2 -2
  2885. package/locales/sv.d.ts +1 -1
  2886. package/locales/sv.mjs +2 -2
  2887. package/locales/sw-CD.d.ts +1 -1
  2888. package/locales/sw-CD.mjs +2 -2
  2889. package/locales/sw-KE.d.ts +1 -1
  2890. package/locales/sw-KE.mjs +2 -2
  2891. package/locales/sw-UG.d.ts +1 -1
  2892. package/locales/sw-UG.mjs +2 -2
  2893. package/locales/sw.d.ts +1 -1
  2894. package/locales/sw.mjs +2 -2
  2895. package/locales/ta-LK.d.ts +1 -1
  2896. package/locales/ta-LK.mjs +2 -2
  2897. package/locales/ta-MY.d.ts +1 -1
  2898. package/locales/ta-MY.mjs +2 -2
  2899. package/locales/ta-SG.d.ts +1 -1
  2900. package/locales/ta-SG.mjs +2 -2
  2901. package/locales/ta.d.ts +1 -1
  2902. package/locales/ta.mjs +2 -2
  2903. package/locales/te.d.ts +1 -1
  2904. package/locales/te.mjs +2 -2
  2905. package/locales/teo-KE.d.ts +1 -1
  2906. package/locales/teo-KE.mjs +2 -2
  2907. package/locales/teo.d.ts +1 -1
  2908. package/locales/teo.mjs +2 -2
  2909. package/locales/tg.d.ts +1 -1
  2910. package/locales/tg.mjs +2 -2
  2911. package/locales/th.d.ts +1 -1
  2912. package/locales/th.mjs +2 -2
  2913. package/locales/ti-ER.d.ts +1 -1
  2914. package/locales/ti-ER.mjs +2 -2
  2915. package/locales/ti.d.ts +1 -1
  2916. package/locales/ti.mjs +2 -2
  2917. package/locales/tk.d.ts +1 -1
  2918. package/locales/tk.mjs +2 -2
  2919. package/locales/to.d.ts +1 -1
  2920. package/locales/to.mjs +2 -2
  2921. package/locales/tr-CY.d.ts +1 -1
  2922. package/locales/tr-CY.mjs +2 -2
  2923. package/locales/tr.d.ts +1 -1
  2924. package/locales/tr.mjs +2 -2
  2925. package/locales/tt.d.ts +1 -1
  2926. package/locales/tt.mjs +2 -2
  2927. package/locales/twq.d.ts +1 -1
  2928. package/locales/twq.mjs +2 -2
  2929. package/locales/tzm.d.ts +1 -1
  2930. package/locales/tzm.mjs +2 -2
  2931. package/locales/ug.d.ts +1 -1
  2932. package/locales/ug.mjs +2 -2
  2933. package/locales/uk.d.ts +1 -1
  2934. package/locales/uk.mjs +2 -2
  2935. package/locales/und.d.ts +1 -1
  2936. package/locales/und.mjs +2 -2
  2937. package/locales/ur-IN.d.ts +1 -1
  2938. package/locales/ur-IN.mjs +2 -2
  2939. package/locales/ur.d.ts +1 -1
  2940. package/locales/ur.mjs +2 -2
  2941. package/locales/uz-Arab.d.ts +1 -1
  2942. package/locales/uz-Arab.mjs +2 -2
  2943. package/locales/uz-Cyrl.d.ts +1 -1
  2944. package/locales/uz-Cyrl.mjs +2 -2
  2945. package/locales/uz-Latn.d.ts +1 -1
  2946. package/locales/uz-Latn.mjs +2 -2
  2947. package/locales/uz.d.ts +1 -1
  2948. package/locales/uz.mjs +2 -2
  2949. package/locales/vai-Latn.d.ts +1 -1
  2950. package/locales/vai-Latn.mjs +2 -2
  2951. package/locales/vai-Vaii.d.ts +1 -1
  2952. package/locales/vai-Vaii.mjs +2 -2
  2953. package/locales/vai.d.ts +1 -1
  2954. package/locales/vai.mjs +2 -2
  2955. package/locales/vi.d.ts +1 -1
  2956. package/locales/vi.mjs +2 -2
  2957. package/locales/vun.d.ts +1 -1
  2958. package/locales/vun.mjs +2 -2
  2959. package/locales/wae.d.ts +1 -1
  2960. package/locales/wae.mjs +2 -2
  2961. package/locales/wo.d.ts +1 -1
  2962. package/locales/wo.mjs +2 -2
  2963. package/locales/xh.d.ts +1 -1
  2964. package/locales/xh.mjs +2 -2
  2965. package/locales/xog.d.ts +1 -1
  2966. package/locales/xog.mjs +2 -2
  2967. package/locales/yav.d.ts +1 -1
  2968. package/locales/yav.mjs +2 -2
  2969. package/locales/yi.d.ts +1 -1
  2970. package/locales/yi.mjs +2 -2
  2971. package/locales/yo-BJ.d.ts +1 -1
  2972. package/locales/yo-BJ.mjs +2 -2
  2973. package/locales/yo.d.ts +1 -1
  2974. package/locales/yo.mjs +2 -2
  2975. package/locales/yrl-CO.d.ts +1 -1
  2976. package/locales/yrl-CO.mjs +2 -2
  2977. package/locales/yrl-VE.d.ts +1 -1
  2978. package/locales/yrl-VE.mjs +2 -2
  2979. package/locales/yrl.d.ts +1 -1
  2980. package/locales/yrl.mjs +2 -2
  2981. package/locales/yue-Hans.d.ts +1 -1
  2982. package/locales/yue-Hans.mjs +2 -2
  2983. package/locales/yue-Hant.d.ts +1 -1
  2984. package/locales/yue-Hant.mjs +2 -2
  2985. package/locales/yue.d.ts +1 -1
  2986. package/locales/yue.mjs +2 -2
  2987. package/locales/zgh.d.ts +1 -1
  2988. package/locales/zgh.mjs +2 -2
  2989. package/locales/zh-Hans-HK.d.ts +1 -1
  2990. package/locales/zh-Hans-HK.mjs +2 -2
  2991. package/locales/zh-Hans-MO.d.ts +1 -1
  2992. package/locales/zh-Hans-MO.mjs +2 -2
  2993. package/locales/zh-Hans-SG.d.ts +1 -1
  2994. package/locales/zh-Hans-SG.mjs +2 -2
  2995. package/locales/zh-Hans.d.ts +1 -1
  2996. package/locales/zh-Hans.mjs +2 -2
  2997. package/locales/zh-Hant-HK.d.ts +1 -1
  2998. package/locales/zh-Hant-HK.mjs +2 -2
  2999. package/locales/zh-Hant-MO.d.ts +1 -1
  3000. package/locales/zh-Hant-MO.mjs +2 -2
  3001. package/locales/zh-Hant.d.ts +1 -1
  3002. package/locales/zh-Hant.mjs +2 -2
  3003. package/locales/zh.d.ts +1 -1
  3004. package/locales/zh.mjs +2 -2
  3005. package/locales/zu.d.ts +1 -1
  3006. package/locales/zu.mjs +2 -2
  3007. package/package.json +2 -2
  3008. package/testing/index.d.ts +1 -1
  3009. package/upgrade/index.d.ts +1 -1
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  /**
9
9
  * A token used to manipulate and access values stored in `HttpContext`.
@@ -105,4 +105,4 @@ export class HttpContext {
105
105
  return this.map.keys();
106
106
  }
107
107
  }
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9odHRwL3NyYy9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVIOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQTRCLFlBQXFCO1FBQXJCLGlCQUFZLEdBQVosWUFBWSxDQUFTO0lBQUcsQ0FBQztDQUN0RDtBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWdDRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBQ21CLFFBQUcsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztJQTBEdkUsQ0FBQztJQXhEQzs7Ozs7OztPQU9HO0lBQ0gsR0FBRyxDQUFJLEtBQTBCLEVBQUUsS0FBUTtRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsR0FBRyxDQUFJLEtBQTBCO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQU0sQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLEtBQWdDO1FBQ3JDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEdBQUcsQ0FBQyxLQUFnQztRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKlxuICogQSB0b2tlbiB1c2VkIHRvIG1hbmlwdWxhdGUgYW5kIGFjY2VzcyB2YWx1ZXMgc3RvcmVkIGluIGBIdHRwQ29udGV4dGAuXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY2xhc3MgSHR0cENvbnRleHRUb2tlbjxUPiB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBkZWZhdWx0VmFsdWU6ICgpID0+IFQpIHt9XG59XG5cbi8qKlxuICogSHR0cCBjb250ZXh0IHN0b3JlcyBhcmJpdHJhcnkgdXNlciBkZWZpbmVkIHZhbHVlcyBhbmQgZW5zdXJlcyB0eXBlIHNhZmV0eSB3aXRob3V0XG4gKiBhY3R1YWxseSBrbm93aW5nIHRoZSB0eXBlcy4gSXQgaXMgYmFja2VkIGJ5IGEgYE1hcGAgYW5kIGd1YXJhbnRlZXMgdGhhdCBrZXlzIGRvIG5vdCBjbGFzaC5cbiAqXG4gKiBUaGlzIGNvbnRleHQgaXMgbXV0YWJsZSBhbmQgaXMgc2hhcmVkIGJldHdlZW4gY2xvbmVkIHJlcXVlc3RzIHVubGVzcyBleHBsaWNpdGx5IHNwZWNpZmllZC5cbiAqXG4gKiBAdXNhZ2VOb3Rlc1xuICpcbiAqICMjIyBVc2FnZSBFeGFtcGxlXG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gaW5zaWRlIGNhY2hlLmludGVyY2VwdG9ycy50c1xuICogZXhwb3J0IGNvbnN0IElTX0NBQ0hFX0VOQUJMRUQgPSBuZXcgSHR0cENvbnRleHRUb2tlbjxib29sZWFuPigoKSA9PiBmYWxzZSk7XG4gKlxuICogZXhwb3J0IGNsYXNzIENhY2hlSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICpcbiAqICAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgZGVsZWdhdGU6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICogICAgIGlmIChyZXEuY29udGV4dC5nZXQoSVNfQ0FDSEVfRU5BQkxFRCkgPT09IHRydWUpIHtcbiAqICAgICAgIHJldHVybiAuLi47XG4gKiAgICAgfVxuICogICAgIHJldHVybiBkZWxlZ2F0ZS5oYW5kbGUocmVxKTtcbiAqICAgfVxuICogfVxuICpcbiAqIC8vIGluc2lkZSBhIHNlcnZpY2VcbiAqXG4gKiB0aGlzLmh0dHBDbGllbnQuZ2V0KCcvYXBpL3dlYXRoZXInLCB7XG4gKiAgIGNvbnRleHQ6IG5ldyBIdHRwQ29udGV4dCgpLnNldChJU19DQUNIRV9FTkFCTEVELCB0cnVlKVxuICogfSkuc3Vic2NyaWJlKC4uLik7XG4gKiBgYGBcbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBjbGFzcyBIdHRwQ29udGV4dCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWFwID0gbmV3IE1hcDxIdHRwQ29udGV4dFRva2VuPHVua25vd24+LCB1bmtub3duPigpO1xuXG4gIC8qKlxuICAgKiBTdG9yZSBhIHZhbHVlIGluIHRoZSBjb250ZXh0LiBJZiBhIHZhbHVlIGlzIGFscmVhZHkgcHJlc2VudCBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4gVGhlIHJlZmVyZW5jZSB0byBhbiBpbnN0YW5jZSBvZiBgSHR0cENvbnRleHRUb2tlbmAuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gc3RvcmUuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgcmVmZXJlbmNlIHRvIGl0c2VsZiBmb3IgZWFzeSBjaGFpbmluZy5cbiAgICovXG4gIHNldDxUPih0b2tlbjogSHR0cENvbnRleHRUb2tlbjxUPiwgdmFsdWU6IFQpOiBIdHRwQ29udGV4dCB7XG4gICAgdGhpcy5tYXAuc2V0KHRva2VuLCB2YWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHZhbHVlIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiBUaGUgcmVmZXJlbmNlIHRvIGFuIGluc3RhbmNlIG9mIGBIdHRwQ29udGV4dFRva2VuYC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHN0b3JlZCB2YWx1ZSBvciBkZWZhdWx0IGlmIG9uZSBpcyBkZWZpbmVkLlxuICAgKi9cbiAgZ2V0PFQ+KHRva2VuOiBIdHRwQ29udGV4dFRva2VuPFQ+KTogVCB7XG4gICAgaWYgKCF0aGlzLm1hcC5oYXModG9rZW4pKSB7XG4gICAgICB0aGlzLm1hcC5zZXQodG9rZW4sIHRva2VuLmRlZmF1bHRWYWx1ZSgpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubWFwLmdldCh0b2tlbikgYXMgVDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgdGhlIHZhbHVlIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiBUaGUgcmVmZXJlbmNlIHRvIGFuIGluc3RhbmNlIG9mIGBIdHRwQ29udGV4dFRva2VuYC5cbiAgICpcbiAgICogQHJldHVybnMgQSByZWZlcmVuY2UgdG8gaXRzZWxmIGZvciBlYXN5IGNoYWluaW5nLlxuICAgKi9cbiAgZGVsZXRlKHRva2VuOiBIdHRwQ29udGV4dFRva2VuPHVua25vd24+KTogSHR0cENvbnRleHQge1xuICAgIHRoaXMubWFwLmRlbGV0ZSh0b2tlbik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGZvciBleGlzdGVuY2Ugb2YgYSBnaXZlbiB0b2tlbi5cbiAgICpcbiAgICogQHBhcmFtIHRva2VuIFRoZSByZWZlcmVuY2UgdG8gYW4gaW5zdGFuY2Ugb2YgYEh0dHBDb250ZXh0VG9rZW5gLlxuICAgKlxuICAgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSB0b2tlbiBleGlzdHMsIGZhbHNlIG90aGVyd2lzZS5cbiAgICovXG4gIGhhcyh0b2tlbjogSHR0cENvbnRleHRUb2tlbjx1bmtub3duPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1hcC5oYXModG9rZW4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIGEgbGlzdCBvZiB0b2tlbnMgY3VycmVudGx5IHN0b3JlZCBpbiB0aGUgY29udGV4dC5cbiAgICovXG4gIGtleXMoKTogSXRlcmFibGVJdGVyYXRvcjxIdHRwQ29udGV4dFRva2VuPHVua25vd24+PiB7XG4gICAgcmV0dXJuIHRoaXMubWFwLmtleXMoKTtcbiAgfVxufVxuIl19
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9odHRwL3NyYy9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVIOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQTRCLFlBQXFCO1FBQXJCLGlCQUFZLEdBQVosWUFBWSxDQUFTO0lBQUcsQ0FBQztDQUN0RDtBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWdDRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBQ21CLFFBQUcsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztJQTBEdkUsQ0FBQztJQXhEQzs7Ozs7OztPQU9HO0lBQ0gsR0FBRyxDQUFJLEtBQTBCLEVBQUUsS0FBUTtRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsR0FBRyxDQUFJLEtBQTBCO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQU0sQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLEtBQWdDO1FBQ3JDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEdBQUcsQ0FBQyxLQUFnQztRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG4vKipcbiAqIEEgdG9rZW4gdXNlZCB0byBtYW5pcHVsYXRlIGFuZCBhY2Nlc3MgdmFsdWVzIHN0b3JlZCBpbiBgSHR0cENvbnRleHRgLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNsYXNzIEh0dHBDb250ZXh0VG9rZW48VD4ge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZGVmYXVsdFZhbHVlOiAoKSA9PiBUKSB7fVxufVxuXG4vKipcbiAqIEh0dHAgY29udGV4dCBzdG9yZXMgYXJiaXRyYXJ5IHVzZXIgZGVmaW5lZCB2YWx1ZXMgYW5kIGVuc3VyZXMgdHlwZSBzYWZldHkgd2l0aG91dFxuICogYWN0dWFsbHkga25vd2luZyB0aGUgdHlwZXMuIEl0IGlzIGJhY2tlZCBieSBhIGBNYXBgIGFuZCBndWFyYW50ZWVzIHRoYXQga2V5cyBkbyBub3QgY2xhc2guXG4gKlxuICogVGhpcyBjb250ZXh0IGlzIG11dGFibGUgYW5kIGlzIHNoYXJlZCBiZXR3ZWVuIGNsb25lZCByZXF1ZXN0cyB1bmxlc3MgZXhwbGljaXRseSBzcGVjaWZpZWQuXG4gKlxuICogQHVzYWdlTm90ZXNcbiAqXG4gKiAjIyMgVXNhZ2UgRXhhbXBsZVxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIC8vIGluc2lkZSBjYWNoZS5pbnRlcmNlcHRvcnMudHNcbiAqIGV4cG9ydCBjb25zdCBJU19DQUNIRV9FTkFCTEVEID0gbmV3IEh0dHBDb250ZXh0VG9rZW48Ym9vbGVhbj4oKCkgPT4gZmFsc2UpO1xuICpcbiAqIGV4cG9ydCBjbGFzcyBDYWNoZUludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAqXG4gKiAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIGRlbGVnYXRlOiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAqICAgICBpZiAocmVxLmNvbnRleHQuZ2V0KElTX0NBQ0hFX0VOQUJMRUQpID09PSB0cnVlKSB7XG4gKiAgICAgICByZXR1cm4gLi4uO1xuICogICAgIH1cbiAqICAgICByZXR1cm4gZGVsZWdhdGUuaGFuZGxlKHJlcSk7XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAvLyBpbnNpZGUgYSBzZXJ2aWNlXG4gKlxuICogdGhpcy5odHRwQ2xpZW50LmdldCgnL2FwaS93ZWF0aGVyJywge1xuICogICBjb250ZXh0OiBuZXcgSHR0cENvbnRleHQoKS5zZXQoSVNfQ0FDSEVfRU5BQkxFRCwgdHJ1ZSlcbiAqIH0pLnN1YnNjcmliZSguLi4pO1xuICogYGBgXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY2xhc3MgSHR0cENvbnRleHQge1xuICBwcml2YXRlIHJlYWRvbmx5IG1hcCA9IG5ldyBNYXA8SHR0cENvbnRleHRUb2tlbjx1bmtub3duPiwgdW5rbm93bj4oKTtcblxuICAvKipcbiAgICogU3RvcmUgYSB2YWx1ZSBpbiB0aGUgY29udGV4dC4gSWYgYSB2YWx1ZSBpcyBhbHJlYWR5IHByZXNlbnQgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbi5cbiAgICpcbiAgICogQHBhcmFtIHRva2VuIFRoZSByZWZlcmVuY2UgdG8gYW4gaW5zdGFuY2Ugb2YgYEh0dHBDb250ZXh0VG9rZW5gLlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHN0b3JlLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIHJlZmVyZW5jZSB0byBpdHNlbGYgZm9yIGVhc3kgY2hhaW5pbmcuXG4gICAqL1xuICBzZXQ8VD4odG9rZW46IEh0dHBDb250ZXh0VG9rZW48VD4sIHZhbHVlOiBUKTogSHR0cENvbnRleHQge1xuICAgIHRoaXMubWFwLnNldCh0b2tlbiwgdmFsdWUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIHRva2VuLlxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4gVGhlIHJlZmVyZW5jZSB0byBhbiBpbnN0YW5jZSBvZiBgSHR0cENvbnRleHRUb2tlbmAuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBzdG9yZWQgdmFsdWUgb3IgZGVmYXVsdCBpZiBvbmUgaXMgZGVmaW5lZC5cbiAgICovXG4gIGdldDxUPih0b2tlbjogSHR0cENvbnRleHRUb2tlbjxUPik6IFQge1xuICAgIGlmICghdGhpcy5tYXAuaGFzKHRva2VuKSkge1xuICAgICAgdGhpcy5tYXAuc2V0KHRva2VuLCB0b2tlbi5kZWZhdWx0VmFsdWUoKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm1hcC5nZXQodG9rZW4pIGFzIFQ7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIHRva2VuLlxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4gVGhlIHJlZmVyZW5jZSB0byBhbiBpbnN0YW5jZSBvZiBgSHR0cENvbnRleHRUb2tlbmAuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgcmVmZXJlbmNlIHRvIGl0c2VsZiBmb3IgZWFzeSBjaGFpbmluZy5cbiAgICovXG4gIGRlbGV0ZSh0b2tlbjogSHR0cENvbnRleHRUb2tlbjx1bmtub3duPik6IEh0dHBDb250ZXh0IHtcbiAgICB0aGlzLm1hcC5kZWxldGUodG9rZW4pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBmb3IgZXhpc3RlbmNlIG9mIGEgZ2l2ZW4gdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiBUaGUgcmVmZXJlbmNlIHRvIGFuIGluc3RhbmNlIG9mIGBIdHRwQ29udGV4dFRva2VuYC5cbiAgICpcbiAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgdG9rZW4gZXhpc3RzLCBmYWxzZSBvdGhlcndpc2UuXG4gICAqL1xuICBoYXModG9rZW46IEh0dHBDb250ZXh0VG9rZW48dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tYXAuaGFzKHRva2VuKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyBhIGxpc3Qgb2YgdG9rZW5zIGN1cnJlbnRseSBzdG9yZWQgaW4gdGhlIGNvbnRleHQuXG4gICAqL1xuICBrZXlzKCk6IEl0ZXJhYmxlSXRlcmF0b3I8SHR0cENvbnRleHRUb2tlbjx1bmtub3duPj4ge1xuICAgIHJldHVybiB0aGlzLm1hcC5rZXlzKCk7XG4gIH1cbn1cbiJdfQ==
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  export {};
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2h0dHAvc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBUaGUgbGlzdCBvZiBlcnJvciBjb2RlcyB1c2VkIGluIHJ1bnRpbWUgY29kZSBvZiB0aGUgYGNvbW1vbi9odHRwYCBwYWNrYWdlLlxuICogUmVzZXJ2ZWQgZXJyb3IgY29kZSByYW5nZTogMjgwMC0yODk5LlxuICovXG5leHBvcnQgY29uc3QgZW51bSBSdW50aW1lRXJyb3JDb2RlIHtcbiAgTUlTU0lOR19KU09OUF9NT0RVTEUgPSAtMjgwMCxcbiAgTk9UX1VTSU5HX0ZFVENIX0JBQ0tFTkRfSU5fU1NSID0gMjgwMSxcbiAgSEVBREVSU19BTFRFUkVEX0JZX1RSQU5TRkVSX0NBQ0hFID0gMjgwMixcbiAgSFRUUF9PUklHSU5fTUFQX1VTRURfSU5fQ0xJRU5UID0gMjgwMyxcbiAgSFRUUF9PUklHSU5fTUFQX0NPTlRBSU5TX1BBVEggPSAyODA0LFxufVxuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2h0dHAvc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbi8qKlxuICogVGhlIGxpc3Qgb2YgZXJyb3IgY29kZXMgdXNlZCBpbiBydW50aW1lIGNvZGUgb2YgdGhlIGBjb21tb24vaHR0cGAgcGFja2FnZS5cbiAqIFJlc2VydmVkIGVycm9yIGNvZGUgcmFuZ2U6IDI4MDAtMjg5OS5cbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gUnVudGltZUVycm9yQ29kZSB7XG4gIE1JU1NJTkdfSlNPTlBfTU9EVUxFID0gLTI4MDAsXG4gIE5PVF9VU0lOR19GRVRDSF9CQUNLRU5EX0lOX1NTUiA9IDI4MDEsXG4gIEhFQURFUlNfQUxURVJFRF9CWV9UUkFOU0ZFUl9DQUNIRSA9IDI4MDIsXG4gIEhUVFBfT1JJR0lOX01BUF9VU0VEX0lOX0NMSUVOVCA9IDI4MDMsXG4gIEhUVFBfT1JJR0lOX01BUF9DT05UQUlOU19QQVRIID0gMjgwNCxcbn1cbiJdfQ==
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  import { inject, Injectable, NgZone } from '@angular/core';
9
9
  import { Observable } from 'rxjs';
@@ -219,10 +219,10 @@ export class FetchBackend {
219
219
  }
220
220
  return chunksAll;
221
221
  }
222
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FetchBackend, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
223
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FetchBackend }); }
222
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FetchBackend, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
223
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FetchBackend }); }
224
224
  }
225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FetchBackend, decorators: [{
225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FetchBackend, decorators: [{
226
226
  type: Injectable
227
227
  }] });
228
228
  /**
@@ -240,4 +240,4 @@ function noop() { }
240
240
  function silenceSuperfluousUnhandledPromiseRejection(promise) {
241
241
  promise.then(noop, noop);
242
242
  }
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvZmV0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQVcsTUFBTSxNQUFNLENBQUM7QUFHMUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUV0QyxPQUFPLEVBQ0wsbUJBQW1CLEVBRW5CLGlCQUFpQixFQUVqQixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFlBQVksR0FDYixNQUFNLFlBQVksQ0FBQzs7QUFFcEIsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDO0FBRW5DLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO0FBRTNDOzs7R0FHRztBQUNILFNBQVMsY0FBYyxDQUFDLFFBQWtCO0lBQ3hDLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUN0QixDQUFDO0lBQ0QsaUNBQWlDO0lBQ2pDLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0QsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUVILE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBRUUsNkZBQTZGO1FBQzdGLGlHQUFpRztRQUNqRyx1REFBdUQ7UUFDdEMsY0FBUyxHQUN4QixNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsVUFB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LEdBQUcsQ0FBQyxNQUFNO1lBQ2xCLE9BQU87WUFDUCxXQUFXO1NBQ1osQ0FBQztJQUNKLENBQUM7SUFFTyxZQUFZLENBQUMsTUFBb0IsRUFBRSxXQUFtQjtRQUM1RCxNQUFNLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5QyxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDakIsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMzQixTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztZQUMvQixRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUMzQixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzt5SEF2T1UsWUFBWTs2SEFBWixZQUFZOztzR0FBWixZQUFZO2tCQUR4QixVQUFVOztBQTJPWDs7R0FFRztBQUNILE1BQU0sT0FBZ0IsWUFBWTtDQUVqQztBQUVELFNBQVMsSUFBSSxLQUFVLENBQUM7QUFFeEI7Ozs7O0dBS0c7QUFDSCxTQUFTLDJDQUEyQyxDQUFDLE9BQXlCO0lBQzVFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtpbmplY3QsIEluamVjdGFibGUsIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIE9ic2VydmVyfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtIdHRwQmFja2VuZH0gZnJvbSAnLi9iYWNrZW5kJztcbmltcG9ydCB7SHR0cEhlYWRlcnN9IGZyb20gJy4vaGVhZGVycyc7XG5pbXBvcnQge0h0dHBSZXF1ZXN0fSBmcm9tICcuL3JlcXVlc3QnO1xuaW1wb3J0IHtcbiAgSFRUUF9TVEFUVVNfQ09ERV9PSyxcbiAgSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudCxcbiAgSHR0cEVycm9yUmVzcG9uc2UsXG4gIEh0dHBFdmVudCxcbiAgSHR0cEV2ZW50VHlwZSxcbiAgSHR0cEhlYWRlclJlc3BvbnNlLFxuICBIdHRwUmVzcG9uc2UsXG59IGZyb20gJy4vcmVzcG9uc2UnO1xuXG5jb25zdCBYU1NJX1BSRUZJWCA9IC9eXFwpXFxdXFx9Jyw/XFxuLztcblxuY29uc3QgUkVRVUVTVF9VUkxfSEVBREVSID0gYFgtUmVxdWVzdC1VUkxgO1xuXG4vKipcbiAqIERldGVybWluZSBhbiBhcHByb3ByaWF0ZSBVUkwgZm9yIHRoZSByZXNwb25zZSwgYnkgY2hlY2tpbmcgZWl0aGVyXG4gKiByZXNwb25zZSB1cmwgb3IgdGhlIFgtUmVxdWVzdC1VUkwgaGVhZGVyLlxuICovXG5mdW5jdGlvbiBnZXRSZXNwb25zZVVybChyZXNwb25zZTogUmVzcG9uc2UpOiBzdHJpbmcgfCBudWxsIHtcbiAgaWYgKHJlc3BvbnNlLnVybCkge1xuICAgIHJldHVybiByZXNwb25zZS51cmw7XG4gIH1cbiAgLy8gc3RvcmVkIGFzIGxvd2VyY2FzZSBpbiB0aGUgbWFwXG4gIGNvbnN0IHhSZXF1ZXN0VXJsID0gUkVRVUVTVF9VUkxfSEVBREVSLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCh4UmVxdWVzdFVybCk7XG59XG5cbi8qKlxuICogVXNlcyBgZmV0Y2hgIHRvIHNlbmQgcmVxdWVzdHMgdG8gYSBiYWNrZW5kIHNlcnZlci5cbiAqXG4gKiBUaGlzIGBGZXRjaEJhY2tlbmRgIHJlcXVpcmVzIHRoZSBzdXBwb3J0IG9mIHRoZVxuICogW0ZldGNoIEFQSV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0ZldGNoX0FQSSkgd2hpY2ggaXMgYXZhaWxhYmxlIG9uIGFsbFxuICogc3VwcG9ydGVkIGJyb3dzZXJzIGFuZCBvbiBOb2RlLmpzIHYxOCBvciBsYXRlci5cbiAqXG4gKiBAc2VlIHtAbGluayBIdHRwSGFuZGxlcn1cbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGZXRjaEJhY2tlbmQgaW1wbGVtZW50cyBIdHRwQmFja2VuZCB7XG4gIC8vIFdlIHVzZSBhbiBhcnJvdyBmdW5jdGlvbiB0byBhbHdheXMgcmVmZXJlbmNlIHRoZSBjdXJyZW50IGdsb2JhbCBpbXBsZW1lbnRhdGlvbiBvZiBgZmV0Y2hgLlxuICAvLyBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhc2VzIHdoZW4gdGhlIGdsb2JhbCBgZmV0Y2hgIGltcGxlbWVudGF0aW9uIGlzIG1vZGlmaWVkIGJ5IGV4dGVybmFsIGNvZGUsXG4gIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy81NzUyNy5cbiAgcHJpdmF0ZSByZWFkb25seSBmZXRjaEltcGwgPVxuICAgIGluamVjdChGZXRjaEZhY3RvcnksIHtvcHRpb25hbDogdHJ1ZX0pPy5mZXRjaCA/PyAoKC4uLmFyZ3MpID0+IGdsb2JhbFRoaXMuZmV0Y2goLi4uYXJncykpO1xuICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gIGhhbmRsZShyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHtcbiAgICAgIGNvbnN0IGFib3J0ZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgICB0aGlzLmRvUmVxdWVzdChyZXF1ZXN0LCBhYm9ydGVyLnNpZ25hbCwgb2JzZXJ2ZXIpLnRoZW4obm9vcCwgKGVycm9yKSA9PlxuICAgICAgICBvYnNlcnZlci5lcnJvcihuZXcgSHR0cEVycm9yUmVzcG9uc2Uoe2Vycm9yfSkpLFxuICAgICAgKTtcbiAgICAgIHJldHVybiAoKSA9PiBhYm9ydGVyLmFib3J0KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRvUmVxdWVzdChcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LFxuICAgIHNpZ25hbDogQWJvcnRTaWduYWwsXG4gICAgb2JzZXJ2ZXI6IE9ic2VydmVyPEh0dHBFdmVudDxhbnk+PixcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgaW5pdCA9IHRoaXMuY3JlYXRlUmVxdWVzdEluaXQocmVxdWVzdCk7XG4gICAgbGV0IHJlc3BvbnNlO1xuXG4gICAgdHJ5IHtcbiAgICAgIC8vIFJ1biBmZXRjaCBvdXRzaWRlIG9mIEFuZ3VsYXIgem9uZS5cbiAgICAgIC8vIFRoaXMgaXMgZHVlIHRvIE5vZGUuanMgZmV0Y2ggaW1wbGVtZW50YXRpb24gKFVuZGljaSkgd2hpY2ggdXNlcyBhIG51bWJlciBvZiBzZXRUaW1lb3V0cyB0byBjaGVjayBpZlxuICAgICAgLy8gdGhlIHJlc3BvbnNlIHNob3VsZCBldmVudHVhbGx5IHRpbWVvdXQgd2hpY2ggY2F1c2VzIGV4dHJhIENEIGN5Y2xlcyBldmVyeSA1MDBtc1xuICAgICAgY29uc3QgZmV0Y2hQcm9taXNlID0gdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT5cbiAgICAgICAgdGhpcy5mZXRjaEltcGwocmVxdWVzdC51cmxXaXRoUGFyYW1zLCB7c2lnbmFsLCAuLi5pbml0fSksXG4gICAgICApO1xuXG4gICAgICAvLyBNYWtlIHN1cmUgWm9uZS5qcyBkb2Vzbid0IHRyaWdnZXIgZmFsc2UtcG9zaXRpdmUgdW5oYW5kbGVkIHByb21pc2VcbiAgICAgIC8vIGVycm9yIGluIGNhc2UgdGhlIFByb21pc2UgaXMgcmVqZWN0ZWQgc3luY2hyb25vdXNseS4gU2VlIGZ1bmN0aW9uXG4gICAgICAvLyBkZXNjcmlwdGlvbiBmb3IgYWRkaXRpb25hbCBpbmZvcm1hdGlvbi5cbiAgICAgIHNpbGVuY2VTdXBlcmZsdW91c1VuaGFuZGxlZFByb21pc2VSZWplY3Rpb24oZmV0Y2hQcm9taXNlKTtcblxuICAgICAgLy8gU2VuZCB0aGUgYFNlbnRgIGV2ZW50IGJlZm9yZSBhd2FpdGluZyB0aGUgcmVzcG9uc2UuXG4gICAgICBvYnNlcnZlci5uZXh0KHt0eXBlOiBIdHRwRXZlbnRUeXBlLlNlbnR9KTtcblxuICAgICAgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaFByb21pc2U7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgb2JzZXJ2ZXIuZXJyb3IoXG4gICAgICAgIG5ldyBIdHRwRXJyb3JSZXNwb25zZSh7XG4gICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgc3RhdHVzOiBlcnJvci5zdGF0dXMgPz8gMCxcbiAgICAgICAgICBzdGF0dXNUZXh0OiBlcnJvci5zdGF0dXNUZXh0LFxuICAgICAgICAgIHVybDogcmVxdWVzdC51cmxXaXRoUGFyYW1zLFxuICAgICAgICAgIGhlYWRlcnM6IGVycm9yLmhlYWRlcnMsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHJlc3BvbnNlLmhlYWRlcnMpO1xuICAgIGNvbnN0IHN0YXR1c1RleHQgPSByZXNwb25zZS5zdGF0dXNUZXh0O1xuICAgIGNvbnN0IHVybCA9IGdldFJlc3BvbnNlVXJsKHJlc3BvbnNlKSA/PyByZXF1ZXN0LnVybFdpdGhQYXJhbXM7XG5cbiAgICBsZXQgc3RhdHVzID0gcmVzcG9uc2Uuc3RhdHVzO1xuICAgIGxldCBib2R5OiBzdHJpbmcgfCBBcnJheUJ1ZmZlciB8IEJsb2IgfCBvYmplY3QgfCBudWxsID0gbnVsbDtcblxuICAgIGlmIChyZXF1ZXN0LnJlcG9ydFByb2dyZXNzKSB7XG4gICAgICBvYnNlcnZlci5uZXh0KG5ldyBIdHRwSGVhZGVyUmVzcG9uc2Uoe2hlYWRlcnMsIHN0YXR1cywgc3RhdHVzVGV4dCwgdXJsfSkpO1xuICAgIH1cblxuICAgIGlmIChyZXNwb25zZS5ib2R5KSB7XG4gICAgICAvLyBSZWFkIFByb2dyZXNzXG4gICAgICBjb25zdCBjb250ZW50TGVuZ3RoID0gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ2NvbnRlbnQtbGVuZ3RoJyk7XG4gICAgICBjb25zdCBjaHVua3M6IFVpbnQ4QXJyYXlbXSA9IFtdO1xuICAgICAgY29uc3QgcmVhZGVyID0gcmVzcG9uc2UuYm9keS5nZXRSZWFkZXIoKTtcbiAgICAgIGxldCByZWNlaXZlZExlbmd0aCA9IDA7XG5cbiAgICAgIGxldCBkZWNvZGVyOiBUZXh0RGVjb2RlcjtcbiAgICAgIGxldCBwYXJ0aWFsVGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgICAvLyBXZSBoYXZlIHRvIGNoZWNrIHdoZXRoZXIgdGhlIFpvbmUgaXMgZGVmaW5lZCBpbiB0aGUgZ2xvYmFsIHNjb3BlIGJlY2F1c2UgdGhpcyBtYXkgYmUgY2FsbGVkXG4gICAgICAvLyB3aGVuIHRoZSB6b25lIGlzIG5vb3BlZC5cbiAgICAgIGNvbnN0IHJlcVpvbmUgPSB0eXBlb2YgWm9uZSAhPT0gJ3VuZGVmaW5lZCcgJiYgWm9uZS5jdXJyZW50O1xuXG4gICAgICAvLyBQZXJmb3JtIHJlc3BvbnNlIHByb2Nlc3Npbmcgb3V0c2lkZSBvZiBBbmd1bGFyIHpvbmUgdG9cbiAgICAgIC8vIGVuc3VyZSBubyBleGNlc3NpdmUgY2hhbmdlIGRldGVjdGlvbiBydW5zIGFyZSBleGVjdXRlZFxuICAgICAgLy8gSGVyZSBjYWxsaW5nIHRoZSBhc3luYyBSZWFkYWJsZVN0cmVhbURlZmF1bHRSZWFkZXIucmVhZCgpIGlzIHJlc3BvbnNpYmxlIGZvciB0cmlnZ2VyaW5nIENEXG4gICAgICBhd2FpdCB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcihhc3luYyAoKSA9PiB7XG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgY29uc3Qge2RvbmUsIHZhbHVlfSA9IGF3YWl0IHJlYWRlci5yZWFkKCk7XG5cbiAgICAgICAgICBpZiAoZG9uZSkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2h1bmtzLnB1c2godmFsdWUpO1xuICAgICAgICAgIHJlY2VpdmVkTGVuZ3RoICs9IHZhbHVlLmxlbmd0aDtcblxuICAgICAgICAgIGlmIChyZXF1ZXN0LnJlcG9ydFByb2dyZXNzKSB7XG4gICAgICAgICAgICBwYXJ0aWFsVGV4dCA9XG4gICAgICAgICAgICAgIHJlcXVlc3QucmVzcG9uc2VUeXBlID09PSAndGV4dCdcbiAgICAgICAgICAgICAgICA/IChwYXJ0aWFsVGV4dCA/PyAnJykgK1xuICAgICAgICAgICAgICAgICAgKGRlY29kZXIgPz89IG5ldyBUZXh0RGVjb2RlcigpKS5kZWNvZGUodmFsdWUsIHtzdHJlYW06IHRydWV9KVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCByZXBvcnRQcm9ncmVzcyA9ICgpID0+XG4gICAgICAgICAgICAgIG9ic2VydmVyLm5leHQoe1xuICAgICAgICAgICAgICAgIHR5cGU6IEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzcyxcbiAgICAgICAgICAgICAgICB0b3RhbDogY29udGVudExlbmd0aCA/ICtjb250ZW50TGVuZ3RoIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGxvYWRlZDogcmVjZWl2ZWRMZW5ndGgsXG4gICAgICAgICAgICAgICAgcGFydGlhbFRleHQsXG4gICAgICAgICAgICAgIH0gYXMgSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudCk7XG4gICAgICAgICAgICByZXFab25lID8gcmVxWm9uZS5ydW4ocmVwb3J0UHJvZ3Jlc3MpIDogcmVwb3J0UHJvZ3Jlc3MoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICAvLyBDb21iaW5lIGFsbCBjaHVua3MuXG4gICAgICBjb25zdCBjaHVua3NBbGwgPSB0aGlzLmNvbmNhdENodW5rcyhjaHVua3MsIHJlY2VpdmVkTGVuZ3RoKTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpID8/ICcnO1xuICAgICAgICBib2R5ID0gdGhpcy5wYXJzZUJvZHkocmVxdWVzdCwgY2h1bmtzQWxsLCBjb250ZW50VHlwZSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAvLyBCb2R5IGxvYWRpbmcgb3IgcGFyc2luZyBmYWlsZWRcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoXG4gICAgICAgICAgbmV3IEh0dHBFcnJvclJlc3BvbnNlKHtcbiAgICAgICAgICAgIGVycm9yLFxuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHJlc3BvbnNlLmhlYWRlcnMpLFxuICAgICAgICAgICAgc3RhdHVzOiByZXNwb25zZS5zdGF0dXMsXG4gICAgICAgICAgICBzdGF0dXNUZXh0OiByZXNwb25zZS5zdGF0dXNUZXh0LFxuICAgICAgICAgICAgdXJsOiBnZXRSZXNwb25zZVVybChyZXNwb25zZSkgPz8gcmVxdWVzdC51cmxXaXRoUGFyYW1zLFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2FtZSBiZWhhdmlvciBhcyB0aGUgWGhyQmFja2VuZFxuICAgIGlmIChzdGF0dXMgPT09IDApIHtcbiAgICAgIHN0YXR1cyA9IGJvZHkgPyBIVFRQX1NUQVRVU19DT0RFX09LIDogMDtcbiAgICB9XG5cbiAgICAvLyBvayBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIHdpbGwgYmUgdHJhbnNtaXR0ZWQgb24gdGhlIGV2ZW50IG9yXG4gICAgLy8gZXJyb3IgY2hhbm5lbC4gVW5zdWNjZXNzZnVsIHN0YXR1cyBjb2RlcyAobm90IDJ4eCkgd2lsbCBhbHdheXMgYmUgZXJyb3JzLFxuICAgIC8vIGJ1dCBhIHN1Y2Nlc3NmdWwgc3RhdHVzIGNvZGUgY2FuIHN0aWxsIHJlc3VsdCBpbiBhbiBlcnJvciBpZiB0aGUgdXNlclxuICAgIC8vIGFza2VkIGZvciBKU09OIGRhdGEgYW5kIHRoZSBib2R5IGNhbm5vdCBiZSBwYXJzZWQgYXMgc3VjaC5cbiAgICBjb25zdCBvayA9IHN0YXR1cyA+PSAyMDAgJiYgc3RhdHVzIDwgMzAwO1xuXG4gICAgaWYgKG9rKSB7XG4gICAgICBvYnNlcnZlci5uZXh0KFxuICAgICAgICBuZXcgSHR0cFJlc3BvbnNlKHtcbiAgICAgICAgICBib2R5LFxuICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgc3RhdHVzLFxuICAgICAgICAgIHN0YXR1c1RleHQsXG4gICAgICAgICAgdXJsLFxuICAgICAgICB9KSxcbiAgICAgICk7XG5cbiAgICAgIC8vIFRoZSBmdWxsIGJvZHkgaGFzIGJlZW4gcmVjZWl2ZWQgYW5kIGRlbGl2ZXJlZCwgbm8gZnVydGhlciBldmVudHNcbiAgICAgIC8vIGFyZSBwb3NzaWJsZS4gVGhpcyByZXF1ZXN0IGlzIGNvbXBsZXRlLlxuICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2JzZXJ2ZXIuZXJyb3IoXG4gICAgICAgIG5ldyBIdHRwRXJyb3JSZXNwb25zZSh7XG4gICAgICAgICAgZXJyb3I6IGJvZHksXG4gICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgICBzdGF0dXMsXG4gICAgICAgICAgc3RhdHVzVGV4dCxcbiAgICAgICAgICB1cmwsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBhcnNlQm9keShcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LFxuICAgIGJpbkNvbnRlbnQ6IFVpbnQ4QXJyYXksXG4gICAgY29udGVudFR5cGU6IHN0cmluZyxcbiAgKTogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBCbG9iIHwgb2JqZWN0IHwgbnVsbCB7XG4gICAgc3dpdGNoIChyZXF1ZXN0LnJlc3BvbnNlVHlwZSkge1xuICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgIC8vIHN0cmlwcGluZyB0aGUgWFNTSSB3aGVuIHByZXNlbnRcbiAgICAgICAgY29uc3QgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShiaW5Db250ZW50KS5yZXBsYWNlKFhTU0lfUFJFRklYLCAnJyk7XG4gICAgICAgIHJldHVybiB0ZXh0ID09PSAnJyA/IG51bGwgOiAoSlNPTi5wYXJzZSh0ZXh0KSBhcyBvYmplY3QpO1xuICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIHJldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoYmluQ29udGVudCk7XG4gICAgICBjYXNlICdibG9iJzpcbiAgICAgICAgcmV0dXJuIG5ldyBCbG9iKFtiaW5Db250ZW50XSwge3R5cGU6IGNvbnRlbnRUeXBlfSk7XG4gICAgICBjYXNlICdhcnJheWJ1ZmZlcic6XG4gICAgICAgIHJldHVybiBiaW5Db250ZW50LmJ1ZmZlcjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJlcXVlc3RJbml0KHJlcTogSHR0cFJlcXVlc3Q8YW55Pik6IFJlcXVlc3RJbml0IHtcbiAgICAvLyBXZSBjb3VsZCBzaGFyZSBzb21lIG9mIHRoaXMgbG9naWMgd2l0aCB0aGUgWGhyQmFja2VuZFxuXG4gICAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICAgIGNvbnN0IGNyZWRlbnRpYWxzOiBSZXF1ZXN0Q3JlZGVudGlhbHMgfCB1bmRlZmluZWQgPSByZXEud2l0aENyZWRlbnRpYWxzID8gJ2luY2x1ZGUnIDogdW5kZWZpbmVkO1xuXG4gICAgLy8gU2V0dGluZyBhbGwgdGhlIHJlcXVlc3RlZCBoZWFkZXJzLlxuICAgIHJlcS5oZWFkZXJzLmZvckVhY2goKG5hbWUsIHZhbHVlcykgPT4gKGhlYWRlcnNbbmFtZV0gPSB2YWx1ZXMuam9pbignLCcpKSk7XG5cbiAgICAvLyBBZGQgYW4gQWNjZXB0IGhlYWRlciBpZiBvbmUgaXNuJ3QgcHJlc2VudCBhbHJlYWR5LlxuICAgIGlmICghcmVxLmhlYWRlcnMuaGFzKCdBY2NlcHQnKSkge1xuICAgICAgaGVhZGVyc1snQWNjZXB0J10gPSAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJztcbiAgICB9XG5cbiAgICAvLyBBdXRvLWRldGVjdCB0aGUgQ29udGVudC1UeXBlIGhlYWRlciBpZiBvbmUgaXNuJ3QgcHJlc2VudCBhbHJlYWR5LlxuICAgIGlmICghcmVxLmhlYWRlcnMuaGFzKCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgY29uc3QgZGV0ZWN0ZWRUeXBlID0gcmVxLmRldGVjdENvbnRlbnRUeXBlSGVhZGVyKCk7XG4gICAgICAvLyBTb21ldGltZXMgQ29udGVudC1UeXBlIGRldGVjdGlvbiBmYWlscy5cbiAgICAgIGlmIChkZXRlY3RlZFR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSBkZXRlY3RlZFR5cGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGJvZHk6IHJlcS5zZXJpYWxpemVCb2R5KCksXG4gICAgICBtZXRob2Q6IHJlcS5tZXRob2QsXG4gICAgICBoZWFkZXJzLFxuICAgICAgY3JlZGVudGlhbHMsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY29uY2F0Q2h1bmtzKGNodW5rczogVWludDhBcnJheVtdLCB0b3RhbExlbmd0aDogbnVtYmVyKTogVWludDhBcnJheSB7XG4gICAgY29uc3QgY2h1bmtzQWxsID0gbmV3IFVpbnQ4QXJyYXkodG90YWxMZW5ndGgpO1xuICAgIGxldCBwb3NpdGlvbiA9IDA7XG4gICAgZm9yIChjb25zdCBjaHVuayBvZiBjaHVua3MpIHtcbiAgICAgIGNodW5rc0FsbC5zZXQoY2h1bmssIHBvc2l0aW9uKTtcbiAgICAgIHBvc2l0aW9uICs9IGNodW5rLmxlbmd0aDtcbiAgICB9XG5cbiAgICByZXR1cm4gY2h1bmtzQWxsO1xuICB9XG59XG5cbi8qKlxuICogQWJzdHJhY3QgY2xhc3MgdG8gcHJvdmlkZSBhIG1vY2tlZCBpbXBsZW1lbnRhdGlvbiBvZiBgZmV0Y2goKWBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZldGNoRmFjdG9yeSB7XG4gIGFic3RyYWN0IGZldGNoOiB0eXBlb2YgZmV0Y2g7XG59XG5cbmZ1bmN0aW9uIG5vb3AoKTogdm9pZCB7fVxuXG4vKipcbiAqIFpvbmUuanMgdHJlYXRzIGEgcmVqZWN0ZWQgcHJvbWlzZSB0aGF0IGhhcyBub3QgeWV0IGJlZW4gYXdhaXRlZFxuICogYXMgYW4gdW5oYW5kbGVkIGVycm9yLiBUaGlzIGZ1bmN0aW9uIGFkZHMgYSBub29wIGAudGhlbmAgdG8gbWFrZVxuICogc3VyZSB0aGF0IFpvbmUuanMgZG9lc24ndCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgUHJvbWlzZSBpcyByZWplY3RlZFxuICogc3luY2hyb25vdXNseS5cbiAqL1xuZnVuY3Rpb24gc2lsZW5jZVN1cGVyZmx1b3VzVW5oYW5kbGVkUHJvbWlzZVJlamVjdGlvbihwcm9taXNlOiBQcm9taXNlPHVua25vd24+KSB7XG4gIHByb21pc2UudGhlbihub29wLCBub29wKTtcbn1cbiJdfQ==
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvZmV0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQVcsTUFBTSxNQUFNLENBQUM7QUFHMUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUV0QyxPQUFPLEVBQ0wsbUJBQW1CLEVBRW5CLGlCQUFpQixFQUVqQixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFlBQVksR0FDYixNQUFNLFlBQVksQ0FBQzs7QUFFcEIsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDO0FBRW5DLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO0FBRTNDOzs7R0FHRztBQUNILFNBQVMsY0FBYyxDQUFDLFFBQWtCO0lBQ3hDLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUN0QixDQUFDO0lBQ0QsaUNBQWlDO0lBQ2pDLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0QsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUVILE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBRUUsNkZBQTZGO1FBQzdGLGlHQUFpRztRQUNqRyx1REFBdUQ7UUFDdEMsY0FBUyxHQUN4QixNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsVUFB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LEdBQUcsQ0FBQyxNQUFNO1lBQ2xCLE9BQU87WUFDUCxXQUFXO1NBQ1osQ0FBQztJQUNKLENBQUM7SUFFTyxZQUFZLENBQUMsTUFBb0IsRUFBRSxXQUFtQjtRQUM1RCxNQUFNLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5QyxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDakIsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUMzQixTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztZQUMvQixRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUMzQixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzt5SEF2T1UsWUFBWTs2SEFBWixZQUFZOztzR0FBWixZQUFZO2tCQUR4QixVQUFVOztBQTJPWDs7R0FFRztBQUNILE1BQU0sT0FBZ0IsWUFBWTtDQUVqQztBQUVELFNBQVMsSUFBSSxLQUFVLENBQUM7QUFFeEI7Ozs7O0dBS0c7QUFDSCxTQUFTLDJDQUEyQyxDQUFDLE9BQXlCO0lBQzVFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbmltcG9ydCB7aW5qZWN0LCBJbmplY3RhYmxlLCBOZ1pvbmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBPYnNlcnZlcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7SHR0cEJhY2tlbmR9IGZyb20gJy4vYmFja2VuZCc7XG5pbXBvcnQge0h0dHBIZWFkZXJzfSBmcm9tICcuL2hlYWRlcnMnO1xuaW1wb3J0IHtIdHRwUmVxdWVzdH0gZnJvbSAnLi9yZXF1ZXN0JztcbmltcG9ydCB7XG4gIEhUVFBfU1RBVFVTX0NPREVfT0ssXG4gIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQsXG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwRXZlbnQsXG4gIEh0dHBFdmVudFR5cGUsXG4gIEh0dHBIZWFkZXJSZXNwb25zZSxcbiAgSHR0cFJlc3BvbnNlLFxufSBmcm9tICcuL3Jlc3BvbnNlJztcblxuY29uc3QgWFNTSV9QUkVGSVggPSAvXlxcKVxcXVxcfScsP1xcbi87XG5cbmNvbnN0IFJFUVVFU1RfVVJMX0hFQURFUiA9IGBYLVJlcXVlc3QtVVJMYDtcblxuLyoqXG4gKiBEZXRlcm1pbmUgYW4gYXBwcm9wcmlhdGUgVVJMIGZvciB0aGUgcmVzcG9uc2UsIGJ5IGNoZWNraW5nIGVpdGhlclxuICogcmVzcG9uc2UgdXJsIG9yIHRoZSBYLVJlcXVlc3QtVVJMIGhlYWRlci5cbiAqL1xuZnVuY3Rpb24gZ2V0UmVzcG9uc2VVcmwocmVzcG9uc2U6IFJlc3BvbnNlKTogc3RyaW5nIHwgbnVsbCB7XG4gIGlmIChyZXNwb25zZS51cmwpIHtcbiAgICByZXR1cm4gcmVzcG9uc2UudXJsO1xuICB9XG4gIC8vIHN0b3JlZCBhcyBsb3dlcmNhc2UgaW4gdGhlIG1hcFxuICBjb25zdCB4UmVxdWVzdFVybCA9IFJFUVVFU1RfVVJMX0hFQURFUi50b0xvY2FsZUxvd2VyQ2FzZSgpO1xuICByZXR1cm4gcmVzcG9uc2UuaGVhZGVycy5nZXQoeFJlcXVlc3RVcmwpO1xufVxuXG4vKipcbiAqIFVzZXMgYGZldGNoYCB0byBzZW5kIHJlcXVlc3RzIHRvIGEgYmFja2VuZCBzZXJ2ZXIuXG4gKlxuICogVGhpcyBgRmV0Y2hCYWNrZW5kYCByZXF1aXJlcyB0aGUgc3VwcG9ydCBvZiB0aGVcbiAqIFtGZXRjaCBBUEldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9GZXRjaF9BUEkpIHdoaWNoIGlzIGF2YWlsYWJsZSBvbiBhbGxcbiAqIHN1cHBvcnRlZCBicm93c2VycyBhbmQgb24gTm9kZS5qcyB2MTggb3IgbGF0ZXIuXG4gKlxuICogQHNlZSB7QGxpbmsgSHR0cEhhbmRsZXJ9XG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmV0Y2hCYWNrZW5kIGltcGxlbWVudHMgSHR0cEJhY2tlbmQge1xuICAvLyBXZSB1c2UgYW4gYXJyb3cgZnVuY3Rpb24gdG8gYWx3YXlzIHJlZmVyZW5jZSB0aGUgY3VycmVudCBnbG9iYWwgaW1wbGVtZW50YXRpb24gb2YgYGZldGNoYC5cbiAgLy8gVGhpcyBpcyBoZWxwZnVsIGZvciBjYXNlcyB3aGVuIHRoZSBnbG9iYWwgYGZldGNoYCBpbXBsZW1lbnRhdGlvbiBpcyBtb2RpZmllZCBieSBleHRlcm5hbCBjb2RlLFxuICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvNTc1MjcuXG4gIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hJbXBsID1cbiAgICBpbmplY3QoRmV0Y2hGYWN0b3J5LCB7b3B0aW9uYWw6IHRydWV9KT8uZmV0Y2ggPz8gKCguLi5hcmdzKSA9PiBnbG9iYWxUaGlzLmZldGNoKC4uLmFyZ3MpKTtcbiAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICBoYW5kbGUocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICBjb25zdCBhYm9ydGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgICAgdGhpcy5kb1JlcXVlc3QocmVxdWVzdCwgYWJvcnRlci5zaWduYWwsIG9ic2VydmVyKS50aGVuKG5vb3AsIChlcnJvcikgPT5cbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEh0dHBFcnJvclJlc3BvbnNlKHtlcnJvcn0pKSxcbiAgICAgICk7XG4gICAgICByZXR1cm4gKCkgPT4gYWJvcnRlci5hYm9ydCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBkb1JlcXVlc3QoXG4gICAgcmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PixcbiAgICBzaWduYWw6IEFib3J0U2lnbmFsLFxuICAgIG9ic2VydmVyOiBPYnNlcnZlcjxIdHRwRXZlbnQ8YW55Pj4sXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGluaXQgPSB0aGlzLmNyZWF0ZVJlcXVlc3RJbml0KHJlcXVlc3QpO1xuICAgIGxldCByZXNwb25zZTtcblxuICAgIHRyeSB7XG4gICAgICAvLyBSdW4gZmV0Y2ggb3V0c2lkZSBvZiBBbmd1bGFyIHpvbmUuXG4gICAgICAvLyBUaGlzIGlzIGR1ZSB0byBOb2RlLmpzIGZldGNoIGltcGxlbWVudGF0aW9uIChVbmRpY2kpIHdoaWNoIHVzZXMgYSBudW1iZXIgb2Ygc2V0VGltZW91dHMgdG8gY2hlY2sgaWZcbiAgICAgIC8vIHRoZSByZXNwb25zZSBzaG91bGQgZXZlbnR1YWxseSB0aW1lb3V0IHdoaWNoIGNhdXNlcyBleHRyYSBDRCBjeWNsZXMgZXZlcnkgNTAwbXNcbiAgICAgIGNvbnN0IGZldGNoUHJvbWlzZSA9IHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+XG4gICAgICAgIHRoaXMuZmV0Y2hJbXBsKHJlcXVlc3QudXJsV2l0aFBhcmFtcywge3NpZ25hbCwgLi4uaW5pdH0pLFxuICAgICAgKTtcblxuICAgICAgLy8gTWFrZSBzdXJlIFpvbmUuanMgZG9lc24ndCB0cmlnZ2VyIGZhbHNlLXBvc2l0aXZlIHVuaGFuZGxlZCBwcm9taXNlXG4gICAgICAvLyBlcnJvciBpbiBjYXNlIHRoZSBQcm9taXNlIGlzIHJlamVjdGVkIHN5bmNocm9ub3VzbHkuIFNlZSBmdW5jdGlvblxuICAgICAgLy8gZGVzY3JpcHRpb24gZm9yIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24uXG4gICAgICBzaWxlbmNlU3VwZXJmbHVvdXNVbmhhbmRsZWRQcm9taXNlUmVqZWN0aW9uKGZldGNoUHJvbWlzZSk7XG5cbiAgICAgIC8vIFNlbmQgdGhlIGBTZW50YCBldmVudCBiZWZvcmUgYXdhaXRpbmcgdGhlIHJlc3BvbnNlLlxuICAgICAgb2JzZXJ2ZXIubmV4dCh7dHlwZTogSHR0cEV2ZW50VHlwZS5TZW50fSk7XG5cbiAgICAgIHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hQcm9taXNlO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIG9ic2VydmVyLmVycm9yKFxuICAgICAgICBuZXcgSHR0cEVycm9yUmVzcG9uc2Uoe1xuICAgICAgICAgIGVycm9yLFxuICAgICAgICAgIHN0YXR1czogZXJyb3Iuc3RhdHVzID8/IDAsXG4gICAgICAgICAgc3RhdHVzVGV4dDogZXJyb3Iuc3RhdHVzVGV4dCxcbiAgICAgICAgICB1cmw6IHJlcXVlc3QudXJsV2l0aFBhcmFtcyxcbiAgICAgICAgICBoZWFkZXJzOiBlcnJvci5oZWFkZXJzLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyhyZXNwb25zZS5oZWFkZXJzKTtcbiAgICBjb25zdCBzdGF0dXNUZXh0ID0gcmVzcG9uc2Uuc3RhdHVzVGV4dDtcbiAgICBjb25zdCB1cmwgPSBnZXRSZXNwb25zZVVybChyZXNwb25zZSkgPz8gcmVxdWVzdC51cmxXaXRoUGFyYW1zO1xuXG4gICAgbGV0IHN0YXR1cyA9IHJlc3BvbnNlLnN0YXR1cztcbiAgICBsZXQgYm9keTogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBCbG9iIHwgb2JqZWN0IHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAocmVxdWVzdC5yZXBvcnRQcm9ncmVzcykge1xuICAgICAgb2JzZXJ2ZXIubmV4dChuZXcgSHR0cEhlYWRlclJlc3BvbnNlKHtoZWFkZXJzLCBzdGF0dXMsIHN0YXR1c1RleHQsIHVybH0pKTtcbiAgICB9XG5cbiAgICBpZiAocmVzcG9uc2UuYm9keSkge1xuICAgICAgLy8gUmVhZCBQcm9ncmVzc1xuICAgICAgY29uc3QgY29udGVudExlbmd0aCA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdjb250ZW50LWxlbmd0aCcpO1xuICAgICAgY29uc3QgY2h1bmtzOiBVaW50OEFycmF5W10gPSBbXTtcbiAgICAgIGNvbnN0IHJlYWRlciA9IHJlc3BvbnNlLmJvZHkuZ2V0UmVhZGVyKCk7XG4gICAgICBsZXQgcmVjZWl2ZWRMZW5ndGggPSAwO1xuXG4gICAgICBsZXQgZGVjb2RlcjogVGV4dERlY29kZXI7XG4gICAgICBsZXQgcGFydGlhbFRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAgICAgLy8gV2UgaGF2ZSB0byBjaGVjayB3aGV0aGVyIHRoZSBab25lIGlzIGRlZmluZWQgaW4gdGhlIGdsb2JhbCBzY29wZSBiZWNhdXNlIHRoaXMgbWF5IGJlIGNhbGxlZFxuICAgICAgLy8gd2hlbiB0aGUgem9uZSBpcyBub29wZWQuXG4gICAgICBjb25zdCByZXFab25lID0gdHlwZW9mIFpvbmUgIT09ICd1bmRlZmluZWQnICYmIFpvbmUuY3VycmVudDtcblxuICAgICAgLy8gUGVyZm9ybSByZXNwb25zZSBwcm9jZXNzaW5nIG91dHNpZGUgb2YgQW5ndWxhciB6b25lIHRvXG4gICAgICAvLyBlbnN1cmUgbm8gZXhjZXNzaXZlIGNoYW5nZSBkZXRlY3Rpb24gcnVucyBhcmUgZXhlY3V0ZWRcbiAgICAgIC8vIEhlcmUgY2FsbGluZyB0aGUgYXN5bmMgUmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyLnJlYWQoKSBpcyByZXNwb25zaWJsZSBmb3IgdHJpZ2dlcmluZyBDRFxuICAgICAgYXdhaXQgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoYXN5bmMgKCkgPT4ge1xuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgIGNvbnN0IHtkb25lLCB2YWx1ZX0gPSBhd2FpdCByZWFkZXIucmVhZCgpO1xuXG4gICAgICAgICAgaWYgKGRvbmUpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNodW5rcy5wdXNoKHZhbHVlKTtcbiAgICAgICAgICByZWNlaXZlZExlbmd0aCArPSB2YWx1ZS5sZW5ndGg7XG5cbiAgICAgICAgICBpZiAocmVxdWVzdC5yZXBvcnRQcm9ncmVzcykge1xuICAgICAgICAgICAgcGFydGlhbFRleHQgPVxuICAgICAgICAgICAgICByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9PT0gJ3RleHQnXG4gICAgICAgICAgICAgICAgPyAocGFydGlhbFRleHQgPz8gJycpICtcbiAgICAgICAgICAgICAgICAgIChkZWNvZGVyID8/PSBuZXcgVGV4dERlY29kZXIoKSkuZGVjb2RlKHZhbHVlLCB7c3RyZWFtOiB0cnVlfSlcbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgcmVwb3J0UHJvZ3Jlc3MgPSAoKSA9PlxuICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHtcbiAgICAgICAgICAgICAgICB0eXBlOiBIdHRwRXZlbnRUeXBlLkRvd25sb2FkUHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgdG90YWw6IGNvbnRlbnRMZW5ndGggPyArY29udGVudExlbmd0aCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBsb2FkZWQ6IHJlY2VpdmVkTGVuZ3RoLFxuICAgICAgICAgICAgICAgIHBhcnRpYWxUZXh0LFxuICAgICAgICAgICAgICB9IGFzIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQpO1xuICAgICAgICAgICAgcmVxWm9uZSA/IHJlcVpvbmUucnVuKHJlcG9ydFByb2dyZXNzKSA6IHJlcG9ydFByb2dyZXNzKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgLy8gQ29tYmluZSBhbGwgY2h1bmtzLlxuICAgICAgY29uc3QgY2h1bmtzQWxsID0gdGhpcy5jb25jYXRDaHVua3MoY2h1bmtzLCByZWNlaXZlZExlbmd0aCk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb250ZW50VHlwZSA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LVR5cGUnKSA/PyAnJztcbiAgICAgICAgYm9keSA9IHRoaXMucGFyc2VCb2R5KHJlcXVlc3QsIGNodW5rc0FsbCwgY29udGVudFR5cGUpO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gQm9keSBsb2FkaW5nIG9yIHBhcnNpbmcgZmFpbGVkXG4gICAgICAgIG9ic2VydmVyLmVycm9yKFxuICAgICAgICAgIG5ldyBIdHRwRXJyb3JSZXNwb25zZSh7XG4gICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyhyZXNwb25zZS5oZWFkZXJzKSxcbiAgICAgICAgICAgIHN0YXR1czogcmVzcG9uc2Uuc3RhdHVzLFxuICAgICAgICAgICAgc3RhdHVzVGV4dDogcmVzcG9uc2Uuc3RhdHVzVGV4dCxcbiAgICAgICAgICAgIHVybDogZ2V0UmVzcG9uc2VVcmwocmVzcG9uc2UpID8/IHJlcXVlc3QudXJsV2l0aFBhcmFtcyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNhbWUgYmVoYXZpb3IgYXMgdGhlIFhockJhY2tlbmRcbiAgICBpZiAoc3RhdHVzID09PSAwKSB7XG4gICAgICBzdGF0dXMgPSBib2R5ID8gSFRUUF9TVEFUVVNfQ09ERV9PSyA6IDA7XG4gICAgfVxuXG4gICAgLy8gb2sgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSByZXNwb25zZSB3aWxsIGJlIHRyYW5zbWl0dGVkIG9uIHRoZSBldmVudCBvclxuICAgIC8vIGVycm9yIGNoYW5uZWwuIFVuc3VjY2Vzc2Z1bCBzdGF0dXMgY29kZXMgKG5vdCAyeHgpIHdpbGwgYWx3YXlzIGJlIGVycm9ycyxcbiAgICAvLyBidXQgYSBzdWNjZXNzZnVsIHN0YXR1cyBjb2RlIGNhbiBzdGlsbCByZXN1bHQgaW4gYW4gZXJyb3IgaWYgdGhlIHVzZXJcbiAgICAvLyBhc2tlZCBmb3IgSlNPTiBkYXRhIGFuZCB0aGUgYm9keSBjYW5ub3QgYmUgcGFyc2VkIGFzIHN1Y2guXG4gICAgY29uc3Qgb2sgPSBzdGF0dXMgPj0gMjAwICYmIHN0YXR1cyA8IDMwMDtcblxuICAgIGlmIChvaykge1xuICAgICAgb2JzZXJ2ZXIubmV4dChcbiAgICAgICAgbmV3IEh0dHBSZXNwb25zZSh7XG4gICAgICAgICAgYm9keSxcbiAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICBzdGF0dXNUZXh0LFxuICAgICAgICAgIHVybCxcbiAgICAgICAgfSksXG4gICAgICApO1xuXG4gICAgICAvLyBUaGUgZnVsbCBib2R5IGhhcyBiZWVuIHJlY2VpdmVkIGFuZCBkZWxpdmVyZWQsIG5vIGZ1cnRoZXIgZXZlbnRzXG4gICAgICAvLyBhcmUgcG9zc2libGUuIFRoaXMgcmVxdWVzdCBpcyBjb21wbGV0ZS5cbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG9ic2VydmVyLmVycm9yKFxuICAgICAgICBuZXcgSHR0cEVycm9yUmVzcG9uc2Uoe1xuICAgICAgICAgIGVycm9yOiBib2R5LFxuICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgc3RhdHVzLFxuICAgICAgICAgIHN0YXR1c1RleHQsXG4gICAgICAgICAgdXJsLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUJvZHkoXG4gICAgcmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PixcbiAgICBiaW5Db250ZW50OiBVaW50OEFycmF5LFxuICAgIGNvbnRlbnRUeXBlOiBzdHJpbmcsXG4gICk6IHN0cmluZyB8IEFycmF5QnVmZmVyIHwgQmxvYiB8IG9iamVjdCB8IG51bGwge1xuICAgIHN3aXRjaCAocmVxdWVzdC5yZXNwb25zZVR5cGUpIHtcbiAgICAgIGNhc2UgJ2pzb24nOlxuICAgICAgICAvLyBzdHJpcHBpbmcgdGhlIFhTU0kgd2hlbiBwcmVzZW50XG4gICAgICAgIGNvbnN0IHRleHQgPSBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoYmluQ29udGVudCkucmVwbGFjZShYU1NJX1BSRUZJWCwgJycpO1xuICAgICAgICByZXR1cm4gdGV4dCA9PT0gJycgPyBudWxsIDogKEpTT04ucGFyc2UodGV4dCkgYXMgb2JqZWN0KTtcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGJpbkNvbnRlbnQpO1xuICAgICAgY2FzZSAnYmxvYic6XG4gICAgICAgIHJldHVybiBuZXcgQmxvYihbYmluQ29udGVudF0sIHt0eXBlOiBjb250ZW50VHlwZX0pO1xuICAgICAgY2FzZSAnYXJyYXlidWZmZXInOlxuICAgICAgICByZXR1cm4gYmluQ29udGVudC5idWZmZXI7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSZXF1ZXN0SW5pdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4pOiBSZXF1ZXN0SW5pdCB7XG4gICAgLy8gV2UgY291bGQgc2hhcmUgc29tZSBvZiB0aGlzIGxvZ2ljIHdpdGggdGhlIFhockJhY2tlbmRcblxuICAgIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgICBjb25zdCBjcmVkZW50aWFsczogUmVxdWVzdENyZWRlbnRpYWxzIHwgdW5kZWZpbmVkID0gcmVxLndpdGhDcmVkZW50aWFscyA/ICdpbmNsdWRlJyA6IHVuZGVmaW5lZDtcblxuICAgIC8vIFNldHRpbmcgYWxsIHRoZSByZXF1ZXN0ZWQgaGVhZGVycy5cbiAgICByZXEuaGVhZGVycy5mb3JFYWNoKChuYW1lLCB2YWx1ZXMpID0+IChoZWFkZXJzW25hbWVdID0gdmFsdWVzLmpvaW4oJywnKSkpO1xuXG4gICAgLy8gQWRkIGFuIEFjY2VwdCBoZWFkZXIgaWYgb25lIGlzbid0IHByZXNlbnQgYWxyZWFkeS5cbiAgICBpZiAoIXJlcS5oZWFkZXJzLmhhcygnQWNjZXB0JykpIHtcbiAgICAgIGhlYWRlcnNbJ0FjY2VwdCddID0gJ2FwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKic7XG4gICAgfVxuXG4gICAgLy8gQXV0by1kZXRlY3QgdGhlIENvbnRlbnQtVHlwZSBoZWFkZXIgaWYgb25lIGlzbid0IHByZXNlbnQgYWxyZWFkeS5cbiAgICBpZiAoIXJlcS5oZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykpIHtcbiAgICAgIGNvbnN0IGRldGVjdGVkVHlwZSA9IHJlcS5kZXRlY3RDb250ZW50VHlwZUhlYWRlcigpO1xuICAgICAgLy8gU29tZXRpbWVzIENvbnRlbnQtVHlwZSBkZXRlY3Rpb24gZmFpbHMuXG4gICAgICBpZiAoZGV0ZWN0ZWRUeXBlICE9PSBudWxsKSB7XG4gICAgICAgIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gZGV0ZWN0ZWRUeXBlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBib2R5OiByZXEuc2VyaWFsaXplQm9keSgpLFxuICAgICAgbWV0aG9kOiByZXEubWV0aG9kLFxuICAgICAgaGVhZGVycyxcbiAgICAgIGNyZWRlbnRpYWxzLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNvbmNhdENodW5rcyhjaHVua3M6IFVpbnQ4QXJyYXlbXSwgdG90YWxMZW5ndGg6IG51bWJlcik6IFVpbnQ4QXJyYXkge1xuICAgIGNvbnN0IGNodW5rc0FsbCA9IG5ldyBVaW50OEFycmF5KHRvdGFsTGVuZ3RoKTtcbiAgICBsZXQgcG9zaXRpb24gPSAwO1xuICAgIGZvciAoY29uc3QgY2h1bmsgb2YgY2h1bmtzKSB7XG4gICAgICBjaHVua3NBbGwuc2V0KGNodW5rLCBwb3NpdGlvbik7XG4gICAgICBwb3NpdGlvbiArPSBjaHVuay5sZW5ndGg7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNodW5rc0FsbDtcbiAgfVxufVxuXG4vKipcbiAqIEFic3RyYWN0IGNsYXNzIHRvIHByb3ZpZGUgYSBtb2NrZWQgaW1wbGVtZW50YXRpb24gb2YgYGZldGNoKClgXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGZXRjaEZhY3Rvcnkge1xuICBhYnN0cmFjdCBmZXRjaDogdHlwZW9mIGZldGNoO1xufVxuXG5mdW5jdGlvbiBub29wKCk6IHZvaWQge31cblxuLyoqXG4gKiBab25lLmpzIHRyZWF0cyBhIHJlamVjdGVkIHByb21pc2UgdGhhdCBoYXMgbm90IHlldCBiZWVuIGF3YWl0ZWRcbiAqIGFzIGFuIHVuaGFuZGxlZCBlcnJvci4gVGhpcyBmdW5jdGlvbiBhZGRzIGEgbm9vcCBgLnRoZW5gIHRvIG1ha2VcbiAqIHN1cmUgdGhhdCBab25lLmpzIGRvZXNuJ3QgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIFByb21pc2UgaXMgcmVqZWN0ZWRcbiAqIHN5bmNocm9ub3VzbHkuXG4gKi9cbmZ1bmN0aW9uIHNpbGVuY2VTdXBlcmZsdW91c1VuaGFuZGxlZFByb21pc2VSZWplY3Rpb24ocHJvbWlzZTogUHJvbWlzZTx1bmtub3duPikge1xuICBwcm9taXNlLnRoZW4obm9vcCwgbm9vcCk7XG59XG4iXX0=
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  /**
9
9
  * Represents the header configuration options for an HTTP request.
@@ -244,4 +244,4 @@ function assertValidHeaders(headers) {
244
244
  }
245
245
  }
246
246
  }
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9odHRwL3NyYy9oZWFkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQVFIOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBdUJ0QixpRUFBaUU7SUFFakUsWUFDRSxPQUFvRjtRQW5CdEY7OztXQUdHO1FBQ0ssb0JBQWUsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQU96RDs7V0FFRztRQUNLLGVBQVUsR0FBb0IsSUFBSSxDQUFDO1FBT3pDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUM7UUFDN0MsQ0FBQzthQUFNLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ25DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ2hDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO3dCQUNsQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7d0JBQy9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUMzQyxJQUFJLENB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TyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDdEQsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLENBQzNELENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFFRDs7OztHQUlHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FDekIsT0FBMEM7SUFFMUMsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkYsTUFBTSxJQUFJLEtBQUssQ0FDYiw2QkFBNkIsR0FBRyxzQkFBc0I7Z0JBQ3BELCtEQUErRCxLQUFLLEtBQUssQ0FDNUUsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbnRlcmZhY2UgVXBkYXRlIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdO1xuICBvcDogJ2EnIHwgJ3MnIHwgJ2QnO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGhlYWRlciBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGFuIEhUVFAgcmVxdWVzdC5cbiAqIEluc3RhbmNlcyBhcmUgaW1tdXRhYmxlLiBNb2RpZnlpbmcgbWV0aG9kcyByZXR1cm4gYSBjbG9uZWRcbiAqIGluc3RhbmNlIHdpdGggdGhlIGNoYW5nZS4gVGhlIG9yaWdpbmFsIG9iamVjdCBpcyBuZXZlciBjaGFuZ2VkLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNsYXNzIEh0dHBIZWFkZXJzIHtcbiAgLyoqXG4gICAqIEludGVybmFsIG1hcCBvZiBsb3dlcmNhc2UgaGVhZGVyIG5hbWVzIHRvIHZhbHVlcy5cbiAgICovXG4gIC8vIFRPRE8oaXNzdWUvMjQ1NzEpOiByZW1vdmUgJyEnLlxuICBwcml2YXRlIGhlYWRlcnMhOiBNYXA8c3RyaW5nLCBzdHJpbmdbXT47XG5cbiAgLyoqXG4gICAqIEludGVybmFsIG1hcCBvZiBsb3dlcmNhc2VkIGhlYWRlciBuYW1lcyB0byB0aGUgbm9ybWFsaXplZFxuICAgKiBmb3JtIG9mIHRoZSBuYW1lICh0aGUgZm9ybSBzZWVuIGZpcnN0KS5cbiAgICovXG4gIHByaXZhdGUgbm9ybWFsaXplZE5hbWVzOiBNYXA8c3RyaW5nLCBzdHJpbmc+ID0gbmV3IE1hcCgpO1xuXG4gIC8qKlxuICAgKiBDb21wbGV0ZSB0aGUgbGF6eSBpbml0aWFsaXphdGlvbiBvZiB0aGlzIG9iamVjdCAobmVlZGVkIGJlZm9yZSByZWFkaW5nKS5cbiAgICovXG4gIHByaXZhdGUgbGF6eUluaXQhOiBIdHRwSGVhZGVycyB8IEZ1bmN0aW9uIHwgbnVsbDtcblxuICAvKipcbiAgICogUXVldWVkIHVwZGF0ZXMgdG8gYmUgbWF0ZXJpYWxpemVkIHRoZSBuZXh0IGluaXRpYWxpemF0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSBsYXp5VXBkYXRlOiBVcGRhdGVbXSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiAgQ29uc3RydWN0cyBhIG5ldyBIVFRQIGhlYWRlciBvYmplY3Qgd2l0aCB0aGUgZ2l2ZW4gdmFsdWVzLiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgaGVhZGVycz86IHN0cmluZyB8IHtbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgKHN0cmluZyB8IG51bWJlcilbXX0gfCBIZWFkZXJzLFxuICApIHtcbiAgICBpZiAoIWhlYWRlcnMpIHtcbiAgICAgIHRoaXMuaGVhZGVycyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBoZWFkZXJzID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5sYXp5SW5pdCA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5oZWFkZXJzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZ1tdPigpO1xuICAgICAgICBoZWFkZXJzLnNwbGl0KCdcXG4nKS5mb3JFYWNoKChsaW5lKSA9PiB7XG4gICAgICAgICAgY29uc3QgaW5kZXggPSBsaW5lLmluZGV4T2YoJzonKTtcbiAgICAgICAgICBpZiAoaW5kZXggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gbGluZS5zbGljZSgwLCBpbmRleCk7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBuYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGxpbmUuc2xpY2UoaW5kZXggKyAxKS50cmltKCk7XG4gICAgICAgICAgICB0aGlzLm1heWJlU2V0Tm9ybWFsaXplZE5hbWUobmFtZSwga2V5KTtcbiAgICAgICAgICAgIGlmICh0aGlzLmhlYWRlcnMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgdGhpcy5oZWFkZXJzLmdldChrZXkpIS5wdXNoKHZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuaGVhZGVycy5zZXQoa2V5LCBbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBIZWFkZXJzICE9PSAndW5kZWZpbmVkJyAmJiBoZWFkZXJzIGluc3RhbmNlb2YgSGVhZGVycykge1xuICAgICAgdGhpcy5oZWFkZXJzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZ1tdPigpO1xuICAgICAgaGVhZGVycy5mb3JFYWNoKCh2YWx1ZXM6IHN0cmluZywgbmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0SGVhZGVyRW50cmllcyhuYW1lLCB2YWx1ZXMpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGF6eUluaXQgPSAoKSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICAgICAgICBhc3NlcnRWYWxpZEhlYWRlcnMoaGVhZGVycyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5oZWFkZXJzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZ1tdPigpO1xuICAgICAgICBPYmplY3QuZW50cmllcyhoZWFkZXJzKS5mb3JFYWNoKChbbmFtZSwgdmFsdWVzXSkgPT4ge1xuICAgICAgICAgIHRoaXMuc2V0SGVhZGVyRW50cmllcyhuYW1lLCB2YWx1ZXMpO1xuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBmb3IgZXhpc3RlbmNlIG9mIGEgZ2l2ZW4gaGVhZGVyLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSBUaGUgaGVhZGVyIG5hbWUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZS5cbiAgICpcbiAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgaGVhZGVyIGV4aXN0cywgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRoaXMuaW5pdCgpO1xuXG4gICAgcmV0dXJuIHRoaXMuaGVhZGVycy5oYXMobmFtZS50b0xvd2VyQ2FzZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGZpcnN0IHZhbHVlIG9mIGEgZ2l2ZW4gaGVhZGVyLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSBUaGUgaGVhZGVyIG5hbWUuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBzdHJpbmcgaWYgdGhlIGhlYWRlciBleGlzdHMsIG51bGwgb3RoZXJ3aXNlXG4gICAqL1xuICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgdGhpcy5pbml0KCk7XG5cbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmhlYWRlcnMuZ2V0KG5hbWUudG9Mb3dlckNhc2UoKSk7XG4gICAgcmV0dXJuIHZhbHVlcyAmJiB2YWx1ZXMubGVuZ3RoID4gMCA/IHZhbHVlc1swXSA6IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBuYW1lcyBvZiB0aGUgaGVhZGVycy5cbiAgICpcbiAgICogQHJldHVybnMgQSBsaXN0IG9mIGhlYWRlciBuYW1lcy5cbiAgICovXG4gIGtleXMoKTogc3RyaW5nW10ge1xuICAgIHRoaXMuaW5pdCgpO1xuXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5ub3JtYWxpemVkTmFtZXMudmFsdWVzKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIGxpc3Qgb2YgdmFsdWVzIGZvciBhIGdpdmVuIGhlYWRlci5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lIGZyb20gd2hpY2ggdG8gcmV0cmlldmUgdmFsdWVzLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIHN0cmluZyBvZiB2YWx1ZXMgaWYgdGhlIGhlYWRlciBleGlzdHMsIG51bGwgb3RoZXJ3aXNlLlxuICAgKi9cbiAgZ2V0QWxsKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgdGhpcy5pbml0KCk7XG5cbiAgICByZXR1cm4gdGhpcy5oZWFkZXJzLmdldChuYW1lLnRvTG93ZXJDYXNlKCkpIHx8IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQXBwZW5kcyBhIG5ldyB2YWx1ZSB0byB0aGUgZXhpc3Rpbmcgc2V0IG9mIHZhbHVlcyBmb3IgYSBoZWFkZXJcbiAgICogYW5kIHJldHVybnMgdGhlbSBpbiBhIGNsb25lIG9mIHRoZSBvcmlnaW5hbCBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lIGZvciB3aGljaCB0byBhcHBlbmQgdGhlIHZhbHVlcy5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byBhcHBlbmQuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgY2xvbmUgb2YgdGhlIEhUVFAgaGVhZGVycyBvYmplY3Qgd2l0aCB0aGUgdmFsdWUgYXBwZW5kZWQgdG8gdGhlIGdpdmVuIGhlYWRlci5cbiAgICovXG5cbiAgYXBwZW5kKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKTogSHR0cEhlYWRlcnMge1xuICAgIHJldHVybiB0aGlzLmNsb25lKHtuYW1lLCB2YWx1ZSwgb3A6ICdhJ30pO1xuICB9XG4gIC8qKlxuICAgKiBTZXRzIG9yIG1vZGlmaWVzIGEgdmFsdWUgZm9yIGEgZ2l2ZW4gaGVhZGVyIGluIGEgY2xvbmUgb2YgdGhlIG9yaWdpbmFsIGluc3RhbmNlLlxuICAgKiBJZiB0aGUgaGVhZGVyIGFscmVhZHkgZXhpc3RzLCBpdHMgdmFsdWUgaXMgcmVwbGFjZWQgd2l0aCB0aGUgZ2l2ZW4gdmFsdWVcbiAgICogaW4gdGhlIHJldHVybmVkIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lLlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIG9yIHZhbHVlcyB0byBzZXQgb3Igb3ZlcnJpZGUgZm9yIHRoZSBnaXZlbiBoZWFkZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgY2xvbmUgb2YgdGhlIEhUVFAgaGVhZGVycyBvYmplY3Qgd2l0aCB0aGUgbmV3bHkgc2V0IGhlYWRlciB2YWx1ZS5cbiAgICovXG4gIHNldChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IEh0dHBIZWFkZXJzIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSh7bmFtZSwgdmFsdWUsIG9wOiAncyd9KTtcbiAgfVxuICAvKipcbiAgICogRGVsZXRlcyB2YWx1ZXMgZm9yIGEgZ2l2ZW4gaGVhZGVyIGluIGEgY2xvbmUgb2YgdGhlIG9yaWdpbmFsIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSBUaGUgaGVhZGVyIG5hbWUuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgb3IgdmFsdWVzIHRvIGRlbGV0ZSBmb3IgdGhlIGdpdmVuIGhlYWRlci5cbiAgICpcbiAgICogQHJldHVybnMgQSBjbG9uZSBvZiB0aGUgSFRUUCBoZWFkZXJzIG9iamVjdCB3aXRoIHRoZSBnaXZlbiB2YWx1ZSBkZWxldGVkLlxuICAgKi9cbiAgZGVsZXRlKG5hbWU6IHN0cmluZywgdmFsdWU/OiBzdHJpbmcgfCBzdHJpbmdbXSk6IEh0dHBIZWFkZXJzIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSh7bmFtZSwgdmFsdWUsIG9wOiAnZCd9KTtcbiAgfVxuXG4gIHByaXZhdGUgbWF5YmVTZXROb3JtYWxpemVkTmFtZShuYW1lOiBzdHJpbmcsIGxjTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm5vcm1hbGl6ZWROYW1lcy5oYXMobGNOYW1lKSkge1xuICAgICAgdGhpcy5ub3JtYWxpemVkTmFtZXMuc2V0KGxjTmFtZSwgbmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0KCk6IHZvaWQge1xuICAgIGlmICghIXRoaXMubGF6eUluaXQpIHtcbiAgICAgIGlmICh0aGlzLmxhenlJbml0IGluc3RhbmNlb2YgSHR0cEhlYWRlcnMpIHtcbiAgICAgICAgdGhpcy5jb3B5RnJvbSh0aGlzLmxhenlJbml0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubGF6eUluaXQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMubGF6eUluaXQgPSBudWxsO1xuICAgICAgaWYgKCEhdGhpcy5sYXp5VXBkYXRlKSB7XG4gICAgICAgIHRoaXMubGF6eVVwZGF0ZS5mb3JFYWNoKCh1cGRhdGUpID0+IHRoaXMuYXBwbHlVcGRhdGUodXBkYXRlKSk7XG4gICAgICAgIHRoaXMubGF6eVVwZGF0ZSA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjb3B5RnJvbShvdGhlcjogSHR0cEhlYWRlcnMpIHtcbiAgICBvdGhlci5pbml0KCk7XG4gICAgQXJyYXkuZnJvbShvdGhlci5oZWFkZXJzLmtleXMoKSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICB0aGlzLmhlYWRlcnMuc2V0KGtleSwgb3RoZXIuaGVhZGVycy5nZXQoa2V5KSEpO1xuICAgICAgdGhpcy5ub3JtYWxpemVkTmFtZXMuc2V0KGtleSwgb3RoZXIubm9ybWFsaXplZE5hbWVzLmdldChrZXkpISk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNsb25lKHVwZGF0ZTogVXBkYXRlKTogSHR0cEhlYWRlcnMge1xuICAgIGNvbnN0IGNsb25lID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgY2xvbmUubGF6eUluaXQgPSAhIXRoaXMubGF6eUluaXQgJiYgdGhpcy5sYXp5SW5pdCBpbnN0YW5jZW9mIEh0dHBIZWFkZXJzID8gdGhpcy5sYXp5SW5pdCA6IHRoaXM7XG4gICAgY2xvbmUubGF6eVVwZGF0ZSA9ICh0aGlzLmxhenlVcGRhdGUgfHwgW10pLmNvbmNhdChbdXBkYXRlXSk7XG4gICAgcmV0dXJuIGNsb25lO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseVVwZGF0ZSh1cGRhdGU6IFVwZGF0ZSk6IHZvaWQge1xuICAgIGNvbnN0IGtleSA9IHVwZGF0ZS5uYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgc3dpdGNoICh1cGRhdGUub3ApIHtcbiAgICAgIGNhc2UgJ2EnOlxuICAgICAgY2FzZSAncyc6XG4gICAgICAgIGxldCB2YWx1ZSA9IHVwZGF0ZS52YWx1ZSE7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgdmFsdWUgPSBbdmFsdWVdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5tYXliZVNldE5vcm1hbGl6ZWROYW1lKHVwZGF0ZS5uYW1lLCBrZXkpO1xuICAgICAgICBjb25zdCBiYXNlID0gKHVwZGF0ZS5vcCA9PT0gJ2EnID8gdGhpcy5oZWFkZXJzLmdldChrZXkpIDogdW5kZWZpbmVkKSB8fCBbXTtcbiAgICAgICAgYmFzZS5wdXNoKC4uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5oZWFkZXJzLnNldChrZXksIGJhc2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2QnOlxuICAgICAgICBjb25zdCB0b0RlbGV0ZSA9IHVwZGF0ZS52YWx1ZSBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgICAgIGlmICghdG9EZWxldGUpIHtcbiAgICAgICAgICB0aGlzLmhlYWRlcnMuZGVsZXRlKGtleSk7XG4gICAgICAgICAgdGhpcy5ub3JtYWxpemVkTmFtZXMuZGVsZXRlKGtleSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbGV0IGV4aXN0aW5nID0gdGhpcy5oZWFkZXJzLmdldChrZXkpO1xuICAgICAgICAgIGlmICghZXhpc3RpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgZXhpc3RpbmcgPSBleGlzdGluZy5maWx0ZXIoKHZhbHVlKSA9PiB0b0RlbGV0ZS5pbmRleE9mKHZhbHVlKSA9PT0gLTEpO1xuICAgICAgICAgIGlmIChleGlzdGluZy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuaGVhZGVycy5kZWxldGUoa2V5KTtcbiAgICAgICAgICAgIHRoaXMubm9ybWFsaXplZE5hbWVzLmRlbGV0ZShrZXkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmhlYWRlcnMuc2V0KGtleSwgZXhpc3RpbmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEhlYWRlckVudHJpZXMobmFtZTogc3RyaW5nLCB2YWx1ZXM6IGFueSkge1xuICAgIGNvbnN0IGhlYWRlclZhbHVlcyA9IChBcnJheS5pc0FycmF5KHZhbHVlcykgPyB2YWx1ZXMgOiBbdmFsdWVzXSkubWFwKCh2YWx1ZSkgPT5cbiAgICAgIHZhbHVlLnRvU3RyaW5nKCksXG4gICAgKTtcbiAgICBjb25zdCBrZXkgPSBuYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgdGhpcy5oZWFkZXJzLnNldChrZXksIGhlYWRlclZhbHVlcyk7XG4gICAgdGhpcy5tYXliZVNldE5vcm1hbGl6ZWROYW1lKG5hbWUsIGtleSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBmb3JFYWNoKGZuOiAobmFtZTogc3RyaW5nLCB2YWx1ZXM6IHN0cmluZ1tdKSA9PiB2b2lkKSB7XG4gICAgdGhpcy5pbml0KCk7XG4gICAgQXJyYXkuZnJvbSh0aGlzLm5vcm1hbGl6ZWROYW1lcy5rZXlzKCkpLmZvckVhY2goKGtleSkgPT5cbiAgICAgIGZuKHRoaXMubm9ybWFsaXplZE5hbWVzLmdldChrZXkpISwgdGhpcy5oZWFkZXJzLmdldChrZXkpISksXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFZlcmlmaWVzIHRoYXQgdGhlIGhlYWRlcnMgb2JqZWN0IGhhcyB0aGUgcmlnaHQgc2hhcGU6IHRoZSB2YWx1ZXNcbiAqIG11c3QgYmUgZWl0aGVyIHN0cmluZ3MsIG51bWJlcnMgb3IgYXJyYXlzLiBUaHJvd3MgYW4gZXJyb3IgaWYgYW4gaW52YWxpZFxuICogaGVhZGVyIHZhbHVlIGlzIHByZXNlbnQuXG4gKi9cbmZ1bmN0aW9uIGFzc2VydFZhbGlkSGVhZGVycyhcbiAgaGVhZGVyczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBIZWFkZXJzLFxuKTogYXNzZXJ0cyBoZWFkZXJzIGlzIFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdIHwgbnVtYmVyIHwgbnVtYmVyW10+IHtcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoaGVhZGVycykpIHtcbiAgICBpZiAoISh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVW5leHBlY3RlZCB2YWx1ZSBvZiB0aGUgXFxgJHtrZXl9XFxgIGhlYWRlciBwcm92aWRlZC4gYCArXG4gICAgICAgICAgYEV4cGVjdGluZyBlaXRoZXIgYSBzdHJpbmcsIGEgbnVtYmVyIG9yIGFuIGFycmF5LCBidXQgZ290OiBcXGAke3ZhbHVlfVxcYC5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9odHRwL3NyYy9oZWFkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQVFIOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBdUJ0QixpRUFBaUU7SUFFakUsWUFDRSxPQUFvRjtRQW5CdEY7OztXQUdHO1FBQ0ssb0JBQWUsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQU96RDs7V0FFRztRQUNLLGVBQVUsR0FBb0IsSUFBSSxDQUFDO1FBT3pDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUM7UUFDN0MsQ0FBQzthQUFNLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ25DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ2hDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO3dCQUNsQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7d0JBQy9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUMzQyxJQUFJLENB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TyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDdEQsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLENBQzNELENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFFRDs7OztHQUlHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FDekIsT0FBMEM7SUFFMUMsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkYsTUFBTSxJQUFJLEtBQUssQ0FDYiw2QkFBNkIsR0FBRyxzQkFBc0I7Z0JBQ3BELCtEQUErRCxLQUFLLEtBQUssQ0FDNUUsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuaW50ZXJmYWNlIFVwZGF0ZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgb3A6ICdhJyB8ICdzJyB8ICdkJztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBoZWFkZXIgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBhbiBIVFRQIHJlcXVlc3QuXG4gKiBJbnN0YW5jZXMgYXJlIGltbXV0YWJsZS4gTW9kaWZ5aW5nIG1ldGhvZHMgcmV0dXJuIGEgY2xvbmVkXG4gKiBpbnN0YW5jZSB3aXRoIHRoZSBjaGFuZ2UuIFRoZSBvcmlnaW5hbCBvYmplY3QgaXMgbmV2ZXIgY2hhbmdlZC5cbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBjbGFzcyBIdHRwSGVhZGVycyB7XG4gIC8qKlxuICAgKiBJbnRlcm5hbCBtYXAgb2YgbG93ZXJjYXNlIGhlYWRlciBuYW1lcyB0byB2YWx1ZXMuXG4gICAqL1xuICAvLyBUT0RPKGlzc3VlLzI0NTcxKTogcmVtb3ZlICchJy5cbiAgcHJpdmF0ZSBoZWFkZXJzITogTWFwPHN0cmluZywgc3RyaW5nW10+O1xuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCBtYXAgb2YgbG93ZXJjYXNlZCBoZWFkZXIgbmFtZXMgdG8gdGhlIG5vcm1hbGl6ZWRcbiAgICogZm9ybSBvZiB0aGUgbmFtZSAodGhlIGZvcm0gc2VlbiBmaXJzdCkuXG4gICAqL1xuICBwcml2YXRlIG5vcm1hbGl6ZWROYW1lczogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXAoKTtcblxuICAvKipcbiAgICogQ29tcGxldGUgdGhlIGxhenkgaW5pdGlhbGl6YXRpb24gb2YgdGhpcyBvYmplY3QgKG5lZWRlZCBiZWZvcmUgcmVhZGluZykuXG4gICAqL1xuICBwcml2YXRlIGxhenlJbml0ITogSHR0cEhlYWRlcnMgfCBGdW5jdGlvbiB8IG51bGw7XG5cbiAgLyoqXG4gICAqIFF1ZXVlZCB1cGRhdGVzIHRvIGJlIG1hdGVyaWFsaXplZCB0aGUgbmV4dCBpbml0aWFsaXphdGlvbi5cbiAgICovXG4gIHByaXZhdGUgbGF6eVVwZGF0ZTogVXBkYXRlW10gfCBudWxsID0gbnVsbDtcblxuICAvKiogIENvbnN0cnVjdHMgYSBuZXcgSFRUUCBoZWFkZXIgb2JqZWN0IHdpdGggdGhlIGdpdmVuIHZhbHVlcy4qL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGhlYWRlcnM/OiBzdHJpbmcgfCB7W25hbWU6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IChzdHJpbmcgfCBudW1iZXIpW119IHwgSGVhZGVycyxcbiAgKSB7XG4gICAgaWYgKCFoZWFkZXJzKSB7XG4gICAgICB0aGlzLmhlYWRlcnMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nW10+KCk7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgaGVhZGVycyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMubGF6eUluaXQgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuaGVhZGVycyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcbiAgICAgICAgaGVhZGVycy5zcGxpdCgnXFxuJykuZm9yRWFjaCgobGluZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gbGluZS5pbmRleE9mKCc6Jyk7XG4gICAgICAgICAgaWYgKGluZGV4ID4gMCkge1xuICAgICAgICAgICAgY29uc3QgbmFtZSA9IGxpbmUuc2xpY2UoMCwgaW5kZXgpO1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gbmFtZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBsaW5lLnNsaWNlKGluZGV4ICsgMSkudHJpbSgpO1xuICAgICAgICAgICAgdGhpcy5tYXliZVNldE5vcm1hbGl6ZWROYW1lKG5hbWUsIGtleSk7XG4gICAgICAgICAgICBpZiAodGhpcy5oZWFkZXJzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgICAgIHRoaXMuaGVhZGVycy5nZXQoa2V5KSEucHVzaCh2YWx1ZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmhlYWRlcnMuc2V0KGtleSwgW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgSGVhZGVycyAhPT0gJ3VuZGVmaW5lZCcgJiYgaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnMpIHtcbiAgICAgIHRoaXMuaGVhZGVycyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcbiAgICAgIGhlYWRlcnMuZm9yRWFjaCgodmFsdWVzOiBzdHJpbmcsIG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICB0aGlzLnNldEhlYWRlckVudHJpZXMobmFtZSwgdmFsdWVzKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxhenlJbml0ID0gKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlKSB7XG4gICAgICAgICAgYXNzZXJ0VmFsaWRIZWFkZXJzKGhlYWRlcnMpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGVhZGVycyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcbiAgICAgICAgT2JqZWN0LmVudHJpZXMoaGVhZGVycykuZm9yRWFjaCgoW25hbWUsIHZhbHVlc10pID0+IHtcbiAgICAgICAgICB0aGlzLnNldEhlYWRlckVudHJpZXMobmFtZSwgdmFsdWVzKTtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgZm9yIGV4aXN0ZW5jZSBvZiBhIGdpdmVuIGhlYWRlci5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lIHRvIGNoZWNrIGZvciBleGlzdGVuY2UuXG4gICAqXG4gICAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGhlYWRlciBleGlzdHMsIGZhbHNlIG90aGVyd2lzZS5cbiAgICovXG4gIGhhcyhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aGlzLmluaXQoKTtcblxuICAgIHJldHVybiB0aGlzLmhlYWRlcnMuaGFzKG5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBmaXJzdCB2YWx1ZSBvZiBhIGdpdmVuIGhlYWRlci5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgc3RyaW5nIGlmIHRoZSBoZWFkZXIgZXhpc3RzLCBudWxsIG90aGVyd2lzZVxuICAgKi9cbiAgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHRoaXMuaW5pdCgpO1xuXG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy5oZWFkZXJzLmdldChuYW1lLnRvTG93ZXJDYXNlKCkpO1xuICAgIHJldHVybiB2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aCA+IDAgPyB2YWx1ZXNbMF0gOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyB0aGUgbmFtZXMgb2YgdGhlIGhlYWRlcnMuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgbGlzdCBvZiBoZWFkZXIgbmFtZXMuXG4gICAqL1xuICBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICB0aGlzLmluaXQoKTtcblxuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMubm9ybWFsaXplZE5hbWVzLnZhbHVlcygpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHZhbHVlcyBmb3IgYSBnaXZlbiBoZWFkZXIuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIFRoZSBoZWFkZXIgbmFtZSBmcm9tIHdoaWNoIHRvIHJldHJpZXZlIHZhbHVlcy5cbiAgICpcbiAgICogQHJldHVybnMgQSBzdHJpbmcgb2YgdmFsdWVzIGlmIHRoZSBoZWFkZXIgZXhpc3RzLCBudWxsIG90aGVyd2lzZS5cbiAgICovXG4gIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB8IG51bGwge1xuICAgIHRoaXMuaW5pdCgpO1xuXG4gICAgcmV0dXJuIHRoaXMuaGVhZGVycy5nZXQobmFtZS50b0xvd2VyQ2FzZSgpKSB8fCBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEFwcGVuZHMgYSBuZXcgdmFsdWUgdG8gdGhlIGV4aXN0aW5nIHNldCBvZiB2YWx1ZXMgZm9yIGEgaGVhZGVyXG4gICAqIGFuZCByZXR1cm5zIHRoZW0gaW4gYSBjbG9uZSBvZiB0aGUgb3JpZ2luYWwgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIFRoZSBoZWFkZXIgbmFtZSBmb3Igd2hpY2ggdG8gYXBwZW5kIHRoZSB2YWx1ZXMuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gYXBwZW5kLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIGNsb25lIG9mIHRoZSBIVFRQIGhlYWRlcnMgb2JqZWN0IHdpdGggdGhlIHZhbHVlIGFwcGVuZGVkIHRvIHRoZSBnaXZlbiBoZWFkZXIuXG4gICAqL1xuXG4gIGFwcGVuZChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IEh0dHBIZWFkZXJzIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSh7bmFtZSwgdmFsdWUsIG9wOiAnYSd9KTtcbiAgfVxuICAvKipcbiAgICogU2V0cyBvciBtb2RpZmllcyBhIHZhbHVlIGZvciBhIGdpdmVuIGhlYWRlciBpbiBhIGNsb25lIG9mIHRoZSBvcmlnaW5hbCBpbnN0YW5jZS5cbiAgICogSWYgdGhlIGhlYWRlciBhbHJlYWR5IGV4aXN0cywgaXRzIHZhbHVlIGlzIHJlcGxhY2VkIHdpdGggdGhlIGdpdmVuIHZhbHVlXG4gICAqIGluIHRoZSByZXR1cm5lZCBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIFRoZSBoZWFkZXIgbmFtZS5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSBvciB2YWx1ZXMgdG8gc2V0IG9yIG92ZXJyaWRlIGZvciB0aGUgZ2l2ZW4gaGVhZGVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIGNsb25lIG9mIHRoZSBIVFRQIGhlYWRlcnMgb2JqZWN0IHdpdGggdGhlIG5ld2x5IHNldCBoZWFkZXIgdmFsdWUuXG4gICAqL1xuICBzZXQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pOiBIdHRwSGVhZGVycyB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoe25hbWUsIHZhbHVlLCBvcDogJ3MnfSk7XG4gIH1cbiAgLyoqXG4gICAqIERlbGV0ZXMgdmFsdWVzIGZvciBhIGdpdmVuIGhlYWRlciBpbiBhIGNsb25lIG9mIHRoZSBvcmlnaW5hbCBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgVGhlIGhlYWRlciBuYW1lLlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIG9yIHZhbHVlcyB0byBkZWxldGUgZm9yIHRoZSBnaXZlbiBoZWFkZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgY2xvbmUgb2YgdGhlIEhUVFAgaGVhZGVycyBvYmplY3Qgd2l0aCB0aGUgZ2l2ZW4gdmFsdWUgZGVsZXRlZC5cbiAgICovXG4gIGRlbGV0ZShuYW1lOiBzdHJpbmcsIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10pOiBIdHRwSGVhZGVycyB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoe25hbWUsIHZhbHVlLCBvcDogJ2QnfSk7XG4gIH1cblxuICBwcml2YXRlIG1heWJlU2V0Tm9ybWFsaXplZE5hbWUobmFtZTogc3RyaW5nLCBsY05hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdGhpcy5ub3JtYWxpemVkTmFtZXMuaGFzKGxjTmFtZSkpIHtcbiAgICAgIHRoaXMubm9ybWFsaXplZE5hbWVzLnNldChsY05hbWUsIG5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmxhenlJbml0KSB7XG4gICAgICBpZiAodGhpcy5sYXp5SW5pdCBpbnN0YW5jZW9mIEh0dHBIZWFkZXJzKSB7XG4gICAgICAgIHRoaXMuY29weUZyb20odGhpcy5sYXp5SW5pdCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxhenlJbml0KCk7XG4gICAgICB9XG4gICAgICB0aGlzLmxhenlJbml0ID0gbnVsbDtcbiAgICAgIGlmICghIXRoaXMubGF6eVVwZGF0ZSkge1xuICAgICAgICB0aGlzLmxhenlVcGRhdGUuZm9yRWFjaCgodXBkYXRlKSA9PiB0aGlzLmFwcGx5VXBkYXRlKHVwZGF0ZSkpO1xuICAgICAgICB0aGlzLmxhenlVcGRhdGUgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY29weUZyb20ob3RoZXI6IEh0dHBIZWFkZXJzKSB7XG4gICAgb3RoZXIuaW5pdCgpO1xuICAgIEFycmF5LmZyb20ob3RoZXIuaGVhZGVycy5rZXlzKCkpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJzLnNldChrZXksIG90aGVyLmhlYWRlcnMuZ2V0KGtleSkhKTtcbiAgICAgIHRoaXMubm9ybWFsaXplZE5hbWVzLnNldChrZXksIG90aGVyLm5vcm1hbGl6ZWROYW1lcy5nZXQoa2V5KSEpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9uZSh1cGRhdGU6IFVwZGF0ZSk6IEh0dHBIZWFkZXJzIHtcbiAgICBjb25zdCBjbG9uZSA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgIGNsb25lLmxhenlJbml0ID0gISF0aGlzLmxhenlJbml0ICYmIHRoaXMubGF6eUluaXQgaW5zdGFuY2VvZiBIdHRwSGVhZGVycyA/IHRoaXMubGF6eUluaXQgOiB0aGlzO1xuICAgIGNsb25lLmxhenlVcGRhdGUgPSAodGhpcy5sYXp5VXBkYXRlIHx8IFtdKS5jb25jYXQoW3VwZGF0ZV0pO1xuICAgIHJldHVybiBjbG9uZTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlVcGRhdGUodXBkYXRlOiBVcGRhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBrZXkgPSB1cGRhdGUubmFtZS50b0xvd2VyQ2FzZSgpO1xuICAgIHN3aXRjaCAodXBkYXRlLm9wKSB7XG4gICAgICBjYXNlICdhJzpcbiAgICAgIGNhc2UgJ3MnOlxuICAgICAgICBsZXQgdmFsdWUgPSB1cGRhdGUudmFsdWUhO1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubWF5YmVTZXROb3JtYWxpemVkTmFtZSh1cGRhdGUubmFtZSwga2V5KTtcbiAgICAgICAgY29uc3QgYmFzZSA9ICh1cGRhdGUub3AgPT09ICdhJyA/IHRoaXMuaGVhZGVycy5nZXQoa2V5KSA6IHVuZGVmaW5lZCkgfHwgW107XG4gICAgICAgIGJhc2UucHVzaCguLi52YWx1ZSk7XG4gICAgICAgIHRoaXMuaGVhZGVycy5zZXQoa2V5LCBiYXNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkJzpcbiAgICAgICAgY29uc3QgdG9EZWxldGUgPSB1cGRhdGUudmFsdWUgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgICBpZiAoIXRvRGVsZXRlKSB7XG4gICAgICAgICAgdGhpcy5oZWFkZXJzLmRlbGV0ZShrZXkpO1xuICAgICAgICAgIHRoaXMubm9ybWFsaXplZE5hbWVzLmRlbGV0ZShrZXkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBleGlzdGluZyA9IHRoaXMuaGVhZGVycy5nZXQoa2V5KTtcbiAgICAgICAgICBpZiAoIWV4aXN0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGV4aXN0aW5nID0gZXhpc3RpbmcuZmlsdGVyKCh2YWx1ZSkgPT4gdG9EZWxldGUuaW5kZXhPZih2YWx1ZSkgPT09IC0xKTtcbiAgICAgICAgICBpZiAoZXhpc3RpbmcubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmhlYWRlcnMuZGVsZXRlKGtleSk7XG4gICAgICAgICAgICB0aGlzLm5vcm1hbGl6ZWROYW1lcy5kZWxldGUoa2V5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJzLnNldChrZXksIGV4aXN0aW5nKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRIZWFkZXJFbnRyaWVzKG5hbWU6IHN0cmluZywgdmFsdWVzOiBhbnkpIHtcbiAgICBjb25zdCBoZWFkZXJWYWx1ZXMgPSAoQXJyYXkuaXNBcnJheSh2YWx1ZXMpID8gdmFsdWVzIDogW3ZhbHVlc10pLm1hcCgodmFsdWUpID0+XG4gICAgICB2YWx1ZS50b1N0cmluZygpLFxuICAgICk7XG4gICAgY29uc3Qga2V5ID0gbmFtZS50b0xvd2VyQ2FzZSgpO1xuICAgIHRoaXMuaGVhZGVycy5zZXQoa2V5LCBoZWFkZXJWYWx1ZXMpO1xuICAgIHRoaXMubWF5YmVTZXROb3JtYWxpemVkTmFtZShuYW1lLCBrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZm9yRWFjaChmbjogKG5hbWU6IHN0cmluZywgdmFsdWVzOiBzdHJpbmdbXSkgPT4gdm9pZCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICAgIEFycmF5LmZyb20odGhpcy5ub3JtYWxpemVkTmFtZXMua2V5cygpKS5mb3JFYWNoKChrZXkpID0+XG4gICAgICBmbih0aGlzLm5vcm1hbGl6ZWROYW1lcy5nZXQoa2V5KSEsIHRoaXMuaGVhZGVycy5nZXQoa2V5KSEpLFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBWZXJpZmllcyB0aGF0IHRoZSBoZWFkZXJzIG9iamVjdCBoYXMgdGhlIHJpZ2h0IHNoYXBlOiB0aGUgdmFsdWVzXG4gKiBtdXN0IGJlIGVpdGhlciBzdHJpbmdzLCBudW1iZXJzIG9yIGFycmF5cy4gVGhyb3dzIGFuIGVycm9yIGlmIGFuIGludmFsaWRcbiAqIGhlYWRlciB2YWx1ZSBpcyBwcmVzZW50LlxuICovXG5mdW5jdGlvbiBhc3NlcnRWYWxpZEhlYWRlcnMoXG4gIGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgSGVhZGVycyxcbik6IGFzc2VydHMgaGVhZGVycyBpcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bWJlciB8IG51bWJlcltdPiB7XG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpKSB7XG4gICAgaWYgKCEodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSAmJiAhQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYFVuZXhwZWN0ZWQgdmFsdWUgb2YgdGhlIFxcYCR7a2V5fVxcYCBoZWFkZXIgcHJvdmlkZWQuIGAgK1xuICAgICAgICAgIGBFeHBlY3RpbmcgZWl0aGVyIGEgc3RyaW5nLCBhIG51bWJlciBvciBhbiBhcnJheSwgYnV0IGdvdDogXFxgJHt2YWx1ZX1cXGAuYCxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  import { isPlatformServer } from '@angular/common';
9
9
  import { EnvironmentInjector, inject, Injectable, InjectionToken, PLATFORM_ID, runInInjectionContext, ɵConsole as Console, ɵformatRuntimeError as formatRuntimeError, ɵPendingTasks as PendingTasks, } from '@angular/core';
@@ -127,10 +127,10 @@ export class HttpInterceptorHandler extends HttpHandler {
127
127
  return this.chain(initialRequest, (downstreamRequest) => this.backend.handle(downstreamRequest));
128
128
  }
129
129
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: HttpInterceptorHandler, deps: [{ token: i1.HttpBackend }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
131
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: HttpInterceptorHandler }); }
130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HttpInterceptorHandler, deps: [{ token: i1.HttpBackend }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
131
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HttpInterceptorHandler }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: HttpInterceptorHandler, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HttpInterceptorHandler, decorators: [{
134
134
  type: Injectable
135
135
  }], ctorParameters: () => [{ type: i1.HttpBackend }, { type: i0.EnvironmentInjector }] });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixNQUFNLEVBQ04sVUFBVSxFQUNWLGNBQWMsRUFDZCxXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLFFBQVEsSUFBSSxPQUFPLEVBQ25CLG1CQUFtQixJQUFJLGtCQUFrQixFQUN6QyxhQUFhLElBQUksWUFBWSxHQUM5QixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFFbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLFNBQVMsQ0FBQzs7O0FBZ0lyQyxTQUFTLHFCQUFxQixDQUM1QixHQUFxQixFQUNyQixjQUE2QjtJQUU3QixPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM3QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyw2QkFBNkIsQ0FDcEMsV0FBc0MsRUFDdEMsV0FBNEI7SUFFNUIsT0FBTyxDQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUN4QyxXQUFXLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRTtRQUNwQyxNQUFNLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLGNBQWMsQ0FBQztLQUM5RSxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxvQkFBb0IsQ0FDM0IsV0FBMEMsRUFDMUMsYUFBZ0MsRUFDaEMsUUFBNkI7SUFF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QUM1QyxDQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUNqQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDckUscUJBQXNELENBQ3ZELENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3ZDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQ3RELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQ3ZDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUN2QyxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7eUhBakVVLHNCQUFzQjs2SEFBdEIsc0JBQXNCOztzR0FBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7aXNQbGF0Zm9ybVNlcnZlcn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIGluamVjdCxcbiAgSW5qZWN0YWJsZSxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIFBMQVRGT1JNX0lELFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIMm1Q29uc29sZSBhcyBDb25zb2xlLFxuICDJtWZvcm1hdFJ1bnRpbWVFcnJvciBhcyBmb3JtYXRSdW50aW1lRXJyb3IsXG4gIMm1UGVuZGluZ1Rhc2tzIGFzIFBlbmRpbmdUYXNrcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaW5hbGl6ZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge0h0dHBCYWNrZW5kLCBIdHRwSGFuZGxlcn0gZnJvbSAnLi9iYWNrZW5kJztcbmltcG9ydCB7UnVudGltZUVycm9yQ29kZX0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHtGZXRjaEJhY2tlbmR9IGZyb20gJy4vZmV0Y2gnO1xuaW1wb3J0IHtIdHRwUmVxdWVzdH0gZnJvbSAnLi9yZXF1ZXN0JztcbmltcG9ydCB7SHR0cEV2ZW50fSBmcm9tICcuL3Jlc3BvbnNlJztcblxuLyoqXG4gKiBJbnRlcmNlcHRzIGFuZCBoYW5kbGVzIGFuIGBIdHRwUmVxdWVzdGAgb3IgYEh0dHBSZXNwb25zZWAuXG4gKlxuICogTW9zdCBpbnRlcmNlcHRvcnMgdHJhbnNmb3JtIHRoZSBvdXRnb2luZyByZXF1ZXN0IGJlZm9yZSBwYXNzaW5nIGl0IHRvIHRoZVxuICogbmV4dCBpbnRlcmNlcHRvciBpbiB0aGUgY2hhaW4sIGJ5IGNhbGxpbmcgYG5leHQuaGFuZGxlKHRyYW5zZm9ybWVkUmVxKWAuXG4gKiBBbiBpbnRlcmNlcHRvciBtYXkgdHJhbnNmb3JtIHRoZVxuICogcmVzcG9uc2UgZXZlbnQgc3RyZWFtIGFzIHdlbGwsIGJ5IGFwcGx5aW5nIGFkZGl0aW9uYWwgUnhKUyBvcGVyYXRvcnMgb24gdGhlIHN0cmVhbVxuICogcmV0dXJuZWQgYnkgYG5leHQuaGFuZGxlKClgLlxuICpcbiAqIE1vcmUgcmFyZWx5LCBhbiBpbnRlcmNlcHRvciBtYXkgaGFuZGxlIHRoZSByZXF1ZXN0IGVudGlyZWx5LFxuICogYW5kIGNvbXBvc2UgYSBuZXcgZXZlbnQgc3RyZWFtIGluc3RlYWQgb2YgaW52b2tpbmcgYG5leHQuaGFuZGxlKClgLiBUaGlzIGlzIGFuXG4gKiBhY2NlcHRhYmxlIGJlaGF2aW9yLCBidXQga2VlcCBpbiBtaW5kIHRoYXQgZnVydGhlciBpbnRlcmNlcHRvcnMgd2lsbCBiZSBza2lwcGVkIGVudGlyZWx5LlxuICpcbiAqIEl0IGlzIGFsc28gcmFyZSBidXQgdmFsaWQgZm9yIGFuIGludGVyY2VwdG9yIHRvIHJldHVybiBtdWx0aXBsZSByZXNwb25zZXMgb24gdGhlXG4gKiBldmVudCBzdHJlYW0gZm9yIGEgc2luZ2xlIHJlcXVlc3QuXG4gKlxuICogQHB1YmxpY0FwaVxuICpcbiAqIEBzZWUgW0hUVFAgR3VpZGVdKGd1aWRlL2h0dHAvaW50ZXJjZXB0b3JzKVxuICogQHNlZSB7QGxpbmsgSHR0cEludGVyY2VwdG9yRm59XG4gKlxuICogQHVzYWdlTm90ZXNcbiAqXG4gKiBUbyB1c2UgdGhlIHNhbWUgaW5zdGFuY2Ugb2YgYEh0dHBJbnRlcmNlcHRvcnNgIGZvciB0aGUgZW50aXJlIGFwcCwgaW1wb3J0IHRoZSBgSHR0cENsaWVudE1vZHVsZWBcbiAqIG9ubHkgaW4geW91ciBgQXBwTW9kdWxlYCwgYW5kIGFkZCB0aGUgaW50ZXJjZXB0b3JzIHRvIHRoZSByb290IGFwcGxpY2F0aW9uIGluamVjdG9yLlxuICogSWYgeW91IGltcG9ydCBgSHR0cENsaWVudE1vZHVsZWAgbXVsdGlwbGUgdGltZXMgYWNyb3NzIGRpZmZlcmVudCBtb2R1bGVzIChmb3IgZXhhbXBsZSwgaW4gbGF6eVxuICogbG9hZGluZyBtb2R1bGVzKSwgZWFjaCBpbXBvcnQgY3JlYXRlcyBhIG5ldyBjb3B5IG9mIHRoZSBgSHR0cENsaWVudE1vZHVsZWAsIHdoaWNoIG92ZXJ3cml0ZXMgdGhlXG4gKiBpbnRlcmNlcHRvcnMgcHJvdmlkZWQgaW4gdGhlIHJvb3QgbW9kdWxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBJbnRlcmNlcHRvciB7XG4gIC8qKlxuICAgKiBJZGVudGlmaWVzIGFuZCBoYW5kbGVzIGEgZ2l2ZW4gSFRUUCByZXF1ZXN0LlxuICAgKiBAcGFyYW0gcmVxIFRoZSBvdXRnb2luZyByZXF1ZXN0IG9iamVjdCB0byBoYW5kbGUuXG4gICAqIEBwYXJhbSBuZXh0IFRoZSBuZXh0IGludGVyY2VwdG9yIGluIHRoZSBjaGFpbiwgb3IgdGhlIGJhY2tlbmRcbiAgICogaWYgbm8gaW50ZXJjZXB0b3JzIHJlbWFpbiBpbiB0aGUgY2hhaW4uXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgb2YgdGhlIGV2ZW50IHN0cmVhbS5cbiAgICovXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgbmV4dCBpbnRlcmNlcHRvciBpbiBhbiBpbnRlcmNlcHRvciBjaGFpbiwgb3IgdGhlIHJlYWwgYmFja2VuZCBpZiB0aGVyZSBhcmUgbm9cbiAqIGZ1cnRoZXIgaW50ZXJjZXB0b3JzLlxuICpcbiAqIE1vc3QgaW50ZXJjZXB0b3JzIHdpbGwgZGVsZWdhdGUgdG8gdGhpcyBmdW5jdGlvbiwgYW5kIGVpdGhlciBtb2RpZnkgdGhlIG91dGdvaW5nIHJlcXVlc3Qgb3IgdGhlXG4gKiByZXNwb25zZSB3aGVuIGl0IGFycml2ZXMuIFdpdGhpbiB0aGUgc2NvcGUgb2YgdGhlIGN1cnJlbnQgcmVxdWVzdCwgaG93ZXZlciwgdGhpcyBmdW5jdGlvbiBtYXkgYmVcbiAqIGNhbGxlZCBhbnkgbnVtYmVyIG9mIHRpbWVzLCBmb3IgYW55IG51bWJlciBvZiBkb3duc3RyZWFtIHJlcXVlc3RzLiBTdWNoIGRvd25zdHJlYW0gcmVxdWVzdHMgbmVlZFxuICogbm90IGJlIHRvIHRoZSBzYW1lIFVSTCBvciBldmVuIHRoZSBzYW1lIG9yaWdpbiBhcyB0aGUgY3VycmVudCByZXF1ZXN0LiBJdCBpcyBhbHNvIHZhbGlkIHRvIG5vdFxuICogY2FsbCB0aGUgZG93bnN0cmVhbSBoYW5kbGVyIGF0IGFsbCwgYW5kIHByb2Nlc3MgdGhlIGN1cnJlbnQgcmVxdWVzdCBlbnRpcmVseSB3aXRoaW4gdGhlXG4gKiBpbnRlcmNlcHRvci5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCB3aXRoaW4gdGhlIHNjb3BlIG9mIHRoZSByZXF1ZXN0IHRoYXQncyBjdXJyZW50bHkgYmVpbmdcbiAqIGludGVyY2VwdGVkLiBPbmNlIHRoYXQgcmVxdWVzdCBpcyBjb21wbGV0ZSwgdGhpcyBkb3duc3RyZWFtIGhhbmRsZXIgZnVuY3Rpb24gc2hvdWxkIG5vdCBiZVxuICogY2FsbGVkLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqXG4gKiBAc2VlIFtIVFRQIEd1aWRlXShndWlkZS9odHRwL2ludGVyY2VwdG9ycylcbiAqL1xuZXhwb3J0IHR5cGUgSHR0cEhhbmRsZXJGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KSA9PiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj47XG5cbi8qKlxuICogQW4gaW50ZXJjZXB0b3IgZm9yIEhUVFAgcmVxdWVzdHMgbWFkZSB2aWEgYEh0dHBDbGllbnRgLlxuICpcbiAqIGBIdHRwSW50ZXJjZXB0b3JGbmBzIGFyZSBtaWRkbGV3YXJlIGZ1bmN0aW9ucyB3aGljaCBgSHR0cENsaWVudGAgY2FsbHMgd2hlbiBhIHJlcXVlc3QgaXMgbWFkZS5cbiAqIFRoZXNlIGZ1bmN0aW9ucyBoYXZlIHRoZSBvcHBvcnR1bml0eSB0byBtb2RpZnkgdGhlIG91dGdvaW5nIHJlcXVlc3Qgb3IgYW55IHJlc3BvbnNlIHRoYXQgY29tZXNcbiAqIGJhY2ssIGFzIHdlbGwgYXMgYmxvY2ssIHJlZGlyZWN0LCBvciBvdGhlcndpc2UgY2hhbmdlIHRoZSByZXF1ZXN0IG9yIHJlc3BvbnNlIHNlbWFudGljcy5cbiAqXG4gKiBBbiBgSHR0cEhhbmRsZXJGbmAgcmVwcmVzZW50aW5nIHRoZSBuZXh0IGludGVyY2VwdG9yIChvciB0aGUgYmFja2VuZCB3aGljaCB3aWxsIG1ha2UgYSByZWFsIEhUVFBcbiAqIHJlcXVlc3QpIGlzIHByb3ZpZGVkLiBNb3N0IGludGVyY2VwdG9ycyB3aWxsIGRlbGVnYXRlIHRvIHRoaXMgZnVuY3Rpb24sIGJ1dCB0aGF0IGlzIG5vdCByZXF1aXJlZFxuICogKHNlZSBgSHR0cEhhbmRsZXJGbmAgZm9yIG1vcmUgZGV0YWlscykuXG4gKlxuICogYEh0dHBJbnRlcmNlcHRvckZuYHMgYXJlIGV4ZWN1dGVkIGluIGFuIFtpbmplY3Rpb24gY29udGV4dF0oZ3VpZGUvZGkvZGVwZW5kZW5jeS1pbmplY3Rpb24tY29udGV4dCkuXG4gKiBUaGV5IGhhdmUgYWNjZXNzIHRvIGBpbmplY3QoKWAgdmlhIHRoZSBgRW52aXJvbm1lbnRJbmplY3RvcmAgZnJvbSB3aGljaCB0aGV5IHdlcmUgY29uZmlndXJlZC5cbiAqXG4gKiBAc2VlIFtIVFRQIEd1aWRlXShndWlkZS9odHRwL2ludGVyY2VwdG9ycylcbiAqIEBzZWUge0BsaW5rIHdpdGhJbnRlcmNlcHRvcnN9XG4gKlxuICogQHVzYWdlTm90ZXNcbiAqIEhlcmUgaXMgYSBub29wIGludGVyY2VwdG9yIHRoYXQgcGFzc2VzIHRoZSByZXF1ZXN0IHRocm91Z2ggd2l0aG91dCBtb2RpZnlpbmcgaXQ6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBleHBvcnQgY29uc3Qgbm9vcEludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OlxuICogSHR0cEhhbmRsZXJGbikgPT4ge1xuICogICByZXR1cm4gbmV4dChtb2RpZmllZFJlcSk7XG4gKiB9O1xuICogYGBgXG4gKlxuICogSWYgeW91IHdhbnQgdG8gYWx0ZXIgYSByZXF1ZXN0LCBjbG9uZSBpdCBmaXJzdCBhbmQgbW9kaWZ5IHRoZSBjbG9uZSBiZWZvcmUgcGFzc2luZyBpdCB0byB0aGVcbiAqIGBuZXh0KClgIGhhbmRsZXIgZnVuY3Rpb24uXG4gKlxuICogSGVyZSBpcyBhIGJhc2ljIGludGVyY2VwdG9yIHRoYXQgYWRkcyBhIGJlYXJlciB0b2tlbiB0byB0aGUgaGVhZGVyc1xuICogYGBgdHlwZXNjcmlwdFxuICogZXhwb3J0IGNvbnN0IGF1dGhlbnRpY2F0aW9uSW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6XG4gKiBIdHRwSGFuZGxlckZuKSA9PiB7XG4gKiAgICBjb25zdCB1c2VyVG9rZW4gPSAnTVlfVE9LRU4nOyBjb25zdCBtb2RpZmllZFJlcSA9IHJlcS5jbG9uZSh7XG4gKiAgICAgIGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCZWFyZXIgJHt1c2VyVG9rZW59YCksXG4gKiAgICB9KTtcbiAqXG4gKiAgICByZXR1cm4gbmV4dChtb2RpZmllZFJlcSk7XG4gKiB9O1xuICogYGBgXG4gKi9cbmV4cG9ydCB0eXBlIEh0dHBJbnRlcmNlcHRvckZuID0gKFxuICByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICBuZXh0OiBIdHRwSGFuZGxlckZuLFxuKSA9PiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj47XG5cbi8qKlxuICogRnVuY3Rpb24gd2hpY2ggaW52b2tlcyBhbiBIVFRQIGludGVyY2VwdG9yIGNoYWluLlxuICpcbiAqIEVhY2ggaW50ZXJjZXB0b3IgaW4gdGhlIGludGVyY2VwdG9yIGNoYWluIGlzIHR1cm5lZCBpbnRvIGEgYENoYWluZWRJbnRlcmNlcHRvckZuYCB3aGljaCBjbG9zZXNcbiAqIG92ZXIgdGhlIHJlc3Qgb2YgdGhlIGNoYWluIChyZXByZXNlbnRlZCBieSBhbm90aGVyIGBDaGFpbmVkSW50ZXJjZXB0b3JGbmApLiBUaGUgbGFzdCBzdWNoXG4gKiBmdW5jdGlvbiBpbiB0aGUgY2hhaW4gd2lsbCBpbnN0ZWFkIGRlbGVnYXRlIHRvIHRoZSBgZmluYWxIYW5kbGVyRm5gLCB3aGljaCBpcyBwYXNzZWQgZG93biB3aGVuXG4gKiB0aGUgY2hhaW4gaXMgaW52b2tlZC5cbiAqXG4gKiBUaGlzIHBhdHRlcm4gYWxsb3dzIGZvciBhIGNoYWluIG9mIG1hbnkgaW50ZXJjZXB0b3JzIHRvIGJlIGNvbXBvc2VkIGFuZCB3cmFwcGVkIGluIGEgc2luZ2xlXG4gKiBgSHR0cEludGVyY2VwdG9yRm5gLCB3aGljaCBpcyBhIHVzZWZ1bCBhYnN0cmFjdGlvbiBmb3IgaW5jbHVkaW5nIGRpZmZlcmVudCBraW5kcyBvZiBpbnRlcmNlcHRvcnNcbiAqIChlLmcuIGxlZ2FjeSBjbGFzcy1iYXNlZCBpbnRlcmNlcHRvcnMpIGluIHRoZSBzYW1lIGNoYWluLlxuICovXG50eXBlIENoYWluZWRJbnRlcmNlcHRvckZuPFJlcXVlc3RUPiA9IChcbiAgcmVxOiBIdHRwUmVxdWVzdDxSZXF1ZXN0VD4sXG4gIGZpbmFsSGFuZGxlckZuOiBIdHRwSGFuZGxlckZuLFxuKSA9PiBPYnNlcnZhYmxlPEh0dHBFdmVudDxSZXF1ZXN0VD4+O1xuXG5mdW5jdGlvbiBpbnRlcmNlcHRvckNoYWluRW5kRm4oXG4gIHJlcTogSHR0cFJlcXVlc3Q8YW55PixcbiAgZmluYWxIYW5kbGVyRm46IEh0dHBIYW5kbGVyRm4sXG4pOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gIHJldHVybiBmaW5hbEhhbmRsZXJGbihyZXEpO1xufVxuXG4vKipcbiAqIENvbnN0cnVjdHMgYSBgQ2hhaW5lZEludGVyY2VwdG9yRm5gIHdoaWNoIGFkYXB0cyBhIGxlZ2FjeSBgSHR0cEludGVyY2VwdG9yYCB0byB0aGVcbiAqIGBDaGFpbmVkSW50ZXJjZXB0b3JGbmAgaW50ZXJmYWNlLlxuICovXG5mdW5jdGlvbiBhZGFwdExlZ2FjeUludGVyY2VwdG9yVG9DaGFpbihcbiAgY2hhaW5UYWlsRm46IENoYWluZWRJbnRlcmNlcHRvckZuPGFueT4sXG4gIGludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3IsXG4pOiBDaGFpbmVkSW50ZXJjZXB0b3JGbjxhbnk+IHtcbiAgcmV0dXJuIChpbml0aWFsUmVxdWVzdCwgZmluYWxIYW5kbGVyRm4pID0+XG4gICAgaW50ZXJjZXB0b3IuaW50ZXJjZXB0KGluaXRpYWxSZXF1ZXN0LCB7XG4gICAgICBoYW5kbGU6IChkb3duc3RyZWFtUmVxdWVzdCkgPT4gY2hhaW5UYWlsRm4oZG93bnN0cmVhbVJlcXVlc3QsIGZpbmFsSGFuZGxlckZuKSxcbiAgICB9KTtcbn1cblxuLyoqXG4gKiBDb25zdHJ1Y3RzIGEgYENoYWluZWRJbnRlcmNlcHRvckZuYCB3aGljaCB3cmFwcyBhbmQgaW52b2tlcyBhIGZ1bmN0aW9uYWwgaW50ZXJjZXB0b3IgaW4gdGhlIGdpdmVuXG4gKiBpbmplY3Rvci5cbiAqL1xuZnVuY3Rpb24gY2hhaW5lZEludGVyY2VwdG9yRm4oXG4gIGNoYWluVGFpbEZuOiBDaGFpbmVkSW50ZXJjZXB0b3JGbjx1bmtub3duPixcbiAgaW50ZXJjZXB0b3JGbjogSHR0cEludGVyY2VwdG9yRm4sXG4gIGluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yLFxuKTogQ2hhaW5lZEludGVyY2VwdG9yRm48dW5rbm93bj4ge1xuICByZXR1cm4gKGluaXRpYWxSZXF1ZXN0LCBmaW5hbEhhbmRsZXJGbikgPT5cbiAgICBydW5JbkluamVjdGlvbkNvbnRleHQoaW5qZWN0b3IsICgpID0+XG4gICAgICBpbnRlcmNlcHRvckZuKGluaXRpYWxSZXF1ZXN0LCAoZG93bnN0cmVhbVJlcXVlc3QpID0+XG4gICAgICAgIGNoYWluVGFpbEZuKGRvd25zdHJlYW1SZXF1ZXN0LCBmaW5hbEhhbmRsZXJGbiksXG4gICAgICApLFxuICAgICk7XG59XG5cbi8qKlxuICogQSBtdWx0aS1wcm92aWRlciB0b2tlbiB0aGF0IHJlcHJlc2VudHMgdGhlIGFycmF5IG9mIHJlZ2lzdGVyZWRcbiAqIGBIdHRwSW50ZXJjZXB0b3JgIG9iamVjdHMuXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgSFRUUF9JTlRFUkNFUFRPUlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48cmVhZG9ubHkgSHR0cEludGVyY2VwdG9yW10+KFxuICBuZ0Rldk1vZGUgPyAnSFRUUF9JTlRFUkNFUFRPUlMnIDogJycsXG4pO1xuXG4vKipcbiAqIEEgbXVsdGktcHJvdmlkZWQgdG9rZW4gb2YgYEh0dHBJbnRlcmNlcHRvckZuYHMuXG4gKi9cbmV4cG9ydCBjb25zdCBIVFRQX0lOVEVSQ0VQVE9SX0ZOUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxyZWFkb25seSBIdHRwSW50ZXJjZXB0b3JGbltdPihcbiAgbmdEZXZNb2RlID8gJ0hUVFBfSU5URVJDRVBUT1JfRk5TJyA6ICcnLFxuKTtcblxuLyoqXG4gKiBBIG11bHRpLXByb3ZpZGVkIHRva2VuIG9mIGBIdHRwSW50ZXJjZXB0b3JGbmBzIHRoYXQgYXJlIG9ubHkgc2V0IGluIHJvb3QuXG4gKi9cbmV4cG9ydCBjb25zdCBIVFRQX1JPT1RfSU5URVJDRVBUT1JfRk5TID0gbmV3IEluamVjdGlvblRva2VuPHJlYWRvbmx5IEh0dHBJbnRlcmNlcHRvckZuW10+KFxuICBuZ0Rldk1vZGUgPyAnSFRUUF9ST09UX0lOVEVSQ0VQVE9SX0ZOUycgOiAnJyxcbik7XG5cbi8vIFRPRE8oYXRzY290dCk6IFdlIG5lZWQgYSBsYXJnZXIgZGlzY3Vzc2lvbiBhYm91dCBzdGFiaWxpdHkgYW5kIHdoYXQgc2hvdWxkIGNvbnRyaWJ1dGUgdG8gc3RhYmlsaXR5LlxuLy8gU2hvdWxkIHRoZSB3aG9sZSBpbnRlcmNlcHRvciBjaGFpbiBjb250cmlidXRlIHRvIHN0YWJpbGl0eSBvciBqdXN0IHRoZSBiYWNrZW5kIHJlcXVlc3QgIzU1MDc1P1xuLy8gU2hvdWxkIEh0dHBDbGllbnQgY29udHJpYnV0ZSB0byBzdGFiaWxpdHkgYXV0b21hdGljYWxseSBhdCBhbGw/XG5leHBvcnQgY29uc3QgUkVRVUVTVFNfQ09OVFJJQlVURV9UT19TVEFCSUxJVFkgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIG5nRGV2TW9kZSA/ICdSRVFVRVNUU19DT05UUklCVVRFX1RPX1NUQUJJTElUWScgOiAnJyxcbiAge3Byb3ZpZGVkSW46ICdyb290JywgZmFjdG9yeTogKCkgPT4gdHJ1ZX0sXG4pO1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gYEh0dHBJbnRlcmNlcHRvckZuYCB3aGljaCBsYXppbHkgaW5pdGlhbGl6ZXMgYW4gaW50ZXJjZXB0b3IgY2hhaW4gZnJvbSB0aGUgbGVnYWN5XG4gKiBjbGFzcy1iYXNlZCBpbnRlcmNlcHRvcnMgYW5kIHJ1bnMgdGhlIHJlcXVlc3QgdGhyb3VnaCBpdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxlZ2FjeUludGVyY2VwdG9yRm5GYWN0b3J5KCk6IEh0dHBJbnRlcmNlcHRvckZuIHtcbiAgbGV0IGNoYWluOiBDaGFpbmVkSW50ZXJjZXB0b3JGbjxhbnk+IHwgbnVsbCA9IG51bGw7XG5cbiAgcmV0dXJuIChyZXEsIGhhbmRsZXIpID0+IHtcbiAgICBpZiAoY2hhaW4gPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGludGVyY2VwdG9ycyA9IGluamVjdChIVFRQX0lOVEVSQ0VQVE9SUywge29wdGlvbmFsOiB0cnVlfSkgPz8gW107XG4gICAgICAvLyBOb3RlOiBpbnRlcmNlcHRvcnMgYXJlIHdyYXBwZWQgcmlnaHQtdG8tbGVmdCBzbyB0aGF0IGZpbmFsIGV4ZWN1dGlvbiBvcmRlciBpc1xuICAgICAgLy8gbGVmdC10by1yaWdodC4gVGhhdCBpcywgaWYgYGludGVyY2VwdG9yc2AgaXMgdGhlIGFycmF5IGBbYSwgYiwgY11gLCB3ZSB3YW50IHRvXG4gICAgICAvLyBwcm9kdWNlIGEgY2hhaW4gdGhhdCBpcyBjb25jZXB0dWFsbHkgYGMoYihhKGVuZCkpKWAsIHdoaWNoIHdlIGJ1aWxkIGZyb20gdGhlIGluc2lkZVxuICAgICAgLy8gb3V0LlxuICAgICAgY2hhaW4gPSBpbnRlcmNlcHRvcnMucmVkdWNlUmlnaHQoXG4gICAgICAgIGFkYXB0TGVnYWN5SW50ZXJjZXB0b3JUb0NoYWluLFxuICAgICAgICBpbnRlcmNlcHRvckNoYWluRW5kRm4gYXMgQ2hhaW5lZEludGVyY2VwdG9yRm48YW55PixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgcGVuZGluZ1Rhc2tzID0gaW5qZWN0KFBlbmRpbmdUYXNrcyk7XG4gICAgY29uc3QgY29udHJpYnV0ZVRvU3RhYmlsaXR5ID0gaW5qZWN0KFJFUVVFU1RTX0NPTlRSSUJVVEVfVE9fU1RBQklMSVRZKTtcbiAgICBpZiAoY29udHJpYnV0ZVRvU3RhYmlsaXR5KSB7XG4gICAgICBjb25zdCB0YXNrSWQgPSBwZW5kaW5nVGFza3MuYWRkKCk7XG4gICAgICByZXR1cm4gY2hhaW4ocmVxLCBoYW5kbGVyKS5waXBlKGZpbmFsaXplKCgpID0+IHBlbmRpbmdUYXNrcy5yZW1vdmUodGFza0lkKSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gY2hhaW4ocmVxLCBoYW5kbGVyKTtcbiAgICB9XG4gIH07XG59XG5cbmxldCBmZXRjaEJhY2tlbmRXYXJuaW5nRGlzcGxheWVkID0gZmFsc2U7XG5cbi8qKiBJbnRlcm5hbCBmdW5jdGlvbiB0byByZXNldCB0aGUgZmxhZyBpbiB0ZXN0cyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0RmV0Y2hCYWNrZW5kV2FybmluZ0ZsYWcoKSB7XG4gIGZldGNoQmFja2VuZFdhcm5pbmdEaXNwbGF5ZWQgPSBmYWxzZTtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEh0dHBJbnRlcmNlcHRvckhhbmRsZXIgZXh0ZW5kcyBIdHRwSGFuZGxlciB7XG4gIHByaXZhdGUgY2hhaW46IENoYWluZWRJbnRlcmNlcHRvckZuPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGVuZGluZ1Rhc2tzID0gaW5qZWN0KFBlbmRpbmdUYXNrcyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udHJpYnV0ZVRvU3RhYmlsaXR5ID0gaW5qZWN0KFJFUVVFU1RTX0NPTlRSSUJVVEVfVE9fU1RBQklMSVRZKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJhY2tlbmQ6IEh0dHBCYWNrZW5kLFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEVudmlyb25tZW50SW5qZWN0b3IsXG4gICkge1xuICAgIHN1cGVyKCk7XG5cbiAgICAvLyBXZSBzdHJvbmdseSByZWNvbW1lbmQgdXNpbmcgZmV0Y2ggYmFja2VuZCBmb3IgSFRUUCBjYWxscyB3aGVuIFNTUiBpcyB1c2VkXG4gICAgLy8gZm9yIGFuIGFwcGxpY2F0aW9uLiBUaGUgbG9naWMgYmVsb3cgY2hlY2tzIGlmIHRoYXQncyB0aGUgY2FzZSBhbmQgcHJvZHVjZXNcbiAgICAvLyBhIHdhcm5pbmcgb3RoZXJ3aXNlLlxuICAgIGlmICgodHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlKSAmJiAhZmV0Y2hCYWNrZW5kV2FybmluZ0Rpc3BsYXllZCkge1xuICAgICAgY29uc3QgaXNTZXJ2ZXIgPSBpc1BsYXRmb3JtU2VydmVyKGluamVjdG9yLmdldChQTEFURk9STV9JRCkpO1xuICAgICAgaWYgKGlzU2VydmVyICYmICEodGhpcy5iYWNrZW5kIGluc3RhbmNlb2YgRmV0Y2hCYWNrZW5kKSkge1xuICAgICAgICBmZXRjaEJhY2tlbmRXYXJuaW5nRGlzcGxheWVkID0gdHJ1ZTtcbiAgICAgICAgaW5qZWN0b3JcbiAgICAgICAgICAuZ2V0KENvbnNvbGUpXG4gICAgICAgICAgLndhcm4oXG4gICAgICAgICAgICBmb3JtYXRSdW50aW1lRXJyb3IoXG4gICAgICAgICAgICAgIFJ1bnRpbWVFcnJvckNvZGUuTk9UX1VTSU5HX0ZFVENIX0JBQ0tFTkRfSU5fU1NSLFxuICAgICAgICAgICAgICAnQW5ndWxhciBkZXRlY3RlZCB0aGF0IGBIdHRwQ2xpZW50YCBpcyBub3QgY29uZmlndXJlZCAnICtcbiAgICAgICAgICAgICAgICBcInRvIHVzZSBgZmV0Y2hgIEFQSXMuIEl0J3Mgc3Ryb25nbHkgcmVjb21tZW5kZWQgdG8gXCIgK1xuICAgICAgICAgICAgICAgICdlbmFibGUgYGZldGNoYCBmb3IgYXBwbGljYXRpb25zIHRoYXQgdXNlIFNlcnZlci1TaWRlIFJlbmRlcmluZyAnICtcbiAgICAgICAgICAgICAgICAnZm9yIGJldHRlciBwZXJmb3JtYW5jZSBhbmQgY29tcGF0aWJpbGl0eS4gJyArXG4gICAgICAgICAgICAgICAgJ1RvIGVuYWJsZSBgZmV0Y2hgLCBhZGQgdGhlIGB3aXRoRmV0Y2goKWAgdG8gdGhlIGBwcm92aWRlSHR0cENsaWVudCgpYCAnICtcbiAgICAgICAgICAgICAgICAnY2FsbCBhdCB0aGUgcm9vdCBvZiB0aGUgYXBwbGljYXRpb24uJyxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSBoYW5kbGUoaW5pdGlhbFJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW4gPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGRlZHVwZWRJbnRlcmNlcHRvckZucyA9IEFycmF5LmZyb20oXG4gICAgICAgIG5ldyBTZXQoW1xuICAgICAgICAgIC4uLnRoaXMuaW5qZWN0b3IuZ2V0KEhUVFBfSU5URVJDRVBUT1JfRk5TKSxcbiAgICAgICAgICAuLi50aGlzLmluamVjdG9yLmdldChIVFRQX1JPT1RfSU5URVJDRVBUT1JfRk5TLCBbXSksXG4gICAgICAgIF0pLFxuICAgICAgKTtcblxuICAgICAgLy8gTm90ZTogaW50ZXJjZXB0b3JzIGFyZSB3cmFwcGVkIHJpZ2h0LXRvLWxlZnQgc28gdGhhdCBmaW5hbCBleGVjdXRpb24gb3JkZXIgaXNcbiAgICAgIC8vIGxlZnQtdG8tcmlnaHQuIFRoYXQgaXMsIGlmIGBkZWR1cGVkSW50ZXJjZXB0b3JGbnNgIGlzIHRoZSBhcnJheSBgW2EsIGIsIGNdYCwgd2Ugd2FudCB0b1xuICAgICAgLy8gcHJvZHVjZSBhIGNoYWluIHRoYXQgaXMgY29uY2VwdHVhbGx5IGBjKGIoYShlbmQpKSlgLCB3aGljaCB3ZSBidWlsZCBmcm9tIHRoZSBpbnNpZGVcbiAgICAgIC8vIG91dC5cbiAgICAgIHRoaXMuY2hhaW4gPSBkZWR1cGVkSW50ZXJjZXB0b3JGbnMucmVkdWNlUmlnaHQoXG4gICAgICAgIChuZXh0U2VxdWVuY2VkRm4sIGludGVyY2VwdG9yRm4pID0+XG4gICAgICAgICAgY2hhaW5lZEludGVyY2VwdG9yRm4obmV4dFNlcXVlbmNlZEZuLCBpbnRlcmNlcHRvckZuLCB0aGlzLmluamVjdG9yKSxcbiAgICAgICAgaW50ZXJjZXB0b3JDaGFpbkVuZEZuIGFzIENoYWluZWRJbnRlcmNlcHRvckZuPHVua25vd24+LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb250cmlidXRlVG9TdGFiaWxpdHkpIHtcbiAgICAgIGNvbnN0IHRhc2tJZCA9IHRoaXMucGVuZGluZ1Rhc2tzLmFkZCgpO1xuICAgICAgcmV0dXJuIHRoaXMuY2hhaW4oaW5pdGlhbFJlcXVlc3QsIChkb3duc3RyZWFtUmVxdWVzdCkgPT5cbiAgICAgICAgdGhpcy5iYWNrZW5kLmhhbmRsZShkb3duc3RyZWFtUmVxdWVzdCksXG4gICAgICApLnBpcGUoZmluYWxpemUoKCkgPT4gdGhpcy5wZW5kaW5nVGFza3MucmVtb3ZlKHRhc2tJZCkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuY2hhaW4oaW5pdGlhbFJlcXVlc3QsIChkb3duc3RyZWFtUmVxdWVzdCkgPT5cbiAgICAgICAgdGhpcy5iYWNrZW5kLmhhbmRsZShkb3duc3RyZWFtUmVxdWVzdCksXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixNQUFNLEVBQ04sVUFBVSxFQUNWLGNBQWMsRUFDZCxXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLFFBQVEsSUFBSSxPQUFPLEVBQ25CLG1CQUFtQixJQUFJLGtCQUFrQixFQUN6QyxhQUFhLElBQUksWUFBWSxHQUM5QixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFFbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLFNBQVMsQ0FBQzs7O0FBZ0lyQyxTQUFTLHFCQUFxQixDQUM1QixHQUFxQixFQUNyQixjQUE2QjtJQUU3QixPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM3QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyw2QkFBNkIsQ0FDcEMsV0FBc0MsRUFDdEMsV0FBNEI7SUFFNUIsT0FBTyxDQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUN4QyxXQUFXLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRTtRQUNwQyxNQUFNLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLGNBQWMsQ0FBQztLQUM5RSxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxvQkFBb0IsQ0FDM0IsV0FBMEMsRUFDMUMsYUFBZ0MsRUFDaEMsUUFBNkI7SUFF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QUM1QyxDQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUNqQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDckUscUJBQXNELENBQ3ZELENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3ZDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQ3RELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQ3ZDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUN2QyxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7eUhBakVVLHNCQUFzQjs2SEFBdEIsc0JBQXNCOztzR0FBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2lzUGxhdGZvcm1TZXJ2ZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBFbnZpcm9ubWVudEluamVjdG9yLFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIEluamVjdGlvblRva2VuLFxuICBQTEFURk9STV9JRCxcbiAgcnVuSW5JbmplY3Rpb25Db250ZXh0LFxuICDJtUNvbnNvbGUgYXMgQ29uc29sZSxcbiAgybVmb3JtYXRSdW50aW1lRXJyb3IgYXMgZm9ybWF0UnVudGltZUVycm9yLFxuICDJtVBlbmRpbmdUYXNrcyBhcyBQZW5kaW5nVGFza3MsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmluYWxpemV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtIdHRwQmFja2VuZCwgSHR0cEhhbmRsZXJ9IGZyb20gJy4vYmFja2VuZCc7XG5pbXBvcnQge1J1bnRpbWVFcnJvckNvZGV9IGZyb20gJy4vZXJyb3JzJztcbmltcG9ydCB7RmV0Y2hCYWNrZW5kfSBmcm9tICcuL2ZldGNoJztcbmltcG9ydCB7SHR0cFJlcXVlc3R9IGZyb20gJy4vcmVxdWVzdCc7XG5pbXBvcnQge0h0dHBFdmVudH0gZnJvbSAnLi9yZXNwb25zZSc7XG5cbi8qKlxuICogSW50ZXJjZXB0cyBhbmQgaGFuZGxlcyBhbiBgSHR0cFJlcXVlc3RgIG9yIGBIdHRwUmVzcG9uc2VgLlxuICpcbiAqIE1vc3QgaW50ZXJjZXB0b3JzIHRyYW5zZm9ybSB0aGUgb3V0Z29pbmcgcmVxdWVzdCBiZWZvcmUgcGFzc2luZyBpdCB0byB0aGVcbiAqIG5leHQgaW50ZXJjZXB0b3IgaW4gdGhlIGNoYWluLCBieSBjYWxsaW5nIGBuZXh0LmhhbmRsZSh0cmFuc2Zvcm1lZFJlcSlgLlxuICogQW4gaW50ZXJjZXB0b3IgbWF5IHRyYW5zZm9ybSB0aGVcbiAqIHJlc3BvbnNlIGV2ZW50IHN0cmVhbSBhcyB3ZWxsLCBieSBhcHBseWluZyBhZGRpdGlvbmFsIFJ4SlMgb3BlcmF0b3JzIG9uIHRoZSBzdHJlYW1cbiAqIHJldHVybmVkIGJ5IGBuZXh0LmhhbmRsZSgpYC5cbiAqXG4gKiBNb3JlIHJhcmVseSwgYW4gaW50ZXJjZXB0b3IgbWF5IGhhbmRsZSB0aGUgcmVxdWVzdCBlbnRpcmVseSxcbiAqIGFuZCBjb21wb3NlIGEgbmV3IGV2ZW50IHN0cmVhbSBpbnN0ZWFkIG9mIGludm9raW5nIGBuZXh0LmhhbmRsZSgpYC4gVGhpcyBpcyBhblxuICogYWNjZXB0YWJsZSBiZWhhdmlvciwgYnV0IGtlZXAgaW4gbWluZCB0aGF0IGZ1cnRoZXIgaW50ZXJjZXB0b3JzIHdpbGwgYmUgc2tpcHBlZCBlbnRpcmVseS5cbiAqXG4gKiBJdCBpcyBhbHNvIHJhcmUgYnV0IHZhbGlkIGZvciBhbiBpbnRlcmNlcHRvciB0byByZXR1cm4gbXVsdGlwbGUgcmVzcG9uc2VzIG9uIHRoZVxuICogZXZlbnQgc3RyZWFtIGZvciBhIHNpbmdsZSByZXF1ZXN0LlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqXG4gKiBAc2VlIFtIVFRQIEd1aWRlXShndWlkZS9odHRwL2ludGVyY2VwdG9ycylcbiAqIEBzZWUge0BsaW5rIEh0dHBJbnRlcmNlcHRvckZufVxuICpcbiAqIEB1c2FnZU5vdGVzXG4gKlxuICogVG8gdXNlIHRoZSBzYW1lIGluc3RhbmNlIG9mIGBIdHRwSW50ZXJjZXB0b3JzYCBmb3IgdGhlIGVudGlyZSBhcHAsIGltcG9ydCB0aGUgYEh0dHBDbGllbnRNb2R1bGVgXG4gKiBvbmx5IGluIHlvdXIgYEFwcE1vZHVsZWAsIGFuZCBhZGQgdGhlIGludGVyY2VwdG9ycyB0byB0aGUgcm9vdCBhcHBsaWNhdGlvbiBpbmplY3Rvci5cbiAqIElmIHlvdSBpbXBvcnQgYEh0dHBDbGllbnRNb2R1bGVgIG11bHRpcGxlIHRpbWVzIGFjcm9zcyBkaWZmZXJlbnQgbW9kdWxlcyAoZm9yIGV4YW1wbGUsIGluIGxhenlcbiAqIGxvYWRpbmcgbW9kdWxlcyksIGVhY2ggaW1wb3J0IGNyZWF0ZXMgYSBuZXcgY29weSBvZiB0aGUgYEh0dHBDbGllbnRNb2R1bGVgLCB3aGljaCBvdmVyd3JpdGVzIHRoZVxuICogaW50ZXJjZXB0b3JzIHByb3ZpZGVkIGluIHRoZSByb290IG1vZHVsZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwSW50ZXJjZXB0b3Ige1xuICAvKipcbiAgICogSWRlbnRpZmllcyBhbmQgaGFuZGxlcyBhIGdpdmVuIEhUVFAgcmVxdWVzdC5cbiAgICogQHBhcmFtIHJlcSBUaGUgb3V0Z29pbmcgcmVxdWVzdCBvYmplY3QgdG8gaGFuZGxlLlxuICAgKiBAcGFyYW0gbmV4dCBUaGUgbmV4dCBpbnRlcmNlcHRvciBpbiB0aGUgY2hhaW4sIG9yIHRoZSBiYWNrZW5kXG4gICAqIGlmIG5vIGludGVyY2VwdG9ycyByZW1haW4gaW4gdGhlIGNoYWluLlxuICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIG9mIHRoZSBldmVudCBzdHJlYW0uXG4gICAqL1xuICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+O1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIG5leHQgaW50ZXJjZXB0b3IgaW4gYW4gaW50ZXJjZXB0b3IgY2hhaW4sIG9yIHRoZSByZWFsIGJhY2tlbmQgaWYgdGhlcmUgYXJlIG5vXG4gKiBmdXJ0aGVyIGludGVyY2VwdG9ycy5cbiAqXG4gKiBNb3N0IGludGVyY2VwdG9ycyB3aWxsIGRlbGVnYXRlIHRvIHRoaXMgZnVuY3Rpb24sIGFuZCBlaXRoZXIgbW9kaWZ5IHRoZSBvdXRnb2luZyByZXF1ZXN0IG9yIHRoZVxuICogcmVzcG9uc2Ugd2hlbiBpdCBhcnJpdmVzLiBXaXRoaW4gdGhlIHNjb3BlIG9mIHRoZSBjdXJyZW50IHJlcXVlc3QsIGhvd2V2ZXIsIHRoaXMgZnVuY3Rpb24gbWF5IGJlXG4gKiBjYWxsZWQgYW55IG51bWJlciBvZiB0aW1lcywgZm9yIGFueSBudW1iZXIgb2YgZG93bnN0cmVhbSByZXF1ZXN0cy4gU3VjaCBkb3duc3RyZWFtIHJlcXVlc3RzIG5lZWRcbiAqIG5vdCBiZSB0byB0aGUgc2FtZSBVUkwgb3IgZXZlbiB0aGUgc2FtZSBvcmlnaW4gYXMgdGhlIGN1cnJlbnQgcmVxdWVzdC4gSXQgaXMgYWxzbyB2YWxpZCB0byBub3RcbiAqIGNhbGwgdGhlIGRvd25zdHJlYW0gaGFuZGxlciBhdCBhbGwsIGFuZCBwcm9jZXNzIHRoZSBjdXJyZW50IHJlcXVlc3QgZW50aXJlbHkgd2l0aGluIHRoZVxuICogaW50ZXJjZXB0b3IuXG4gKlxuICogVGhpcyBmdW5jdGlvbiBzaG91bGQgb25seSBiZSBjYWxsZWQgd2l0aGluIHRoZSBzY29wZSBvZiB0aGUgcmVxdWVzdCB0aGF0J3MgY3VycmVudGx5IGJlaW5nXG4gKiBpbnRlcmNlcHRlZC4gT25jZSB0aGF0IHJlcXVlc3QgaXMgY29tcGxldGUsIHRoaXMgZG93bnN0cmVhbSBoYW5kbGVyIGZ1bmN0aW9uIHNob3VsZCBub3QgYmVcbiAqIGNhbGxlZC5cbiAqXG4gKiBAcHVibGljQXBpXG4gKlxuICogQHNlZSBbSFRUUCBHdWlkZV0oZ3VpZGUvaHR0cC9pbnRlcmNlcHRvcnMpXG4gKi9cbmV4cG9ydCB0eXBlIEh0dHBIYW5kbGVyRm4gPSAocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPikgPT4gT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+O1xuXG4vKipcbiAqIEFuIGludGVyY2VwdG9yIGZvciBIVFRQIHJlcXVlc3RzIG1hZGUgdmlhIGBIdHRwQ2xpZW50YC5cbiAqXG4gKiBgSHR0cEludGVyY2VwdG9yRm5gcyBhcmUgbWlkZGxld2FyZSBmdW5jdGlvbnMgd2hpY2ggYEh0dHBDbGllbnRgIGNhbGxzIHdoZW4gYSByZXF1ZXN0IGlzIG1hZGUuXG4gKiBUaGVzZSBmdW5jdGlvbnMgaGF2ZSB0aGUgb3Bwb3J0dW5pdHkgdG8gbW9kaWZ5IHRoZSBvdXRnb2luZyByZXF1ZXN0IG9yIGFueSByZXNwb25zZSB0aGF0IGNvbWVzXG4gKiBiYWNrLCBhcyB3ZWxsIGFzIGJsb2NrLCByZWRpcmVjdCwgb3Igb3RoZXJ3aXNlIGNoYW5nZSB0aGUgcmVxdWVzdCBvciByZXNwb25zZSBzZW1hbnRpY3MuXG4gKlxuICogQW4gYEh0dHBIYW5kbGVyRm5gIHJlcHJlc2VudGluZyB0aGUgbmV4dCBpbnRlcmNlcHRvciAob3IgdGhlIGJhY2tlbmQgd2hpY2ggd2lsbCBtYWtlIGEgcmVhbCBIVFRQXG4gKiByZXF1ZXN0KSBpcyBwcm92aWRlZC4gTW9zdCBpbnRlcmNlcHRvcnMgd2lsbCBkZWxlZ2F0ZSB0byB0aGlzIGZ1bmN0aW9uLCBidXQgdGhhdCBpcyBub3QgcmVxdWlyZWRcbiAqIChzZWUgYEh0dHBIYW5kbGVyRm5gIGZvciBtb3JlIGRldGFpbHMpLlxuICpcbiAqIGBIdHRwSW50ZXJjZXB0b3JGbmBzIGFyZSBleGVjdXRlZCBpbiBhbiBbaW5qZWN0aW9uIGNvbnRleHRdKGd1aWRlL2RpL2RlcGVuZGVuY3ktaW5qZWN0aW9uLWNvbnRleHQpLlxuICogVGhleSBoYXZlIGFjY2VzcyB0byBgaW5qZWN0KClgIHZpYSB0aGUgYEVudmlyb25tZW50SW5qZWN0b3JgIGZyb20gd2hpY2ggdGhleSB3ZXJlIGNvbmZpZ3VyZWQuXG4gKlxuICogQHNlZSBbSFRUUCBHdWlkZV0oZ3VpZGUvaHR0cC9pbnRlcmNlcHRvcnMpXG4gKiBAc2VlIHtAbGluayB3aXRoSW50ZXJjZXB0b3JzfVxuICpcbiAqIEB1c2FnZU5vdGVzXG4gKiBIZXJlIGlzIGEgbm9vcCBpbnRlcmNlcHRvciB0aGF0IHBhc3NlcyB0aGUgcmVxdWVzdCB0aHJvdWdoIHdpdGhvdXQgbW9kaWZ5aW5nIGl0OlxuICogYGBgdHlwZXNjcmlwdFxuICogZXhwb3J0IGNvbnN0IG5vb3BJbnRlcmNlcHRvcjogSHR0cEludGVyY2VwdG9yRm4gPSAocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDpcbiAqIEh0dHBIYW5kbGVyRm4pID0+IHtcbiAqICAgcmV0dXJuIG5leHQobW9kaWZpZWRSZXEpO1xuICogfTtcbiAqIGBgYFxuICpcbiAqIElmIHlvdSB3YW50IHRvIGFsdGVyIGEgcmVxdWVzdCwgY2xvbmUgaXQgZmlyc3QgYW5kIG1vZGlmeSB0aGUgY2xvbmUgYmVmb3JlIHBhc3NpbmcgaXQgdG8gdGhlXG4gKiBgbmV4dCgpYCBoYW5kbGVyIGZ1bmN0aW9uLlxuICpcbiAqIEhlcmUgaXMgYSBiYXNpYyBpbnRlcmNlcHRvciB0aGF0IGFkZHMgYSBiZWFyZXIgdG9rZW4gdG8gdGhlIGhlYWRlcnNcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGV4cG9ydCBjb25zdCBhdXRoZW50aWNhdGlvbkludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OlxuICogSHR0cEhhbmRsZXJGbikgPT4ge1xuICogICAgY29uc3QgdXNlclRva2VuID0gJ01ZX1RPS0VOJzsgY29uc3QgbW9kaWZpZWRSZXEgPSByZXEuY2xvbmUoe1xuICogICAgICBoZWFkZXJzOiByZXEuaGVhZGVycy5zZXQoJ0F1dGhvcml6YXRpb24nLCBgQmVhcmVyICR7dXNlclRva2VufWApLFxuICogICAgfSk7XG4gKlxuICogICAgcmV0dXJuIG5leHQobW9kaWZpZWRSZXEpO1xuICogfTtcbiAqIGBgYFxuICovXG5leHBvcnQgdHlwZSBIdHRwSW50ZXJjZXB0b3JGbiA9IChcbiAgcmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgbmV4dDogSHR0cEhhbmRsZXJGbixcbikgPT4gT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+O1xuXG4vKipcbiAqIEZ1bmN0aW9uIHdoaWNoIGludm9rZXMgYW4gSFRUUCBpbnRlcmNlcHRvciBjaGFpbi5cbiAqXG4gKiBFYWNoIGludGVyY2VwdG9yIGluIHRoZSBpbnRlcmNlcHRvciBjaGFpbiBpcyB0dXJuZWQgaW50byBhIGBDaGFpbmVkSW50ZXJjZXB0b3JGbmAgd2hpY2ggY2xvc2VzXG4gKiBvdmVyIHRoZSByZXN0IG9mIHRoZSBjaGFpbiAocmVwcmVzZW50ZWQgYnkgYW5vdGhlciBgQ2hhaW5lZEludGVyY2VwdG9yRm5gKS4gVGhlIGxhc3Qgc3VjaFxuICogZnVuY3Rpb24gaW4gdGhlIGNoYWluIHdpbGwgaW5zdGVhZCBkZWxlZ2F0ZSB0byB0aGUgYGZpbmFsSGFuZGxlckZuYCwgd2hpY2ggaXMgcGFzc2VkIGRvd24gd2hlblxuICogdGhlIGNoYWluIGlzIGludm9rZWQuXG4gKlxuICogVGhpcyBwYXR0ZXJuIGFsbG93cyBmb3IgYSBjaGFpbiBvZiBtYW55IGludGVyY2VwdG9ycyB0byBiZSBjb21wb3NlZCBhbmQgd3JhcHBlZCBpbiBhIHNpbmdsZVxuICogYEh0dHBJbnRlcmNlcHRvckZuYCwgd2hpY2ggaXMgYSB1c2VmdWwgYWJzdHJhY3Rpb24gZm9yIGluY2x1ZGluZyBkaWZmZXJlbnQga2luZHMgb2YgaW50ZXJjZXB0b3JzXG4gKiAoZS5nLiBsZWdhY3kgY2xhc3MtYmFzZWQgaW50ZXJjZXB0b3JzKSBpbiB0aGUgc2FtZSBjaGFpbi5cbiAqL1xudHlwZSBDaGFpbmVkSW50ZXJjZXB0b3JGbjxSZXF1ZXN0VD4gPSAoXG4gIHJlcTogSHR0cFJlcXVlc3Q8UmVxdWVzdFQ+LFxuICBmaW5hbEhhbmRsZXJGbjogSHR0cEhhbmRsZXJGbixcbikgPT4gT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8UmVxdWVzdFQ+PjtcblxuZnVuY3Rpb24gaW50ZXJjZXB0b3JDaGFpbkVuZEZuKFxuICByZXE6IEh0dHBSZXF1ZXN0PGFueT4sXG4gIGZpbmFsSGFuZGxlckZuOiBIdHRwSGFuZGxlckZuLFxuKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICByZXR1cm4gZmluYWxIYW5kbGVyRm4ocmVxKTtcbn1cblxuLyoqXG4gKiBDb25zdHJ1Y3RzIGEgYENoYWluZWRJbnRlcmNlcHRvckZuYCB3aGljaCBhZGFwdHMgYSBsZWdhY3kgYEh0dHBJbnRlcmNlcHRvcmAgdG8gdGhlXG4gKiBgQ2hhaW5lZEludGVyY2VwdG9yRm5gIGludGVyZmFjZS5cbiAqL1xuZnVuY3Rpb24gYWRhcHRMZWdhY3lJbnRlcmNlcHRvclRvQ2hhaW4oXG4gIGNoYWluVGFpbEZuOiBDaGFpbmVkSW50ZXJjZXB0b3JGbjxhbnk+LFxuICBpbnRlcmNlcHRvcjogSHR0cEludGVyY2VwdG9yLFxuKTogQ2hhaW5lZEludGVyY2VwdG9yRm48YW55PiB7XG4gIHJldHVybiAoaW5pdGlhbFJlcXVlc3QsIGZpbmFsSGFuZGxlckZuKSA9PlxuICAgIGludGVyY2VwdG9yLmludGVyY2VwdChpbml0aWFsUmVxdWVzdCwge1xuICAgICAgaGFuZGxlOiAoZG93bnN0cmVhbVJlcXVlc3QpID0+IGNoYWluVGFpbEZuKGRvd25zdHJlYW1SZXF1ZXN0LCBmaW5hbEhhbmRsZXJGbiksXG4gICAgfSk7XG59XG5cbi8qKlxuICogQ29uc3RydWN0cyBhIGBDaGFpbmVkSW50ZXJjZXB0b3JGbmAgd2hpY2ggd3JhcHMgYW5kIGludm9rZXMgYSBmdW5jdGlvbmFsIGludGVyY2VwdG9yIGluIHRoZSBnaXZlblxuICogaW5qZWN0b3IuXG4gKi9cbmZ1bmN0aW9uIGNoYWluZWRJbnRlcmNlcHRvckZuKFxuICBjaGFpblRhaWxGbjogQ2hhaW5lZEludGVyY2VwdG9yRm48dW5rbm93bj4sXG4gIGludGVyY2VwdG9yRm46IEh0dHBJbnRlcmNlcHRvckZuLFxuICBpbmplY3RvcjogRW52aXJvbm1lbnRJbmplY3Rvcixcbik6IENoYWluZWRJbnRlcmNlcHRvckZuPHVua25vd24+IHtcbiAgcmV0dXJuIChpbml0aWFsUmVxdWVzdCwgZmluYWxIYW5kbGVyRm4pID0+XG4gICAgcnVuSW5JbmplY3Rpb25Db250ZXh0KGluamVjdG9yLCAoKSA9PlxuICAgICAgaW50ZXJjZXB0b3JGbihpbml0aWFsUmVxdWVzdCwgKGRvd25zdHJlYW1SZXF1ZXN0KSA9PlxuICAgICAgICBjaGFpblRhaWxGbihkb3duc3RyZWFtUmVxdWVzdCwgZmluYWxIYW5kbGVyRm4pLFxuICAgICAgKSxcbiAgICApO1xufVxuXG4vKipcbiAqIEEgbXVsdGktcHJvdmlkZXIgdG9rZW4gdGhhdCByZXByZXNlbnRzIHRoZSBhcnJheSBvZiByZWdpc3RlcmVkXG4gKiBgSHR0cEludGVyY2VwdG9yYCBvYmplY3RzLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNvbnN0IEhUVFBfSU5URVJDRVBUT1JTID0gbmV3IEluamVjdGlvblRva2VuPHJlYWRvbmx5IEh0dHBJbnRlcmNlcHRvcltdPihcbiAgbmdEZXZNb2RlID8gJ0hUVFBfSU5URVJDRVBUT1JTJyA6ICcnLFxuKTtcblxuLyoqXG4gKiBBIG11bHRpLXByb3ZpZGVkIHRva2VuIG9mIGBIdHRwSW50ZXJjZXB0b3JGbmBzLlxuICovXG5leHBvcnQgY29uc3QgSFRUUF9JTlRFUkNFUFRPUl9GTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48cmVhZG9ubHkgSHR0cEludGVyY2VwdG9yRm5bXT4oXG4gIG5nRGV2TW9kZSA/ICdIVFRQX0lOVEVSQ0VQVE9SX0ZOUycgOiAnJyxcbik7XG5cbi8qKlxuICogQSBtdWx0aS1wcm92aWRlZCB0b2tlbiBvZiBgSHR0cEludGVyY2VwdG9yRm5gcyB0aGF0IGFyZSBvbmx5IHNldCBpbiByb290LlxuICovXG5leHBvcnQgY29uc3QgSFRUUF9ST09UX0lOVEVSQ0VQVE9SX0ZOUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxyZWFkb25seSBIdHRwSW50ZXJjZXB0b3JGbltdPihcbiAgbmdEZXZNb2RlID8gJ0hUVFBfUk9PVF9JTlRFUkNFUFRPUl9GTlMnIDogJycsXG4pO1xuXG4vLyBUT0RPKGF0c2NvdHQpOiBXZSBuZWVkIGEgbGFyZ2VyIGRpc2N1c3Npb24gYWJvdXQgc3RhYmlsaXR5IGFuZCB3aGF0IHNob3VsZCBjb250cmlidXRlIHRvIHN0YWJpbGl0eS5cbi8vIFNob3VsZCB0aGUgd2hvbGUgaW50ZXJjZXB0b3IgY2hhaW4gY29udHJpYnV0ZSB0byBzdGFiaWxpdHkgb3IganVzdCB0aGUgYmFja2VuZCByZXF1ZXN0ICM1NTA3NT9cbi8vIFNob3VsZCBIdHRwQ2xpZW50IGNvbnRyaWJ1dGUgdG8gc3RhYmlsaXR5IGF1dG9tYXRpY2FsbHkgYXQgYWxsP1xuZXhwb3J0IGNvbnN0IFJFUVVFU1RTX0NPTlRSSUJVVEVfVE9fU1RBQklMSVRZID0gbmV3IEluamVjdGlvblRva2VuPGJvb2xlYW4+KFxuICBuZ0Rldk1vZGUgPyAnUkVRVUVTVFNfQ09OVFJJQlVURV9UT19TVEFCSUxJVFknIDogJycsXG4gIHtwcm92aWRlZEluOiAncm9vdCcsIGZhY3Rvcnk6ICgpID0+IHRydWV9LFxuKTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuIGBIdHRwSW50ZXJjZXB0b3JGbmAgd2hpY2ggbGF6aWx5IGluaXRpYWxpemVzIGFuIGludGVyY2VwdG9yIGNoYWluIGZyb20gdGhlIGxlZ2FjeVxuICogY2xhc3MtYmFzZWQgaW50ZXJjZXB0b3JzIGFuZCBydW5zIHRoZSByZXF1ZXN0IHRocm91Z2ggaXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsZWdhY3lJbnRlcmNlcHRvckZuRmFjdG9yeSgpOiBIdHRwSW50ZXJjZXB0b3JGbiB7XG4gIGxldCBjaGFpbjogQ2hhaW5lZEludGVyY2VwdG9yRm48YW55PiB8IG51bGwgPSBudWxsO1xuXG4gIHJldHVybiAocmVxLCBoYW5kbGVyKSA9PiB7XG4gICAgaWYgKGNoYWluID09PSBudWxsKSB7XG4gICAgICBjb25zdCBpbnRlcmNlcHRvcnMgPSBpbmplY3QoSFRUUF9JTlRFUkNFUFRPUlMsIHtvcHRpb25hbDogdHJ1ZX0pID8/IFtdO1xuICAgICAgLy8gTm90ZTogaW50ZXJjZXB0b3JzIGFyZSB3cmFwcGVkIHJpZ2h0LXRvLWxlZnQgc28gdGhhdCBmaW5hbCBleGVjdXRpb24gb3JkZXIgaXNcbiAgICAgIC8vIGxlZnQtdG8tcmlnaHQuIFRoYXQgaXMsIGlmIGBpbnRlcmNlcHRvcnNgIGlzIHRoZSBhcnJheSBgW2EsIGIsIGNdYCwgd2Ugd2FudCB0b1xuICAgICAgLy8gcHJvZHVjZSBhIGNoYWluIHRoYXQgaXMgY29uY2VwdHVhbGx5IGBjKGIoYShlbmQpKSlgLCB3aGljaCB3ZSBidWlsZCBmcm9tIHRoZSBpbnNpZGVcbiAgICAgIC8vIG91dC5cbiAgICAgIGNoYWluID0gaW50ZXJjZXB0b3JzLnJlZHVjZVJpZ2h0KFxuICAgICAgICBhZGFwdExlZ2FjeUludGVyY2VwdG9yVG9DaGFpbixcbiAgICAgICAgaW50ZXJjZXB0b3JDaGFpbkVuZEZuIGFzIENoYWluZWRJbnRlcmNlcHRvckZuPGFueT4sXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHBlbmRpbmdUYXNrcyA9IGluamVjdChQZW5kaW5nVGFza3MpO1xuICAgIGNvbnN0IGNvbnRyaWJ1dGVUb1N0YWJpbGl0eSA9IGluamVjdChSRVFVRVNUU19DT05UUklCVVRFX1RPX1NUQUJJTElUWSk7XG4gICAgaWYgKGNvbnRyaWJ1dGVUb1N0YWJpbGl0eSkge1xuICAgICAgY29uc3QgdGFza0lkID0gcGVuZGluZ1Rhc2tzLmFkZCgpO1xuICAgICAgcmV0dXJuIGNoYWluKHJlcSwgaGFuZGxlcikucGlwZShmaW5hbGl6ZSgoKSA9PiBwZW5kaW5nVGFza3MucmVtb3ZlKHRhc2tJZCkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNoYWluKHJlcSwgaGFuZGxlcik7XG4gICAgfVxuICB9O1xufVxuXG5sZXQgZmV0Y2hCYWNrZW5kV2FybmluZ0Rpc3BsYXllZCA9IGZhbHNlO1xuXG4vKiogSW50ZXJuYWwgZnVuY3Rpb24gdG8gcmVzZXQgdGhlIGZsYWcgaW4gdGVzdHMgKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNldEZldGNoQmFja2VuZFdhcm5pbmdGbGFnKCkge1xuICBmZXRjaEJhY2tlbmRXYXJuaW5nRGlzcGxheWVkID0gZmFsc2U7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIdHRwSW50ZXJjZXB0b3JIYW5kbGVyIGV4dGVuZHMgSHR0cEhhbmRsZXIge1xuICBwcml2YXRlIGNoYWluOiBDaGFpbmVkSW50ZXJjZXB0b3JGbjx1bmtub3duPiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHJlYWRvbmx5IHBlbmRpbmdUYXNrcyA9IGluamVjdChQZW5kaW5nVGFza3MpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyaWJ1dGVUb1N0YWJpbGl0eSA9IGluamVjdChSRVFVRVNUU19DT05UUklCVVRFX1RPX1NUQUJJTElUWSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBiYWNrZW5kOiBIdHRwQmFja2VuZCxcbiAgICBwcml2YXRlIGluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yLFxuICApIHtcbiAgICBzdXBlcigpO1xuXG4gICAgLy8gV2Ugc3Ryb25nbHkgcmVjb21tZW5kIHVzaW5nIGZldGNoIGJhY2tlbmQgZm9yIEhUVFAgY2FsbHMgd2hlbiBTU1IgaXMgdXNlZFxuICAgIC8vIGZvciBhbiBhcHBsaWNhdGlvbi4gVGhlIGxvZ2ljIGJlbG93IGNoZWNrcyBpZiB0aGF0J3MgdGhlIGNhc2UgYW5kIHByb2R1Y2VzXG4gICAgLy8gYSB3YXJuaW5nIG90aGVyd2lzZS5cbiAgICBpZiAoKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkgJiYgIWZldGNoQmFja2VuZFdhcm5pbmdEaXNwbGF5ZWQpIHtcbiAgICAgIGNvbnN0IGlzU2VydmVyID0gaXNQbGF0Zm9ybVNlcnZlcihpbmplY3Rvci5nZXQoUExBVEZPUk1fSUQpKTtcbiAgICAgIGlmIChpc1NlcnZlciAmJiAhKHRoaXMuYmFja2VuZCBpbnN0YW5jZW9mIEZldGNoQmFja2VuZCkpIHtcbiAgICAgICAgZmV0Y2hCYWNrZW5kV2FybmluZ0Rpc3BsYXllZCA9IHRydWU7XG4gICAgICAgIGluamVjdG9yXG4gICAgICAgICAgLmdldChDb25zb2xlKVxuICAgICAgICAgIC53YXJuKFxuICAgICAgICAgICAgZm9ybWF0UnVudGltZUVycm9yKFxuICAgICAgICAgICAgICBSdW50aW1lRXJyb3JDb2RlLk5PVF9VU0lOR19GRVRDSF9CQUNLRU5EX0lOX1NTUixcbiAgICAgICAgICAgICAgJ0FuZ3VsYXIgZGV0ZWN0ZWQgdGhhdCBgSHR0cENsaWVudGAgaXMgbm90IGNvbmZpZ3VyZWQgJyArXG4gICAgICAgICAgICAgICAgXCJ0byB1c2UgYGZldGNoYCBBUElzLiBJdCdzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRvIFwiICtcbiAgICAgICAgICAgICAgICAnZW5hYmxlIGBmZXRjaGAgZm9yIGFwcGxpY2F0aW9ucyB0aGF0IHVzZSBTZXJ2ZXItU2lkZSBSZW5kZXJpbmcgJyArXG4gICAgICAgICAgICAgICAgJ2ZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgYW5kIGNvbXBhdGliaWxpdHkuICcgK1xuICAgICAgICAgICAgICAgICdUbyBlbmFibGUgYGZldGNoYCwgYWRkIHRoZSBgd2l0aEZldGNoKClgIHRvIHRoZSBgcHJvdmlkZUh0dHBDbGllbnQoKWAgJyArXG4gICAgICAgICAgICAgICAgJ2NhbGwgYXQgdGhlIHJvb3Qgb2YgdGhlIGFwcGxpY2F0aW9uLicsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgaGFuZGxlKGluaXRpYWxSZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGlmICh0aGlzLmNoYWluID09PSBudWxsKSB7XG4gICAgICBjb25zdCBkZWR1cGVkSW50ZXJjZXB0b3JGbnMgPSBBcnJheS5mcm9tKFxuICAgICAgICBuZXcgU2V0KFtcbiAgICAgICAgICAuLi50aGlzLmluamVjdG9yLmdldChIVFRQX0lOVEVSQ0VQVE9SX0ZOUyksXG4gICAgICAgICAgLi4udGhpcy5pbmplY3Rvci5nZXQoSFRUUF9ST09UX0lOVEVSQ0VQVE9SX0ZOUywgW10pLFxuICAgICAgICBdKSxcbiAgICAgICk7XG5cbiAgICAgIC8vIE5vdGU6IGludGVyY2VwdG9ycyBhcmUgd3JhcHBlZCByaWdodC10by1sZWZ0IHNvIHRoYXQgZmluYWwgZXhlY3V0aW9uIG9yZGVyIGlzXG4gICAgICAvLyBsZWZ0LXRvLXJpZ2h0LiBUaGF0IGlzLCBpZiBgZGVkdXBlZEludGVyY2VwdG9yRm5zYCBpcyB0aGUgYXJyYXkgYFthLCBiLCBjXWAsIHdlIHdhbnQgdG9cbiAgICAgIC8vIHByb2R1Y2UgYSBjaGFpbiB0aGF0IGlzIGNvbmNlcHR1YWxseSBgYyhiKGEoZW5kKSkpYCwgd2hpY2ggd2UgYnVpbGQgZnJvbSB0aGUgaW5zaWRlXG4gICAgICAvLyBvdXQuXG4gICAgICB0aGlzLmNoYWluID0gZGVkdXBlZEludGVyY2VwdG9yRm5zLnJlZHVjZVJpZ2h0KFxuICAgICAgICAobmV4dFNlcXVlbmNlZEZuLCBpbnRlcmNlcHRvckZuKSA9PlxuICAgICAgICAgIGNoYWluZWRJbnRlcmNlcHRvckZuKG5leHRTZXF1ZW5jZWRGbiwgaW50ZXJjZXB0b3JGbiwgdGhpcy5pbmplY3RvciksXG4gICAgICAgIGludGVyY2VwdG9yQ2hhaW5FbmRGbiBhcyBDaGFpbmVkSW50ZXJjZXB0b3JGbjx1bmtub3duPixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29udHJpYnV0ZVRvU3RhYmlsaXR5KSB7XG4gICAgICBjb25zdCB0YXNrSWQgPSB0aGlzLnBlbmRpbmdUYXNrcy5hZGQoKTtcbiAgICAgIHJldHVybiB0aGlzLmNoYWluKGluaXRpYWxSZXF1ZXN0LCAoZG93bnN0cmVhbVJlcXVlc3QpID0+XG4gICAgICAgIHRoaXMuYmFja2VuZC5oYW5kbGUoZG93bnN0cmVhbVJlcXVlc3QpLFxuICAgICAgKS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMucGVuZGluZ1Rhc2tzLnJlbW92ZSh0YXNrSWQpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmNoYWluKGluaXRpYWxSZXF1ZXN0LCAoZG93bnN0cmVhbVJlcXVlc3QpID0+XG4gICAgICAgIHRoaXMuYmFja2VuZC5oYW5kbGUoZG93bnN0cmVhbVJlcXVlc3QpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -3,7 +3,7 @@
3
3
  * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
6
+ * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  import { DOCUMENT } from '@angular/common';
9
9
  import { EnvironmentInjector, Inject, inject, Injectable, runInInjectionContext, } from '@angular/core';
@@ -204,10 +204,10 @@ export class JsonpClientBackend {
204
204
  foreignDocument ??= this.document.implementation.createHTMLDocument();
205
205
  foreignDocument.adoptNode(script);
206
206
  }
207
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpClientBackend, deps: [{ token: JsonpCallbackContext }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
208
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpClientBackend }); }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpClientBackend, deps: [{ token: JsonpCallbackContext }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
208
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpClientBackend }); }
209
209
  }
210
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpClientBackend, decorators: [{
210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpClientBackend, decorators: [{
211
211
  type: Injectable
212
212
  }], ctorParameters: () => [{ type: JsonpCallbackContext }, { type: undefined, decorators: [{
213
213
  type: Inject,
@@ -245,10 +245,10 @@ export class JsonpInterceptor {
245
245
  intercept(initialRequest, next) {
246
246
  return runInInjectionContext(this.injector, () => jsonpInterceptorFn(initialRequest, (downstreamRequest) => next.handle(downstreamRequest)));
247
247
  }
248
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
249
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpInterceptor }); }
248
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
249
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpInterceptor }); }
250
250
  }
251
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: JsonpInterceptor, decorators: [{
251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: JsonpInterceptor, decorators: [{
252
252
  type: Injectable
253
253
  }], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
254
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbnAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvanNvbnAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsTUFBTSxFQUNOLE1BQU0sRUFDTixVQUFVLEVBQ1YscUJBQXFCLEdBQ3RCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxVQUFVLEVBQVcsTUFBTSxNQUFNLENBQUM7QUFLMUMsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixpQkFBaUIsRUFFakIsYUFBYSxFQUNiLFlBQVksR0FDYixNQUFNLFlBQVksQ0FBQzs7QUFFcEIsa0ZBQWtGO0FBQ2xGLGtGQUFrRjtBQUNsRixrRkFBa0Y7QUFDbEYsZ0RBQWdEO0FBQ2hELElBQUksYUFBYSxHQUFXLENBQUMsQ0FBQztBQUU5Qjs7O0dBR0c7QUFDSCxJQUFJLGVBQXFDLENBQUM7QUFFMUMsb0ZBQW9GO0FBQ3BGLHFCQUFxQjtBQUNyQixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxnREFBZ0QsQ0FBQztBQUV0RixtRkFBbUY7QUFDbkYsK0JBQStCO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLCtDQUErQyxDQUFDO0FBQ3RGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLDZDQUE2QyxDQUFDO0FBRTNGLCtFQUErRTtBQUMvRSxjQUFjO0FBQ2QsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsd0NBQXdDLENBQUM7QUFFeEY7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFnQixvQkFBb0I7Q0FFekM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FB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QU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFBb0IsUUFBNkI7UUFBN0IsYUFBUSxHQUFSLFFBQVEsQ0FBcUI7SUFBRyxDQUFDO0lBRXJEOzs7Ozs7T0FNRztJQUNILFNBQVMsQ0FBQyxjQUFnQyxFQUFFLElBQWlCO1FBQzNELE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FDL0Msa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUMxRixDQUFDO0lBQ0osQ0FBQzt5SEFkVSxnQkFBZ0I7NkhBQWhCLGdCQUFnQjs7c0dBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgRW52aXJvbm1lbnRJbmplY3RvcixcbiAgSW5qZWN0LFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIE9ic2VydmVyfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtIdHRwQmFja2VuZCwgSHR0cEhhbmRsZXJ9IGZyb20gJy4vYmFja2VuZCc7XG5pbXBvcnQge0h0dHBIYW5kbGVyRm59IGZyb20gJy4vaW50ZXJjZXB0b3InO1xuaW1wb3J0IHtIdHRwUmVxdWVzdH0gZnJvbSAnLi9yZXF1ZXN0JztcbmltcG9ydCB7XG4gIEhUVFBfU1RBVFVTX0NPREVfT0ssXG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwRXZlbnQsXG4gIEh0dHBFdmVudFR5cGUsXG4gIEh0dHBSZXNwb25zZSxcbn0gZnJvbSAnLi9yZXNwb25zZSc7XG5cbi8vIEV2ZXJ5IHJlcXVlc3QgbWFkZSB0aHJvdWdoIEpTT05QIG5lZWRzIGEgY2FsbGJhY2sgbmFtZSB0aGF0J3MgdW5pcXVlIGFjcm9zcyB0aGVcbi8vIHdob2xlIHBhZ2UuIEVhY2ggcmVxdWVzdCBpcyBhc3NpZ25lZCBhbiBpZCBhbmQgdGhlIGNhbGxiYWNrIG5hbWUgaXMgY29uc3RydWN0ZWRcbi8vIGZyb20gdGhhdC4gVGhlIG5leHQgaWQgdG8gYmUgYXNzaWduZWQgaXMgdHJhY2tlZCBpbiBhIGdsb2JhbCB2YXJpYWJsZSBoZXJlIHRoYXRcbi8vIGlzIHNoYXJlZCBhbW9uZyBhbGwgYXBwbGljYXRpb25zIG9uIHRoZSBwYWdlLlxubGV0IG5leHRSZXF1ZXN0SWQ6IG51bWJlciA9IDA7XG5cbi8qKlxuICogV2hlbiBhIHBlbmRpbmcgPHNjcmlwdD4gaXMgdW5zdWJzY3JpYmVkIHdlJ2xsIG1vdmUgaXQgdG8gdGhpcyBkb2N1bWVudCwgc28gaXQgd29uJ3QgYmVcbiAqIGV4ZWN1dGVkLlxuICovXG5sZXQgZm9yZWlnbkRvY3VtZW50OiBEb2N1bWVudCB8IHVuZGVmaW5lZDtcblxuLy8gRXJyb3IgdGV4dCBnaXZlbiB3aGVuIGEgSlNPTlAgc2NyaXB0IGlzIGluamVjdGVkLCBidXQgZG9lc24ndCBpbnZva2UgdGhlIGNhbGxiYWNrXG4vLyBwYXNzZWQgaW4gaXRzIFVSTC5cbmV4cG9ydCBjb25zdCBKU09OUF9FUlJfTk9fQ0FMTEJBQ0sgPSAnSlNPTlAgaW5qZWN0ZWQgc2NyaXB0IGRpZCBub3QgaW52b2tlIGNhbGxiYWNrLic7XG5cbi8vIEVycm9yIHRleHQgZ2l2ZW4gd2hlbiBhIHJlcXVlc3QgaXMgcGFzc2VkIHRvIHRoZSBKc29ucENsaWVudEJhY2tlbmQgdGhhdCBkb2Vzbid0XG4vLyBoYXZlIGEgcmVxdWVzdCBtZXRob2QgSlNPTlAuXG5leHBvcnQgY29uc3QgSlNPTlBfRVJSX1dST05HX01FVEhPRCA9ICdKU09OUCByZXF1ZXN0cyBtdXN0IHVzZSBKU09OUCByZXF1ZXN0IG1ldGhvZC4nO1xuZXhwb3J0IGNvbnN0IEpTT05QX0VSUl9XUk9OR19SRVNQT05TRV9UWVBFID0gJ0pTT05QIHJlcXVlc3RzIG11c3QgdXNlIEpzb24gcmVzcG9uc2UgdHlwZS4nO1xuXG4vLyBFcnJvciB0ZXh0IGdpdmVuIHdoZW4gYSByZXF1ZXN0IGlzIHBhc3NlZCB0byB0aGUgSnNvbnBDbGllbnRCYWNrZW5kIHRoYXQgaGFzXG4vLyBoZWFkZXJzIHNldFxuZXhwb3J0IGNvbnN0IEpTT05QX0VSUl9IRUFERVJTX05PVF9TVVBQT1JURUQgPSAnSlNPTlAgcmVxdWVzdHMgZG8gbm90IHN1cHBvcnQgaGVhZGVycy4nO1xuXG4vKipcbiAqIERJIHRva2VuL2Fic3RyYWN0IHR5cGUgcmVwcmVzZW50aW5nIGEgbWFwIG9mIEpTT05QIGNhbGxiYWNrcy5cbiAqXG4gKiBJbiB0aGUgYnJvd3NlciwgdGhpcyBzaG91bGQgYWx3YXlzIGJlIHRoZSBgd2luZG93YCBvYmplY3QuXG4gKlxuICpcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEpzb25wQ2FsbGJhY2tDb250ZXh0IHtcbiAgW2tleTogc3RyaW5nXTogKGRhdGE6IGFueSkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBGYWN0b3J5IGZ1bmN0aW9uIHRoYXQgZGV0ZXJtaW5lcyB3aGVyZSB0byBzdG9yZSBKU09OUCBjYWxsYmFja3MuXG4gKlxuICogT3JkaW5hcmlseSBKU09OUCBjYWxsYmFja3MgYXJlIHN0b3JlZCBvbiB0aGUgYHdpbmRvd2Agb2JqZWN0LCBidXQgdGhpcyBtYXkgbm90IGV4aXN0XG4gKiBpbiB0ZXN0IGVudmlyb25tZW50cy4gSW4gdGhhdCBjYXNlLCBjYWxsYmFja3MgYXJlIHN0b3JlZCBvbiBhbiBhbm9ueW1vdXMgb2JqZWN0IGluc3RlYWQuXG4gKlxuICpcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGpzb25wQ2FsbGJhY2tDb250ZXh0KCk6IE9iamVjdCB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiB3aW5kb3c7XG4gIH1cbiAgcmV0dXJuIHt9O1xufVxuXG4vKipcbiAqIFByb2Nlc3NlcyBhbiBgSHR0cFJlcXVlc3RgIHdpdGggdGhlIEpTT05QIG1ldGhvZCxcbiAqIGJ5IHBlcmZvcm1pbmcgSlNPTlAgc3R5bGUgcmVxdWVzdHMuXG4gKiBAc2VlIHtAbGluayBIdHRwSGFuZGxlcn1cbiAqIEBzZWUge0BsaW5rIEh0dHBYaHJCYWNrZW5kfVxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEpzb25wQ2xpZW50QmFja2VuZCBpbXBsZW1lbnRzIEh0dHBCYWNrZW5kIHtcbiAgLyoqXG4gICAqIEEgcmVzb2x2ZWQgcHJvbWlzZSB0aGF0IGNhbiBiZSB1c2VkIHRvIHNjaGVkdWxlIG1pY3JvdGFza3MgaW4gdGhlIGV2ZW50IGhhbmRsZXJzLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSByZXNvbHZlZFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhbGxiYWNrTWFwOiBKc29ucENhbGxiYWNrQ29udGV4dCxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXG4gICkge31cblxuICAvKipcbiAgICogR2V0IHRoZSBuYW1lIG9mIHRoZSBuZXh0IGNhbGxiYWNrIG1ldGhvZCwgYnkgaW5jcmVtZW50aW5nIHRoZSBnbG9iYWwgYG5leHRSZXF1ZXN0SWRgLlxuICAgKi9cbiAgcHJpdmF0ZSBuZXh0Q2FsbGJhY2soKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYG5nX2pzb25wX2NhbGxiYWNrXyR7bmV4dFJlcXVlc3RJZCsrfWA7XG4gIH1cblxuICAvKipcbiAgICogUHJvY2Vzc2VzIGEgSlNPTlAgcmVxdWVzdCBhbmQgcmV0dXJucyBhbiBldmVudCBzdHJlYW0gb2YgdGhlIHJlc3VsdHMuXG4gICAqIEBwYXJhbSByZXEgVGhlIHJlcXVlc3Qgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIG9mIHRoZSByZXNwb25zZSBldmVudHMuXG4gICAqXG4gICAqL1xuICBoYW5kbGUocmVxOiBIdHRwUmVxdWVzdDxuZXZlcj4pOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgLy8gRmlyc3RseSwgY2hlY2sgYm90aCB0aGUgbWV0aG9kIGFuZCByZXNwb25zZSB0eXBlLiBJZiBlaXRoZXIgZG9lc24ndCBtYXRjaFxuICAgIC8vIHRoZW4gdGhlIHJlcXVlc3Qgd2FzIGltcHJvcGVybHkgcm91dGVkIGhlcmUgYW5kIGNhbm5vdCBiZSBoYW5kbGVkLlxuICAgIGlmIChyZXEubWV0aG9kICE9PSAnSlNPTlAnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTlBfRVJSX1dST05HX01FVEhPRCk7XG4gICAgfSBlbHNlIGlmIChyZXEucmVzcG9uc2VUeXBlICE9PSAnanNvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihKU09OUF9FUlJfV1JPTkdfUkVTUE9OU0VfVFlQRSk7XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgdGhlIHJlcXVlc3QgaGVhZGVycy4gSlNPTlAgZG9lc24ndCBzdXBwb3J0IGhlYWRlcnMgYW5kXG4gICAgLy8gY2Fubm90IHNldCBhbnkgdGhhdCB3ZXJlIHN1cHBsaWVkLlxuICAgIGlmIChyZXEuaGVhZGVycy5rZXlzKCkubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT05QX0VSUl9IRUFERVJTX05PVF9TVVBQT1JURUQpO1xuICAgIH1cblxuICAgIC8vIEV2ZXJ5dGhpbmcgZWxzZSBoYXBwZW5zIGluc2lkZSB0aGUgT2JzZXJ2YWJsZSBib3VuZGFyeS5cbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+KChvYnNlcnZlcjogT2JzZXJ2ZXI8SHR0cEV2ZW50PGFueT4+KSA9PiB7XG4gICAgICAvLyBUaGUgZmlyc3Qgc3RlcCB0byBtYWtlIGEgcmVxdWVzdCBpcyB0byBnZW5lcmF0ZSB0aGUgY2FsbGJhY2sgbmFtZSwgYW5kIHJlcGxhY2UgdGhlXG4gICAgICAvLyBjYWxsYmFjayBwbGFjZWhvbGRlciBpbiB0aGUgVVJMIHdpdGggdGhlIG5hbWUuIENhcmUgaGFzIHRvIGJlIHRha2VuIGhlcmUgdG8gZW5zdXJlXG4gICAgICAvLyBhIHRyYWlsaW5nICYsIGlmIG1hdGNoZWQsIGdldHMgaW5zZXJ0ZWQgYmFjayBpbnRvIHRoZSBVUkwgaW4gdGhlIGNvcnJlY3QgcGxhY2UuXG4gICAgICBjb25zdCBjYWxsYmFjayA9IHRoaXMubmV4dENhbGxiYWNrKCk7XG4gICAgICBjb25zdCB1cmwgPSByZXEudXJsV2l0aFBhcmFtcy5yZXBsYWNlKC89SlNPTlBfQ0FMTEJBQ0soJnwkKS8sIGA9JHtjYWxsYmFja30kMWApO1xuXG4gICAgICAvLyBDb25zdHJ1Y3QgdGhlIDxzY3JpcHQ+IHRhZyBhbmQgcG9pbnQgaXQgYXQgdGhlIFVSTC5cbiAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgbm9kZS5zcmMgPSB1cmw7XG5cbiAgICAgIC8vIEEgSlNPTlAgcmVxdWVzdCByZXF1aXJlcyB3YWl0aW5nIGZvciBtdWx0aXBsZSBjYWxsYmFja3MuIFRoZXNlIHZhcmlhYmxlc1xuICAgICAgLy8gYXJlIGNsb3NlZCBvdmVyIGFuZCB0cmFjayBzdGF0ZSBhY3Jvc3MgdGhvc2UgY2FsbGJhY2tzLlxuXG4gICAgICAvLyBUaGUgcmVzcG9uc2Ugb2JqZWN0LCBpZiBvbmUgaGFzIGJlZW4gcmVjZWl2ZWQsIG9yIG51bGwgb3RoZXJ3aXNlLlxuICAgICAgbGV0IGJvZHk6IGFueSB8IG51bGwgPSBudWxsO1xuXG4gICAgICAvLyBXaGV0aGVyIHRoZSByZXNwb25zZSBjYWxsYmFjayBoYXMgYmVlbiBjYWxsZWQuXG4gICAgICBsZXQgZmluaXNoZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgICAgLy8gU2V0IHRoZSByZXNwb25zZSBjYWxsYmFjayBpbiB0aGlzLmNhbGxiYWNrTWFwICh3aGljaCB3aWxsIGJlIHRoZSB3aW5kb3dcbiAgICAgIC8vIG9iamVjdCBpbiB0aGUgYnJvd3Nlci4gVGhlIHNjcmlwdCBiZWluZyBsb2FkZWQgdmlhIHRoZSA8c2NyaXB0PiB0YWcgd2lsbFxuICAgICAgLy8gZXZlbnR1YWxseSBjYWxsIHRoaXMgY2FsbGJhY2suXG4gICAgICB0aGlzLmNhbGxiYWNrTWFwW2NhbGxiYWNrXSA9IChkYXRhPzogYW55KSA9PiB7XG4gICAgICAgIC8vIERhdGEgaGFzIGJlZW4gcmVjZWl2ZWQgZnJvbSB0aGUgSlNPTlAgc2NyaXB0LiBGaXJzdGx5LCBkZWxldGUgdGhpcyBjYWxsYmFjay5cbiAgICAgICAgZGVsZXRlIHRoaXMuY2FsbGJhY2tNYXBbY2FsbGJhY2tdO1xuXG4gICAgICAgIC8vIFNldCBzdGF0ZSB0byBpbmRpY2F0ZSBkYXRhIHdhcyByZWNlaXZlZC5cbiAgICAgICAgYm9keSA9IGRhdGE7XG4gICAgICAgIGZpbmlzaGVkID0gdHJ1ZTtcbiAgICAgIH07XG5cbiAgICAgIC8vIGNsZWFudXAoKSBpcyBhIHV0aWxpdHkgY2xvc3VyZSB0aGF0IHJlbW92ZXMgdGhlIDxzY3JpcHQ+IGZyb20gdGhlIHBhZ2UgYW5kXG4gICAgICAvLyB0aGUgcmVzcG9uc2UgY2FsbGJhY2sgZnJvbSB0aGUgd2luZG93LiBUaGlzIGxvZ2ljIGlzIHVzZWQgaW4gYm90aCB0aGVcbiAgICAgIC8vIHN1Y2Nlc3MsIGVycm9yLCBhbmQgY2FuY2VsbGF0aW9uIHBhdGhzLCBzbyBpdCdzIGV4dHJhY3RlZCBvdXQgZm9yIGNvbnZlbmllbmNlLlxuICAgICAgY29uc3QgY2xlYW51cCA9ICgpID0+IHtcbiAgICAgICAgLy8gUmVtb3ZlIHRoZSA8c2NyaXB0PiB0YWcgaWYgaXQncyBzdGlsbCBvbiB0aGUgcGFnZS5cbiAgICAgICAgbm9kZS5yZW1vdmUoKTtcblxuICAgICAgICAvLyBSZW1vdmUgdGhlIHJlc3BvbnNlIGNhbGxiYWNrIGZyb20gdGhlIGNhbGxiYWNrTWFwICh3aW5kb3cgb2JqZWN0IGluIHRoZVxuICAgICAgICAvLyBicm93c2VyKS5cbiAgICAgICAgZGVsZXRlIHRoaXMuY2FsbGJhY2tNYXBbY2FsbGJhY2tdO1xuICAgICAgfTtcblxuICAgICAgLy8gb25Mb2FkKCkgaXMgdGhlIHN1Y2Nlc3MgY2FsbGJhY2sgd2hpY2ggcnVucyBhZnRlciB0aGUgcmVzcG9uc2UgY2FsbGJhY2tcbiAgICAgIC8vIGlmIHRoZSBKU09OUCBzY3JpcHQgbG9hZHMgc3VjY2Vzc2Z1bGx5LiBUaGUgZXZlbnQgaXRzZWxmIGlzIHVuaW1wb3J0YW50LlxuICAgICAgLy8gSWYgc29tZXRoaW5nIHdlbnQgd3JvbmcsIG9uTG9hZCgpIG1heSBydW4gd2l0aG91dCB0aGUgcmVzcG9uc2UgY2FsbGJhY2tcbiAgICAgIC8vIGhhdmluZyBiZWVuIGludm9rZWQuXG4gICAgICBjb25zdCBvbkxvYWQgPSAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgIC8vIFdlIHdyYXAgaXQgaW4gYW4gZXh0cmEgUHJvbWlzZSwgdG8gZW5zdXJlIHRoZSBtaWNyb3Rhc2tcbiAgICAgICAgLy8gaXMgc2NoZWR1bGVkIGFmdGVyIHRoZSBsb2FkZWQgZW5kcG9pbnQgaGFzIGV4ZWN1dGVkIGFueSBwb3RlbnRpYWwgbWljcm90YXNrIGl0c2VsZixcbiAgICAgICAgLy8gd2hpY2ggaXMgbm90IGd1YXJhbnRlZWQgaW4gSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2VIVE1MLiBTZWUgaXNzdWUgIzM5NDk2XG4gICAgICAgIHRoaXMucmVzb2x2ZWRQcm9taXNlLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIC8vIENsZWFudXAgdGhlIHBhZ2UuXG4gICAgICAgICAgY2xlYW51cCgpO1xuXG4gICAgICAgICAgLy8gQ2hlY2sgd2hldGhlciB0aGUgcmVzcG9uc2UgY2FsbGJhY2sgaGFzIHJ1bi5cbiAgICAgICAgICBpZiAoIWZpbmlzaGVkKSB7XG4gICAgICAgICAgICAvLyBJdCBoYXNuJ3QsIHNvbWV0aGluZyB3ZW50IHdyb25nIHdpdGggdGhlIHJlcXVlc3QuIFJldHVybiBhbiBlcnJvciB2aWFcbiAgICAgICAgICAgIC8vIHRoZSBPYnNlcnZhYmxlIGVycm9yIHBhdGguIEFsbCBKU09OUCBlcnJvcnMgaGF2ZSBzdGF0dXMgMC5cbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKFxuICAgICAgICAgICAgICBuZXcgSHR0cEVycm9yUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIHVybCxcbiAgICAgICAgICAgICAgICBzdGF0dXM6IDAsXG4gICAgICAgICAgICAgICAgc3RhdHVzVGV4dDogJ0pTT05QIEVycm9yJyxcbiAgICAgICAgICAgICAgICBlcnJvcjogbmV3IEVycm9yKEpTT05QX0VSUl9OT19DQUxMQkFDSyksXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBTdWNjZXNzLiBib2R5IGVpdGhlciBjb250YWlucyB0aGUgcmVzcG9uc2UgYm9keSBvciBudWxsIGlmIG5vbmUgd2FzXG4gICAgICAgICAgLy8gcmV0dXJuZWQuXG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChcbiAgICAgICAgICAgIG5ldyBIdHRwUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgICBzdGF0dXM6IEhUVFBfU1RBVFVTX0NPREVfT0ssXG4gICAgICAgICAgICAgIHN0YXR1c1RleHQ6ICdPSycsXG4gICAgICAgICAgICAgIHVybCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICAvLyBDb21wbGV0ZSB0aGUgc3RyZWFtLCB0aGUgcmVzcG9uc2UgaXMgb3Zlci5cbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIC8vIG9uRXJyb3IoKSBpcyB0aGUgZXJyb3IgY2FsbGJhY2ssIHdoaWNoIHJ1bnMgaWYgdGhlIHNjcmlwdCByZXR1cm5lZCBnZW5lcmF0ZXNcbiAgICAgIC8vIGEgSmF2YXNjcmlwdCBlcnJvci4gSXQgZW1pdHMgdGhlIGVycm9yIHZpYSB0aGUgT2JzZXJ2YWJsZSBlcnJvciBjaGFubmVsIGFzXG4gICAgICAvLyBhIEh0dHBFcnJvclJlc3BvbnNlLlxuICAgICAgY29uc3Qgb25FcnJvcjogYW55ID0gKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICBjbGVhbnVwKCk7XG5cbiAgICAgICAgLy8gV3JhcCB0aGUgZXJyb3IgaW4gYSBIdHRwRXJyb3JSZXNwb25zZS5cbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoXG4gICAgICAgICAgbmV3IEh0dHBFcnJvclJlc3BvbnNlKHtcbiAgICAgICAgICAgIGVycm9yLFxuICAgICAgICAgICAgc3RhdHVzOiAwLFxuICAgICAgICAgICAgc3RhdHVzVGV4dDogJ0pTT05QIEVycm9yJyxcbiAgICAgICAgICAgIHVybCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH07XG5cbiAgICAgIC8vIFN1YnNjcmliZSB0byBib3RoIHRoZSBzdWNjZXNzIChsb2FkKSBhbmQgZXJyb3IgZXZlbnRzIG9uIHRoZSA8c2NyaXB0PiB0YWcsXG4gICAgICAvLyBhbmQgYWRkIGl0IHRvIHRoZSBwYWdlLlxuICAgICAgbm9kZS5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgb25Mb2FkKTtcbiAgICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIHRoaXMuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChub2RlKTtcblxuICAgICAgLy8gVGhlIHJlcXVlc3QgaGFzIG5vdyBiZWVuIHN1Y2Nlc3NmdWxseSBzZW50LlxuICAgICAgb2JzZXJ2ZXIubmV4dCh7dHlwZTogSHR0cEV2ZW50VHlwZS5TZW50fSk7XG5cbiAgICAgIC8vIENhbmNlbGxhdGlvbiBoYW5kbGVyLlxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaWYgKCFmaW5pc2hlZCkge1xuICAgICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKG5vZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQW5kIGZpbmFsbHksIGNsZWFuIHVwIHRoZSBwYWdlLlxuICAgICAgICBjbGVhbnVwKCk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVMaXN0ZW5lcnMoc2NyaXB0OiBIVE1MU2NyaXB0RWxlbWVudCk6IHZvaWQge1xuICAgIC8vIElzc3VlICMzNDgxOFxuICAgIC8vIENoYW5naW5nIDxzY3JpcHQ+J3Mgb3duZXJEb2N1bWVudCB3aWxsIHByZXZlbnQgaXQgZnJvbSBleGVjdXRpb24uXG4gICAgLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvc2NyaXB0aW5nLmh0bWwjZXhlY3V0ZS10aGUtc2NyaXB0LWJsb2NrXG4gICAgZm9yZWlnbkRvY3VtZW50ID8/PSAodGhpcy5kb2N1bWVudC5pbXBsZW1lbnRhdGlvbiBhcyBET01JbXBsZW1lbnRhdGlvbikuY3JlYXRlSFRNTERvY3VtZW50KCk7XG5cbiAgICBmb3JlaWduRG9jdW1lbnQuYWRvcHROb2RlKHNjcmlwdCk7XG4gIH1cbn1cblxuLyoqXG4gKiBJZGVudGlmaWVzIHJlcXVlc3RzIHdpdGggdGhlIG1ldGhvZCBKU09OUCBhbmQgc2hpZnRzIHRoZW0gdG8gdGhlIGBKc29ucENsaWVudEJhY2tlbmRgLlxuICovXG5leHBvcnQgZnVuY3Rpb24ganNvbnBJbnRlcmNlcHRvckZuKFxuICByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICBuZXh0OiBIdHRwSGFuZGxlckZuLFxuKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcbiAgaWYgKHJlcS5tZXRob2QgPT09ICdKU09OUCcpIHtcbiAgICByZXR1cm4gaW5qZWN0KEpzb25wQ2xpZW50QmFja2VuZCkuaGFuZGxlKHJlcSBhcyBIdHRwUmVxdWVzdDxuZXZlcj4pO1xuICB9XG5cbiAgLy8gRmFsbCB0aHJvdWdoIGZvciBub3JtYWwgSFRUUCByZXF1ZXN0cy5cbiAgcmV0dXJuIG5leHQocmVxKTtcbn1cblxuLyoqXG4gKiBJZGVudGlmaWVzIHJlcXVlc3RzIHdpdGggdGhlIG1ldGhvZCBKU09OUCBhbmRcbiAqIHNoaWZ0cyB0aGVtIHRvIHRoZSBgSnNvbnBDbGllbnRCYWNrZW5kYC5cbiAqXG4gKiBAc2VlIHtAbGluayBIdHRwSW50ZXJjZXB0b3J9XG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSnNvbnBJbnRlcmNlcHRvciB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaW5qZWN0b3I6IEVudmlyb25tZW50SW5qZWN0b3IpIHt9XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgYW5kIGhhbmRsZXMgYSBnaXZlbiBKU09OUCByZXF1ZXN0LlxuICAgKiBAcGFyYW0gaW5pdGlhbFJlcXVlc3QgVGhlIG91dGdvaW5nIHJlcXVlc3Qgb2JqZWN0IHRvIGhhbmRsZS5cbiAgICogQHBhcmFtIG5leHQgVGhlIG5leHQgaW50ZXJjZXB0b3IgaW4gdGhlIGNoYWluLCBvciB0aGUgYmFja2VuZFxuICAgKiBpZiBubyBpbnRlcmNlcHRvcnMgcmVtYWluIGluIHRoZSBjaGFpbi5cbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSBvZiB0aGUgZXZlbnQgc3RyZWFtLlxuICAgKi9cbiAgaW50ZXJjZXB0KGluaXRpYWxSZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gcnVuSW5JbmplY3Rpb25Db250ZXh0KHRoaXMuaW5qZWN0b3IsICgpID0+XG4gICAgICBqc29ucEludGVyY2VwdG9yRm4oaW5pdGlhbFJlcXVlc3QsIChkb3duc3RyZWFtUmVxdWVzdCkgPT4gbmV4dC5oYW5kbGUoZG93bnN0cmVhbVJlcXVlc3QpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
254
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbnAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vaHR0cC9zcmMvanNvbnAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsTUFBTSxFQUNOLE1BQU0sRUFDTixVQUFVLEVBQ1YscUJBQXFCLEdBQ3RCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxVQUFVLEVBQVcsTUFBTSxNQUFNLENBQUM7QUFLMUMsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixpQkFBaUIsRUFFakIsYUFBYSxFQUNiLFlBQVksR0FDYixNQUFNLFlBQVksQ0FBQzs7QUFFcEIsa0ZBQWtGO0FBQ2xGLGtGQUFrRjtBQUNsRixrRkFBa0Y7QUFDbEYsZ0RBQWdEO0FBQ2hELElBQUksYUFBYSxHQUFXLENBQUMsQ0FBQztBQUU5Qjs7O0dBR0c7QUFDSCxJQUFJLGVBQXFDLENBQUM7QUFFMUMsb0ZBQW9GO0FBQ3BGLHFCQUFxQjtBQUNyQixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxnREFBZ0QsQ0FBQztBQUV0RixtRkFBbUY7QUFDbkYsK0JBQStCO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLCtDQUErQyxDQUFDO0FBQ3RGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLDZDQUE2QyxDQUFDO0FBRTNGLCtFQUErRTtBQUMvRSxjQUFjO0FBQ2QsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsd0NBQXdDLENBQUM7QUFFeEY7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFnQixvQkFBb0I7Q0FFekM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBRUgsTUFBTSxPQUFPLGtCQUFrQjtJQU03QixZQUNVLFdBQWlDLEVBQ2YsUUFBYTtRQUQvQixnQkFBVyxHQUFYLFdBQVcsQ0FBc0I7UUFDZixhQUFRLEdBQVIsUUFBUSxDQUFLO1FBUHpDOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFLbEQsQ0FBQztJQUVKOztPQUVHO0lBQ0ssWUFBWTtRQUNsQixPQUFPLHFCQUFxQixhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxHQUF1QjtRQUM1Qiw0RUFBNEU7UUFDNUUscUVBQXFFO1FBQ3JFLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDMUMsQ0FBQzthQUFNLElBQUksR0FBRyxDQUFDLFlBQVksS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDakQsQ0FBQztRQUVELCtEQUErRDtRQUMvRCxxQ0FBcUM7UUFDckMsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELDBEQUEwRDtRQUMxRCxPQUFPLElBQUksVUFBVSxDQUFpQixDQUFDLFFBQWtDLEVBQUUsRUFBRTtZQUMzRSxxRkFBcUY7WUFDckYscUZBQXFGO1lBQ3JGLGtGQUFrRjtZQUNsRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDckMsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxRQUFRLElBQUksQ0FBQyxDQUFDO1lBRWhGLHNEQUFzRDtZQUN0RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUVmLDJFQUEyRTtZQUMzRSwwREFBMEQ7WUFFMUQsb0VBQW9FO1lBQ3BFLElBQUksSUFBSSxHQUFlLElBQUksQ0FBQztZQUU1QixpREFBaUQ7WUFDakQsSUFBSSxRQUFRLEdBQVksS0FBSyxDQUFDO1lBRTlCLDBFQUEwRTtZQUMxRSwyRUFBMkU7WUFDM0UsaUNBQWlDO1lBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFVLEVBQUUsRUFBRTtnQkFDMUMsK0VBQStFO2dCQUMvRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWxDLDJDQUEyQztnQkFDM0MsSUFBSSxHQUFHLElBQUksQ0FBQztnQkFDWixRQUFRLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLENBQUMsQ0FBQztZQUVGLDZFQUE2RTtZQUM3RSx3RUFBd0U7WUFDeEUsaUZBQWlGO1lBQ2pGLE1BQU0sT0FBTyxHQUFHLEdBQUcsRUFBRTtnQkFDbkIscURBQXFEO2dCQUNyRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBRWQsMEVBQTBFO2dCQUMxRSxZQUFZO2dCQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQyxDQUFDLENBQUM7WUFFRiwwRUFBMEU7WUFDMUUsMkVBQTJFO1lBQzNFLDBFQUEwRTtZQUMxRSx1QkFBdUI7WUFDdkIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUFZLEVBQUUsRUFBRTtnQkFDOUIsMERBQTBEO2dCQUMxRCxzRkFBc0Y7Z0JBQ3RGLDhFQUE4RTtnQkFDOUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUM3QixvQkFBb0I7b0JBQ3BCLE9BQU8sRUFBRSxDQUFDO29CQUVWLCtDQUErQztvQkFDL0MsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO3dCQUNkLHdFQUF3RTt3QkFDeEUsNkRBQTZEO3dCQUM3RCxRQUFRLENBQUMsS0FBSyxDQUNaLElBQUksaUJBQWlCLENBQUM7NEJBQ3BCLEdBQUc7NEJBQ0gsTUFBTSxFQUFFLENBQUM7NEJBQ1QsVUFBVSxFQUFFLGFBQWE7NEJBQ3pCLEtBQUssRUFBRSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQzt5QkFDeEMsQ0FBQyxDQUNILENBQUM7d0JBQ0YsT0FBTztvQkFDVCxDQUFDO29CQUVELHNFQUFzRTtvQkFDdEUsWUFBWTtvQkFDWixRQUFRLENBQUMsSUFBSSxDQUNYLElBQUksWUFBWSxDQUFDO3dCQUNmLElBQUk7d0JBQ0osTUFBTSxFQUFFLG1CQUFtQjt3QkFDM0IsVUFBVSxFQUFFLElBQUk7d0JBQ2hCLEdBQUc7cUJBQ0osQ0FBQyxDQUNILENBQUM7b0JBRUYsNkNBQTZDO29CQUM3QyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO1lBRUYsK0VBQStFO1lBQy9FLDZFQUE2RTtZQUM3RSx1QkFBdUI7WUFDdkIsTUFBTSxPQUFPLEdBQVEsQ0FBQyxLQUFZLEVBQUUsRUFBRTtnQkFDcEMsT0FBTyxFQUFFLENBQUM7Z0JBRVYseUNBQXlDO2dCQUN6QyxRQUFRLENBQUMsS0FBSyxDQUNaLElBQUksaUJBQWlCLENBQUM7b0JBQ3BCLEtBQUs7b0JBQ0wsTUFBTSxFQUFFLENBQUM7b0JBQ1QsVUFBVSxFQUFFLGFBQWE7b0JBQ3pCLEdBQUc7aUJBQ0osQ0FBQyxDQUNILENBQUM7WUFDSixDQUFDLENBQUM7WUFFRiw2RUFBNkU7WUFDN0UsMEJBQTBCO1lBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFckMsOENBQThDO1lBQzlDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7WUFFMUMsd0JBQXdCO1lBQ3hCLE9BQU8sR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QixDQUFDO2dCQUVELGtDQUFrQztnQkFDbEMsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxlQUFlLENBQUMsTUFBeUI7UUFDL0MsZUFBZTtRQUNmLG9FQUFvRTtRQUNwRSxpRkFBaUY7UUFDakYsZUFBZSxLQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBb0MsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTdGLGVBQWUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQzt5SEE1S1Usa0JBQWtCLG1EQVFuQixRQUFROzZIQVJQLGtCQUFrQjs7c0dBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVTs7MEJBU04sTUFBTTsyQkFBQyxRQUFROztBQXVLcEI7O0dBRUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLEdBQXlCLEVBQ3pCLElBQW1CO0lBRW5CLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUMzQixPQUFPLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUF5QixDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELHlDQUF5QztJQUN6QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNuQixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUVILE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFBb0IsUUFBNkI7UUFBN0IsYUFBUSxHQUFSLFFBQVEsQ0FBcUI7SUFBRyxDQUFDO0lBRXJEOzs7Ozs7T0FNRztJQUNILFNBQVMsQ0FBQyxjQUFnQyxFQUFFLElBQWlCO1FBQzNELE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FDL0Msa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUMxRixDQUFDO0lBQ0osQ0FBQzt5SEFkVSxnQkFBZ0I7NkhBQWhCLGdCQUFnQjs7c0dBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIEluamVjdCxcbiAgaW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBPYnNlcnZlcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7SHR0cEJhY2tlbmQsIEh0dHBIYW5kbGVyfSBmcm9tICcuL2JhY2tlbmQnO1xuaW1wb3J0IHtIdHRwSGFuZGxlckZufSBmcm9tICcuL2ludGVyY2VwdG9yJztcbmltcG9ydCB7SHR0cFJlcXVlc3R9IGZyb20gJy4vcmVxdWVzdCc7XG5pbXBvcnQge1xuICBIVFRQX1NUQVRVU19DT0RFX09LLFxuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEV2ZW50LFxuICBIdHRwRXZlbnRUeXBlLFxuICBIdHRwUmVzcG9uc2UsXG59IGZyb20gJy4vcmVzcG9uc2UnO1xuXG4vLyBFdmVyeSByZXF1ZXN0IG1hZGUgdGhyb3VnaCBKU09OUCBuZWVkcyBhIGNhbGxiYWNrIG5hbWUgdGhhdCdzIHVuaXF1ZSBhY3Jvc3MgdGhlXG4vLyB3aG9sZSBwYWdlLiBFYWNoIHJlcXVlc3QgaXMgYXNzaWduZWQgYW4gaWQgYW5kIHRoZSBjYWxsYmFjayBuYW1lIGlzIGNvbnN0cnVjdGVkXG4vLyBmcm9tIHRoYXQuIFRoZSBuZXh0IGlkIHRvIGJlIGFzc2lnbmVkIGlzIHRyYWNrZWQgaW4gYSBnbG9iYWwgdmFyaWFibGUgaGVyZSB0aGF0XG4vLyBpcyBzaGFyZWQgYW1vbmcgYWxsIGFwcGxpY2F0aW9ucyBvbiB0aGUgcGFnZS5cbmxldCBuZXh0UmVxdWVzdElkOiBudW1iZXIgPSAwO1xuXG4vKipcbiAqIFdoZW4gYSBwZW5kaW5nIDxzY3JpcHQ+IGlzIHVuc3Vic2NyaWJlZCB3ZSdsbCBtb3ZlIGl0IHRvIHRoaXMgZG9jdW1lbnQsIHNvIGl0IHdvbid0IGJlXG4gKiBleGVjdXRlZC5cbiAqL1xubGV0IGZvcmVpZ25Eb2N1bWVudDogRG9jdW1lbnQgfCB1bmRlZmluZWQ7XG5cbi8vIEVycm9yIHRleHQgZ2l2ZW4gd2hlbiBhIEpTT05QIHNjcmlwdCBpcyBpbmplY3RlZCwgYnV0IGRvZXNuJ3QgaW52b2tlIHRoZSBjYWxsYmFja1xuLy8gcGFzc2VkIGluIGl0cyBVUkwuXG5leHBvcnQgY29uc3QgSlNPTlBfRVJSX05PX0NBTExCQUNLID0gJ0pTT05QIGluamVjdGVkIHNjcmlwdCBkaWQgbm90IGludm9rZSBjYWxsYmFjay4nO1xuXG4vLyBFcnJvciB0ZXh0IGdpdmVuIHdoZW4gYSByZXF1ZXN0IGlzIHBhc3NlZCB0byB0aGUgSnNvbnBDbGllbnRCYWNrZW5kIHRoYXQgZG9lc24ndFxuLy8gaGF2ZSBhIHJlcXVlc3QgbWV0aG9kIEpTT05QLlxuZXhwb3J0IGNvbnN0IEpTT05QX0VSUl9XUk9OR19NRVRIT0QgPSAnSlNPTlAgcmVxdWVzdHMgbXVzdCB1c2UgSlNPTlAgcmVxdWVzdCBtZXRob2QuJztcbmV4cG9ydCBjb25zdCBKU09OUF9FUlJfV1JPTkdfUkVTUE9OU0VfVFlQRSA9ICdKU09OUCByZXF1ZXN0cyBtdXN0IHVzZSBKc29uIHJlc3BvbnNlIHR5cGUuJztcblxuLy8gRXJyb3IgdGV4dCBnaXZlbiB3aGVuIGEgcmVxdWVzdCBpcyBwYXNzZWQgdG8gdGhlIEpzb25wQ2xpZW50QmFja2VuZCB0aGF0IGhhc1xuLy8gaGVhZGVycyBzZXRcbmV4cG9ydCBjb25zdCBKU09OUF9FUlJfSEVBREVSU19OT1RfU1VQUE9SVEVEID0gJ0pTT05QIHJlcXVlc3RzIGRvIG5vdCBzdXBwb3J0IGhlYWRlcnMuJztcblxuLyoqXG4gKiBESSB0b2tlbi9hYnN0cmFjdCB0eXBlIHJlcHJlc2VudGluZyBhIG1hcCBvZiBKU09OUCBjYWxsYmFja3MuXG4gKlxuICogSW4gdGhlIGJyb3dzZXIsIHRoaXMgc2hvdWxkIGFsd2F5cyBiZSB0aGUgYHdpbmRvd2Agb2JqZWN0LlxuICpcbiAqXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBKc29ucENhbGxiYWNrQ29udGV4dCB7XG4gIFtrZXk6IHN0cmluZ106IChkYXRhOiBhbnkpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogRmFjdG9yeSBmdW5jdGlvbiB0aGF0IGRldGVybWluZXMgd2hlcmUgdG8gc3RvcmUgSlNPTlAgY2FsbGJhY2tzLlxuICpcbiAqIE9yZGluYXJpbHkgSlNPTlAgY2FsbGJhY2tzIGFyZSBzdG9yZWQgb24gdGhlIGB3aW5kb3dgIG9iamVjdCwgYnV0IHRoaXMgbWF5IG5vdCBleGlzdFxuICogaW4gdGVzdCBlbnZpcm9ubWVudHMuIEluIHRoYXQgY2FzZSwgY2FsbGJhY2tzIGFyZSBzdG9yZWQgb24gYW4gYW5vbnltb3VzIG9iamVjdCBpbnN0ZWFkLlxuICpcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBqc29ucENhbGxiYWNrQ29udGV4dCgpOiBPYmplY3Qge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gd2luZG93O1xuICB9XG4gIHJldHVybiB7fTtcbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgYW4gYEh0dHBSZXF1ZXN0YCB3aXRoIHRoZSBKU09OUCBtZXRob2QsXG4gKiBieSBwZXJmb3JtaW5nIEpTT05QIHN0eWxlIHJlcXVlc3RzLlxuICogQHNlZSB7QGxpbmsgSHR0cEhhbmRsZXJ9XG4gKiBAc2VlIHtAbGluayBIdHRwWGhyQmFja2VuZH1cbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBKc29ucENsaWVudEJhY2tlbmQgaW1wbGVtZW50cyBIdHRwQmFja2VuZCB7XG4gIC8qKlxuICAgKiBBIHJlc29sdmVkIHByb21pc2UgdGhhdCBjYW4gYmUgdXNlZCB0byBzY2hlZHVsZSBtaWNyb3Rhc2tzIGluIHRoZSBldmVudCBoYW5kbGVycy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzb2x2ZWRQcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjYWxsYmFja01hcDogSnNvbnBDYWxsYmFja0NvbnRleHQsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogYW55LFxuICApIHt9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbmFtZSBvZiB0aGUgbmV4dCBjYWxsYmFjayBtZXRob2QsIGJ5IGluY3JlbWVudGluZyB0aGUgZ2xvYmFsIGBuZXh0UmVxdWVzdElkYC5cbiAgICovXG4gIHByaXZhdGUgbmV4dENhbGxiYWNrKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBuZ19qc29ucF9jYWxsYmFja18ke25leHRSZXF1ZXN0SWQrK31gO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb2Nlc3NlcyBhIEpTT05QIHJlcXVlc3QgYW5kIHJldHVybnMgYW4gZXZlbnQgc3RyZWFtIG9mIHRoZSByZXN1bHRzLlxuICAgKiBAcGFyYW0gcmVxIFRoZSByZXF1ZXN0IG9iamVjdC5cbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSBvZiB0aGUgcmVzcG9uc2UgZXZlbnRzLlxuICAgKlxuICAgKi9cbiAgaGFuZGxlKHJlcTogSHR0cFJlcXVlc3Q8bmV2ZXI+KTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIC8vIEZpcnN0bHksIGNoZWNrIGJvdGggdGhlIG1ldGhvZCBhbmQgcmVzcG9uc2UgdHlwZS4gSWYgZWl0aGVyIGRvZXNuJ3QgbWF0Y2hcbiAgICAvLyB0aGVuIHRoZSByZXF1ZXN0IHdhcyBpbXByb3Blcmx5IHJvdXRlZCBoZXJlIGFuZCBjYW5ub3QgYmUgaGFuZGxlZC5cbiAgICBpZiAocmVxLm1ldGhvZCAhPT0gJ0pTT05QJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT05QX0VSUl9XUk9OR19NRVRIT0QpO1xuICAgIH0gZWxzZSBpZiAocmVxLnJlc3BvbnNlVHlwZSAhPT0gJ2pzb24nKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTlBfRVJSX1dST05HX1JFU1BPTlNFX1RZUEUpO1xuICAgIH1cblxuICAgIC8vIENoZWNrIHRoZSByZXF1ZXN0IGhlYWRlcnMuIEpTT05QIGRvZXNuJ3Qgc3VwcG9ydCBoZWFkZXJzIGFuZFxuICAgIC8vIGNhbm5vdCBzZXQgYW55IHRoYXQgd2VyZSBzdXBwbGllZC5cbiAgICBpZiAocmVxLmhlYWRlcnMua2V5cygpLmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihKU09OUF9FUlJfSEVBREVSU19OT1RfU1VQUE9SVEVEKTtcbiAgICB9XG5cbiAgICAvLyBFdmVyeXRoaW5nIGVsc2UgaGFwcGVucyBpbnNpZGUgdGhlIE9ic2VydmFibGUgYm91bmRhcnkuXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+Pigob2JzZXJ2ZXI6IE9ic2VydmVyPEh0dHBFdmVudDxhbnk+PikgPT4ge1xuICAgICAgLy8gVGhlIGZpcnN0IHN0ZXAgdG8gbWFrZSBhIHJlcXVlc3QgaXMgdG8gZ2VuZXJhdGUgdGhlIGNhbGxiYWNrIG5hbWUsIGFuZCByZXBsYWNlIHRoZVxuICAgICAgLy8gY2FsbGJhY2sgcGxhY2Vob2xkZXIgaW4gdGhlIFVSTCB3aXRoIHRoZSBuYW1lLiBDYXJlIGhhcyB0byBiZSB0YWtlbiBoZXJlIHRvIGVuc3VyZVxuICAgICAgLy8gYSB0cmFpbGluZyAmLCBpZiBtYXRjaGVkLCBnZXRzIGluc2VydGVkIGJhY2sgaW50byB0aGUgVVJMIGluIHRoZSBjb3JyZWN0IHBsYWNlLlxuICAgICAgY29uc3QgY2FsbGJhY2sgPSB0aGlzLm5leHRDYWxsYmFjaygpO1xuICAgICAgY29uc3QgdXJsID0gcmVxLnVybFdpdGhQYXJhbXMucmVwbGFjZSgvPUpTT05QX0NBTExCQUNLKCZ8JCkvLCBgPSR7Y2FsbGJhY2t9JDFgKTtcblxuICAgICAgLy8gQ29uc3RydWN0IHRoZSA8c2NyaXB0PiB0YWcgYW5kIHBvaW50IGl0IGF0IHRoZSBVUkwuXG4gICAgICBjb25zdCBub2RlID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIG5vZGUuc3JjID0gdXJsO1xuXG4gICAgICAvLyBBIEpTT05QIHJlcXVlc3QgcmVxdWlyZXMgd2FpdGluZyBmb3IgbXVsdGlwbGUgY2FsbGJhY2tzLiBUaGVzZSB2YXJpYWJsZXNcbiAgICAgIC8vIGFyZSBjbG9zZWQgb3ZlciBhbmQgdHJhY2sgc3RhdGUgYWNyb3NzIHRob3NlIGNhbGxiYWNrcy5cblxuICAgICAgLy8gVGhlIHJlc3BvbnNlIG9iamVjdCwgaWYgb25lIGhhcyBiZWVuIHJlY2VpdmVkLCBvciBudWxsIG90aGVyd2lzZS5cbiAgICAgIGxldCBib2R5OiBhbnkgfCBudWxsID0gbnVsbDtcblxuICAgICAgLy8gV2hldGhlciB0aGUgcmVzcG9uc2UgY2FsbGJhY2sgaGFzIGJlZW4gY2FsbGVkLlxuICAgICAgbGV0IGZpbmlzaGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAgIC8vIFNldCB0aGUgcmVzcG9uc2UgY2FsbGJhY2sgaW4gdGhpcy5jYWxsYmFja01hcCAod2hpY2ggd2lsbCBiZSB0aGUgd2luZG93XG4gICAgICAvLyBvYmplY3QgaW4gdGhlIGJyb3dzZXIuIFRoZSBzY3JpcHQgYmVpbmcgbG9hZGVkIHZpYSB0aGUgPHNjcmlwdD4gdGFnIHdpbGxcbiAgICAgIC8vIGV2ZW50dWFsbHkgY2FsbCB0aGlzIGNhbGxiYWNrLlxuICAgICAgdGhpcy5jYWxsYmFja01hcFtjYWxsYmFja10gPSAoZGF0YT86IGFueSkgPT4ge1xuICAgICAgICAvLyBEYXRhIGhhcyBiZWVuIHJlY2VpdmVkIGZyb20gdGhlIEpTT05QIHNjcmlwdC4gRmlyc3RseSwgZGVsZXRlIHRoaXMgY2FsbGJhY2suXG4gICAgICAgIGRlbGV0ZSB0aGlzLmNhbGxiYWNrTWFwW2NhbGxiYWNrXTtcblxuICAgICAgICAvLyBTZXQgc3RhdGUgdG8gaW5kaWNhdGUgZGF0YSB3YXMgcmVjZWl2ZWQuXG4gICAgICAgIGJvZHkgPSBkYXRhO1xuICAgICAgICBmaW5pc2hlZCA9IHRydWU7XG4gICAgICB9O1xuXG4gICAgICAvLyBjbGVhbnVwKCkgaXMgYSB1dGlsaXR5IGNsb3N1cmUgdGhhdCByZW1vdmVzIHRoZSA8c2NyaXB0PiBmcm9tIHRoZSBwYWdlIGFuZFxuICAgICAgLy8gdGhlIHJlc3BvbnNlIGNhbGxiYWNrIGZyb20gdGhlIHdpbmRvdy4gVGhpcyBsb2dpYyBpcyB1c2VkIGluIGJvdGggdGhlXG4gICAgICAvLyBzdWNjZXNzLCBlcnJvciwgYW5kIGNhbmNlbGxhdGlvbiBwYXRocywgc28gaXQncyBleHRyYWN0ZWQgb3V0IGZvciBjb252ZW5pZW5jZS5cbiAgICAgIGNvbnN0IGNsZWFudXAgPSAoKSA9PiB7XG4gICAgICAgIC8vIFJlbW92ZSB0aGUgPHNjcmlwdD4gdGFnIGlmIGl0J3Mgc3RpbGwgb24gdGhlIHBhZ2UuXG4gICAgICAgIG5vZGUucmVtb3ZlKCk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSByZXNwb25zZSBjYWxsYmFjayBmcm9tIHRoZSBjYWxsYmFja01hcCAod2luZG93IG9iamVjdCBpbiB0aGVcbiAgICAgICAgLy8gYnJvd3NlcikuXG4gICAgICAgIGRlbGV0ZSB0aGlzLmNhbGxiYWNrTWFwW2NhbGxiYWNrXTtcbiAgICAgIH07XG5cbiAgICAgIC8vIG9uTG9hZCgpIGlzIHRoZSBzdWNjZXNzIGNhbGxiYWNrIHdoaWNoIHJ1bnMgYWZ0ZXIgdGhlIHJlc3BvbnNlIGNhbGxiYWNrXG4gICAgICAvLyBpZiB0aGUgSlNPTlAgc2NyaXB0IGxvYWRzIHN1Y2Nlc3NmdWxseS4gVGhlIGV2ZW50IGl0c2VsZiBpcyB1bmltcG9ydGFudC5cbiAgICAgIC8vIElmIHNvbWV0aGluZyB3ZW50IHdyb25nLCBvbkxvYWQoKSBtYXkgcnVuIHdpdGhvdXQgdGhlIHJlc3BvbnNlIGNhbGxiYWNrXG4gICAgICAvLyBoYXZpbmcgYmVlbiBpbnZva2VkLlxuICAgICAgY29uc3Qgb25Mb2FkID0gKGV2ZW50OiBFdmVudCkgPT4ge1xuICAgICAgICAvLyBXZSB3cmFwIGl0IGluIGFuIGV4dHJhIFByb21pc2UsIHRvIGVuc3VyZSB0aGUgbWljcm90YXNrXG4gICAgICAgIC8vIGlzIHNjaGVkdWxlZCBhZnRlciB0aGUgbG9hZGVkIGVuZHBvaW50IGhhcyBleGVjdXRlZCBhbnkgcG90ZW50aWFsIG1pY3JvdGFzayBpdHNlbGYsXG4gICAgICAgIC8vIHdoaWNoIGlzIG5vdCBndWFyYW50ZWVkIGluIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlSFRNTC4gU2VlIGlzc3VlICMzOTQ5NlxuICAgICAgICB0aGlzLnJlc29sdmVkUHJvbWlzZS50aGVuKCgpID0+IHtcbiAgICAgICAgICAvLyBDbGVhbnVwIHRoZSBwYWdlLlxuICAgICAgICAgIGNsZWFudXAoKTtcblxuICAgICAgICAgIC8vIENoZWNrIHdoZXRoZXIgdGhlIHJlc3BvbnNlIGNhbGxiYWNrIGhhcyBydW4uXG4gICAgICAgICAgaWYgKCFmaW5pc2hlZCkge1xuICAgICAgICAgICAgLy8gSXQgaGFzbid0LCBzb21ldGhpbmcgd2VudCB3cm9uZyB3aXRoIHRoZSByZXF1ZXN0LiBSZXR1cm4gYW4gZXJyb3IgdmlhXG4gICAgICAgICAgICAvLyB0aGUgT2JzZXJ2YWJsZSBlcnJvciBwYXRoLiBBbGwgSlNPTlAgZXJyb3JzIGhhdmUgc3RhdHVzIDAuXG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihcbiAgICAgICAgICAgICAgbmV3IEh0dHBFcnJvclJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgc3RhdHVzOiAwLFxuICAgICAgICAgICAgICAgIHN0YXR1c1RleHQ6ICdKU09OUCBFcnJvcicsXG4gICAgICAgICAgICAgICAgZXJyb3I6IG5ldyBFcnJvcihKU09OUF9FUlJfTk9fQ0FMTEJBQ0spLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gU3VjY2Vzcy4gYm9keSBlaXRoZXIgY29udGFpbnMgdGhlIHJlc3BvbnNlIGJvZHkgb3IgbnVsbCBpZiBub25lIHdhc1xuICAgICAgICAgIC8vIHJldHVybmVkLlxuICAgICAgICAgIG9ic2VydmVyLm5leHQoXG4gICAgICAgICAgICBuZXcgSHR0cFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgYm9keSxcbiAgICAgICAgICAgICAgc3RhdHVzOiBIVFRQX1NUQVRVU19DT0RFX09LLFxuICAgICAgICAgICAgICBzdGF0dXNUZXh0OiAnT0snLFxuICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgLy8gQ29tcGxldGUgdGhlIHN0cmVhbSwgdGhlIHJlc3BvbnNlIGlzIG92ZXIuXG4gICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICAvLyBvbkVycm9yKCkgaXMgdGhlIGVycm9yIGNhbGxiYWNrLCB3aGljaCBydW5zIGlmIHRoZSBzY3JpcHQgcmV0dXJuZWQgZ2VuZXJhdGVzXG4gICAgICAvLyBhIEphdmFzY3JpcHQgZXJyb3IuIEl0IGVtaXRzIHRoZSBlcnJvciB2aWEgdGhlIE9ic2VydmFibGUgZXJyb3IgY2hhbm5lbCBhc1xuICAgICAgLy8gYSBIdHRwRXJyb3JSZXNwb25zZS5cbiAgICAgIGNvbnN0IG9uRXJyb3I6IGFueSA9IChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgY2xlYW51cCgpO1xuXG4gICAgICAgIC8vIFdyYXAgdGhlIGVycm9yIGluIGEgSHR0cEVycm9yUmVzcG9uc2UuXG4gICAgICAgIG9ic2VydmVyLmVycm9yKFxuICAgICAgICAgIG5ldyBIdHRwRXJyb3JSZXNwb25zZSh7XG4gICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgIHN0YXR1czogMCxcbiAgICAgICAgICAgIHN0YXR1c1RleHQ6ICdKU09OUCBFcnJvcicsXG4gICAgICAgICAgICB1cmwsXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9O1xuXG4gICAgICAvLyBTdWJzY3JpYmUgdG8gYm90aCB0aGUgc3VjY2VzcyAobG9hZCkgYW5kIGVycm9yIGV2ZW50cyBvbiB0aGUgPHNjcmlwdD4gdGFnLFxuICAgICAgLy8gYW5kIGFkZCBpdCB0byB0aGUgcGFnZS5cbiAgICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIG9uTG9hZCk7XG4gICAgICBub2RlLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobm9kZSk7XG5cbiAgICAgIC8vIFRoZSByZXF1ZXN0IGhhcyBub3cgYmVlbiBzdWNjZXNzZnVsbHkgc2VudC5cbiAgICAgIG9ic2VydmVyLm5leHQoe3R5cGU6IEh0dHBFdmVudFR5cGUuU2VudH0pO1xuXG4gICAgICAvLyBDYW5jZWxsYXRpb24gaGFuZGxlci5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGlmICghZmluaXNoZWQpIHtcbiAgICAgICAgICB0aGlzLnJlbW92ZUxpc3RlbmVycyhub2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFuZCBmaW5hbGx5LCBjbGVhbiB1cCB0aGUgcGFnZS5cbiAgICAgICAgY2xlYW51cCgpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGlzdGVuZXJzKHNjcmlwdDogSFRNTFNjcmlwdEVsZW1lbnQpOiB2b2lkIHtcbiAgICAvLyBJc3N1ZSAjMzQ4MThcbiAgICAvLyBDaGFuZ2luZyA8c2NyaXB0PidzIG93bmVyRG9jdW1lbnQgd2lsbCBwcmV2ZW50IGl0IGZyb20gZXhlY3V0aW9uLlxuICAgIC8vIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3NjcmlwdGluZy5odG1sI2V4ZWN1dGUtdGhlLXNjcmlwdC1ibG9ja1xuICAgIGZvcmVpZ25Eb2N1bWVudCA/Pz0gKHRoaXMuZG9jdW1lbnQuaW1wbGVtZW50YXRpb24gYXMgRE9NSW1wbGVtZW50YXRpb24pLmNyZWF0ZUhUTUxEb2N1bWVudCgpO1xuXG4gICAgZm9yZWlnbkRvY3VtZW50LmFkb3B0Tm9kZShzY3JpcHQpO1xuICB9XG59XG5cbi8qKlxuICogSWRlbnRpZmllcyByZXF1ZXN0cyB3aXRoIHRoZSBtZXRob2QgSlNPTlAgYW5kIHNoaWZ0cyB0aGVtIHRvIHRoZSBgSnNvbnBDbGllbnRCYWNrZW5kYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGpzb25wSW50ZXJjZXB0b3JGbihcbiAgcmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgbmV4dDogSHR0cEhhbmRsZXJGbixcbik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gIGlmIChyZXEubWV0aG9kID09PSAnSlNPTlAnKSB7XG4gICAgcmV0dXJuIGluamVjdChKc29ucENsaWVudEJhY2tlbmQpLmhhbmRsZShyZXEgYXMgSHR0cFJlcXVlc3Q8bmV2ZXI+KTtcbiAgfVxuXG4gIC8vIEZhbGwgdGhyb3VnaCBmb3Igbm9ybWFsIEhUVFAgcmVxdWVzdHMuXG4gIHJldHVybiBuZXh0KHJlcSk7XG59XG5cbi8qKlxuICogSWRlbnRpZmllcyByZXF1ZXN0cyB3aXRoIHRoZSBtZXRob2QgSlNPTlAgYW5kXG4gKiBzaGlmdHMgdGhlbSB0byB0aGUgYEpzb25wQ2xpZW50QmFja2VuZGAuXG4gKlxuICogQHNlZSB7QGxpbmsgSHR0cEludGVyY2VwdG9yfVxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEpzb25wSW50ZXJjZXB0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yKSB7fVxuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVzIGFuZCBoYW5kbGVzIGEgZ2l2ZW4gSlNPTlAgcmVxdWVzdC5cbiAgICogQHBhcmFtIGluaXRpYWxSZXF1ZXN0IFRoZSBvdXRnb2luZyByZXF1ZXN0IG9iamVjdCB0byBoYW5kbGUuXG4gICAqIEBwYXJhbSBuZXh0IFRoZSBuZXh0IGludGVyY2VwdG9yIGluIHRoZSBjaGFpbiwgb3IgdGhlIGJhY2tlbmRcbiAgICogaWYgbm8gaW50ZXJjZXB0b3JzIHJlbWFpbiBpbiB0aGUgY2hhaW4uXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgb2YgdGhlIGV2ZW50IHN0cmVhbS5cbiAgICovXG4gIGludGVyY2VwdChpbml0aWFsUmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgcmV0dXJuIHJ1bkluSW5qZWN0aW9uQ29udGV4dCh0aGlzLmluamVjdG9yLCAoKSA9PlxuICAgICAganNvbnBJbnRlcmNlcHRvckZuKGluaXRpYWxSZXF1ZXN0LCAoZG93bnN0cmVhbVJlcXVlc3QpID0+IG5leHQuaGFuZGxlKGRvd25zdHJlYW1SZXF1ZXN0KSksXG4gICAgKTtcbiAgfVxufVxuIl19