@angular/common 18.2.5 → 18.2.7

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