@paulirish/trace_engine 0.0.58 → 0.0.60

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 (450) hide show
  1. package/.tmp/tsbuildinfo/analyze-trace.d.mts +2 -3
  2. package/.tmp/tsbuildinfo/analyze-trace.d.mts.map +1 -1
  3. package/.tmp/tsbuildinfo/tsconfig.tsbuildinfo +1 -1
  4. package/LICENSE +1 -1
  5. package/README.md +28 -1
  6. package/analyze-trace.mjs +5 -3
  7. package/core/platform/ArrayUtilities.d.ts +1 -0
  8. package/core/platform/ArrayUtilities.js +2 -2
  9. package/core/platform/ArrayUtilities.js.map +1 -1
  10. package/core/platform/Brand.js +1 -1
  11. package/core/platform/Brand.js.map +1 -1
  12. package/core/platform/Constructor.js +1 -1
  13. package/core/platform/Constructor.js.map +1 -1
  14. package/core/platform/DOMUtilities.js +1 -1
  15. package/core/platform/DOMUtilities.js.map +1 -1
  16. package/core/platform/DateUtilities.js +1 -1
  17. package/core/platform/DateUtilities.js.map +1 -1
  18. package/core/platform/DevToolsPath.js +1 -1
  19. package/core/platform/DevToolsPath.js.map +1 -1
  20. package/core/platform/KeyboardUtilities.js +1 -1
  21. package/core/platform/KeyboardUtilities.js.map +1 -1
  22. package/core/platform/MapUtilities.js +1 -1
  23. package/core/platform/MapUtilities.js.map +1 -1
  24. package/core/platform/MimeType.js +1 -1
  25. package/core/platform/MimeType.js.map +1 -1
  26. package/core/platform/NumberUtilities.js +1 -1
  27. package/core/platform/NumberUtilities.js.map +1 -1
  28. package/core/platform/StringUtilities.d.ts +2 -1
  29. package/core/platform/StringUtilities.js +34 -32
  30. package/core/platform/StringUtilities.js.map +1 -1
  31. package/core/platform/Timing.js +1 -1
  32. package/core/platform/Timing.js.map +1 -1
  33. package/core/platform/TypedArrayUtilities.js +1 -1
  34. package/core/platform/TypedArrayUtilities.js.map +1 -1
  35. package/core/platform/TypescriptUtilities.js +1 -1
  36. package/core/platform/TypescriptUtilities.js.map +1 -1
  37. package/core/platform/UIString.js +1 -1
  38. package/core/platform/UIString.js.map +1 -1
  39. package/core/platform/UserVisibleError.js +1 -1
  40. package/core/platform/UserVisibleError.js.map +1 -1
  41. package/core/platform/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  42. package/core/platform/platform-tsconfig.json +6 -2
  43. package/core/platform/platform.js +3 -29
  44. package/core/platform/platform.js.map +1 -1
  45. package/generated/protocol.d.ts +224 -14
  46. package/generated/protocol.js +1 -1
  47. package/locales/af.json +0 -9
  48. package/locales/am.json +0 -9
  49. package/locales/ar.json +0 -9
  50. package/locales/as.json +0 -9
  51. package/locales/az.json +0 -9
  52. package/locales/be.json +0 -9
  53. package/locales/bg.json +0 -9
  54. package/locales/bn.json +1 -10
  55. package/locales/bs.json +0 -9
  56. package/locales/ca.json +0 -9
  57. package/locales/cs.json +0 -9
  58. package/locales/cy.json +0 -9
  59. package/locales/da.json +0 -9
  60. package/locales/de.json +0 -9
  61. package/locales/el.json +0 -9
  62. package/locales/en-GB.json +0 -9
  63. package/locales/en-US.json +8 -8
  64. package/locales/en-XL.json +8 -8
  65. package/locales/es-419.json +0 -9
  66. package/locales/es.json +0 -9
  67. package/locales/et.json +0 -9
  68. package/locales/eu.json +0 -9
  69. package/locales/fa.json +0 -9
  70. package/locales/fi.json +0 -9
  71. package/locales/fil.json +0 -9
  72. package/locales/fr-CA.json +0 -9
  73. package/locales/fr.json +0 -9
  74. package/locales/gl.json +0 -9
  75. package/locales/gu.json +0 -9
  76. package/locales/he.json +0 -9
  77. package/locales/hi.json +0 -9
  78. package/locales/hr.json +4 -13
  79. package/locales/hu.json +0 -9
  80. package/locales/hy.json +0 -9
  81. package/locales/id.json +0 -9
  82. package/locales/is.json +0 -9
  83. package/locales/it.json +0 -9
  84. package/locales/ja.json +0 -9
  85. package/locales/ka.json +0 -9
  86. package/locales/kk.json +0 -9
  87. package/locales/km.json +0 -9
  88. package/locales/kn.json +0 -9
  89. package/locales/ko.json +0 -9
  90. package/locales/ky.json +0 -9
  91. package/locales/lo.json +0 -9
  92. package/locales/lt.json +0 -9
  93. package/locales/lv.json +0 -9
  94. package/locales/mk.json +0 -9
  95. package/locales/ml.json +0 -9
  96. package/locales/mn.json +0 -9
  97. package/locales/mr.json +0 -9
  98. package/locales/ms.json +0 -9
  99. package/locales/my.json +1 -10
  100. package/locales/ne.json +22 -31
  101. package/locales/nl.json +0 -9
  102. package/locales/no.json +0 -9
  103. package/locales/or.json +0 -9
  104. package/locales/pa.json +0 -9
  105. package/locales/pl.json +0 -9
  106. package/locales/pt-PT.json +0 -9
  107. package/locales/pt.json +0 -9
  108. package/locales/ro.json +0 -9
  109. package/locales/ru.json +0 -9
  110. package/locales/si.json +1 -10
  111. package/locales/sk.json +0 -9
  112. package/locales/sl.json +0 -9
  113. package/locales/sq.json +0 -9
  114. package/locales/sr-Latn.json +0 -9
  115. package/locales/sr.json +0 -9
  116. package/locales/sv.json +0 -9
  117. package/locales/sw.json +0 -9
  118. package/locales/ta.json +0 -9
  119. package/locales/te.json +0 -9
  120. package/locales/th.json +0 -9
  121. package/locales/tr.json +0 -9
  122. package/locales/uk.json +0 -9
  123. package/locales/ur.json +0 -9
  124. package/locales/uz.json +0 -9
  125. package/locales/vi.json +0 -9
  126. package/locales/zh-HK.json +0 -9
  127. package/locales/zh-TW.json +0 -9
  128. package/locales/zh.json +0 -9
  129. package/locales/zu.json +0 -9
  130. package/models/cpu_profile/CPUProfileDataModel.d.ts +1 -0
  131. package/models/cpu_profile/CPUProfileDataModel.js +1 -1
  132. package/models/cpu_profile/CPUProfileDataModel.js.map +1 -1
  133. package/models/cpu_profile/ProfileTreeModel.d.ts +1 -1
  134. package/models/cpu_profile/ProfileTreeModel.js +1 -1
  135. package/models/cpu_profile/ProfileTreeModel.js.map +1 -1
  136. package/models/cpu_profile/cpu_profile-tsconfig.json +6 -2
  137. package/models/cpu_profile/cpu_profile.js +1 -1
  138. package/models/cpu_profile/cpu_profile.js.map +1 -1
  139. package/models/cpu_profile/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  140. package/models/trace/EntityMapper.d.ts +33 -0
  141. package/models/trace/EntityMapper.js +123 -0
  142. package/models/trace/EntityMapper.js.map +1 -0
  143. package/models/trace/EventsSerializer.d.ts +11 -0
  144. package/models/trace/EventsSerializer.js +82 -0
  145. package/models/trace/EventsSerializer.js.map +1 -0
  146. package/models/trace/LanternComputationData.d.ts +3 -3
  147. package/models/trace/LanternComputationData.js +12 -10
  148. package/models/trace/LanternComputationData.js.map +1 -1
  149. package/models/trace/ModelImpl.d.ts +7 -14
  150. package/models/trace/ModelImpl.js +25 -52
  151. package/models/trace/ModelImpl.js.map +1 -1
  152. package/models/trace/Name.d.ts +12 -0
  153. package/models/trace/Name.js +115 -0
  154. package/models/trace/Name.js.map +1 -0
  155. package/models/trace/Processor.d.ts +1 -1
  156. package/models/trace/Processor.js +42 -61
  157. package/models/trace/Processor.js.map +1 -1
  158. package/models/trace/Styles.d.ts +50 -0
  159. package/models/trace/Styles.js +816 -0
  160. package/models/trace/Styles.js.map +1 -0
  161. package/models/trace/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  162. package/models/trace/extras/FilmStrip.d.ts +1 -1
  163. package/models/trace/extras/FilmStrip.js +7 -7
  164. package/models/trace/extras/FilmStrip.js.map +1 -1
  165. package/models/trace/extras/MainThreadActivity.js +1 -1
  166. package/models/trace/extras/MainThreadActivity.js.map +1 -1
  167. package/models/trace/extras/ScriptDuplication.js +1 -1
  168. package/models/trace/extras/ScriptDuplication.js.map +1 -1
  169. package/models/trace/extras/StackTraceForEvent.d.ts +2 -2
  170. package/models/trace/extras/StackTraceForEvent.js +21 -21
  171. package/models/trace/extras/StackTraceForEvent.js.map +1 -1
  172. package/models/trace/extras/ThirdParties.d.ts +2 -2
  173. package/models/trace/extras/ThirdParties.js +17 -17
  174. package/models/trace/extras/ThirdParties.js.map +1 -1
  175. package/models/trace/extras/TraceFilter.d.ts +1 -1
  176. package/models/trace/extras/TraceFilter.js +1 -1
  177. package/models/trace/extras/TraceFilter.js.map +1 -1
  178. package/models/trace/extras/TraceTree.d.ts +1 -0
  179. package/models/trace/extras/TraceTree.js +2 -2
  180. package/models/trace/extras/TraceTree.js.map +1 -1
  181. package/models/trace/extras/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  182. package/models/trace/extras/extras-tsconfig.json +6 -2
  183. package/models/trace/extras/extras.js.map +1 -1
  184. package/models/trace/handlers/AnimationFramesHandler.js +11 -11
  185. package/models/trace/handlers/AnimationFramesHandler.js.map +1 -1
  186. package/models/trace/handlers/AnimationHandler.js +5 -5
  187. package/models/trace/handlers/AnimationHandler.js.map +1 -1
  188. package/models/trace/handlers/AsyncJSCallsHandler.d.ts +3 -3
  189. package/models/trace/handlers/AsyncJSCallsHandler.js +9 -9
  190. package/models/trace/handlers/AsyncJSCallsHandler.js.map +1 -1
  191. package/models/trace/handlers/AuctionWorkletsHandler.js +12 -12
  192. package/models/trace/handlers/AuctionWorkletsHandler.js.map +1 -1
  193. package/models/trace/handlers/DOMStatsHandler.js +3 -3
  194. package/models/trace/handlers/DOMStatsHandler.js.map +1 -1
  195. package/models/trace/handlers/ExtensionTraceDataHandler.d.ts +15 -2
  196. package/models/trace/handlers/ExtensionTraceDataHandler.js +53 -64
  197. package/models/trace/handlers/ExtensionTraceDataHandler.js.map +1 -1
  198. package/models/trace/handlers/FlowsHandler.js +11 -11
  199. package/models/trace/handlers/FlowsHandler.js.map +1 -1
  200. package/models/trace/handlers/FramesHandler.d.ts +7 -0
  201. package/models/trace/handlers/FramesHandler.js +12 -10
  202. package/models/trace/handlers/FramesHandler.js.map +1 -1
  203. package/models/trace/handlers/GPUHandler.js +3 -3
  204. package/models/trace/handlers/GPUHandler.js.map +1 -1
  205. package/models/trace/handlers/ImagePaintingHandler.js +13 -13
  206. package/models/trace/handlers/ImagePaintingHandler.js.map +1 -1
  207. package/models/trace/handlers/InitiatorsHandler.js +32 -41
  208. package/models/trace/handlers/InitiatorsHandler.js.map +1 -1
  209. package/models/trace/handlers/InvalidationsHandler.js +63 -44
  210. package/models/trace/handlers/InvalidationsHandler.js.map +1 -1
  211. package/models/trace/handlers/LargestImagePaintHandler.js +5 -4
  212. package/models/trace/handlers/LargestImagePaintHandler.js.map +1 -1
  213. package/models/trace/handlers/LargestTextPaintHandler.js +3 -3
  214. package/models/trace/handlers/LargestTextPaintHandler.js.map +1 -1
  215. package/models/trace/handlers/LayerTreeHandler.js +11 -11
  216. package/models/trace/handlers/LayerTreeHandler.js.map +1 -1
  217. package/models/trace/handlers/LayoutShiftsHandler.d.ts +17 -4
  218. package/models/trace/handlers/LayoutShiftsHandler.js +47 -40
  219. package/models/trace/handlers/LayoutShiftsHandler.js.map +1 -1
  220. package/models/trace/handlers/MemoryHandler.js +3 -3
  221. package/models/trace/handlers/MemoryHandler.js.map +1 -1
  222. package/models/trace/handlers/MetaHandler.d.ts +22 -1
  223. package/models/trace/handlers/MetaHandler.js +30 -29
  224. package/models/trace/handlers/MetaHandler.js.map +1 -1
  225. package/models/trace/handlers/ModelHandlers.js +1 -1
  226. package/models/trace/handlers/ModelHandlers.js.map +1 -1
  227. package/models/trace/handlers/NetworkRequestsHandler.d.ts +10 -0
  228. package/models/trace/handlers/NetworkRequestsHandler.js +44 -25
  229. package/models/trace/handlers/NetworkRequestsHandler.js.map +1 -1
  230. package/models/trace/handlers/PageFramesHandler.js +3 -3
  231. package/models/trace/handlers/PageFramesHandler.js.map +1 -1
  232. package/models/trace/handlers/PageLoadMetricsHandler.js +5 -5
  233. package/models/trace/handlers/PageLoadMetricsHandler.js.map +1 -1
  234. package/models/trace/handlers/RendererHandler.d.ts +1 -1
  235. package/models/trace/handlers/RendererHandler.js +22 -22
  236. package/models/trace/handlers/RendererHandler.js.map +1 -1
  237. package/models/trace/handlers/SamplesHandler.d.ts +2 -2
  238. package/models/trace/handlers/SamplesHandler.js +7 -9
  239. package/models/trace/handlers/SamplesHandler.js.map +1 -1
  240. package/models/trace/handlers/ScreenshotsHandler.js +9 -10
  241. package/models/trace/handlers/ScreenshotsHandler.js.map +1 -1
  242. package/models/trace/handlers/ScriptsHandler.js +9 -8
  243. package/models/trace/handlers/ScriptsHandler.js.map +1 -1
  244. package/models/trace/handlers/SelectorStatsHandler.d.ts +2 -2
  245. package/models/trace/handlers/SelectorStatsHandler.js +13 -13
  246. package/models/trace/handlers/SelectorStatsHandler.js.map +1 -1
  247. package/models/trace/handlers/Threads.d.ts +2 -2
  248. package/models/trace/handlers/Threads.js +9 -9
  249. package/models/trace/handlers/Threads.js.map +1 -1
  250. package/models/trace/handlers/UserInteractionsHandler.d.ts +10 -3
  251. package/models/trace/handlers/UserInteractionsHandler.js +104 -84
  252. package/models/trace/handlers/UserInteractionsHandler.js.map +1 -1
  253. package/models/trace/handlers/UserTimingsHandler.d.ts +21 -0
  254. package/models/trace/handlers/UserTimingsHandler.js +67 -39
  255. package/models/trace/handlers/UserTimingsHandler.js.map +1 -1
  256. package/models/trace/handlers/WarningsHandler.js +14 -14
  257. package/models/trace/handlers/WarningsHandler.js.map +1 -1
  258. package/models/trace/handlers/WorkersHandler.js +7 -7
  259. package/models/trace/handlers/WorkersHandler.js.map +1 -1
  260. package/models/trace/handlers/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  261. package/models/trace/handlers/handlers-tsconfig.json +6 -2
  262. package/models/trace/handlers/handlers.js +1 -1
  263. package/models/trace/handlers/handlers.js.map +1 -1
  264. package/models/trace/handlers/helpers.d.ts +3 -2
  265. package/models/trace/handlers/helpers.js +10 -10
  266. package/models/trace/handlers/helpers.js.map +1 -1
  267. package/models/trace/handlers/types.d.ts +25 -2
  268. package/models/trace/handlers/types.js.map +1 -1
  269. package/models/trace/helpers/Extensions.js +8 -8
  270. package/models/trace/helpers/Extensions.js.map +1 -1
  271. package/models/trace/helpers/Network.js.map +1 -1
  272. package/models/trace/helpers/SamplesIntegrator.js +11 -9
  273. package/models/trace/helpers/SamplesIntegrator.js.map +1 -1
  274. package/models/trace/helpers/SyntheticEvents.js +1 -1
  275. package/models/trace/helpers/SyntheticEvents.js.map +1 -1
  276. package/models/trace/helpers/Timing.d.ts +4 -0
  277. package/models/trace/helpers/Timing.js +6 -4
  278. package/models/trace/helpers/Timing.js.map +1 -1
  279. package/models/trace/helpers/Trace.d.ts +21 -23
  280. package/models/trace/helpers/Trace.js +188 -67
  281. package/models/trace/helpers/Trace.js.map +1 -1
  282. package/models/trace/helpers/TreeHelpers.js +1 -1
  283. package/models/trace/helpers/TreeHelpers.js.map +1 -1
  284. package/models/trace/helpers/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  285. package/models/trace/helpers/helpers-tsconfig.json +6 -2
  286. package/models/trace/helpers/helpers.js +1 -1
  287. package/models/trace/helpers/helpers.js.map +1 -1
  288. package/models/trace/insights/CLSCulprits.d.ts +2 -2
  289. package/models/trace/insights/CLSCulprits.js +14 -14
  290. package/models/trace/insights/CLSCulprits.js.map +1 -1
  291. package/models/trace/insights/Cache.d.ts +2 -1
  292. package/models/trace/insights/Cache.js +8 -5
  293. package/models/trace/insights/Cache.js.map +1 -1
  294. package/models/trace/insights/Common.d.ts +9 -1
  295. package/models/trace/insights/Common.js +33 -1
  296. package/models/trace/insights/Common.js.map +1 -1
  297. package/models/trace/insights/DOMSize.d.ts +3 -2
  298. package/models/trace/insights/DOMSize.js +10 -7
  299. package/models/trace/insights/DOMSize.js.map +1 -1
  300. package/models/trace/insights/DocumentLatency.d.ts +2 -2
  301. package/models/trace/insights/DocumentLatency.js +18 -17
  302. package/models/trace/insights/DocumentLatency.js.map +1 -1
  303. package/models/trace/insights/DuplicatedJavaScript.d.ts +2 -2
  304. package/models/trace/insights/DuplicatedJavaScript.js +5 -5
  305. package/models/trace/insights/DuplicatedJavaScript.js.map +1 -1
  306. package/models/trace/insights/FontDisplay.d.ts +2 -1
  307. package/models/trace/insights/FontDisplay.js +7 -4
  308. package/models/trace/insights/FontDisplay.js.map +1 -1
  309. package/models/trace/insights/ForcedReflow.d.ts +2 -1
  310. package/models/trace/insights/ForcedReflow.js +6 -3
  311. package/models/trace/insights/ForcedReflow.js.map +1 -1
  312. package/models/trace/insights/INPBreakdown.d.ts +3 -3
  313. package/models/trace/insights/INPBreakdown.js +16 -5
  314. package/models/trace/insights/INPBreakdown.js.map +1 -1
  315. package/models/trace/insights/ImageDelivery.d.ts +2 -2
  316. package/models/trace/insights/ImageDelivery.js +13 -13
  317. package/models/trace/insights/ImageDelivery.js.map +1 -1
  318. package/models/trace/insights/LCPBreakdown.d.ts +3 -2
  319. package/models/trace/insights/LCPBreakdown.js +21 -15
  320. package/models/trace/insights/LCPBreakdown.js.map +1 -1
  321. package/models/trace/insights/LCPDiscovery.d.ts +2 -2
  322. package/models/trace/insights/LCPDiscovery.js +9 -11
  323. package/models/trace/insights/LCPDiscovery.js.map +1 -1
  324. package/models/trace/insights/LegacyJavaScript.d.ts +1 -1
  325. package/models/trace/insights/LegacyJavaScript.js +5 -4
  326. package/models/trace/insights/LegacyJavaScript.js.map +1 -1
  327. package/models/trace/insights/Models.js +1 -1
  328. package/models/trace/insights/Models.js.map +1 -1
  329. package/models/trace/insights/ModernHTTP.d.ts +2 -2
  330. package/models/trace/insights/ModernHTTP.js +6 -6
  331. package/models/trace/insights/ModernHTTP.js.map +1 -1
  332. package/models/trace/insights/NetworkDependencyTree.d.ts +6 -3
  333. package/models/trace/insights/NetworkDependencyTree.js +19 -16
  334. package/models/trace/insights/NetworkDependencyTree.js.map +1 -1
  335. package/models/trace/insights/RenderBlocking.d.ts +2 -2
  336. package/models/trace/insights/RenderBlocking.js +11 -11
  337. package/models/trace/insights/RenderBlocking.js.map +1 -1
  338. package/models/trace/insights/SlowCSSSelector.d.ts +3 -2
  339. package/models/trace/insights/SlowCSSSelector.js +9 -6
  340. package/models/trace/insights/SlowCSSSelector.js.map +1 -1
  341. package/models/trace/insights/Statistics.js +1 -1
  342. package/models/trace/insights/Statistics.js.map +1 -1
  343. package/models/trace/insights/ThirdParties.d.ts +2 -1
  344. package/models/trace/insights/ThirdParties.js +8 -5
  345. package/models/trace/insights/ThirdParties.js.map +1 -1
  346. package/models/trace/insights/Viewport.d.ts +2 -1
  347. package/models/trace/insights/Viewport.js +8 -5
  348. package/models/trace/insights/Viewport.js.map +1 -1
  349. package/models/trace/insights/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  350. package/models/trace/insights/insights-tsconfig.json +6 -2
  351. package/models/trace/insights/insights.d.ts +2 -0
  352. package/models/trace/insights/insights.js +3 -1
  353. package/models/trace/insights/insights.js.map +1 -1
  354. package/models/trace/insights/types.d.ts +4 -1
  355. package/models/trace/insights/types.js +2 -1
  356. package/models/trace/insights/types.js.map +1 -1
  357. package/models/trace/lantern/core/LanternError.js +1 -1
  358. package/models/trace/lantern/core/LanternError.js.map +1 -1
  359. package/models/trace/lantern/core/NetworkAnalyzer.js +1 -1
  360. package/models/trace/lantern/core/NetworkAnalyzer.js.map +1 -1
  361. package/models/trace/lantern/core/core-tsconfig.json +6 -2
  362. package/models/trace/lantern/core/core.js +1 -1
  363. package/models/trace/lantern/core/core.js.map +1 -1
  364. package/models/trace/lantern/core/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  365. package/models/trace/lantern/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  366. package/models/trace/lantern/graph/BaseNode.js +1 -1
  367. package/models/trace/lantern/graph/BaseNode.js.map +1 -1
  368. package/models/trace/lantern/graph/CPUNode.js +1 -1
  369. package/models/trace/lantern/graph/CPUNode.js.map +1 -1
  370. package/models/trace/lantern/graph/NetworkNode.js +1 -1
  371. package/models/trace/lantern/graph/NetworkNode.js.map +1 -1
  372. package/models/trace/lantern/graph/PageDependencyGraph.js +1 -1
  373. package/models/trace/lantern/graph/PageDependencyGraph.js.map +1 -1
  374. package/models/trace/lantern/graph/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  375. package/models/trace/lantern/graph/graph-tsconfig.json +6 -2
  376. package/models/trace/lantern/graph/graph.js +1 -1
  377. package/models/trace/lantern/graph/graph.js.map +1 -1
  378. package/models/trace/lantern/lantern-tsconfig.json +6 -2
  379. package/models/trace/lantern/lantern.js +1 -1
  380. package/models/trace/lantern/lantern.js.map +1 -1
  381. package/models/trace/lantern/metrics/FirstContentfulPaint.js +1 -1
  382. package/models/trace/lantern/metrics/FirstContentfulPaint.js.map +1 -1
  383. package/models/trace/lantern/metrics/Interactive.js +1 -1
  384. package/models/trace/lantern/metrics/Interactive.js.map +1 -1
  385. package/models/trace/lantern/metrics/LargestContentfulPaint.js +1 -1
  386. package/models/trace/lantern/metrics/LargestContentfulPaint.js.map +1 -1
  387. package/models/trace/lantern/metrics/MaxPotentialFID.js +1 -1
  388. package/models/trace/lantern/metrics/MaxPotentialFID.js.map +1 -1
  389. package/models/trace/lantern/metrics/Metric.js +1 -1
  390. package/models/trace/lantern/metrics/Metric.js.map +1 -1
  391. package/models/trace/lantern/metrics/SpeedIndex.js +1 -1
  392. package/models/trace/lantern/metrics/SpeedIndex.js.map +1 -1
  393. package/models/trace/lantern/metrics/TBTUtils.js +1 -1
  394. package/models/trace/lantern/metrics/TBTUtils.js.map +1 -1
  395. package/models/trace/lantern/metrics/TotalBlockingTime.js +1 -1
  396. package/models/trace/lantern/metrics/TotalBlockingTime.js.map +1 -1
  397. package/models/trace/lantern/metrics/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  398. package/models/trace/lantern/metrics/metrics-tsconfig.json +6 -2
  399. package/models/trace/lantern/metrics/metrics.js +1 -1
  400. package/models/trace/lantern/metrics/metrics.js.map +1 -1
  401. package/models/trace/lantern/simulation/ConnectionPool.js +1 -1
  402. package/models/trace/lantern/simulation/ConnectionPool.js.map +1 -1
  403. package/models/trace/lantern/simulation/Constants.js +1 -1
  404. package/models/trace/lantern/simulation/Constants.js.map +1 -1
  405. package/models/trace/lantern/simulation/DNSCache.js +1 -1
  406. package/models/trace/lantern/simulation/DNSCache.js.map +1 -1
  407. package/models/trace/lantern/simulation/SimulationTimingMap.js +1 -1
  408. package/models/trace/lantern/simulation/SimulationTimingMap.js.map +1 -1
  409. package/models/trace/lantern/simulation/Simulator.js +1 -1
  410. package/models/trace/lantern/simulation/Simulator.js.map +1 -1
  411. package/models/trace/lantern/simulation/TCPConnection.js +1 -1
  412. package/models/trace/lantern/simulation/TCPConnection.js.map +1 -1
  413. package/models/trace/lantern/simulation/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  414. package/models/trace/lantern/simulation/simulation-tsconfig.json +6 -2
  415. package/models/trace/lantern/simulation/simulation.js +1 -1
  416. package/models/trace/lantern/simulation/simulation.js.map +1 -1
  417. package/models/trace/lantern/types/Lantern.js +1 -1
  418. package/models/trace/lantern/types/Lantern.js.map +1 -1
  419. package/models/trace/lantern/types/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  420. package/models/trace/lantern/types/types-tsconfig.json +6 -2
  421. package/models/trace/lantern/types/types.js +1 -1
  422. package/models/trace/lantern/types/types.js.map +1 -1
  423. package/models/trace/trace-tsconfig.json +10 -2
  424. package/models/trace/trace.d.ts +5 -1
  425. package/models/trace/trace.js +6 -2
  426. package/models/trace/trace.js.map +1 -1
  427. package/models/trace/types/Configuration.d.ts +11 -0
  428. package/models/trace/types/Configuration.js +1 -1
  429. package/models/trace/types/Configuration.js.map +1 -1
  430. package/models/trace/types/Extensions.d.ts +25 -13
  431. package/models/trace/types/Extensions.js +6 -3
  432. package/models/trace/types/Extensions.js.map +1 -1
  433. package/models/trace/types/File.d.ts +13 -2
  434. package/models/trace/types/File.js +1 -1
  435. package/models/trace/types/File.js.map +1 -1
  436. package/models/trace/types/Overlays.d.ts +5 -4
  437. package/models/trace/types/Overlays.js +1 -1
  438. package/models/trace/types/Overlays.js.map +1 -1
  439. package/models/trace/types/Timing.d.ts +1 -0
  440. package/models/trace/types/Timing.js +1 -1
  441. package/models/trace/types/Timing.js.map +1 -1
  442. package/models/trace/types/TraceEvents.d.ts +81 -61
  443. package/models/trace/types/TraceEvents.js +42 -29
  444. package/models/trace/types/TraceEvents.js.map +1 -1
  445. package/models/trace/types/devtools_entrypoint-bundle-typescript-tsconfig.json +6 -2
  446. package/models/trace/types/types-tsconfig.json +6 -2
  447. package/models/trace/types/types.js +1 -1
  448. package/models/trace/types/types.js.map +1 -1
  449. package/package.json +1 -1
  450. package/test/test-trace-engine.mjs +4 -4
@@ -1,10 +1,9 @@
1
1
  /**
2
2
  * @param {Trace.Types.Events.Event[]} traceEvents
3
- * @return {Promise<{parsedTrace: Trace.Handlers.Types.ParsedTrace, insights: Trace.Insights.Types.TraceInsightSets, model: Trace.TraceModel.Model}>}
3
+ * @returns {Promise<{parsedTrace: Trace.TraceModel.ParsedTrace, model: Trace.TraceModel.Model}>}
4
4
  */
5
5
  export function analyzeEvents(traceEvents: Trace.Types.Events.Event[]): Promise<{
6
- parsedTrace: Trace.Handlers.Types.ParsedTrace;
7
- insights: Trace.Insights.Types.TraceInsightSets;
6
+ parsedTrace: Trace.TraceModel.ParsedTrace;
8
7
  model: Trace.TraceModel.Model;
9
8
  }>;
10
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"analyze-trace.d.mts","sourceRoot":"","sources":["../../analyze-trace.mjs"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,2CAHW,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GACzB,OAAO,CAAC;IAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAA;CAAC,CAAC,CAenJ;AAED;;;GAGG;AACH,uCAHW,MAAM,GACJ,UAAU,sBAAe,CAKrC;AAgDD,wCAqIC;oBA3Na,YAAiC;uBAQxB,yBAAyB"}
1
+ {"version":3,"file":"analyze-trace.d.mts","sourceRoot":"","sources":["../../analyze-trace.mjs"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,2CAHW,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GACxB,OAAO,CAAC;IAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAA;CAAC,CAAC,CAiB/F;AAED;;;GAGG;AACH,uCAHW,MAAM,GACJ,UAAU,sBAAe,CAKrC;AAgDD,wCAqIC;oBA7Na,YAAiC;uBAQxB,yBAAyB"}
@@ -1 +1 @@
1
- {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.string.d.ts","../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.object.d.ts","../../node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../generated/protocol.d.ts","../../analyze-inspector-issues.mjs","../../core/platform/arrayutilities.d.ts","../../core/platform/brand.d.ts","../../core/platform/constructor.d.ts","../../core/platform/dateutilities.d.ts","../../core/platform/devtoolspath.d.ts","../../core/platform/domutilities.d.ts","../../core/platform/keyboardutilities.d.ts","../../core/platform/maputilities.d.ts","../../core/platform/mimetype.d.ts","../../core/platform/numberutilities.d.ts","../../core/platform/stringutilities.d.ts","../../core/platform/timing.d.ts","../../core/platform/typedarrayutilities.d.ts","../../core/platform/typescriptutilities.d.ts","../../core/platform/uistring.d.ts","../../core/platform/uservisibleerror.d.ts","../../core/platform/platform.d.ts","../../node_modules/third-party-web/lib/index.d.ts","../../third_party/third-party-web/third-party-web.d.ts","../../models/trace/lantern/core/lanternerror.d.ts","../../models/trace/lantern/types/lantern.d.ts","../../models/trace/lantern/types/types.d.ts","../../models/trace/lantern/core/networkanalyzer.d.ts","../../models/trace/lantern/core/core.d.ts","../../models/trace/lantern/graph/cpunode.d.ts","../../models/trace/lantern/graph/networknode.d.ts","../../models/trace/lantern/graph/basenode.d.ts","../../models/trace/lantern/graph/pagedependencygraph.d.ts","../../models/trace/lantern/graph/graph.d.ts","../../models/trace/lantern/simulation/simulationtimingmap.d.ts","../../models/trace/lantern/simulation/tcpconnection.d.ts","../../models/trace/lantern/simulation/connectionpool.d.ts","../../models/trace/lantern/simulation/constants.d.ts","../../models/trace/lantern/simulation/dnscache.d.ts","../../models/trace/lantern/simulation/simulator.d.ts","../../models/trace/lantern/simulation/simulation.d.ts","../../models/trace/lantern/metrics/metric.d.ts","../../models/trace/lantern/metrics/firstcontentfulpaint.d.ts","../../models/trace/lantern/metrics/interactive.d.ts","../../models/trace/lantern/metrics/largestcontentfulpaint.d.ts","../../models/trace/lantern/metrics/maxpotentialfid.d.ts","../../models/trace/lantern/metrics/speedindex.d.ts","../../models/trace/lantern/metrics/totalblockingtime.d.ts","../../models/trace/lantern/metrics/tbtutils.d.ts","../../models/trace/lantern/metrics/metrics.d.ts","../../models/trace/lantern/lantern.d.ts","../../models/trace/types/timing.d.ts","../../models/trace/types/extensions.d.ts","../../models/trace/types/traceevents.d.ts","../../models/trace/types/file.d.ts","../../models/trace/types/configuration.d.ts","../../models/trace/types/overlays.d.ts","../../models/trace/types/types.d.ts","../../models/trace/handlers/animationframeshandler.d.ts","../../models/trace/handlers/animationhandler.d.ts","../../models/trace/handlers/asyncjscallshandler.d.ts","../../models/trace/handlers/auctionworkletshandler.d.ts","../../models/trace/handlers/domstatshandler.d.ts","../../models/trace/helpers/treehelpers.d.ts","../../models/trace/helpers/extensions.d.ts","../../models/trace/helpers/network.d.ts","../../models/cpu_profile/profiletreemodel.d.ts","../../models/cpu_profile/cpuprofiledatamodel.d.ts","../../models/cpu_profile/cpu_profile.d.ts","../../models/trace/helpers/samplesintegrator.d.ts","../../models/trace/helpers/syntheticevents.d.ts","../../models/trace/helpers/timing.d.ts","../../models/trace/helpers/trace.d.ts","../../models/trace/helpers/helpers.d.ts","../../models/trace/handlers/extensiontracedatahandler.d.ts","../../models/trace/handlers/flowshandler.d.ts","../../models/trace/handlers/layertreehandler.d.ts","../../models/trace/handlers/metahandler.d.ts","../../models/trace/handlers/rendererhandler.d.ts","../../models/trace/handlers/frameshandler.d.ts","../../models/trace/handlers/gpuhandler.d.ts","../../models/trace/handlers/imagepaintinghandler.d.ts","../../models/trace/handlers/initiatorshandler.d.ts","../../models/trace/handlers/invalidationshandler.d.ts","../../models/trace/handlers/largestimagepainthandler.d.ts","../../models/trace/handlers/largesttextpainthandler.d.ts","../../models/trace/handlers/pageloadmetricshandler.d.ts","../../models/trace/handlers/layoutshiftshandler.d.ts","../../models/trace/handlers/memoryhandler.d.ts","../../models/trace/handlers/pageframeshandler.d.ts","../../models/trace/handlers/sampleshandler.d.ts","../../models/trace/handlers/screenshotshandler.d.ts","../../models/trace/handlers/scriptshandler.d.ts","../../models/trace/handlers/selectorstatshandler.d.ts","../../models/trace/handlers/userinteractionshandler.d.ts","../../models/trace/handlers/usertimingshandler.d.ts","../../models/trace/handlers/warningshandler.d.ts","../../models/trace/handlers/workershandler.d.ts","../../models/trace/handlers/modelhandlers.d.ts","../../models/trace/handlers/types.d.ts","../../models/trace/handlers/networkrequestshandler.d.ts","../../models/trace/handlers/helpers.d.ts","../../models/trace/handlers/threads.d.ts","../../models/trace/handlers/handlers.d.ts","../../models/trace/extras/scriptduplication.d.ts","../../models/trace/extras/stacktraceforevent.d.ts","../../models/trace/extras/thirdparties.d.ts","../../models/trace/extras/tracefilter.d.ts","../../models/trace/extras/tracetree.d.ts","../../models/trace/extras/extras.d.ts","../../models/trace/insights/cache.d.ts","../../models/trace/insights/clsculprits.d.ts","../../models/trace/insights/documentlatency.d.ts","../../models/trace/insights/domsize.d.ts","../../models/trace/insights/duplicatedjavascript.d.ts","../../models/trace/insights/fontdisplay.d.ts","../../models/trace/insights/forcedreflow.d.ts","../../models/trace/insights/imagedelivery.d.ts","../../models/trace/insights/inpbreakdown.d.ts","../../models/trace/insights/lcpbreakdown.d.ts","../../models/trace/insights/lcpdiscovery.d.ts","../../models/trace/insights/legacyjavascript.d.ts","../../models/trace/insights/modernhttp.d.ts","../../models/trace/insights/networkdependencytree.d.ts","../../models/trace/insights/renderblocking.d.ts","../../models/trace/insights/slowcssselector.d.ts","../../models/trace/insights/thirdparties.d.ts","../../models/trace/insights/viewport.d.ts","../../models/trace/insights/models.d.ts","../../models/trace/insights/types.d.ts","../../models/trace/insights/common.d.ts","../../models/trace/insights/statistics.d.ts","../../models/trace/insights/insights.d.ts","../../models/trace/lanterncomputationdata.d.ts","../../models/trace/modelimpl.d.ts","../../models/trace/processor.d.ts","../../models/trace/trace.d.ts","../../analyze-trace.mjs","../../test/test-trace-engine.mjs","../../third_party/third-party-web/third-party-web.js","../../node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/@types/node/compatibility/index.d.ts","../../node_modules/@types/node/ts5.6/globals.typedarray.d.ts","../../node_modules/@types/node/ts5.6/buffer.buffer.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/file.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/filereader.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/dom-events.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/sqlite.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/ts5.6/index.d.ts"],"fileIdsList":[[74,216,258,271],[207,216,258,271,307],[216,258],[77,216,258],[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,216,258],[90,216,258],[137,138,216,258],[74,137,216,258],[74,92,216,258],[175,176,177,178,179,216,258],[174,216,258],[74,128,174,216,258],[94,128,174,216,258],[128,174,216,258],[74,128,178,216,258],[128,170,216,258],[128,216,258],[128,144,170,216,258],[128,132,147,148,149,170,216,258],[169,170,172,173,216,258],[92,94,128,170,171,216,258],[74,128,216,258],[74,128,157,170,216,258],[129,130,131,132,133,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,171,216,258],[128,170,172,216,258],[128,144,148,170,172,216,258],[128,139,144,216,258],[74,128,170,216,258],[128,132,144,149,170,216,258],[128,169,216,258],[128,157,170,216,258],[128,134,216,258],[134,135,136,140,141,142,143,216,258],[74,124,216,258],[74,128,139,216,258],[92,128,216,258],[128,144,174,200,216,258],[74,92,128,174,200,216,258],[74,128,174,200,216,258],[128,174,200,216,258],[128,174,180,200,216,258],[92,128,174,200,216,258],[124,128,174,200,216,258],[199,200,201,202,216,258],[181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,216,258],[121,128,199,216,258],[95,98,216,258],[97,216,258],[97,100,101,216,258],[97,102,216,258],[100,101,102,103,216,258],[97,100,101,102,216,258],[97,99,104,111,120,216,258],[97,104,112,216,258],[104,111,112,216,258],[97,104,111,112,216,258],[97,104,111,216,258],[112,113,114,115,116,117,118,119,216,258],[97,106,216,258],[105,106,107,108,109,110,216,258],[104,216,258],[97,104,105,106,107,109,216,258],[105,216,258],[74,216,258],[96,216,258],[121,128,174,216,258],[128,144,174,203,216,258],[128,174,203,205,216,258],[121,128,144,174,180,203,204,205,206,216,258],[74,92,121,125,216,258],[92,124,216,258],[74,122,124,216,258],[122,124,125,216,258],[74,92,122,123,216,258],[122,123,124,125,126,127,216,258],[216,255,258],[216,257,258],[216,258,263,293],[216,258,259,264,270,271,278,290,301],[216,258,259,260,270,278],[211,212,213,216,258],[216,258,261,302],[216,258,262,263,271,279],[216,258,263,290,298],[216,258,264,266,270,278],[216,257,258,265],[216,258,266,267],[216,258,270],[216,258,268,270],[216,257,258,270],[216,258,270,271,272,290,301],[216,258,270,271,272,285,290,293],[216,253,258,306],[216,253,258,266,270,273,278,290,301],[216,258,270,271,273,274,278,290,298,301],[216,258,273,275,290,298,301],[216,258,270,276],[216,258,277,301,306],[216,258,266,270,278,290],[216,258,279],[216,258,280],[216,257,258,281],[216,255,256,257,258,259,260,261,262,263,264,265,266,267,268,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307],[216,258,283],[216,258,284],[216,258,270,285,286],[216,258,285,287,302,304],[216,258,270,290,291,292,293],[216,258,290,292],[216,258,290,291],[216,258,293],[216,258,294],[216,255,258,290],[216,258,270,296,297],[216,258,296,297],[216,258,263,278,290,298],[216,258,299],[258],[214,215,216,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307],[216,258,278,300],[216,258,273,284,301],[216,258,263,302],[216,258,290,303],[216,258,277,304],[216,258,305],[216,258,263,270,272,281,290,301,304,306],[216,258,290,307],[216,225,229,258,301],[216,225,258,290,301],[216,220,258],[216,222,225,258,298,301],[216,258,278,298],[216,258,308],[216,220,258,308],[216,222,225,258,278,301],[216,217,218,221,224,258,270,290,301],[216,225,232,258],[216,217,223,258],[216,225,246,247,258],[216,221,225,258,293,301,308],[216,246,258,308],[216,219,220,258,308],[216,225,258],[216,219,220,221,222,223,224,225,226,227,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,247,248,249,250,251,252,258],[216,225,240,258],[216,225,232,233,258],[216,223,225,233,234,258],[216,224,258],[216,217,220,225,258],[216,225,229,233,234,258],[216,229,258],[216,223,225,228,258,301],[216,217,222,225,232,258],[216,258,290],[216,220,225,246,258,306,308],[207,208,216,255,258,271,295],[93,216,258]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"abee51ebffafd50c07d76be5848a34abfe4d791b5745ef1e5648718722fab924","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a94697425a99354df73d9c8291e2ecd4dddd370aed4023c2d6dee6cccb32666","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3f9fc0ec0b96a9e642f11eda09c0be83a61c7b336977f8b9fdb1e9788e925fe","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"15c1c3d7b2e46e0025417ed6d5f03f419e57e6751f87925ca19dc88297053fe6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d540251809289a05349b70ab5f4b7b99f922af66ab3c39ba56a475dcf95d5ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},"96a7b6a972b64f32885ce036d1a60848e89163af94d1f58e0d16e92696ae8347",{"version":"82f0ca04fe053aa40fc10abdfc3fc05e2e864daa508ef7896f9bc0d1716ee256","signature":"c3ee43d47910471b737158965764f4f32a06d1e49fbd5ce0ba258874df2d2945","impliedFormat":99},"f81c4ecf310f50bf3151b220b1283b5aaf2a7642ace66cd30f0d339424500ebf","11a2d1e5b1111431dee853906b3ff6054712042e54966fcdc6b81f692480c303","9622bae9631af715930691c3e5b2ceda33a15dffba7be4f981ecb1da93ed6a1d","e095651a10d731d17f76125a19d15a9de398373ba378c4d25cbefac7eaeab06e","6aece26fdeec0c1f0f3d0a2869a84361ddf0572349dd27ef052c5f6d9897150d","6ef5f2ac3119868350ec863f23910e3daa02d3ab913938f5d509e1acdd97a095","a361e49abd1bd9d597423eee5458a5f8d4d4191e95d200abc03acbef72727ab1","51bc25497c2b9f5517b1fbb883b31672e8b85cdffdf59c11ed7b136cfff357c9","d271a2aac9b87b4dcc3b01936a365d70d196302f6e980c73924e695e6b9104c4","a651bfe66ba249df9aa0bb5bb2f47b35bf5af995785bb463252aab526503f95f","2012f28bc8d20f94a642aa28e3fabcc44237f4b4b6967cead3ffecfdb33da817","bc96b1b4585fd7612b15d0ec7fe61c4f0b19a1d39ab38da19a6b025fd494f391","860142b862a07264689b11149ea56bed062f85f70f97e5b669de40a1e6555967","70cb9ab7c00e559432a71c0837d85c1d98b5f59798eeb733519d75a6ba162133","06f9f245beb04a2a4f45f4bf854207ac68cc475491e7b9a476d5d5d1dde72283","b6099613ad4bddc54775e6adca810064c0250440d9295a31e0b83f62d5857e95","5c6beba8dfe34ec34b421b4d679c212ca49d618439cf7b6dfba2c825aa94d57f",{"version":"a4b8a94f5f1db62b9e3489cc1d03cb25b87d37c56809ee869eb5590731303b98","impliedFormat":1},"e653b0f922561e26013e34dfda1c83f9bbb6c55ff92e38543332407c6d57aa74","13553cadb0a19e32c22453b8ccfa18dc409038e4dcff71277a2dfad5cb00eb9a","c051d69dfbe9d6ff9c445c6099f7c7d73feb5c479d3478aa995330088d7d2341","8a0be51d107c4bd8f499990532fe2ef067321d3fdcc86169259655a91e9ffb5b","f18c83c932e4e0fb6c6538a1b49e06d013b987a4b36dc40d091451e146177dc3","65b15869a5304210a74f02483c6942be2866dc7f850c57677a810606840694c8","ed4bc679cad21020f4bcfe7e1c839d3d6178d8a3c92a04a7c9cc0fe4bc907d72","2c6467fcaccdcf87619c929451e4b34a4499fbff06439b7525c3976dc05a54b1","3f9b2e174a51f973dc7db99651f83a48702aa3515844feeeb7b03f1675bc1689","864e84405178ffe2ad731d90d7adc50395e0700edcf4cb51aad7defd79be9956","4d60206c2c7056fb0ce532bccd53cc7ca91cea6749436370276c5bed37cfe1a6","0a983893a12abc7bd5f0683dbe40643bb05b9f9cf50c6c66eefabc396928a4dd","bc46d7d85f7e669b267ac01c0aa1f5e5604411014296ec30e3b82d7d41d2244c","0e5f60dde13c788ce31ec8befcf57c4563cbac76bfbb708dcee1eaebdb40808b","3bb93f54703c59cf80ef9875a198919bb5af91fba132db1dfb5148fdced1f699","4d40fb6cbc8ae8ac730344bcff2e5cbfc5d1bcd2c58b15a298dffa223314e342","b1bb9e16346c1db6280c6899c55cab7866cd4f74f3d83e51f5ecd9e9cff4cb7e","af49c00792161e91cde047a3a9e77ee7df65373d76a9856c2c8c6eed3c910138","9c742e3bc73bca24ac8f620555280b4353f89a0d68ada4505023920ea616a2ca","3f87f61d9ce8865da63f6ca69c9b88d4782515e5516ee1647a92842a58528448","4839bfb4b24fc8be37adbcc4576dda22cda99598aaea392b3eed5691dba16edf","2242dd864f183bd84060cf5928e76c122d71ad7446cb7fff209faa7152f07fec","704ee6aa84b3de1d28f7c7b0d46fd30828e069951b12cb026d4166b02327bf7e","72349451fef9d8697a47ace642b9c5cab4981be0423dd2c346add976d746c782","05cc029411c09d9aa4390615723abd20626acf507da207255635c0a1ab3c03c9","8de9ccda27bb5caa761c01476668d218b1bd68639c5953c69cdbb65981d2a4de","d1c01d55315a58e91cb375c36977e0ac103db3e5c374bf48c4c80d966acf781e","60b6a8ba8d225dcb41bdbcec2555eafcee525f3006b816d7f5718ba9b3d252ce","c4e4bb7a91fdcdd5fc9a6ebb4790c5b2d0ab799eefec624cd363f433ca96e683","85c233240a0be5a995d4a2fe0a071e77bd70f6024d34029773c445cb5be7a162","fe261e2eefb3eb69492dcfaa6d55802f6b33990d700cadb10b549d64c84f2482","e12605e06cda23cea90d55ed17cdb434069b8463cc1a4de62cf9385b8d9674d6","5e452b84560e2160f2a6280360e5720a5791508658ddc12d7e2b4502a106c0df","1f061b74b35f8d90c66f63d44870e8acb7acaeff7b6a6e44e1b54d76b1a60e4f","82d37852017725200620ac99779f06bdb46c1397f80aa22fa6ab6730255d3311","b50cf936818a2cdc774b0a808ca211057b91c73f2a5b4353ebe8b56dbe8e7d25","bb96d88c16fe4d492d021110ea68fff179cd2d2f3d9965a92542675fad346885","e1610712333ba17e81221133d3b56c5e3ba1ed3055996b25dc5c69933fdefc28","07f5b03e716b0c69745a77263c5ec5fd4c3ce571201b6a880d9be5315ca4146f","761cd40510ac5eb476181ac693e1000b9439de8e85c59600090ee8d7464b83b1","8a25703736f438b737101300f0f69e5153d4ffa59b279fe663e2e05b50343142","06bfa28ad8208a71396d2037788369e0db67da72660dd1a9b406dcbee65a58ab","5489585e422e92c423a416c20d29408da9112f57b26a3c92c47b36ce4b8f9d6b","88b3fd050d48d52534333324537e9dde7c87007831ec5844bc0de1084a371f75","9f706da87dc0475ca2d5984fb30abce22e6f9b4d9c3a91e43c041f8253a176d7","cd1f9803cfbf50e7147457805002a1a82ccfdb6a14e08e79a7498cd6519afcb9","882031476ee5a1f6465c0c3b7c02887d2a332494c2bb158a838bae1a404255f0","62855e2bff2344ab79f8f0ad5b53cb39478931e4ddbb01ec203fd4ccaf63e0a4","85b59366c14f0e2669274ece0c218bcbf33b923833b05fb9ab47e0e7450db296","54ffc928fdfa235b45ee84e0401434b3996422969728fc2226dd251db3bd0e0b","b9a340f42d49fa3000239a02cc139f164be10f8a05a5ab12173154f699467d8a","ba424d3cd9d25300f1c9d3f886969522666707cc057f9503f09ee5a485fff760","794826ae19d825e41717acb6dfb23b913b95e49066f3d6a00dbb73ae2159e53d","2b38b9a2327c156dc75facc78027524df2801a2ded6c6a6d48912605df81ca59","da7b732320db9751978447921c102cd75059adec6c1bcd504104177fec7c153e","3362e61a4e13d94d8495595692a40237850ca045342c4f39a923010860c37162","5218dc6d935699ac7522d8fcabf0b52db727e8a0826399af7b3ad4a52e9c8193","a7df531b669c28f0c69b11650334ed73f28dfd4f432e2b91c66ced11820abe2a","c054f383a9d5f5442b1222ccb80d4cc64cc2cc5541a3afa63ef036940c620025","4f779d8d9e19ac6d45576981905145603f4220196f3e6a850800bb717fb9f506","8f34b52ddef0674682b342808bb515ef05b5650f2658052af7f5063cecdcffe0","d5621207d821da49f2474420a5b895a88cc2757ae523ae50eec6236fbc01b147","d8a0cc5b14a68b02b23f961281ca651ebeae7ecd637dc9c966b8f8b370560bdd","0c7eb012d7fc7737d830b1232cfa0bf08282de906a141bebf68027721c5557a1","fecaafcab5173b8be35a5e534799c4462212b58cee8cdd25cc44b7feab49b094","3b25e4b92337c79c77983d5d97b8d4b550f6213dfa9a56d2a258e8ce42e3be49","88f2401df90448c931de3dadfce0d03a71e83dc6c13263ad44f6152cd36ca197","58434afd931f355202b52dd7e4fc7e4abae064c0c31bc5eebcd7bd64ad1b6254","283b848631ff4eb6103c84cbb793e23a0de0589f8013d5df53bdbd1e0669d2a0","9f9ed701a01981d36ba58822efd8293246e6ee1eb492b5e47160a8756deaea8f","a4de2e9c646d4f6cddc6aacf8cc5f5c145f75d494a7d499cd5a07720c2bdb303","0ae90a995743c69b604c9bfc98fbec1d98b77b7164332a7f4e221e2c378411ae","aacf6746941d87bb35cc1261ac3c4c10320b6189332a4fc24f352fd63cb7ff7b","af4923581455e9cb61f867e87d77e7f1c441af9bef272d068904364c3be992ab","84d15b9087d0f4c1436a4adb4c6183a288a0863644121acb7fca41025b94c680","fc134b261d06b97bbff68b7583d70b039e0f536558eee4001d911cefb9576f1c","dcd07562b2f2e5c8d9f8e078be212d0cc0786c02e5aa4e7d090f000a2c2975cb","4e9d1abec2b1163346af3bc0087f3fc9869a77fbde803f6deacd1efa7826edca","3131c01a4182c4957a2d414e71d3cf4b2f58ffcd77d4a1fa93812aa3ad77e2bb","592c982f9f405067548011db50283bb10ee053d8ed1a1a37f783d002e31290f5","c4c6c72c84dcda589b5c735c1c9b409eefab8f5465a8c7ba5c798bdfa4146d9e","46ede49e2f7b718dd9995359196e8609c9e7d5074a6109c5a50f322e1f531f5d","740d221a3ab74462f93257bf31826a6f61c52b7255e00007f20d6d6638134df1","f60bc1e94a7ceb21a15ec656c640be9cff10f1f52d6af2d5b0b0c67354a354c8","4b60ea7c341fb3037c9522d627e8216251584e4c78dc2f4292fa39c8a164c148","7ec57af82a03760f213566549e527fca35e91a93449272028150819bbf5a5638","bfac496e6d88aadd434fff6f3207b3b5110ac8ae44dc3fb155540d8b6b2d2e05","c9b31ec23c331ae5e44ca97c49bd131f6e9fb660441b69f54f905dae72af615f","ee8ecbb672bfe4d1c615cad3bdf26838fac379908bac5512193361ce3b7702ab","eef1dc193f7331e22716c0452cc2a1c5597cd1cb66300ca0b5e88561b30e788b","a1e13d72e424a3e3333e01cc392c6d722f2149f23810e8fd964c737eee5d0ec7","c91703e478fcd3a31b52acd522a6a51d7351490fb2ccb1f962b2a315642088a7","4f8de1a561fbbc170855cabd0c3c8ee7a464349ffb457b14b5c2e59e168ddea9","c330753f22c672148d7b1a75cc8ebd8a443588503327af32c86c7ff960e2f67b","6cfd7a14cf4c2fe6f5f297fabcfc6e5f98bf38cef7001241345c5c80516873c1","39f3f8d16ece53a1a75b345bb47501719326076a876d37bd5722c86b1619e319","fb230272b2930ce5a5cb3bd1912731345814e7b3abae4029f52871f93564f03d","6c50181ba5883b7a8263998f2819f01f6af954ff04dbbedd4fc4a69b91c7ff6b","b3885e7d66cca4b11978ce89e7176675c7ef660a6c696f7f65111817d4dcc69f","e592eccf74af1b2e0b683b79f118a172638970cd68dd795ed6d8f681ac51b7dd","b47cd21a89bffe55c75a542cb22fe7348e5fc82e11a001305fb0c83c1c3105cd","ff935cd798e28212f146a7d5f07f5073a135955b71dc9e63d273a22d480f8498","c8e1c55e9c69605d179ce3054d16a1a205be68b60b7d5f41c8dfa95a0968868b","8a80870197f7967350919262aa1c669cffdd1946ba6f61556f5f482dfcc5d3e5","f6212aed9accc49496e3e4dfe9ae4ddee46c8f5bb63b47d5758d54906a111bac","184ec4a346d410b4cc3a2a9d4a93925791cb3c9a5b7c6e847c772a055ef155c8","eb0e3e1e274d1f2bcda473416cb3723d72c834fa0e822b84c9ce20e3cf6df45d","d5462eed6f4693dcfb047cbce1da90135125493587625e1391923cf170ccc6ce","57a606dd1911ab1f5732f0060b3e02ca042aa2b712b06572cacc55e66d0d3e34","ff6f551ea87ad9e980f687505674d480827bec2f227e0cedfd1d9d9f0d7e9ca2","5ffd41ec7214c668b2209ce8675d289eb76a7eb660169dd3291d09d09fa67f91",{"version":"48b043188b4d7d32aae02c4b7999ed7642f1ca9f40ae28d6abf6aac24c057b62","affectsGlobalScope":true},{"version":"77e975927fc4443eec16c2c3ae9603a468d7c6d70200f1b1682b737d77f8e176","affectsGlobalScope":true},"6ed95ac93ce199b5cfe5205776bbae1dd00c09638394b38ee32ef7ee54b7460f",{"version":"48834513b1bdf65b7f4ae79a87dcac9ccfcff85d9fad1945428c4f547bbb5ddc","signature":"fdd777efc3c8a1178f816db3ee1383901406fd65b094912ef363303c74990f3a","impliedFormat":99},{"version":"d2e20827a68337196844d1b474565e027f7af7f2c540d7806d30b870dba3d42c","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"e653b0f922561e26013e34dfda1c83f9bbb6c55ff92e38543332407c6d57aa74","signature":"56d8d0daa8dc216adb499d98c67d07876a3eb3a299037d861fe213cda14f0179"},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"613b21ccdf3be6329d56e6caa13b258c842edf8377be7bc9f014ed14cdcfc308","affectsGlobalScope":true,"impliedFormat":1},{"version":"2d1319e6b5d0efd8c5eae07eb864a00102151e8b9afddd2d45db52e9aae002c4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"81184fe8e67d78ac4e5374650f0892d547d665d77da2b2f544b5d84729c4a15d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f52e8dacc97d71dcc96af29e49584353f9c54cb916d132e3e768d8b8129c928d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"24642567d3729bcc545bacb65ee7c0db423400c7f1ef757cab25d05650064f98","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"875928df2f3e9a3aed4019539a15d04ff6140a06df6cd1b2feb836d22a81eaca","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9ad08a376ac84948fcca0013d6f1d4ae4f9522e26b91f87945b97c99d7cc30b","impliedFormat":1},{"version":"eaf9ee1d90a35d56264f0bf39842282c58b9219e112ac7d0c1bce98c6c5da672","impliedFormat":1},{"version":"c15c4427ae7fd1dcd7f312a8a447ac93581b0d4664ddf151ecd07de4bf2bb9d7","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"75c3400359d59fae5aed4c4a59fcd8a9760cf451e25dc2174cb5e08b9d4803e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"94c4187083503a74f4544503b5a30e2bd7af0032dc739b0c9a7ce87f8bddc7b9","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"3eb62baae4df08c9173e6903d3ca45942ccec8c3659b0565684a75f3292cffbb","affectsGlobalScope":true,"impliedFormat":1},{"version":"a85683ef86875f4ad4c6b7301bbcc63fb379a8d80d3d3fd735ee57f48ef8a47e","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"15c5e91b5f08be34a78e3d976179bf5b7a9cc28dc0ef1ffebffeb3c7812a2dca","impliedFormat":1},{"version":"a8f06c2382a30b7cb89ad2dfc48fc3b2b490f3dafcd839dadc008e4e5d57031d","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"9212c6e9d80cb45441a3614e95afd7235a55a18584c2ed32d6c1aca5a0c53d93","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"6bd91a2a356600dee28eb0438082d0799a18a974a6537c4410a796bab749813c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a5c09990a37469b0311a92ce8feeb8682e83918723aedbd445bd7a0f510eaaa3","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"171fd8807643c46a9d17e843959abdf10480d57d60d38d061fb44a4c8d4a8cc4","impliedFormat":1}],"root":[74,75,[208,210]],"options":{"allowJs":true,"checkJs":true,"composite":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":99,"outDir":"./","strict":true,"target":99},"referencedMap":[[75,1],[208,2],[76,3],[77,3],[78,3],[79,3],[80,4],[81,3],[82,3],[83,3],[84,3],[85,3],[92,5],[86,4],[87,4],[88,3],[89,3],[90,4],[91,6],[74,3],[139,7],[138,8],[137,9],[180,10],[175,11],[176,12],[177,13],[178,14],[179,15],[129,16],[130,17],[131,17],[132,17],[133,17],[145,18],[146,17],[150,19],[151,16],[174,20],[172,21],[152,16],[153,17],[154,17],[155,16],[156,22],[147,16],[158,23],[159,17],[148,17],[169,24],[171,25],[160,17],[157,16],[149,26],[161,27],[162,16],[163,28],[164,22],[173,29],[170,30],[165,31],[166,17],[167,16],[168,17],[135,32],[144,33],[136,34],[140,35],[141,17],[142,17],[143,35],[134,36],[181,37],[182,38],[201,39],[183,40],[184,40],[185,41],[186,42],[187,38],[188,42],[189,43],[203,44],[190,40],[191,40],[192,40],[199,45],[193,42],[194,38],[195,40],[196,40],[202,3],[197,41],[200,46],[198,42],[99,47],[95,3],[98,48],[102,49],[100,50],[104,51],[101,50],[103,52],[121,53],[113,54],[114,55],[115,56],[116,55],[112,57],[120,58],[117,55],[119,3],[118,55],[107,59],[108,3],[109,48],[111,60],[105,61],[110,62],[106,63],[96,64],[97,65],[204,66],[205,67],[206,68],[207,69],[126,70],[123,71],[125,72],[127,73],[122,3],[124,74],[128,75],[255,76],[256,76],[257,77],[258,78],[259,79],[260,80],[211,3],[214,81],[212,3],[213,3],[261,82],[262,83],[263,84],[264,85],[265,86],[266,87],[267,87],[269,88],[268,89],[270,90],[271,91],[272,92],[254,93],[273,94],[274,95],[275,96],[276,97],[277,98],[278,99],[279,100],[280,101],[281,102],[282,103],[283,104],[284,105],[285,106],[286,106],[287,107],[288,3],[289,3],[290,108],[292,109],[291,110],[293,111],[294,112],[295,113],[296,114],[297,115],[298,116],[299,117],[216,118],[215,3],[308,119],[300,120],[301,121],[302,122],[303,123],[304,124],[305,125],[306,126],[307,127],[93,3],[72,3],[73,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[23,3],[4,3],[24,3],[28,3],[25,3],[26,3],[27,3],[29,3],[30,3],[31,3],[5,3],[32,3],[33,3],[34,3],[35,3],[6,3],[39,3],[36,3],[37,3],[38,3],[40,3],[7,3],[41,3],[46,3],[47,3],[42,3],[43,3],[44,3],[45,3],[8,3],[51,3],[48,3],[49,3],[50,3],[52,3],[9,3],[53,3],[54,3],[55,3],[58,3],[56,3],[57,3],[59,3],[60,3],[10,3],[61,3],[1,3],[62,3],[63,3],[11,3],[68,3],[65,3],[64,3],[71,3],[69,3],[67,3],[70,3],[66,3],[232,128],[242,129],[231,128],[252,130],[223,131],[222,132],[251,133],[245,134],[250,135],[225,136],[239,137],[224,138],[248,139],[220,140],[219,133],[249,141],[221,142],[226,143],[227,3],[230,143],[217,3],[253,144],[243,145],[234,146],[235,147],[237,148],[233,149],[236,150],[246,133],[228,151],[229,152],[238,153],[218,154],[241,145],[240,143],[244,3],[247,155],[209,156],[94,157],[210,157]],"latestChangedDtsFile":"./analyze-inspector-issues.d.mts","version":"5.6.2"}
1
+ {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.string.d.ts","../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.object.d.ts","../../node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../generated/protocol.d.ts","../../analyze-inspector-issues.mjs","../../core/platform/arrayutilities.d.ts","../../core/platform/brand.d.ts","../../core/platform/constructor.d.ts","../../core/platform/dateutilities.d.ts","../../core/platform/devtoolspath.d.ts","../../core/platform/domutilities.d.ts","../../core/platform/keyboardutilities.d.ts","../../core/platform/maputilities.d.ts","../../core/platform/mimetype.d.ts","../../core/platform/numberutilities.d.ts","../../core/platform/stringutilities.d.ts","../../core/platform/timing.d.ts","../../core/platform/typedarrayutilities.d.ts","../../core/platform/typescriptutilities.d.ts","../../core/platform/uistring.d.ts","../../core/platform/uservisibleerror.d.ts","../../core/platform/platform.d.ts","../../node_modules/third-party-web/lib/index.d.ts","../../third_party/third-party-web/third-party-web.d.ts","../../models/trace/lantern/core/lanternerror.d.ts","../../models/trace/lantern/types/lantern.d.ts","../../models/trace/lantern/types/types.d.ts","../../models/trace/lantern/core/networkanalyzer.d.ts","../../models/trace/lantern/core/core.d.ts","../../models/trace/lantern/graph/cpunode.d.ts","../../models/trace/lantern/graph/networknode.d.ts","../../models/trace/lantern/graph/basenode.d.ts","../../models/trace/lantern/graph/pagedependencygraph.d.ts","../../models/trace/lantern/graph/graph.d.ts","../../models/trace/lantern/simulation/simulationtimingmap.d.ts","../../models/trace/lantern/simulation/tcpconnection.d.ts","../../models/trace/lantern/simulation/connectionpool.d.ts","../../models/trace/lantern/simulation/constants.d.ts","../../models/trace/lantern/simulation/dnscache.d.ts","../../models/trace/lantern/simulation/simulator.d.ts","../../models/trace/lantern/simulation/simulation.d.ts","../../models/trace/lantern/metrics/metric.d.ts","../../models/trace/lantern/metrics/firstcontentfulpaint.d.ts","../../models/trace/lantern/metrics/interactive.d.ts","../../models/trace/lantern/metrics/largestcontentfulpaint.d.ts","../../models/trace/lantern/metrics/maxpotentialfid.d.ts","../../models/trace/lantern/metrics/speedindex.d.ts","../../models/trace/lantern/metrics/totalblockingtime.d.ts","../../models/trace/lantern/metrics/tbtutils.d.ts","../../models/trace/lantern/metrics/metrics.d.ts","../../models/trace/lantern/lantern.d.ts","../../models/trace/types/timing.d.ts","../../models/trace/types/traceevents.d.ts","../../models/trace/types/file.d.ts","../../models/trace/types/configuration.d.ts","../../models/trace/types/extensions.d.ts","../../models/trace/types/overlays.d.ts","../../models/trace/types/types.d.ts","../../models/trace/handlers/animationframeshandler.d.ts","../../models/trace/handlers/animationhandler.d.ts","../../models/trace/handlers/asyncjscallshandler.d.ts","../../models/trace/handlers/auctionworkletshandler.d.ts","../../models/trace/handlers/domstatshandler.d.ts","../../models/trace/helpers/treehelpers.d.ts","../../models/trace/helpers/extensions.d.ts","../../models/trace/helpers/network.d.ts","../../models/cpu_profile/profiletreemodel.d.ts","../../models/cpu_profile/cpuprofiledatamodel.d.ts","../../models/cpu_profile/cpu_profile.d.ts","../../models/trace/helpers/samplesintegrator.d.ts","../../models/trace/helpers/syntheticevents.d.ts","../../models/trace/helpers/timing.d.ts","../../models/trace/helpers/trace.d.ts","../../models/trace/helpers/helpers.d.ts","../../models/trace/handlers/extensiontracedatahandler.d.ts","../../models/trace/handlers/flowshandler.d.ts","../../models/trace/handlers/layertreehandler.d.ts","../../models/trace/handlers/metahandler.d.ts","../../models/trace/handlers/rendererhandler.d.ts","../../models/trace/handlers/frameshandler.d.ts","../../models/trace/handlers/gpuhandler.d.ts","../../models/trace/handlers/imagepaintinghandler.d.ts","../../models/trace/handlers/initiatorshandler.d.ts","../../models/trace/handlers/invalidationshandler.d.ts","../../models/trace/handlers/largestimagepainthandler.d.ts","../../models/trace/handlers/largesttextpainthandler.d.ts","../../models/trace/handlers/pageloadmetricshandler.d.ts","../../models/trace/handlers/layoutshiftshandler.d.ts","../../models/trace/handlers/memoryhandler.d.ts","../../models/trace/handlers/pageframeshandler.d.ts","../../models/trace/handlers/sampleshandler.d.ts","../../models/trace/handlers/screenshotshandler.d.ts","../../models/trace/handlers/scriptshandler.d.ts","../../models/trace/handlers/selectorstatshandler.d.ts","../../models/trace/handlers/userinteractionshandler.d.ts","../../models/trace/handlers/usertimingshandler.d.ts","../../models/trace/handlers/warningshandler.d.ts","../../models/trace/handlers/workershandler.d.ts","../../models/trace/handlers/modelhandlers.d.ts","../../models/trace/handlers/types.d.ts","../../models/trace/handlers/networkrequestshandler.d.ts","../../models/trace/handlers/helpers.d.ts","../../models/trace/handlers/threads.d.ts","../../models/trace/handlers/handlers.d.ts","../../models/trace/insights/clsculprits.d.ts","../../models/trace/insights/documentlatency.d.ts","../../models/trace/insights/domsize.d.ts","../../models/trace/extras/scriptduplication.d.ts","../../models/trace/extras/stacktraceforevent.d.ts","../../models/trace/extras/thirdparties.d.ts","../../models/trace/extras/tracefilter.d.ts","../../models/trace/extras/tracetree.d.ts","../../models/trace/extras/extras.d.ts","../../models/trace/insights/duplicatedjavascript.d.ts","../../models/trace/insights/fontdisplay.d.ts","../../models/trace/insights/forcedreflow.d.ts","../../models/trace/insights/imagedelivery.d.ts","../../models/trace/insights/inpbreakdown.d.ts","../../models/trace/insights/lcpbreakdown.d.ts","../../models/trace/insights/lcpdiscovery.d.ts","../../models/trace/insights/legacyjavascript.d.ts","../../models/trace/insights/modernhttp.d.ts","../../models/trace/insights/networkdependencytree.d.ts","../../models/trace/insights/renderblocking.d.ts","../../models/trace/insights/slowcssselector.d.ts","../../models/trace/insights/thirdparties.d.ts","../../models/trace/insights/viewport.d.ts","../../models/trace/insights/models.d.ts","../../models/trace/insights/types.d.ts","../../models/trace/insights/cache.d.ts","../../models/trace/insights/common.d.ts","../../models/trace/insights/statistics.d.ts","../../models/trace/insights/insights.d.ts","../../models/trace/modelimpl.d.ts","../../models/trace/entitymapper.d.ts","../../models/trace/eventsserializer.d.ts","../../models/trace/lanterncomputationdata.d.ts","../../models/trace/name.d.ts","../../models/trace/processor.d.ts","../../models/trace/styles.d.ts","../../models/trace/trace.d.ts","../../analyze-trace.mjs","../../test/test-trace-engine.mjs","../../third_party/third-party-web/third-party-web.js","../../node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/@types/node/compatibility/index.d.ts","../../node_modules/@types/node/ts5.6/globals.typedarray.d.ts","../../node_modules/@types/node/ts5.6/buffer.buffer.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/file.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/filereader.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/dom-events.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/sqlite.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/ts5.6/index.d.ts"],"fileIdsList":[[74,220,262,275],[211,220,262,275,311],[220,262],[77,220,262],[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,220,262],[90,220,262],[137,138,220,262],[74,137,220,262],[74,92,220,262],[74,92,128,174,204,220,262],[128,204,220,262],[178,179,180,181,182,220,262],[174,220,262],[74,128,174,220,262],[94,128,174,220,262],[128,174,220,262],[74,128,181,220,262],[128,170,220,262],[128,220,262],[128,144,170,220,262],[128,132,147,148,149,170,220,262],[169,170,172,173,220,262],[92,94,128,170,171,220,262],[74,128,220,262],[74,128,157,170,220,262],[129,130,131,132,133,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,171,220,262],[128,170,172,220,262],[128,144,148,170,172,220,262],[128,139,144,220,262],[74,128,170,220,262],[128,132,144,149,170,220,262],[128,169,220,262],[128,157,170,220,262],[128,134,220,262],[134,135,136,140,141,142,143,220,262],[74,123,220,262],[74,128,139,220,262],[92,128,220,262],[128,144,174,199,220,262],[74,92,128,174,199,220,262],[74,128,174,199,220,262],[128,174,199,220,262],[128,174,183,199,220,262],[92,128,174,199,220,262],[123,128,174,199,220,262],[192,198,199,200,201,202,220,262],[175,176,177,184,185,186,187,188,189,190,191,192,193,194,195,196,197,200,220,262],[121,128,198,220,262],[95,98,220,262],[97,220,262],[97,100,101,220,262],[97,102,220,262],[100,101,102,103,220,262],[97,100,101,102,220,262],[97,99,104,111,120,220,262],[97,104,112,220,262],[104,111,112,220,262],[97,104,111,112,220,262],[97,104,111,220,262],[112,113,114,115,116,117,118,119,220,262],[97,106,220,262],[105,106,107,108,109,110,220,262],[104,220,262],[97,104,105,106,107,109,220,262],[105,220,262],[74,220,262],[96,220,262],[121,128,174,220,262],[128,144,174,203,220,262],[128,174,203,204,220,262],[121,128,144,174,183,203,204,205,206,207,208,209,210,220,262],[74,92,121,122,124,220,262],[92,123,220,262],[74,122,123,220,262],[122,123,124,220,262],[74,92,122,220,262],[122,123,124,125,126,127,220,262],[220,259,262],[220,261,262],[220,262,267,297],[220,262,263,268,274,275,282,294,305],[220,262,263,264,274,282],[215,216,217,220,262],[220,262,265,306],[220,262,266,267,275,283],[220,262,267,294,302],[220,262,268,270,274,282],[220,261,262,269],[220,262,270,271],[220,262,274],[220,262,272,274],[220,261,262,274],[220,262,274,275,276,294,305],[220,262,274,275,276,289,294,297],[220,257,262,310],[220,257,262,270,274,277,282,294,305],[220,262,274,275,277,278,282,294,302,305],[220,262,277,279,294,302,305],[220,262,274,280],[220,262,281,305,310],[220,262,270,274,282,294],[220,262,283],[220,262,284],[220,261,262,285],[220,259,260,261,262,263,264,265,266,267,268,269,270,271,272,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311],[220,262,287],[220,262,288],[220,262,274,289,290],[220,262,289,291,306,308],[220,262,274,294,295,296,297],[220,262,294,296],[220,262,294,295],[220,262,297],[220,262,298],[220,259,262,294],[220,262,274,300,301],[220,262,300,301],[220,262,267,282,294,302],[220,262,303],[262],[218,219,220,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311],[220,262,282,304],[220,262,277,288,305],[220,262,267,306],[220,262,294,307],[220,262,281,308],[220,262,309],[220,262,267,274,276,285,294,305,308,310],[220,262,294,311],[220,229,233,262,305],[220,229,262,294,305],[220,224,262],[220,226,229,262,302,305],[220,262,282,302],[220,262,312],[220,224,262,312],[220,226,229,262,282,305],[220,221,222,225,228,262,274,294,305],[220,229,236,262],[220,221,227,262],[220,229,250,251,262],[220,225,229,262,297,305,312],[220,250,262,312],[220,223,224,262,312],[220,229,262],[220,223,224,225,226,227,228,229,230,231,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,251,252,253,254,255,256,262],[220,229,244,262],[220,229,236,237,262],[220,227,229,237,238,262],[220,228,262],[220,221,224,229,262],[220,229,233,237,238,262],[220,233,262],[220,227,229,232,262,305],[220,221,226,229,236,262],[220,262,294],[220,224,229,250,262,310,312],[211,212,220,259,262,275,299],[93,220,262]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"abee51ebffafd50c07d76be5848a34abfe4d791b5745ef1e5648718722fab924","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a94697425a99354df73d9c8291e2ecd4dddd370aed4023c2d6dee6cccb32666","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3f9fc0ec0b96a9e642f11eda09c0be83a61c7b336977f8b9fdb1e9788e925fe","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"15c1c3d7b2e46e0025417ed6d5f03f419e57e6751f87925ca19dc88297053fe6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d540251809289a05349b70ab5f4b7b99f922af66ab3c39ba56a475dcf95d5ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},"41b29ba4237716ce45f6cad98065fc61b16f1d119632518936bcb118a003d712",{"version":"82f0ca04fe053aa40fc10abdfc3fc05e2e864daa508ef7896f9bc0d1716ee256","signature":"c3ee43d47910471b737158965764f4f32a06d1e49fbd5ce0ba258874df2d2945","impliedFormat":99},"039760da9e61dbcfea1791c1a5be372b32d4a6e0541bdc3c4008dc80a388f622","11a2d1e5b1111431dee853906b3ff6054712042e54966fcdc6b81f692480c303","9622bae9631af715930691c3e5b2ceda33a15dffba7be4f981ecb1da93ed6a1d","e095651a10d731d17f76125a19d15a9de398373ba378c4d25cbefac7eaeab06e","6aece26fdeec0c1f0f3d0a2869a84361ddf0572349dd27ef052c5f6d9897150d","6ef5f2ac3119868350ec863f23910e3daa02d3ab913938f5d509e1acdd97a095","a361e49abd1bd9d597423eee5458a5f8d4d4191e95d200abc03acbef72727ab1","51bc25497c2b9f5517b1fbb883b31672e8b85cdffdf59c11ed7b136cfff357c9","d271a2aac9b87b4dcc3b01936a365d70d196302f6e980c73924e695e6b9104c4","a651bfe66ba249df9aa0bb5bb2f47b35bf5af995785bb463252aab526503f95f","5bf979c0cf101d51fd50d69c63b27590595b9f0b0006b64071f7cead03ad5afa","bc96b1b4585fd7612b15d0ec7fe61c4f0b19a1d39ab38da19a6b025fd494f391","860142b862a07264689b11149ea56bed062f85f70f97e5b669de40a1e6555967","70cb9ab7c00e559432a71c0837d85c1d98b5f59798eeb733519d75a6ba162133","06f9f245beb04a2a4f45f4bf854207ac68cc475491e7b9a476d5d5d1dde72283","b6099613ad4bddc54775e6adca810064c0250440d9295a31e0b83f62d5857e95","5c6beba8dfe34ec34b421b4d679c212ca49d618439cf7b6dfba2c825aa94d57f",{"version":"a4b8a94f5f1db62b9e3489cc1d03cb25b87d37c56809ee869eb5590731303b98","impliedFormat":1},"e653b0f922561e26013e34dfda1c83f9bbb6c55ff92e38543332407c6d57aa74","13553cadb0a19e32c22453b8ccfa18dc409038e4dcff71277a2dfad5cb00eb9a","c051d69dfbe9d6ff9c445c6099f7c7d73feb5c479d3478aa995330088d7d2341","8a0be51d107c4bd8f499990532fe2ef067321d3fdcc86169259655a91e9ffb5b","f18c83c932e4e0fb6c6538a1b49e06d013b987a4b36dc40d091451e146177dc3","65b15869a5304210a74f02483c6942be2866dc7f850c57677a810606840694c8","ed4bc679cad21020f4bcfe7e1c839d3d6178d8a3c92a04a7c9cc0fe4bc907d72","2c6467fcaccdcf87619c929451e4b34a4499fbff06439b7525c3976dc05a54b1","3f9b2e174a51f973dc7db99651f83a48702aa3515844feeeb7b03f1675bc1689","864e84405178ffe2ad731d90d7adc50395e0700edcf4cb51aad7defd79be9956","4d60206c2c7056fb0ce532bccd53cc7ca91cea6749436370276c5bed37cfe1a6","0a983893a12abc7bd5f0683dbe40643bb05b9f9cf50c6c66eefabc396928a4dd","bc46d7d85f7e669b267ac01c0aa1f5e5604411014296ec30e3b82d7d41d2244c","0e5f60dde13c788ce31ec8befcf57c4563cbac76bfbb708dcee1eaebdb40808b","3bb93f54703c59cf80ef9875a198919bb5af91fba132db1dfb5148fdced1f699","4d40fb6cbc8ae8ac730344bcff2e5cbfc5d1bcd2c58b15a298dffa223314e342","b1bb9e16346c1db6280c6899c55cab7866cd4f74f3d83e51f5ecd9e9cff4cb7e","af49c00792161e91cde047a3a9e77ee7df65373d76a9856c2c8c6eed3c910138","9c742e3bc73bca24ac8f620555280b4353f89a0d68ada4505023920ea616a2ca","3f87f61d9ce8865da63f6ca69c9b88d4782515e5516ee1647a92842a58528448","4839bfb4b24fc8be37adbcc4576dda22cda99598aaea392b3eed5691dba16edf","2242dd864f183bd84060cf5928e76c122d71ad7446cb7fff209faa7152f07fec","704ee6aa84b3de1d28f7c7b0d46fd30828e069951b12cb026d4166b02327bf7e","72349451fef9d8697a47ace642b9c5cab4981be0423dd2c346add976d746c782","05cc029411c09d9aa4390615723abd20626acf507da207255635c0a1ab3c03c9","8de9ccda27bb5caa761c01476668d218b1bd68639c5953c69cdbb65981d2a4de","d1c01d55315a58e91cb375c36977e0ac103db3e5c374bf48c4c80d966acf781e","60b6a8ba8d225dcb41bdbcec2555eafcee525f3006b816d7f5718ba9b3d252ce","16829294bd632ac3c558387c1a507182ee7f64f2d533ab4427535567b70ea32d","9123645cb62d393ee01c66e5355d32290515c69426ca4f5b9a254dcb0d5a2376","3abed3bd9998607eabae531b3e357b5e02d81d205638ca895c67bb70b67e30c1","15c369a8c34a43bd1e52f34ff6e6ec0ad45b7049dcaecdf5931f63a130c20b18","4095dd675441c1e67563ae130b86b633c5a0a8adc6451bcf26deb3f720a31b06","96bb5da506b684be6235658a850f319bb36f792831d1cdf857ab230c48487bde","82d37852017725200620ac99779f06bdb46c1397f80aa22fa6ab6730255d3311","b50cf936818a2cdc774b0a808ca211057b91c73f2a5b4353ebe8b56dbe8e7d25","bb96d88c16fe4d492d021110ea68fff179cd2d2f3d9965a92542675fad346885","0e960590489e347be51f4598678548c6aa90d532783cdd9f846e7588a34ad2d6","07f5b03e716b0c69745a77263c5ec5fd4c3ce571201b6a880d9be5315ca4146f","761cd40510ac5eb476181ac693e1000b9439de8e85c59600090ee8d7464b83b1","8a25703736f438b737101300f0f69e5153d4ffa59b279fe663e2e05b50343142","06bfa28ad8208a71396d2037788369e0db67da72660dd1a9b406dcbee65a58ab","5489585e422e92c423a416c20d29408da9112f57b26a3c92c47b36ce4b8f9d6b","a0dec3fa9b264f882d811f0dc33fdf704c8aac5bfee696eeecb1eaa569a50e72","1998e3efe9a79136a9d8886848bbb77fb8e5aa6f6dbe4a14ad2e63b8805bdf92","cd1f9803cfbf50e7147457805002a1a82ccfdb6a14e08e79a7498cd6519afcb9","882031476ee5a1f6465c0c3b7c02887d2a332494c2bb158a838bae1a404255f0","62855e2bff2344ab79f8f0ad5b53cb39478931e4ddbb01ec203fd4ccaf63e0a4","257080aad5f248deafac953ca04142509749d2b5192b7ef8a544ee19f9d0a074","73362af2ebcd62cbbb0c35d116a079eb6e5c0b51ec8efd4af51cddacec3c207b","b9a340f42d49fa3000239a02cc139f164be10f8a05a5ab12173154f699467d8a","6df93d8fa07cc2f39efd3571ea2fccc4bc026e57b8e9635e8408083a01b64899","794826ae19d825e41717acb6dfb23b913b95e49066f3d6a00dbb73ae2159e53d","2b38b9a2327c156dc75facc78027524df2801a2ded6c6a6d48912605df81ca59","a8a00c08d69dcb388844a8480d45008fcb992da21b9e0ac2d80706a72392bd07","dad11ccdfe840c6b1411d5c8d2af8410d80206ba34cc016b288496d8938ed5d2","c760f2690fc8f5285f8e212b692dfee6a43dde3ef70c8980083a2edd878449aa","a7df531b669c28f0c69b11650334ed73f28dfd4f432e2b91c66ced11820abe2a","c054f383a9d5f5442b1222ccb80d4cc64cc2cc5541a3afa63ef036940c620025","4f779d8d9e19ac6d45576981905145603f4220196f3e6a850800bb717fb9f506","8f34b52ddef0674682b342808bb515ef05b5650f2658052af7f5063cecdcffe0","d5621207d821da49f2474420a5b895a88cc2757ae523ae50eec6236fbc01b147","d8a0cc5b14a68b02b23f961281ca651ebeae7ecd637dc9c966b8f8b370560bdd","0c7eb012d7fc7737d830b1232cfa0bf08282de906a141bebf68027721c5557a1","195704ec24c669d3080160e7f1252b22cde01b362324b418b18bc3468fb17603","3b25e4b92337c79c77983d5d97b8d4b550f6213dfa9a56d2a258e8ce42e3be49","88f2401df90448c931de3dadfce0d03a71e83dc6c13263ad44f6152cd36ca197","f41b6771a7678cee7d95b17546e8250955e10f84e661f6066a7a5ce6588cac0b","283b848631ff4eb6103c84cbb793e23a0de0589f8013d5df53bdbd1e0669d2a0","9f9ed701a01981d36ba58822efd8293246e6ee1eb492b5e47160a8756deaea8f","bc9ca8abab1ac6ebd1811ccdd4b5dba11a89a358cef42b2ea30234c2c82c6b00","fd0e2885c8c2f83696a86be145931a825f286ddc0e39533ba2931cfef42e80de","5962e0b8b9904212acdcba4b5fccf8acfcb6a2ba94dd0809578494e08d6d310c","af4923581455e9cb61f867e87d77e7f1c441af9bef272d068904364c3be992ab","84d15b9087d0f4c1436a4adb4c6183a288a0863644121acb7fca41025b94c680","fc134b261d06b97bbff68b7583d70b039e0f536558eee4001d911cefb9576f1c","42e0033d46fc345818d16c81455f852bd4d7bcab4d19325798b23cf9fe3d1fe2","1cdf258ce45a5b6570ee5d3278cbc224ec4e96f705716a5e860170695109247e","d57678a062c91dd0fc0f6dbb08c10adef0fe18f315033ac89e5a638c17a41d51","d3b4fe73f0820de8376d576ad5712ce5a79a4a85d72a039de065af852b05ae4a","c4c6c72c84dcda589b5c735c1c9b409eefab8f5465a8c7ba5c798bdfa4146d9e","f0b4dc94d0047e1233936f37401f5a4c9ef896a5d5f57dc8f1c569f36daaff9f","02a4dfa4710d92a9227936fc1916872b943f779ae3523b2287c8ff2ea54bebd0","678f40aa79b067f6da6930ddeda290da753c1595af60a42f2e223e2947bc8be8","46ede49e2f7b718dd9995359196e8609c9e7d5074a6109c5a50f322e1f531f5d","db3323918b80a12efac1c3704dbc7c525f0121dfd87cf0fc7ec37281be665075","24ea190a6ea704ee4a01e8b53518564e8943a3b012ad148c8139bf174b062101","e42640e8fab3d2eb50347ee39a83f2781f6be24e53f93a80e1d2c1966bea59ab","e6e0ae638aa8268e02a4bfe22c717a914b8cd0875794bc22c4608b1f60995257","bfac496e6d88aadd434fff6f3207b3b5110ac8ae44dc3fb155540d8b6b2d2e05","a805100bce86e242891978cb3ef8f3253ab20d26ffe600df4973b22d968daf81","c5016b0a409264eb77ecf0acfef033b062dae846f06005b6199a31d6d7fa0dff","3cbcbf0ffe4e2f62b649872ec19cadc8730079845f3677795c93be430944dbbb","f31c652b6e26352041e84750fbdcb6147d86f2b560d7a435a16ebb873341a8fb","81a7e3063a079ff67c40d3bddeb97d21196b6ff3dd9d9b51ed7a2d3f3b676ff4","40910770b4a2067bb5480702a540b97d5609f679d9e7e202424117cacbaf3570","6068f91c27818b781da18bc3ea757308bd9389ff0ef9a9b375997b35c68b27fe","905d42485daf5829fd64d4746814313049ed1957520f8b241992dce7f3cffb26","b4534ce3406535a276da1f88b638b98c3f3f07958a2458f15114bd3cd689f283","2e434af6b31e85394e2777b0cac059a12b97157511dd3a899eee8750f94bf51b","18988b95edb60829173e6a37c07d2a3dae18d6ec0e9886857ee242212ae60341","1cac91e265e7949527b7e7ed091138a6e86a6f0703f699746a4983fc586fe448","f68abb799db20f63c879bf40df62e66fd49a800f2d731426d5029b09d49d3102","35a7ef0a95dd5d6a0437737dd82c7d7bbccdf4737e60b2178242fed5a0fcda2e","184ec4a346d410b4cc3a2a9d4a93925791cb3c9a5b7c6e847c772a055ef155c8","873057a2198764f517e701cc8d81f22a2e018780275fa0bb22c025931d96105c","d688b770fbe3369d66a1d5b0d82b8704d0ab553f83a79ccbce1be69bac5f5277","ed3fe0b82e19cd20e5336b1746071c91be19948ef029f619ccd03ea51d9efac8","57a606dd1911ab1f5732f0060b3e02ca042aa2b712b06572cacc55e66d0d3e34","d952f06cbe922e34a2cec23585d55800ad2f4c691e640b4dcb7c489a71a442a0",{"version":"dc13fe062129f2f63058eb17e5a7fa3410136efb969a51d46954f9872f435387","affectsGlobalScope":true},"1396b8fb1c6cc23c58ca999126b4b9d8703322176791086bfc6dffe279ecda6a","cd2efb64e2f53ffd0c52185b5016ead005135aca6241359f84caab9eae7c241f","88f0c8d994dc608ef45326635c1200288c3bfb9e6edfbdb1d463c404d05a6c2a","40bd54707e0c22a647e5d89769ad0bbf1b081768ebbfce2d824cb491f3955473",{"version":"0e7232edf0da61bffe6ec15e1175ca08a9888e96544ae534d33afa51f4a040cb","affectsGlobalScope":true},"da0b78faea331b1177ed5e5e1cd455d4a7979e12568cc602a2f99d60c6d78f89","ae48568e669e933bbde3825bdf2d29d9514e48d9acff55aafee06d51ba78548f",{"version":"bc758eda93cef1e1114f00623d05ffb96bee1d0a1748be4a25f3ad53b8488fa7","signature":"f1181c821121deb20b81f0950ef352c14f9e760c0a22903c2c1560b0b2194919","impliedFormat":99},{"version":"b523392c44a3b3fd12c4addf23cff6da084b215d83bbfc50247fb3e4e6e4c577","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"e653b0f922561e26013e34dfda1c83f9bbb6c55ff92e38543332407c6d57aa74","signature":"56d8d0daa8dc216adb499d98c67d07876a3eb3a299037d861fe213cda14f0179"},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"613b21ccdf3be6329d56e6caa13b258c842edf8377be7bc9f014ed14cdcfc308","affectsGlobalScope":true,"impliedFormat":1},{"version":"2d1319e6b5d0efd8c5eae07eb864a00102151e8b9afddd2d45db52e9aae002c4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"81184fe8e67d78ac4e5374650f0892d547d665d77da2b2f544b5d84729c4a15d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f52e8dacc97d71dcc96af29e49584353f9c54cb916d132e3e768d8b8129c928d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"24642567d3729bcc545bacb65ee7c0db423400c7f1ef757cab25d05650064f98","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"875928df2f3e9a3aed4019539a15d04ff6140a06df6cd1b2feb836d22a81eaca","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9ad08a376ac84948fcca0013d6f1d4ae4f9522e26b91f87945b97c99d7cc30b","impliedFormat":1},{"version":"eaf9ee1d90a35d56264f0bf39842282c58b9219e112ac7d0c1bce98c6c5da672","impliedFormat":1},{"version":"c15c4427ae7fd1dcd7f312a8a447ac93581b0d4664ddf151ecd07de4bf2bb9d7","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"75c3400359d59fae5aed4c4a59fcd8a9760cf451e25dc2174cb5e08b9d4803e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"94c4187083503a74f4544503b5a30e2bd7af0032dc739b0c9a7ce87f8bddc7b9","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"3eb62baae4df08c9173e6903d3ca45942ccec8c3659b0565684a75f3292cffbb","affectsGlobalScope":true,"impliedFormat":1},{"version":"a85683ef86875f4ad4c6b7301bbcc63fb379a8d80d3d3fd735ee57f48ef8a47e","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"15c5e91b5f08be34a78e3d976179bf5b7a9cc28dc0ef1ffebffeb3c7812a2dca","impliedFormat":1},{"version":"a8f06c2382a30b7cb89ad2dfc48fc3b2b490f3dafcd839dadc008e4e5d57031d","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"9212c6e9d80cb45441a3614e95afd7235a55a18584c2ed32d6c1aca5a0c53d93","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"6bd91a2a356600dee28eb0438082d0799a18a974a6537c4410a796bab749813c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a5c09990a37469b0311a92ce8feeb8682e83918723aedbd445bd7a0f510eaaa3","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"171fd8807643c46a9d17e843959abdf10480d57d60d38d061fb44a4c8d4a8cc4","impliedFormat":1}],"root":[74,75,[212,214]],"options":{"allowJs":true,"checkJs":true,"composite":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":99,"outDir":"./","strict":true,"target":99},"referencedMap":[[75,1],[212,2],[76,3],[77,3],[78,3],[79,3],[80,4],[81,3],[82,3],[83,3],[84,3],[85,3],[92,5],[86,4],[87,4],[88,3],[89,3],[90,4],[91,6],[74,3],[139,7],[138,8],[137,9],[205,10],[206,11],[183,12],[178,13],[179,14],[180,15],[181,16],[182,17],[129,18],[130,19],[131,19],[132,19],[133,19],[145,20],[146,19],[150,21],[151,18],[174,22],[172,23],[152,18],[153,19],[154,19],[155,18],[156,24],[147,18],[158,25],[159,19],[148,19],[169,26],[171,27],[160,19],[157,18],[149,28],[161,29],[162,18],[163,30],[164,24],[173,31],[170,32],[165,33],[166,19],[167,18],[168,19],[135,34],[144,35],[136,36],[140,37],[141,19],[142,19],[143,37],[134,38],[200,39],[175,40],[201,41],[176,42],[177,42],[184,43],[185,44],[186,40],[187,44],[188,45],[203,46],[189,42],[190,42],[191,42],[198,47],[192,44],[193,40],[194,42],[195,42],[202,3],[196,43],[199,48],[197,44],[99,49],[95,3],[98,50],[102,51],[100,52],[104,53],[101,52],[103,54],[121,55],[113,56],[114,57],[115,58],[116,57],[112,59],[120,60],[117,57],[119,3],[118,57],[107,61],[108,3],[109,50],[111,62],[105,63],[110,64],[106,65],[96,66],[97,67],[207,68],[204,69],[208,11],[209,70],[210,38],[211,71],[125,72],[126,73],[124,74],[127,75],[122,3],[123,76],[128,77],[259,78],[260,78],[261,79],[262,80],[263,81],[264,82],[215,3],[218,83],[216,3],[217,3],[265,84],[266,85],[267,86],[268,87],[269,88],[270,89],[271,89],[273,90],[272,91],[274,92],[275,93],[276,94],[258,95],[277,96],[278,97],[279,98],[280,99],[281,100],[282,101],[283,102],[284,103],[285,104],[286,105],[287,106],[288,107],[289,108],[290,108],[291,109],[292,3],[293,3],[294,110],[296,111],[295,112],[297,113],[298,114],[299,115],[300,116],[301,117],[302,118],[303,119],[220,120],[219,3],[312,121],[304,122],[305,123],[306,124],[307,125],[308,126],[309,127],[310,128],[311,129],[93,3],[72,3],[73,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[23,3],[4,3],[24,3],[28,3],[25,3],[26,3],[27,3],[29,3],[30,3],[31,3],[5,3],[32,3],[33,3],[34,3],[35,3],[6,3],[39,3],[36,3],[37,3],[38,3],[40,3],[7,3],[41,3],[46,3],[47,3],[42,3],[43,3],[44,3],[45,3],[8,3],[51,3],[48,3],[49,3],[50,3],[52,3],[9,3],[53,3],[54,3],[55,3],[58,3],[56,3],[57,3],[59,3],[60,3],[10,3],[61,3],[1,3],[62,3],[63,3],[11,3],[68,3],[65,3],[64,3],[71,3],[69,3],[67,3],[70,3],[66,3],[236,130],[246,131],[235,130],[256,132],[227,133],[226,134],[255,135],[249,136],[254,137],[229,138],[243,139],[228,140],[252,141],[224,142],[223,135],[253,143],[225,144],[230,145],[231,3],[234,145],[221,3],[257,146],[247,147],[238,148],[239,149],[241,150],[237,151],[240,152],[250,135],[232,153],[233,154],[242,155],[222,156],[245,147],[244,145],[248,3],[251,157],[213,158],[94,159],[214,159]],"latestChangedDtsFile":"./analyze-trace.d.mts","version":"5.6.2"}
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- // Copyright 2014 The Chromium Authors. All rights reserved.
1
+ // Copyright 2014 The Chromium Authors
2
2
  //
3
3
  // Redistribution and use in source and binary forms, with or without
4
4
  // modification, are permitted provided that the following conditions are
package/README.md CHANGED
@@ -74,7 +74,7 @@ npm publish --access public
74
74
 
75
75
 
76
76
  ┌──────────────────▼─────────────────┐
77
- │const data = model.parsedTrace()│
77
+ │const data = model.parsedTrace()
78
78
  └────────────────────────────────────┘
79
79
  ```
80
80
 
@@ -141,3 +141,30 @@ The object returned from `parsedTrace()` is an object of key-value pairs where e
141
141
  // and so on for each enabled Handler
142
142
  }
143
143
  ```
144
+
145
+ ## Pairing begin & end events
146
+
147
+ Note: this detail is not useful if you are using the Trace Engine, but it is if you are working on it.
148
+
149
+ Trace events are often emitted as `begin` & `end` events to represent the lifetime of the event. These have the `b` and `e` phase.
150
+
151
+ When we find these events, we often try to pair them into what we call a "Synthetic" event. This is a trace event that doesn't exist in the raw trace, but one that we create to make it easier to deal with. This means we can represent a `b` & `e` pair as a single event rather than pass two events around.
152
+
153
+ When we pair these events, we look for an ID. Some events have a top level `id` field, others have a nested `id2.local` field (this is for various historical reasons). `getSyntheticId` in `Trace.Helpers` takes care of this, and tries to account for potential collisions by appending a few other pieces of metadata onto the ID.
154
+
155
+ This approach worked well until July 2025 when an upstream change in Perfetto [https://chromium.googlesource.com/external/github.com/google/perfetto.git/+/aef636b27ffbf379fd722e7798030da2c5c4d699] meant that Perfetto will try to minimise the amount of unique IDs it uses. A consequence of this change is that IDs can be reused by consecutive, non-overlapping events.
156
+
157
+ For example, take the following set of events:
158
+
159
+ ```
160
+ === E1 === === E2 ===
161
+ ```
162
+
163
+ These could have the same ID, because they do not overlap.
164
+
165
+ Whereas these events will have different IDs because otherwise you cannot reliably pair them up:
166
+
167
+ ```
168
+ === E1 ===
169
+ === E2 ===
170
+ ```
package/analyze-trace.mjs CHANGED
@@ -19,21 +19,23 @@ polyfillDOMRect();
19
19
 
20
20
  /**
21
21
  * @param {Trace.Types.Events.Event[]} traceEvents
22
- * @return {Promise<{parsedTrace: Trace.Handlers.Types.ParsedTrace, insights: Trace.Insights.Types.TraceInsightSets, model: Trace.TraceModel.Model}>}
22
+ * @returns {Promise<{parsedTrace: Trace.TraceModel.ParsedTrace, model: Trace.TraceModel.Model}>}
23
23
  */
24
24
  export async function analyzeEvents(traceEvents) {
25
25
  const model = Trace.TraceModel.Model.createWithAllHandlers();
26
26
  await model.parse(traceEvents);
27
27
  const parsedTrace = model.parsedTrace();
28
- const insights = model.traceInsights();
29
28
 
30
29
  if (!parsedTrace) {
31
30
  throw new Error('No data');
32
31
  }
32
+
33
+ const insights = parsedTrace.insights;
33
34
  if (!insights) {
34
35
  throw new Error('No insights');
35
36
  }
36
- return {parsedTrace, insights, model};
37
+
38
+ return {parsedTrace, model};
37
39
  }
38
40
 
39
41
  /**
@@ -62,5 +62,6 @@ export declare function nearestIndexFromBeginning<T>(arr: T[], predicate: (array
62
62
  * Please note: this presupposes that the array is already ordered.
63
63
  */
64
64
  export declare function nearestIndexFromEnd<T>(arr: readonly T[], predicate: (arrayItem: T) => boolean): number | null;
65
+ /** Type guard for ensuring that `arr` does not contain null or undefined **/
65
66
  export declare function arrayDoesNotContainNullOrUndefined<T>(arr: Array<T | null | undefined>): arr is T[];
66
67
  export {};
@@ -1,4 +1,4 @@
1
- // Copyright (c) 2020 The Chromium Authors. All rights reserved.
1
+ // Copyright 2020 The Chromium Authors
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
  export const removeElement = (array, element, firstOnly) => {
@@ -193,7 +193,7 @@ export function nearestIndexFromBeginning(arr, predicate) {
193
193
  export function nearestIndexFromEnd(arr, predicate) {
194
194
  return nearestIndex(arr, predicate, "END" /* NearestSearchStart.END */);
195
195
  }
196
- // Type guard for ensuring that `arr` does not contain null or undefined
196
+ /** Type guard for ensuring that `arr` does not contain null or undefined **/
197
197
  export function arrayDoesNotContainNullOrUndefined(arr) {
198
198
  return !arr.includes(null) && !arr.includes(undefined);
199
199
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayUtilities.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/ArrayUtilities.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,yEAAyE;AACzE,6BAA6B;AAE7B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAI,KAAU,EAAE,OAAU,EAAE,SAAmB,EAAW,EAAE;IACvF,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACrD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;YACzB,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAIF,SAAS,IAAI,CAAC,KAAe,EAAE,EAAU,EAAE,EAAU;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;IACvB,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;IACtB,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CACd,KAAe,EAAE,UAA4B,EAAE,IAAY,EAAE,KAAa,EAAE,UAAkB;IAChG,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/B,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;QAClC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YAC3B,EAAE,UAAU,CAAC;QACf,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CACnB,KAAe,EAAE,UAA4B,EAAE,IAAY,EAAE,KAAa,EAAE,cAAsB,EAClG,eAAuB;IACzB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IACrE,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC5E,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;QACnC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,GAAG,CAAC,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,aAAa,GAAG,eAAe,EAAE,CAAC;QACpC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CACrB,KAAe,EAAE,UAA4B,EAAE,SAAiB,EAAE,UAAkB,EAAE,cAAsB,EAC5G,eAAuB;IACzB,IAAI,SAAS,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,cAAc,KAAK,CAAC,IAAI,eAAe,IAAI,UAAU,EAAE,CAAC;QAClH,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AACD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAO,KAAU,EAAE,KAAQ,EAAE,UAAkC,EAAU,EAAE;IACtG,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACnD,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF,SAAS,gBAAgB,CACrB,MAAW,EAAE,MAAW,EAAE,UAAkC,EAAE,iBAA0B;IAC1F,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9C,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,iBAAiB,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IACD,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAI,MAAW,EAAE,MAAW,EAAE,UAAkC,EAAO,EAAE;IACvG,OAAO,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAI,MAAW,EAAE,MAAW,EAAE,UAAkC,EAAO,EAAE;IACnG,OAAO,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAgB,EAAE,CAAgB,EAAU,EAAE;IAC/E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC;AAyBF,MAAM,UAAU,UAAU,CACtB,KAAQ,EAAE,MAAS,EAAE,UAAuC,EAAE,IAAa,EAAE,KAAc;IAC7F,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IAClB,IAAI,CAAC,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;QACR,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAsBD,MAAM,UAAU,UAAU,CACtB,KAAQ,EAAE,MAAS,EAAE,UAAuC,EAAE,IAAa,EAAE,KAAc;IAC7F,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IAClB,IAAI,CAAC,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;QACR,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAMD;;;;;;;;;;;;GAYG;AACH,SAAS,YAAY,CACjB,GAAiB,EAAE,SAAoC,EAAE,WAA+B;IAC1F,MAAM,aAAa,GAAG,WAAW,uCAA2B,CAAC;IAC7D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,GAAG,CAAC;QACF,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACnC,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/D,gBAAgB,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzC,cAAc,GAAG,gBAAgB,KAAK,aAAa,CAAC;QACpD,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,QAAQ,KAAK,KAAK,IAAI,EAAE;IAEzB,kEAAkE;IAClE,iEAAiE;IACjE,aAAa;IACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CAAI,GAAQ,EAAE,SAAoC;IACzF,OAAO,YAAY,CAAC,GAAG,EAAE,SAAS,iDAA+B,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AAEH,MAAM,UAAU,mBAAmB,CAAI,GAAiB,EAAE,SAAoC;IAC5F,OAAO,YAAY,CAAC,GAAG,EAAE,SAAS,qCAAyB,CAAC;AAC9D,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,kCAAkC,CAAI,GAA4B;IAChF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACzD,CAAC","sourcesContent":["// Copyright (c) 2020 The Chromium Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\nexport const removeElement = <T>(array: T[], element: T, firstOnly?: boolean): boolean => {\n let index = array.indexOf(element);\n if (index === -1) {\n return false;\n }\n if (firstOnly) {\n array.splice(index, 1);\n return true;\n }\n for (let i = index + 1, n = array.length; i < n; ++i) {\n if (array[i] !== element) {\n array[index++] = array[i];\n }\n }\n array.length = index;\n return true;\n};\n\ntype NumberComparator = (a: number, b: number) => number;\n\nfunction swap(array: number[], i1: number, i2: number): void {\n const temp = array[i1];\n array[i1] = array[i2];\n array[i2] = temp;\n}\n\nfunction partition(\n array: number[], comparator: NumberComparator, left: number, right: number, pivotIndex: number): number {\n const pivotValue = array[pivotIndex];\n swap(array, right, pivotIndex);\n let storeIndex = left;\n for (let i = left; i < right; ++i) {\n if (comparator(array[i], pivotValue) < 0) {\n swap(array, storeIndex, i);\n ++storeIndex;\n }\n }\n swap(array, right, storeIndex);\n return storeIndex;\n}\n\nfunction quickSortRange(\n array: number[], comparator: NumberComparator, left: number, right: number, sortWindowLeft: number,\n sortWindowRight: number): void {\n if (right <= left) {\n return;\n }\n const pivotIndex = Math.floor(Math.random() * (right - left)) + left;\n const pivotNewIndex = partition(array, comparator, left, right, pivotIndex);\n if (sortWindowLeft < pivotNewIndex) {\n quickSortRange(array, comparator, left, pivotNewIndex - 1, sortWindowLeft, sortWindowRight);\n }\n if (pivotNewIndex < sortWindowRight) {\n quickSortRange(array, comparator, pivotNewIndex + 1, right, sortWindowLeft, sortWindowRight);\n }\n}\n\nexport function sortRange(\n array: number[], comparator: NumberComparator, leftBound: number, rightBound: number, sortWindowLeft: number,\n sortWindowRight: number): number[] {\n if (leftBound === 0 && rightBound === (array.length - 1) && sortWindowLeft === 0 && sortWindowRight >= rightBound) {\n array.sort(comparator);\n } else {\n quickSortRange(array, comparator, leftBound, rightBound, sortWindowLeft, sortWindowRight);\n }\n return array;\n}\nexport const binaryIndexOf = <T, S>(array: T[], value: S, comparator: (a: S, b: T) => number): number => {\n const index = lowerBound(array, value, comparator);\n return index < array.length && comparator(value, array[index]) === 0 ? index : -1;\n};\n\nfunction mergeOrIntersect<T>(\n array1: T[], array2: T[], comparator: (a: T, b: T) => number, mergeNotIntersect: boolean): T[] {\n const result = [];\n let i = 0;\n let j = 0;\n while (i < array1.length && j < array2.length) {\n const compareValue = comparator(array1[i], array2[j]);\n if (mergeNotIntersect || !compareValue) {\n result.push(compareValue <= 0 ? array1[i] : array2[j]);\n }\n if (compareValue <= 0) {\n i++;\n }\n if (compareValue >= 0) {\n j++;\n }\n }\n if (mergeNotIntersect) {\n while (i < array1.length) {\n result.push(array1[i++]);\n }\n while (j < array2.length) {\n result.push(array2[j++]);\n }\n }\n return result;\n}\n\nexport const intersectOrdered = <T>(array1: T[], array2: T[], comparator: (a: T, b: T) => number): T[] => {\n return mergeOrIntersect(array1, array2, comparator, false);\n};\n\nexport const mergeOrdered = <T>(array1: T[], array2: T[], comparator: (a: T, b: T) => number): T[] => {\n return mergeOrIntersect(array1, array2, comparator, true);\n};\n\nexport const DEFAULT_COMPARATOR = (a: string|number, b: string|number): -1|0|1 => {\n return a < b ? -1 : (a > b ? 1 : 0);\n};\n\n/**\n * Returns the index of the element closest to the needle that is equal to or\n * greater than it. Assumes that the provided array is sorted.\n *\n * If no element is found, the right bound is returned.\n *\n * Uses the provided comparator function to determine if two items are equal or\n * if one is greater than the other. If you are working with strings or\n * numbers, you can use ArrayUtilities.DEFAULT_COMPARATOR. Otherwise, you\n * should define one that takes the needle element and an element from the\n * array and returns a positive or negative number to indicate which is greater\n * than the other.\n *\n * When specified, |left| (inclusive) and |right| (exclusive) indices\n * define the search window.\n */\nexport function lowerBound<T>(\n array: Uint32Array|Int32Array, needle: T, comparator: (needle: T, b: number) => number, left?: number,\n right?: number): number;\nexport function lowerBound<S, T>(\n array: S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function lowerBound<S, T>(\n array: readonly S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function lowerBound<S, T, A extends S[]>(\n array: A, needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number {\n let l = left || 0;\n let r = right !== undefined ? right : array.length;\n while (l < r) {\n const m = (l + r) >> 1;\n if (comparator(needle, array[m]) > 0) {\n l = m + 1;\n } else {\n r = m;\n }\n }\n return r;\n}\n\n/**\n * Returns the index of the element closest to the needle that is greater than\n * it. Assumes that the provided array is sorted.\n *\n * If no element is found, the right bound is returned.\n *\n * Uses the provided comparator function to determine if two items are equal or\n * if one is greater than the other. If you are working with strings or\n * numbers, you can use ArrayUtilities.DEFAULT_COMPARATOR. Otherwise, you\n * should define one that takes the needle element and an element from the\n * array and returns a positive or negative number to indicate which is greater\n * than the other.\n *\n * When specified, |left| (inclusive) and |right| (exclusive) indices\n * define the search window.\n */\nexport function upperBound<T>(\n array: Uint32Array, needle: T, comparator: (needle: T, b: number) => number, left?: number, right?: number): number;\nexport function upperBound<S, T>(\n array: S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function upperBound<S, T, A extends S[]>(\n array: A, needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number {\n let l = left || 0;\n let r = right !== undefined ? right : array.length;\n while (l < r) {\n const m = (l + r) >> 1;\n if (comparator(needle, array[m]) >= 0) {\n l = m + 1;\n } else {\n r = m;\n }\n }\n return r;\n}\n\nconst enum NearestSearchStart {\n BEGINNING = 'BEGINNING',\n END = 'END',\n}\n/**\n * Obtains the first or last item in the array that satisfies the predicate function.\n * So, for example, if the array were arr = [2, 4, 6, 8, 10], and you are looking for\n * the last item arr[i] such that arr[i] < 5 you would be returned 1, because\n * array[1] is 4, the last item in the array that satisfies the\n * predicate function.\n *\n * If instead you were looking for the first item in the same array that satisfies\n * arr[i] > 5 you would be returned 2 because array[2] = 6.\n *\n * Please note: this presupposes that the array is already ordered.\n * This function uses a variation of Binary Search.\n */\nfunction nearestIndex<T>(\n arr: readonly T[], predicate: (arrayItem: T) => boolean, searchStart: NearestSearchStart): number|null {\n const searchFromEnd = searchStart === NearestSearchStart.END;\n if (arr.length === 0) {\n return null;\n }\n\n let left = 0;\n let right = arr.length - 1;\n let pivot = 0;\n let matchesPredicate = false;\n let moveToTheRight = false;\n let middle = 0;\n do {\n middle = left + (right - left) / 2;\n pivot = searchFromEnd ? Math.ceil(middle) : Math.floor(middle);\n matchesPredicate = predicate(arr[pivot]);\n moveToTheRight = matchesPredicate === searchFromEnd;\n if (moveToTheRight) {\n left = Math.min(right, pivot + (left === pivot ? 1 : 0));\n } else {\n right = Math.max(left, pivot + (right === pivot ? -1 : 0));\n }\n } while (right !== left);\n\n // Special-case: the indexed item doesn't pass the predicate. This\n // occurs when none of the items in the array are a match for the\n // predicate.\n if (!predicate(arr[left])) {\n return null;\n }\n return left;\n}\n\n/**\n * Obtains the first item in the array that satisfies the predicate function.\n * So, for example, if the array was arr = [2, 4, 6, 8, 10], and you are looking for\n * the first item arr[i] such that arr[i] > 5 you would be returned 2, because\n * array[2] is 6, the first item in the array that satisfies the\n * predicate function.\n *\n * Please note: this presupposes that the array is already ordered.\n */\nexport function nearestIndexFromBeginning<T>(arr: T[], predicate: (arrayItem: T) => boolean): number|null {\n return nearestIndex(arr, predicate, NearestSearchStart.BEGINNING);\n}\n\n/**\n * Obtains the last item in the array that satisfies the predicate function.\n * So, for example, if the array was arr = [2, 4, 6, 8, 10], and you are looking for\n * the last item arr[i] such that arr[i] < 5 you would be returned 1, because\n * arr[1] is 4, the last item in the array that satisfies the\n * predicate function.\n *\n * Please note: this presupposes that the array is already ordered.\n */\n\nexport function nearestIndexFromEnd<T>(arr: readonly T[], predicate: (arrayItem: T) => boolean): number|null {\n return nearestIndex(arr, predicate, NearestSearchStart.END);\n}\n\n// Type guard for ensuring that `arr` does not contain null or undefined\nexport function arrayDoesNotContainNullOrUndefined<T>(arr: Array<T|null|undefined>): arr is T[] {\n return !arr.includes(null) && !arr.includes(undefined);\n}\n"]}
1
+ {"version":3,"file":"ArrayUtilities.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/ArrayUtilities.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2020 The Chromium Authors\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\nexport const removeElement = <T>(array: T[], element: T, firstOnly?: boolean): boolean => {\n let index = array.indexOf(element);\n if (index === -1) {\n return false;\n }\n if (firstOnly) {\n array.splice(index, 1);\n return true;\n }\n for (let i = index + 1, n = array.length; i < n; ++i) {\n if (array[i] !== element) {\n array[index++] = array[i];\n }\n }\n array.length = index;\n return true;\n};\n\ntype NumberComparator = (a: number, b: number) => number;\n\nfunction swap(array: number[], i1: number, i2: number): void {\n const temp = array[i1];\n array[i1] = array[i2];\n array[i2] = temp;\n}\n\nfunction partition(\n array: number[], comparator: NumberComparator, left: number, right: number, pivotIndex: number): number {\n const pivotValue = array[pivotIndex];\n swap(array, right, pivotIndex);\n let storeIndex = left;\n for (let i = left; i < right; ++i) {\n if (comparator(array[i], pivotValue) < 0) {\n swap(array, storeIndex, i);\n ++storeIndex;\n }\n }\n swap(array, right, storeIndex);\n return storeIndex;\n}\n\nfunction quickSortRange(\n array: number[], comparator: NumberComparator, left: number, right: number, sortWindowLeft: number,\n sortWindowRight: number): void {\n if (right <= left) {\n return;\n }\n const pivotIndex = Math.floor(Math.random() * (right - left)) + left;\n const pivotNewIndex = partition(array, comparator, left, right, pivotIndex);\n if (sortWindowLeft < pivotNewIndex) {\n quickSortRange(array, comparator, left, pivotNewIndex - 1, sortWindowLeft, sortWindowRight);\n }\n if (pivotNewIndex < sortWindowRight) {\n quickSortRange(array, comparator, pivotNewIndex + 1, right, sortWindowLeft, sortWindowRight);\n }\n}\n\nexport function sortRange(\n array: number[], comparator: NumberComparator, leftBound: number, rightBound: number, sortWindowLeft: number,\n sortWindowRight: number): number[] {\n if (leftBound === 0 && rightBound === (array.length - 1) && sortWindowLeft === 0 && sortWindowRight >= rightBound) {\n array.sort(comparator);\n } else {\n quickSortRange(array, comparator, leftBound, rightBound, sortWindowLeft, sortWindowRight);\n }\n return array;\n}\nexport const binaryIndexOf = <T, S>(array: T[], value: S, comparator: (a: S, b: T) => number): number => {\n const index = lowerBound(array, value, comparator);\n return index < array.length && comparator(value, array[index]) === 0 ? index : -1;\n};\n\nfunction mergeOrIntersect<T>(\n array1: T[], array2: T[], comparator: (a: T, b: T) => number, mergeNotIntersect: boolean): T[] {\n const result = [];\n let i = 0;\n let j = 0;\n while (i < array1.length && j < array2.length) {\n const compareValue = comparator(array1[i], array2[j]);\n if (mergeNotIntersect || !compareValue) {\n result.push(compareValue <= 0 ? array1[i] : array2[j]);\n }\n if (compareValue <= 0) {\n i++;\n }\n if (compareValue >= 0) {\n j++;\n }\n }\n if (mergeNotIntersect) {\n while (i < array1.length) {\n result.push(array1[i++]);\n }\n while (j < array2.length) {\n result.push(array2[j++]);\n }\n }\n return result;\n}\n\nexport const intersectOrdered = <T>(array1: T[], array2: T[], comparator: (a: T, b: T) => number): T[] => {\n return mergeOrIntersect(array1, array2, comparator, false);\n};\n\nexport const mergeOrdered = <T>(array1: T[], array2: T[], comparator: (a: T, b: T) => number): T[] => {\n return mergeOrIntersect(array1, array2, comparator, true);\n};\n\nexport const DEFAULT_COMPARATOR = (a: string|number, b: string|number): -1|0|1 => {\n return a < b ? -1 : (a > b ? 1 : 0);\n};\n\n/**\n * Returns the index of the element closest to the needle that is equal to or\n * greater than it. Assumes that the provided array is sorted.\n *\n * If no element is found, the right bound is returned.\n *\n * Uses the provided comparator function to determine if two items are equal or\n * if one is greater than the other. If you are working with strings or\n * numbers, you can use ArrayUtilities.DEFAULT_COMPARATOR. Otherwise, you\n * should define one that takes the needle element and an element from the\n * array and returns a positive or negative number to indicate which is greater\n * than the other.\n *\n * When specified, |left| (inclusive) and |right| (exclusive) indices\n * define the search window.\n */\nexport function lowerBound<T>(\n array: Uint32Array|Int32Array, needle: T, comparator: (needle: T, b: number) => number, left?: number,\n right?: number): number;\nexport function lowerBound<S, T>(\n array: S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function lowerBound<S, T>(\n array: readonly S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function lowerBound<S, T, A extends S[]>(\n array: A, needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number {\n let l = left || 0;\n let r = right !== undefined ? right : array.length;\n while (l < r) {\n const m = (l + r) >> 1;\n if (comparator(needle, array[m]) > 0) {\n l = m + 1;\n } else {\n r = m;\n }\n }\n return r;\n}\n\n/**\n * Returns the index of the element closest to the needle that is greater than\n * it. Assumes that the provided array is sorted.\n *\n * If no element is found, the right bound is returned.\n *\n * Uses the provided comparator function to determine if two items are equal or\n * if one is greater than the other. If you are working with strings or\n * numbers, you can use ArrayUtilities.DEFAULT_COMPARATOR. Otherwise, you\n * should define one that takes the needle element and an element from the\n * array and returns a positive or negative number to indicate which is greater\n * than the other.\n *\n * When specified, |left| (inclusive) and |right| (exclusive) indices\n * define the search window.\n */\nexport function upperBound<T>(\n array: Uint32Array, needle: T, comparator: (needle: T, b: number) => number, left?: number, right?: number): number;\nexport function upperBound<S, T>(\n array: S[], needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number;\nexport function upperBound<S, T, A extends S[]>(\n array: A, needle: T, comparator: (needle: T, b: S) => number, left?: number, right?: number): number {\n let l = left || 0;\n let r = right !== undefined ? right : array.length;\n while (l < r) {\n const m = (l + r) >> 1;\n if (comparator(needle, array[m]) >= 0) {\n l = m + 1;\n } else {\n r = m;\n }\n }\n return r;\n}\n\nconst enum NearestSearchStart {\n BEGINNING = 'BEGINNING',\n END = 'END',\n}\n/**\n * Obtains the first or last item in the array that satisfies the predicate function.\n * So, for example, if the array were arr = [2, 4, 6, 8, 10], and you are looking for\n * the last item arr[i] such that arr[i] < 5 you would be returned 1, because\n * array[1] is 4, the last item in the array that satisfies the\n * predicate function.\n *\n * If instead you were looking for the first item in the same array that satisfies\n * arr[i] > 5 you would be returned 2 because array[2] = 6.\n *\n * Please note: this presupposes that the array is already ordered.\n * This function uses a variation of Binary Search.\n */\nfunction nearestIndex<T>(\n arr: readonly T[], predicate: (arrayItem: T) => boolean, searchStart: NearestSearchStart): number|null {\n const searchFromEnd = searchStart === NearestSearchStart.END;\n if (arr.length === 0) {\n return null;\n }\n\n let left = 0;\n let right = arr.length - 1;\n let pivot = 0;\n let matchesPredicate = false;\n let moveToTheRight = false;\n let middle = 0;\n do {\n middle = left + (right - left) / 2;\n pivot = searchFromEnd ? Math.ceil(middle) : Math.floor(middle);\n matchesPredicate = predicate(arr[pivot]);\n moveToTheRight = matchesPredicate === searchFromEnd;\n if (moveToTheRight) {\n left = Math.min(right, pivot + (left === pivot ? 1 : 0));\n } else {\n right = Math.max(left, pivot + (right === pivot ? -1 : 0));\n }\n } while (right !== left);\n\n // Special-case: the indexed item doesn't pass the predicate. This\n // occurs when none of the items in the array are a match for the\n // predicate.\n if (!predicate(arr[left])) {\n return null;\n }\n return left;\n}\n\n/**\n * Obtains the first item in the array that satisfies the predicate function.\n * So, for example, if the array was arr = [2, 4, 6, 8, 10], and you are looking for\n * the first item arr[i] such that arr[i] > 5 you would be returned 2, because\n * array[2] is 6, the first item in the array that satisfies the\n * predicate function.\n *\n * Please note: this presupposes that the array is already ordered.\n */\nexport function nearestIndexFromBeginning<T>(arr: T[], predicate: (arrayItem: T) => boolean): number|null {\n return nearestIndex(arr, predicate, NearestSearchStart.BEGINNING);\n}\n\n/**\n * Obtains the last item in the array that satisfies the predicate function.\n * So, for example, if the array was arr = [2, 4, 6, 8, 10], and you are looking for\n * the last item arr[i] such that arr[i] < 5 you would be returned 1, because\n * arr[1] is 4, the last item in the array that satisfies the\n * predicate function.\n *\n * Please note: this presupposes that the array is already ordered.\n */\n\nexport function nearestIndexFromEnd<T>(arr: readonly T[], predicate: (arrayItem: T) => boolean): number|null {\n return nearestIndex(arr, predicate, NearestSearchStart.END);\n}\n\n/** Type guard for ensuring that `arr` does not contain null or undefined **/\nexport function arrayDoesNotContainNullOrUndefined<T>(arr: Array<T|null|undefined>): arr is T[] {\n return !arr.includes(null) && !arr.includes(undefined);\n}\n"]}
@@ -1,4 +1,4 @@
1
- // Copyright 2023 The Chromium Authors. All rights reserved.
1
+ // Copyright 2023 The Chromium Authors
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Brand.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/Brand.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,yEAAyE;AACzE,6BAA6B","sourcesContent":["// Copyright 2023 The Chromium Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n/**\n * Helper type to introduce new branded types.\n *\n * `Base` is the underlying data type and `Tag` must be unique symbol/string.\n *\n * Usage:\n * ```ts\n * type LineNumber = Brand<number, \"LineNumber\">;\n * type RawUrl = Brand<string, \"RawUrl\">;\n * ```\n *\n * We purposefully use the string index of `_tag` rather then creating a Symbol\n * wrapper that would hide if in IDEs and fail build. This means that at build\n * time if one uses `<branded-var>._tag`, it will build without error and have\n * potentially having a runtime error. This allows us to have multiple places\n * where we define the brands and they will overlap. Also a use case for reusing\n * the type in other downstream projects is simplified.\n */\nexport type Brand<Base, Tag> = Base&{_tag: Tag};\n"]}
1
+ {"version":3,"file":"Brand.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/Brand.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,yEAAyE;AACzE,6BAA6B","sourcesContent":["// Copyright 2023 The Chromium Authors\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n/**\n * Helper type to introduce new branded types.\n *\n * `Base` is the underlying data type and `Tag` must be unique symbol/string.\n *\n * Usage:\n * ```ts\n * type LineNumber = Brand<number, \"LineNumber\">;\n * type RawUrl = Brand<string, \"RawUrl\">;\n * ```\n *\n * We purposefully use the string index of `_tag` rather then creating a Symbol\n * wrapper that would hide if in IDEs and fail build. This means that at build\n * time if one uses `<branded-var>._tag`, it will build without error and have\n * potentially having a runtime error. This allows us to have multiple places\n * where we define the brands and they will overlap. Also a use case for reusing\n * the type in other downstream projects is simplified.\n */\nexport type Brand<Base, Tag> = Base&{_tag: Tag};\n"]}
@@ -1,4 +1,4 @@
1
- // Copyright 2025 The Chromium Authors. All rights reserved.
1
+ // Copyright 2025 The Chromium Authors
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Constructor.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/Constructor.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,yEAAyE;AACzE,6BAA6B","sourcesContent":["// Copyright 2025 The Chromium Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Constructor<T, Args extends any[] = any[]> = new (...args: Args) => T;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AbstractConstructor<T, Args extends any[] = any[]> = (abstract new (...args: Args) => T);\n\nexport type ConstructorOrAbstract<T> = Constructor<T>|AbstractConstructor<T>;\n"]}
1
+ {"version":3,"file":"Constructor.js","sourceRoot":"","sources":["../../../../../../front_end/core/platform/Constructor.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,yEAAyE;AACzE,6BAA6B","sourcesContent":["// Copyright 2025 The Chromium Authors\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Constructor<T, Args extends any[] = any[]> = new (...args: Args) => T;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AbstractConstructor<T, Args extends any[] = any[]> = (abstract new (...args: Args) => T);\n\nexport type ConstructorOrAbstract<T> = Constructor<T>|AbstractConstructor<T>;\n"]}
@@ -1,4 +1,4 @@
1
- // Copyright 2022 The Chromium Authors. All rights reserved.
1
+ // Copyright 2022 The Chromium Authors
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
  /**