@nrwl/workspace 13.1.0 → 13.2.0-beta.1

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 (388) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +5 -4
  3. package/index.js.map +1 -1
  4. package/package.json +6 -6
  5. package/src/command-line/affected.js +12 -12
  6. package/src/command-line/affected.js.map +1 -1
  7. package/src/command-line/connect-to-nx-cloud.js +11 -11
  8. package/src/command-line/connect-to-nx-cloud.js.map +1 -1
  9. package/src/command-line/daemon.js +1 -1
  10. package/src/command-line/dep-graph.js +37 -37
  11. package/src/command-line/dep-graph.js.map +1 -1
  12. package/src/command-line/format.js +28 -28
  13. package/src/command-line/format.js.map +1 -1
  14. package/src/command-line/lint.js +4 -4
  15. package/src/command-line/lint.js.map +1 -1
  16. package/src/command-line/list.js +8 -8
  17. package/src/command-line/list.js.map +1 -1
  18. package/src/command-line/nx-commands.js +27 -27
  19. package/src/command-line/nx-commands.js.map +1 -1
  20. package/src/command-line/print-affected.js +5 -5
  21. package/src/command-line/print-affected.js.map +1 -1
  22. package/src/command-line/report.js +3 -3
  23. package/src/command-line/report.js.map +1 -1
  24. package/src/command-line/reset.js +3 -3
  25. package/src/command-line/reset.js.map +1 -1
  26. package/src/command-line/run-many.js +7 -7
  27. package/src/command-line/run-many.js.map +1 -1
  28. package/src/command-line/run-one.js +6 -6
  29. package/src/command-line/run-one.js.map +1 -1
  30. package/src/command-line/shared.js +4 -4
  31. package/src/command-line/shared.js.map +1 -1
  32. package/src/command-line/utils.js +2 -2
  33. package/src/command-line/utils.js.map +1 -1
  34. package/src/command-line/workspace-generators.js +17 -17
  35. package/src/command-line/workspace-generators.js.map +1 -1
  36. package/src/command-line/workspace-integrity-checks.js +1 -1
  37. package/src/command-line/workspace-integrity-checks.js.map +1 -1
  38. package/src/command-line/workspace-results.js +8 -8
  39. package/src/command-line/workspace-results.js.map +1 -1
  40. package/src/core/affected-project-graph/affected-project-graph.js +3 -3
  41. package/src/core/affected-project-graph/affected-project-graph.js.map +1 -1
  42. package/src/core/affected-project-graph/index.js +2 -2
  43. package/src/core/affected-project-graph/index.js.map +1 -1
  44. package/src/core/affected-project-graph/locators/implicit-json-changes.js +3 -3
  45. package/src/core/affected-project-graph/locators/implicit-json-changes.js.map +1 -1
  46. package/src/core/affected-project-graph/locators/npm-packages.js +2 -2
  47. package/src/core/affected-project-graph/locators/npm-packages.js.map +1 -1
  48. package/src/core/affected-project-graph/locators/tsconfig-json-changes.js +3 -3
  49. package/src/core/affected-project-graph/locators/tsconfig-json-changes.js.map +1 -1
  50. package/src/core/affected-project-graph/locators/workspace-json-changes.js +4 -4
  51. package/src/core/affected-project-graph/locators/workspace-json-changes.js.map +1 -1
  52. package/src/core/dep-graph/3rdpartylicenses.txt +11 -36
  53. package/src/core/dep-graph/index.html +1 -1
  54. package/src/core/dep-graph/main.esm.js +1 -1
  55. package/src/core/dep-graph/polyfills.esm.js +1 -1
  56. package/src/core/dep-graph/styles.css +1 -1
  57. package/src/core/file-utils.js +23 -23
  58. package/src/core/file-utils.js.map +1 -1
  59. package/src/core/hasher/file-hasher.js +1 -1
  60. package/src/core/hasher/file-hasher.js.map +1 -1
  61. package/src/core/hasher/git-hasher.js +6 -6
  62. package/src/core/hasher/git-hasher.js.map +1 -1
  63. package/src/core/hasher/hasher.js +24 -24
  64. package/src/core/hasher/hasher.js.map +1 -1
  65. package/src/core/hasher/hashing-impl.js +3 -3
  66. package/src/core/hasher/hashing-impl.js.map +1 -1
  67. package/src/core/hasher/spawn-process.js +1 -1
  68. package/src/core/hasher/spawn-process.js.map +1 -1
  69. package/src/core/nx-deps/nx-deps-cache.js +8 -8
  70. package/src/core/nx-deps/nx-deps-cache.js.map +1 -1
  71. package/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.js +2 -2
  72. package/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.js.map +1 -1
  73. package/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.js +2 -2
  74. package/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.js.map +1 -1
  75. package/src/core/project-graph/build-dependencies/index.js +3 -3
  76. package/src/core/project-graph/build-dependencies/index.js.map +1 -1
  77. package/src/core/project-graph/build-dependencies/typescript-import-locator.js +3 -3
  78. package/src/core/project-graph/build-dependencies/typescript-import-locator.js.map +1 -1
  79. package/src/core/project-graph/build-nodes/index.js +2 -2
  80. package/src/core/project-graph/build-nodes/index.js.map +1 -1
  81. package/src/core/project-graph/build-nodes/npm-packages.js +1 -1
  82. package/src/core/project-graph/build-nodes/npm-packages.js.map +1 -1
  83. package/src/core/project-graph/build-nodes/workspace-projects.js +1 -1
  84. package/src/core/project-graph/build-nodes/workspace-projects.js.map +1 -1
  85. package/src/core/project-graph/build-project-graph.js +34 -33
  86. package/src/core/project-graph/build-project-graph.js.map +1 -1
  87. package/src/core/project-graph/daemon/cache.js +9 -9
  88. package/src/core/project-graph/daemon/cache.js.map +1 -1
  89. package/src/core/project-graph/daemon/client/client.js +16 -16
  90. package/src/core/project-graph/daemon/client/client.js.map +1 -1
  91. package/src/core/project-graph/daemon/client/exec-is-server-available.js +2 -2
  92. package/src/core/project-graph/daemon/client/exec-is-server-available.js.map +1 -1
  93. package/src/core/project-graph/daemon/client/generate-help-output.js +2 -2
  94. package/src/core/project-graph/daemon/client/generate-help-output.js.map +1 -1
  95. package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js +10 -10
  96. package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js.map +1 -1
  97. package/src/core/project-graph/daemon/server/server.js +26 -26
  98. package/src/core/project-graph/daemon/server/server.js.map +1 -1
  99. package/src/core/project-graph/daemon/server/shutdown-utils.js +1 -1
  100. package/src/core/project-graph/daemon/server/start.js +2 -2
  101. package/src/core/project-graph/daemon/server/start.js.map +1 -1
  102. package/src/core/project-graph/daemon/server/stop.js +3 -3
  103. package/src/core/project-graph/daemon/server/stop.js.map +1 -1
  104. package/src/core/project-graph/daemon/server/watcher.js +8 -8
  105. package/src/core/project-graph/daemon/server/watcher.js.map +1 -1
  106. package/src/core/project-graph/daemon/socket-utils.js +4 -4
  107. package/src/core/project-graph/daemon/socket-utils.js.map +1 -1
  108. package/src/core/project-graph/daemon/tmp-dir.js +7 -7
  109. package/src/core/project-graph/daemon/tmp-dir.js.map +1 -1
  110. package/src/core/project-graph/index.js +2 -2
  111. package/src/core/project-graph/index.js.map +1 -1
  112. package/src/core/project-graph/project-graph-worker.js +1 -1
  113. package/src/core/project-graph/project-graph-worker.js.map +1 -1
  114. package/src/core/project-graph/project-graph.js +16 -11
  115. package/src/core/project-graph/project-graph.js.map +1 -1
  116. package/src/core/target-project-locator.js +9 -9
  117. package/src/core/target-project-locator.js.map +1 -1
  118. package/src/devkit-reexport.js +3 -3
  119. package/src/devkit-reexport.js.map +1 -1
  120. package/src/executors/counter/counter.impl.js +7 -7
  121. package/src/executors/counter/counter.impl.js.map +1 -1
  122. package/src/executors/run-commands/compat.js +1 -1
  123. package/src/executors/run-commands/compat.js.map +1 -1
  124. package/src/executors/run-commands/run-commands.impl.js +7 -7
  125. package/src/executors/run-commands/run-commands.impl.js.map +1 -1
  126. package/src/executors/run-script/compat.js +1 -1
  127. package/src/executors/run-script/compat.js.map +1 -1
  128. package/src/executors/run-script/run-script.impl.js +3 -3
  129. package/src/executors/run-script/run-script.impl.js.map +1 -1
  130. package/src/executors/tsc/compat.js +1 -1
  131. package/src/executors/tsc/compat.js.map +1 -1
  132. package/src/executors/tsc/tsc.impl.js +14 -14
  133. package/src/executors/tsc/tsc.impl.js.map +1 -1
  134. package/src/generators/convert-to-nx-project/convert-to-nx-project.js +13 -13
  135. package/src/generators/convert-to-nx-project/convert-to-nx-project.js.map +1 -1
  136. package/src/generators/convert-to-nx-project/utils/get-project-configuration-path.js +1 -1
  137. package/src/generators/convert-to-nx-project/utils/get-project-configuration-path.js.map +1 -1
  138. package/src/generators/init/init.js +61 -61
  139. package/src/generators/init/init.js.map +1 -1
  140. package/src/generators/library/library.js +24 -24
  141. package/src/generators/library/library.js.map +1 -1
  142. package/src/generators/library/schema.json +1 -1
  143. package/src/generators/move/lib/check-destination.js +1 -1
  144. package/src/generators/move/lib/check-destination.js.map +1 -1
  145. package/src/generators/move/lib/move-project-configuration.js +3 -3
  146. package/src/generators/move/lib/move-project-configuration.js.map +1 -1
  147. package/src/generators/move/lib/move-project.js +3 -3
  148. package/src/generators/move/lib/move-project.js.map +1 -1
  149. package/src/generators/move/lib/normalize-schema.js +4 -4
  150. package/src/generators/move/lib/normalize-schema.js.map +1 -1
  151. package/src/generators/move/lib/update-build-targets.js +1 -1
  152. package/src/generators/move/lib/update-build-targets.js.map +1 -1
  153. package/src/generators/move/lib/update-default-project.js +2 -2
  154. package/src/generators/move/lib/update-default-project.js.map +1 -1
  155. package/src/generators/move/lib/update-eslintrc-json.js +5 -5
  156. package/src/generators/move/lib/update-eslintrc-json.js.map +1 -1
  157. package/src/generators/move/lib/update-implicit-dependencies.js +2 -2
  158. package/src/generators/move/lib/update-implicit-dependencies.js.map +1 -1
  159. package/src/generators/move/lib/update-imports.js +9 -8
  160. package/src/generators/move/lib/update-imports.js.map +1 -1
  161. package/src/generators/move/lib/update-package-json.js +1 -1
  162. package/src/generators/move/lib/update-package-json.js.map +1 -1
  163. package/src/generators/move/lib/update-project-root-files.js +3 -3
  164. package/src/generators/move/lib/update-project-root-files.js.map +1 -1
  165. package/src/generators/move/lib/update-readme.js +1 -1
  166. package/src/generators/move/lib/update-readme.js.map +1 -1
  167. package/src/generators/move/lib/update-storybook-config.js +2 -2
  168. package/src/generators/move/lib/update-storybook-config.js.map +1 -1
  169. package/src/generators/move/lib/utils.js +2 -2
  170. package/src/generators/move/lib/utils.js.map +1 -1
  171. package/src/generators/move/move.js +19 -19
  172. package/src/generators/move/move.js.map +1 -1
  173. package/src/generators/new/new.js +23 -23
  174. package/src/generators/new/new.js.map +1 -1
  175. package/src/generators/npm-package/npm-package.js +12 -12
  176. package/src/generators/npm-package/npm-package.js.map +1 -1
  177. package/src/generators/preset/preset.js +17 -17
  178. package/src/generators/preset/preset.js.map +1 -1
  179. package/src/generators/remove/lib/check-dependencies.js +3 -3
  180. package/src/generators/remove/lib/check-dependencies.js.map +1 -1
  181. package/src/generators/remove/lib/check-targets.js +1 -1
  182. package/src/generators/remove/lib/check-targets.js.map +1 -1
  183. package/src/generators/remove/lib/remove-project-config.js +6 -6
  184. package/src/generators/remove/lib/remove-project-config.js.map +1 -1
  185. package/src/generators/remove/lib/remove-project.js +1 -1
  186. package/src/generators/remove/lib/remove-project.js.map +1 -1
  187. package/src/generators/remove/lib/update-jest-config.js +7 -7
  188. package/src/generators/remove/lib/update-jest-config.js.map +1 -1
  189. package/src/generators/remove/lib/update-tsconfig.js +2 -2
  190. package/src/generators/remove/lib/update-tsconfig.js.map +1 -1
  191. package/src/generators/remove/remove.js +10 -10
  192. package/src/generators/remove/remove.js.map +1 -1
  193. package/src/generators/run-commands/run-commands.js +5 -5
  194. package/src/generators/run-commands/run-commands.js.map +1 -1
  195. package/src/generators/utils/insert-import.js +5 -5
  196. package/src/generators/utils/insert-import.js.map +1 -1
  197. package/src/generators/utils/insert-statement.js +2 -2
  198. package/src/generators/utils/insert-statement.js.map +1 -1
  199. package/src/generators/workspace/files/nx.json__tmpl__ +2 -7
  200. package/src/generators/workspace/workspace.js +18 -18
  201. package/src/generators/workspace/workspace.js.map +1 -1
  202. package/src/generators/workspace-generator/workspace-generator.js +5 -5
  203. package/src/generators/workspace-generator/workspace-generator.js.map +1 -1
  204. package/src/migrations/update-10-0-0/solution-tsconfigs.js +18 -18
  205. package/src/migrations/update-10-0-0/solution-tsconfigs.js.map +1 -1
  206. package/src/migrations/update-10-0-0/update-10-0-0.js +3 -3
  207. package/src/migrations/update-10-0-0/update-10-0-0.js.map +1 -1
  208. package/src/migrations/update-10-0-1/migrate-eslintrc.js +6 -6
  209. package/src/migrations/update-10-0-1/migrate-eslintrc.js.map +1 -1
  210. package/src/migrations/update-10-1-0/migrate-eslintrc-tsconfig-wildcard.js +4 -4
  211. package/src/migrations/update-10-1-0/migrate-eslintrc-tsconfig-wildcard.js.map +1 -1
  212. package/src/migrations/update-10-3-0/add-buildable-project-deps-in-package-json-type.js +3 -3
  213. package/src/migrations/update-10-3-0/add-buildable-project-deps-in-package-json-type.js.map +1 -1
  214. package/src/migrations/update-10-3-0/add-cli-dependency.js +5 -5
  215. package/src/migrations/update-10-3-0/add-cli-dependency.js.map +1 -1
  216. package/src/migrations/update-10-3-0/add-vscode-extensions.js +3 -3
  217. package/src/migrations/update-10-3-0/add-vscode-extensions.js.map +1 -1
  218. package/src/migrations/update-10-3-0/update-typescript.js +2 -2
  219. package/src/migrations/update-10-3-0/update-typescript.js.map +1 -1
  220. package/src/migrations/update-10-4-0/add-explicit-dep-on-tao.js +5 -5
  221. package/src/migrations/update-10-4-0/add-explicit-dep-on-tao.js.map +1 -1
  222. package/src/migrations/update-10-4-0/update-script-to-invoke-nx-migrate.js +1 -1
  223. package/src/migrations/update-10-4-0/update-script-to-invoke-nx-migrate.js.map +1 -1
  224. package/src/migrations/update-11-0-0/add-outputs-in-workspace.js +2 -2
  225. package/src/migrations/update-11-0-0/add-outputs-in-workspace.js.map +1 -1
  226. package/src/migrations/update-11-0-0/rename-workspace-schematic-script.js +1 -1
  227. package/src/migrations/update-11-0-0/rename-workspace-schematic-script.js.map +1 -1
  228. package/src/migrations/update-11-0-0/rename-workspace-schematics.js +2 -2
  229. package/src/migrations/update-11-0-0/rename-workspace-schematics.js.map +1 -1
  230. package/src/migrations/update-11-0-0/update-decorate-angular-cli.js +1 -1
  231. package/src/migrations/update-11-0-0/update-decorate-angular-cli.js.map +1 -1
  232. package/src/migrations/update-11-0-0/update-node-types.js +2 -2
  233. package/src/migrations/update-11-0-0/update-node-types.js.map +1 -1
  234. package/src/migrations/update-11-1-2/update-11-1-2.js +2 -2
  235. package/src/migrations/update-11-1-2/update-11-1-2.js.map +1 -1
  236. package/src/migrations/update-12-5-0/add-target-dependencies.js +4 -4
  237. package/src/migrations/update-12-5-0/add-target-dependencies.js.map +1 -1
  238. package/src/migrations/update-13-0-0/config-locations/config-locations.js +6 -6
  239. package/src/migrations/update-13-0-0/config-locations/config-locations.js.map +1 -1
  240. package/src/migrations/update-13-0-0/set-default-base-if-not-set.js +4 -4
  241. package/src/migrations/update-13-0-0/set-default-base-if-not-set.js.map +1 -1
  242. package/src/migrations/update-8-10-0/fix-tslint-json.js +8 -8
  243. package/src/migrations/update-8-10-0/fix-tslint-json.js.map +1 -1
  244. package/src/migrations/update-8-12-0/add-implicit-e2e-deps.js +3 -3
  245. package/src/migrations/update-8-12-0/add-implicit-e2e-deps.js.map +1 -1
  246. package/src/migrations/update-8-12-0/update-enforce-boundary-lint-rule.js +3 -3
  247. package/src/migrations/update-8-12-0/update-enforce-boundary-lint-rule.js.map +1 -1
  248. package/src/migrations/update-8-12-0/update-package-json-deps.js +3 -3
  249. package/src/migrations/update-8-12-0/update-package-json-deps.js.map +1 -1
  250. package/src/migrations/update-8-2-0/update-8-2-0.js +3 -3
  251. package/src/migrations/update-8-2-0/update-8-2-0.js.map +1 -1
  252. package/src/migrations/update-8-3-0/rename-lint.js +2 -2
  253. package/src/migrations/update-8-3-0/rename-lint.js.map +1 -1
  254. package/src/migrations/update-8-3-0/update-cypress-to-34.js +2 -2
  255. package/src/migrations/update-8-3-0/update-cypress-to-34.js.map +1 -1
  256. package/src/migrations/update-8-3-0/update-ng-cli-8-1.js +4 -4
  257. package/src/migrations/update-8-3-0/update-ng-cli-8-1.js.map +1 -1
  258. package/src/migrations/update-8-4-0/add-nx-script.js +2 -2
  259. package/src/migrations/update-8-4-0/add-nx-script.js.map +1 -1
  260. package/src/migrations/update-8-5-0/fix-tsconfig-lib-json.js +4 -4
  261. package/src/migrations/update-8-5-0/fix-tsconfig-lib-json.js.map +1 -1
  262. package/src/migrations/update-9-0-0/update-9-0-0.js +2 -2
  263. package/src/migrations/update-9-0-0/update-9-0-0.js.map +1 -1
  264. package/src/migrations/update-9-1-0/update-9-1-0.js +2 -2
  265. package/src/migrations/update-9-1-0/update-9-1-0.js.map +1 -1
  266. package/src/migrations/update-9-1-0/update-lint-config.js +3 -3
  267. package/src/migrations/update-9-1-0/update-lint-config.js.map +1 -1
  268. package/src/migrations/update-9-2-0/update-9-2-0.js +3 -3
  269. package/src/migrations/update-9-2-0/update-9-2-0.js.map +1 -1
  270. package/src/migrations/update-9-3-0/update-9-3-0.js +2 -2
  271. package/src/migrations/update-9-3-0/update-9-3-0.js.map +1 -1
  272. package/src/migrations/update-9-4-0/add-decorate-cli.js +3 -3
  273. package/src/migrations/update-9-4-0/add-decorate-cli.js.map +1 -1
  274. package/src/migrations/update-9-4-0/update-eslint-config.js +2 -2
  275. package/src/migrations/update-9-4-0/update-eslint-config.js.map +1 -1
  276. package/src/migrations/update-9-4-0/update-linters-exclude.js +2 -2
  277. package/src/migrations/update-9-4-0/update-linters-exclude.js.map +1 -1
  278. package/src/tasks-runner/batch/run-batch.js +3 -3
  279. package/src/tasks-runner/batch/run-batch.js.map +1 -1
  280. package/src/tasks-runner/cache.js +57 -57
  281. package/src/tasks-runner/cache.js.map +1 -1
  282. package/src/tasks-runner/default-tasks-runner.js +1 -1
  283. package/src/tasks-runner/forked-process-task-runner.js +10 -10
  284. package/src/tasks-runner/forked-process-task-runner.js.map +1 -1
  285. package/src/tasks-runner/remove-old-cache-records.js +7 -7
  286. package/src/tasks-runner/remove-old-cache-records.js.map +1 -1
  287. package/src/tasks-runner/run-command.js +8 -8
  288. package/src/tasks-runner/run-command.js.map +1 -1
  289. package/src/tasks-runner/task-graph-creator.js +1 -1
  290. package/src/tasks-runner/task-graph-creator.js.map +1 -1
  291. package/src/tasks-runner/task-orchestrator.js +22 -22
  292. package/src/tasks-runner/task-orchestrator.js.map +1 -1
  293. package/src/tasks-runner/tasks-schedule.js +7 -7
  294. package/src/tasks-runner/tasks-schedule.js.map +1 -1
  295. package/src/tasks-runner/utils.js +3 -3
  296. package/src/tasks-runner/utils.js.map +1 -1
  297. package/src/tslint/nxEnforceModuleBoundariesRule.js +16 -16
  298. package/src/tslint/nxEnforceModuleBoundariesRule.js.map +1 -1
  299. package/src/utilities/app-root.js +2 -2
  300. package/src/utilities/app-root.js.map +1 -1
  301. package/src/utilities/assets.js +7 -7
  302. package/src/utilities/assets.js.map +1 -1
  303. package/src/utilities/ast-utils.js +10 -10
  304. package/src/utilities/ast-utils.js.map +1 -1
  305. package/src/utilities/buildable-libs-utils.js +19 -19
  306. package/src/utilities/buildable-libs-utils.js.map +1 -1
  307. package/src/utilities/cache-directory.js +3 -3
  308. package/src/utilities/cache-directory.js.map +1 -1
  309. package/src/utilities/create-package-json.js +2 -2
  310. package/src/utilities/create-package-json.js.map +1 -1
  311. package/src/utilities/default-base.js +2 -2
  312. package/src/utilities/default-base.js.map +1 -1
  313. package/src/utilities/executor-options-utils.js +1 -1
  314. package/src/utilities/executor-options-utils.js.map +1 -1
  315. package/src/utilities/fileutils.js +15 -15
  316. package/src/utilities/fileutils.js.map +1 -1
  317. package/src/utilities/generate-globs.js +5 -5
  318. package/src/utilities/generate-globs.js.map +1 -1
  319. package/src/utilities/plugins/community-plugins.js +2 -2
  320. package/src/utilities/plugins/community-plugins.js.map +1 -1
  321. package/src/utilities/plugins/installed-plugins.js +4 -4
  322. package/src/utilities/plugins/installed-plugins.js.map +1 -1
  323. package/src/utilities/plugins/plugin-capabilities.js +5 -5
  324. package/src/utilities/plugins/plugin-capabilities.js.map +1 -1
  325. package/src/utilities/prettier.js +1 -1
  326. package/src/utilities/project-graph-utils.js +6 -6
  327. package/src/utilities/project-graph-utils.js.map +1 -1
  328. package/src/utilities/project-type.js +2 -2
  329. package/src/utilities/project-type.js.map +1 -1
  330. package/src/utilities/run-tasks-in-serial.js +1 -1
  331. package/src/utilities/set-default-collection.js +2 -2
  332. package/src/utilities/set-default-collection.js.map +1 -1
  333. package/src/utilities/typescript/compilation.js +4 -4
  334. package/src/utilities/typescript/compilation.js.map +1 -1
  335. package/src/utilities/typescript.js +2 -2
  336. package/src/utilities/typescript.js.map +1 -1
  337. package/src/utilities/version-utils.js +2 -2
  338. package/src/utilities/version-utils.js.map +1 -1
  339. package/src/utils/ast-utils.js +28 -28
  340. package/src/utils/ast-utils.js.map +1 -1
  341. package/src/utils/cli-config-utils.js +1 -1
  342. package/src/utils/cli-config-utils.js.map +1 -1
  343. package/src/utils/fileutils.js +15 -15
  344. package/src/utils/fileutils.js.map +1 -1
  345. package/src/utils/lint.js +9 -9
  346. package/src/utils/lint.js.map +1 -1
  347. package/src/utils/project-type.js +2 -2
  348. package/src/utils/project-type.js.map +1 -1
  349. package/src/utils/rules/check-project-exists.js +1 -1
  350. package/src/utils/rules/check-project-exists.js.map +1 -1
  351. package/src/utils/rules/format-files.js +6 -6
  352. package/src/utils/rules/format-files.js.map +1 -1
  353. package/src/utils/rules/move-npm-packages.js +6 -6
  354. package/src/utils/rules/move-npm-packages.js.map +1 -1
  355. package/src/utils/rules/ng-add.js +1 -1
  356. package/src/utils/rules/ng-add.js.map +1 -1
  357. package/src/utils/rules/rename-npm-packages.js +7 -7
  358. package/src/utils/rules/rename-npm-packages.js.map +1 -1
  359. package/src/utils/rules/rename-package-imports.js +7 -7
  360. package/src/utils/rules/rename-package-imports.js.map +1 -1
  361. package/src/utils/rules/to-js.js +10 -10
  362. package/src/utils/rules/to-js.js.map +1 -1
  363. package/src/utils/rules/update-karma-conf.js +4 -4
  364. package/src/utils/rules/update-karma-conf.js.map +1 -1
  365. package/src/utils/rules/visit-not-ignored-files.js +6 -6
  366. package/src/utils/rules/visit-not-ignored-files.js.map +1 -1
  367. package/src/utils/rules/workspace.js +1 -1
  368. package/src/utils/rules/workspace.js.map +1 -1
  369. package/src/utils/runtime-lint-utils.js +14 -5
  370. package/src/utils/runtime-lint-utils.js.map +1 -1
  371. package/src/utils/testing-utils.d.ts +1 -1
  372. package/src/utils/testing-utils.js +4 -4
  373. package/src/utils/testing-utils.js.map +1 -1
  374. package/src/utils/testing.js +17 -17
  375. package/src/utils/testing.js.map +1 -1
  376. package/src/utils/update-packages-in-package-json.js +11 -11
  377. package/src/utils/update-packages-in-package-json.js.map +1 -1
  378. package/src/utils/update-task.js +3 -3
  379. package/src/utils/update-task.js.map +1 -1
  380. package/src/utils/version-utils.js +1 -1
  381. package/src/utils/version-utils.js.map +1 -1
  382. package/src/utils/versions.d.ts +2 -2
  383. package/src/utils/versions.js +3 -3
  384. package/src/utils/workspace.js +6 -6
  385. package/src/core/dep-graph/main.es5.js +0 -2
  386. package/src/core/dep-graph/main.es5.js.LICENSE.txt +0 -9
  387. package/src/core/dep-graph/polyfills.es5.js +0 -1
  388. package/src/core/dep-graph/runtime.es5.js +0 -1
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see main.esm.js.LICENSE.txt */
2
- (self.webpackChunk=self.webpackChunk||[]).push([[179],{"Ue+I":(e,t,n)=>{"use strict";var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},r(e,t)};function i(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function o(e){return"function"==typeof e}var a=!1,s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){e&&(new Error).stack;a=e},get useDeprecatedSynchronousErrorHandling(){return a}};function u(e){setTimeout((function(){throw e}),0)}var l={closed:!0,next:function(e){},error:function(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;u(e)},complete:function(){}},c=function(){return Array.isArray||function(e){return e&&"number"==typeof e.length}}();function d(e){return null!==e&&"object"==typeof e}var h=function(){function e(e){return Error.call(this),this.message=e?e.length+" errors occurred during unsubscription:\n"+e.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}(),p=function(){function e(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._ctorUnsubscribe=!0,this._unsubscribe=e)}return e.prototype.unsubscribe=function(){var t;if(!this.closed){var n=this,r=n._parentOrParents,i=n._ctorUnsubscribe,a=n._unsubscribe,s=n._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,r instanceof e)r.remove(this);else if(null!==r)for(var u=0;u<r.length;++u){r[u].remove(this)}if(o(a)){i&&(this._unsubscribe=void 0);try{a.call(this)}catch(v){t=v instanceof h?f(v.errors):[v]}}if(c(s)){u=-1;for(var l=s.length;++u<l;){var p=s[u];if(d(p))try{p.unsubscribe()}catch(v){t=t||[],v instanceof h?t=t.concat(f(v.errors)):t.push(v)}}}if(t)throw new h(t)}},e.prototype.add=function(t){var n=t;if(!t)return e.EMPTY;switch(typeof t){case"function":n=new e(t);case"object":if(n===this||n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if(!(n instanceof e)){var r=n;(n=new e)._subscriptions=[r]}break;default:throw new Error("unrecognized teardown "+t+" added to Subscription.")}var i=n._parentOrParents;if(null===i)n._parentOrParents=this;else if(i instanceof e){if(i===this)return n;n._parentOrParents=[i,this]}else{if(-1!==i.indexOf(this))return n;i.push(this)}var o=this._subscriptions;return null===o?this._subscriptions=[n]:o.push(n),n},e.prototype.remove=function(e){var t=this._subscriptions;if(t){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},e.EMPTY=function(e){return e.closed=!0,e}(new e),e}();function f(e){return e.reduce((function(e,t){return e.concat(t instanceof h?t.errors:t)}),[])}var v=function(){return"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random()}(),g=function(e){function t(n,r,i){var o=e.call(this)||this;switch(o.syncErrorValue=null,o.syncErrorThrown=!1,o.syncErrorThrowable=!1,o.isStopped=!1,arguments.length){case 0:o.destination=l;break;case 1:if(!n){o.destination=l;break}if("object"==typeof n){n instanceof t?(o.syncErrorThrowable=n.syncErrorThrowable,o.destination=n,n.add(o)):(o.syncErrorThrowable=!0,o.destination=new y(o,n));break}default:o.syncErrorThrowable=!0,o.destination=new y(o,n,r,i)}return o}return i(t,e),t.prototype[v]=function(){return this},t.create=function(e,n,r){var i=new t(e,n,r);return i.syncErrorThrowable=!1,i},t.prototype.next=function(e){this.isStopped||this._next(e)},t.prototype.error=function(e){this.isStopped||(this.isStopped=!0,this._error(e))},t.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this))},t.prototype._next=function(e){this.destination.next(e)},t.prototype._error=function(e){this.destination.error(e),this.unsubscribe()},t.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},t.prototype._unsubscribeAndRecycle=function(){var e=this._parentOrParents;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this},t}(p),y=function(e){function t(t,n,r,i){var a,s=e.call(this)||this;s._parentSubscriber=t;var u=s;return o(n)?a=n:n&&(a=n.next,r=n.error,i=n.complete,n!==l&&(o((u=Object.create(n)).unsubscribe)&&s.add(u.unsubscribe.bind(u)),u.unsubscribe=s.unsubscribe.bind(s))),s._context=u,s._next=a,s._error=r,s._complete=i,s}return i(t,e),t.prototype.next=function(e){if(!this.isStopped&&this._next){var t=this._parentSubscriber;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}},t.prototype.error=function(e){if(!this.isStopped){var t=this._parentSubscriber,n=s.useDeprecatedSynchronousErrorHandling;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):u(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;u(e)}}},t.prototype.complete=function(){var e=this;if(!this.isStopped){var t=this._parentSubscriber;if(this._complete){var n=function(){return e._complete.call(e._context)};s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,n),this.unsubscribe()):(this.__tryOrUnsub(n),this.unsubscribe())}else this.unsubscribe()}},t.prototype.__tryOrUnsub=function(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;u(n)}},t.prototype.__tryOrSetError=function(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(u(r),!0)}return!1},t.prototype._unsubscribe=function(){var e=this._parentSubscriber;this._context=null,this._parentSubscriber=null,e.unsubscribe()},t}(g);var m=function(){return"function"==typeof Symbol&&Symbol.observable||"@@observable"}();function b(e){return e}function x(e){return 0===e.length?b:1===e.length?e[0]:function(t){return e.reduce((function(e,t){return t(e)}),t)}}var w=function(){function e(e){this._isScalar=!1,e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,t,n){var r=this.operator,i=function(e,t,n){if(e){if(e instanceof g)return e;if(e[v])return e[v]()}return e||t||n?new g(e,t,n):new g(l)}(e,t,n);if(r?i.add(r.call(i,this.source)):i.add(this.source||s.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),s.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),!function(e){for(;e;){var t=e,n=t.closed,r=t.destination,i=t.isStopped;if(n||i)return!1;e=r&&r instanceof g?r:null}return!0}(e)?console.warn(t):e.error(t)}},e.prototype.forEach=function(e,t){var n=this;return new(t=E(t))((function(t,r){var i;i=n.subscribe((function(t){try{e(t)}catch(n){r(n),i&&i.unsubscribe()}}),r,t)}))},e.prototype._subscribe=function(e){var t=this.source;return t&&t.subscribe(e)},e.prototype[m]=function(){return this},e.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return 0===e.length?this:x(e)(this)},e.prototype.toPromise=function(e){var t=this;return new(e=E(e))((function(e,n){var r;t.subscribe((function(e){return r=e}),(function(e){return n(e)}),(function(){return e(r)}))}))},e.create=function(t){return new e(t)},e}();function E(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}var k=function(){function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e}(),P=function(e){function t(t,n){var r=e.call(this)||this;return r.subject=t,r.subscriber=n,r.closed=!1,r}return i(t,e),t.prototype.unsubscribe=function(){if(!this.closed){this.closed=!0;var e=this.subject,t=e.observers;if(this.subject=null,t&&0!==t.length&&!e.isStopped&&!e.closed){var n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}},t}(p),S=function(e){function t(t){var n=e.call(this,t)||this;return n.destination=t,n}return i(t,e),t}(g),C=function(e){function t(){var t=e.call(this)||this;return t.observers=[],t.closed=!1,t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return i(t,e),t.prototype[v]=function(){return new S(this)},t.prototype.lift=function(e){var t=new _(this,this);return t.operator=e,t},t.prototype.next=function(e){if(this.closed)throw new k;if(!this.isStopped)for(var t=this.observers,n=t.length,r=t.slice(),i=0;i<n;i++)r[i].next(e)},t.prototype.error=function(e){if(this.closed)throw new k;this.hasError=!0,this.thrownError=e,this.isStopped=!0;for(var t=this.observers,n=t.length,r=t.slice(),i=0;i<n;i++)r[i].error(e);this.observers.length=0},t.prototype.complete=function(){if(this.closed)throw new k;this.isStopped=!0;for(var e=this.observers,t=e.length,n=e.slice(),r=0;r<t;r++)n[r].complete();this.observers.length=0},t.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},t.prototype._trySubscribe=function(t){if(this.closed)throw new k;return e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){if(this.closed)throw new k;return this.hasError?(e.error(this.thrownError),p.EMPTY):this.isStopped?(e.complete(),p.EMPTY):(this.observers.push(e),new P(this,e))},t.prototype.asObservable=function(){var e=new w;return e.source=this,e},t.create=function(e,t){return new _(e,t)},t}(w),_=function(e){function t(t,n){var r=e.call(this)||this;return r.destination=t,r.source=n,r}return i(t,e),t.prototype.next=function(e){var t=this.destination;t&&t.next&&t.next(e)},t.prototype.error=function(e){var t=this.destination;t&&t.error&&this.destination.error(e)},t.prototype.complete=function(){var e=this.destination;e&&e.complete&&this.destination.complete()},t.prototype._subscribe=function(e){return this.source?this.source.subscribe(e):p.EMPTY},t}(C);var j=function(e){function t(t){var n=e.call(this)||this;return n._value=t,n}return i(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),t.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return n&&!n.closed&&t.next(this._value),n},t.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new k;return this._value},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(C),D=function(e){function t(t,n){return e.call(this)||this}return i(t,e),t.prototype.schedule=function(e,t){return void 0===t&&(t=0),this},t}(p),T=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r.pending=!1,r}return i(t,e),t.prototype.schedule=function(e,t){if(void 0===t&&(t=0),this.closed)return this;this.state=e;var n=this.id,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(r,this.id,t),this},t.prototype.requestAsyncId=function(e,t,n){return void 0===n&&(n=0),setInterval(e.flush.bind(e,this),n)},t.prototype.recycleAsyncId=function(e,t,n){if(void 0===n&&(n=0),null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)},t.prototype.execute=function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(e,t){var n=!1,r=void 0;try{this.work(e)}catch(i){n=!0,r=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),r},t.prototype._unsubscribe=function(){var e=this.id,t=this.scheduler,n=t.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null},t}(D),B=function(){function e(t,n){void 0===n&&(n=e.now),this.SchedulerAction=t,this.now=n}return e.prototype.schedule=function(e,t,n){return void 0===t&&(t=0),new this.SchedulerAction(this,e).schedule(n,t)},e.now=function(){return Date.now()},e}(),O=function(e){function t(n,r){void 0===r&&(r=B.now);var i=e.call(this,n,(function(){return t.delegate&&t.delegate!==i?t.delegate.now():r()}))||this;return i.actions=[],i.active=!1,i.scheduled=void 0,i}return i(t,e),t.prototype.schedule=function(n,r,i){return void 0===r&&(r=0),t.delegate&&t.delegate!==this?t.delegate.schedule(n,r,i):e.prototype.schedule.call(this,n,r,i)},t.prototype.flush=function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}},t}(B);function M(e){return e&&"function"==typeof e.schedule}var N,I=function(e){return function(t){for(var n=0,r=e.length;n<r&&!t.closed;n++)t.next(e[n]);t.complete()}};function L(e,t){return new w((function(n){var r=new p,i=0;return r.add(t.schedule((function(){i!==e.length?(n.next(e[i++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}function A(e,t){return t?L(e,t):new w(I(e))}function z(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=e[e.length-1];return M(n)?(e.pop(),L(e,n)):A(e)}N||(N={});var R=new O(T);function F(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new V(e,t))}}var V=function(){function e(e,t){this.project=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new q(e,this.project,this.thisArg))},e}(),q=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.project=n,i.count=0,i.thisArg=r||i,i}return i(t,e),t.prototype._next=function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(g);var Y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.notifyNext=function(e,t,n,r,i){this.destination.next(t)},t.prototype.notifyError=function(e,t){this.destination.error(e)},t.prototype.notifyComplete=function(e){this.destination.complete()},t}(g),X=function(e){function t(t,n,r){var i=e.call(this)||this;return i.parent=t,i.outerValue=n,i.outerIndex=r,i.index=0,i}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)},t.prototype._error=function(e){this.parent.notifyError(e,this),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},t}(g);function H(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}var W=H(),G=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e};function U(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}var K=function(e){if(e&&"function"==typeof e[m])return r=e,function(e){var t=r[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if(G(e))return I(e);if(U(e))return n=e,function(e){return n.then((function(t){e.closed||(e.next(t),e.complete())}),(function(t){return e.error(t)})).then(null,u),e};if(e&&"function"==typeof e[W])return t=e,function(e){for(var n=t[W]();;){var r=void 0;try{r=n.next()}catch(i){return e.error(i),e}if(r.done){e.complete();break}if(e.next(r.value),e.closed)break}return"function"==typeof n.return&&e.add((function(){n.return&&n.return()})),e};var t,n,r,i=d(e)?"an invalid object":"'"+e+"'";throw new TypeError("You provided "+i+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.")};function Q(e,t,n,r,i){if(void 0===i&&(i=new X(e,n,r)),!i.closed)return t instanceof w?t.subscribe(i):K(t)(i)}var Z={};function $(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=void 0,r=void 0;return M(e[e.length-1])&&(r=e.pop()),"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&c(e[0])&&(e=e[0]),A(e,r).lift(new J(n))}var J=function(){function e(e){this.resultSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new ee(e,this.resultSelector))},e}(),ee=function(e){function t(t,n){var r=e.call(this,t)||this;return r.resultSelector=n,r.active=0,r.values=[],r.observables=[],r}return i(t,e),t.prototype._next=function(e){this.values.push(Z),this.observables.push(e)},t.prototype._complete=function(){var e=this.observables,t=e.length;if(0===t)this.destination.complete();else{this.active=t,this.toRespond=t;for(var n=0;n<t;n++){var r=e[n];this.add(Q(this,r,void 0,n))}}},t.prototype.notifyComplete=function(e){0==(this.active-=1)&&this.destination.complete()},t.prototype.notifyNext=function(e,t,n){var r=this.values,i=r[n],o=this.toRespond?i===Z?--this.toRespond:this.toRespond:0;r[n]=t,0===o&&(this.resultSelector?this._tryResultSelector(r):this.destination.next(r.slice()))},t.prototype._tryResultSelector=function(e){var t;try{t=this.resultSelector.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(Y);function te(e,t){if(null!=e){if(function(e){return e&&"function"==typeof e[m]}(e))return function(e,t){return new w((function(n){var r=new p;return r.add(t.schedule((function(){var i=e[m]();r.add(i.subscribe({next:function(e){r.add(t.schedule((function(){return n.next(e)})))},error:function(e){r.add(t.schedule((function(){return n.error(e)})))},complete:function(){r.add(t.schedule((function(){return n.complete()})))}}))}))),r}))}(e,t);if(U(e))return function(e,t){return new w((function(n){var r=new p;return r.add(t.schedule((function(){return e.then((function(e){r.add(t.schedule((function(){n.next(e),r.add(t.schedule((function(){return n.complete()})))})))}),(function(e){r.add(t.schedule((function(){return n.error(e)})))}))}))),r}))}(e,t);if(G(e))return L(e,t);if(function(e){return e&&"function"==typeof e[W]}(e)||"string"==typeof e)return function(e,t){if(!e)throw new Error("Iterable cannot be null");return new w((function(n){var r,i=new p;return i.add((function(){r&&"function"==typeof r.return&&r.return()})),i.add(t.schedule((function(){r=e[W](),i.add(t.schedule((function(){if(!n.closed){var e,t;try{var i=r.next();e=i.value,t=i.done}catch(o){return void n.error(o)}t?n.complete():(n.next(e),this.schedule())}})))}))),i}))}(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}var ne=function(e){function t(t){var n=e.call(this)||this;return n.parent=t,n}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(e)},t.prototype._error=function(e){this.parent.notifyError(e),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(),this.unsubscribe()},t}(g),re=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.notifyNext=function(e){this.destination.next(e)},t.prototype.notifyError=function(e){this.destination.error(e)},t.prototype.notifyComplete=function(){this.destination.complete()},t}(g);function ie(e,t){if(!t.closed){if(e instanceof w)return e.subscribe(t);var n;try{n=K(e)(t)}catch(r){t.error(r)}return n}}function oe(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"function"==typeof t?function(r){return r.pipe(oe((function(n,r){return(i=e(n,r),o?te(i,o):i instanceof w?i:new w(K(i))).pipe(F((function(e,i){return t(n,e,r,i)})));var i,o}),n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new ae(e,n))})}var ae=function(){function e(e,t){void 0===t&&(t=Number.POSITIVE_INFINITY),this.project=e,this.concurrent=t}return e.prototype.call=function(e,t){return t.subscribe(new se(e,this.project,this.concurrent))},e}(),se=function(e){function t(t,n,r){void 0===r&&(r=Number.POSITIVE_INFINITY);var i=e.call(this,t)||this;return i.project=n,i.concurrent=r,i.hasCompleted=!1,i.buffer=[],i.active=0,i.index=0,i}return i(t,e),t.prototype._next=function(e){this.active<this.concurrent?this._tryNext(e):this.buffer.push(e)},t.prototype._tryNext=function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(r){return void this.destination.error(r)}this.active++,this._innerSub(t)},t.prototype._innerSub=function(e){var t=new ne(this),n=this.destination;n.add(t);var r=ie(e,t);r!==t&&n.add(r)},t.prototype._complete=function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()},t.prototype.notifyNext=function(e){this.destination.next(e)},t.prototype.notifyComplete=function(){var e=this.buffer;this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(re);function ue(){return void 0===(e=1)&&(e=Number.POSITIVE_INFINITY),oe(b,e);var e}function le(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return ue()(z.apply(void 0,e))}function ce(e,t,n,r){return o(n)&&(r=n,n=void 0),r?ce(e,t,n).pipe(F((function(e){return c(e)?r.apply(void 0,e):r(e)}))):new w((function(r){de(e,t,(function(e){arguments.length>1?r.next(Array.prototype.slice.call(arguments)):r.next(e)}),r,n)}))}function de(e,t,n,r,i){var o;if(function(e){return e&&"function"==typeof e.addEventListener&&"function"==typeof e.removeEventListener}(e)){var a=e;e.addEventListener(t,n,i),o=function(){return a.removeEventListener(t,n,i)}}else if(function(e){return e&&"function"==typeof e.on&&"function"==typeof e.off}(e)){var s=e;e.on(t,n),o=function(){return s.off(t,n)}}else if(function(e){return e&&"function"==typeof e.addListener&&"function"==typeof e.removeListener}(e)){var u=e;e.addListener(t,n),o=function(){return u.removeListener(t,n)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var l=0,c=e.length;l<c;l++)de(e[l],t,n,r,i)}r.add(o)}var he=function(){function e(e,t){this.predicate=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new pe(e,this.predicate,this.thisArg))},e}(),pe=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.predicate=n,i.thisArg=r,i.count=0,i}return i(t,e),t.prototype._next=function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)},t}(g);var fe=function(){function e(e,t){this.dueTime=e,this.scheduler=t}return e.prototype.call=function(e,t){return t.subscribe(new ve(e,this.dueTime,this.scheduler))},e}(),ve=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.dueTime=n,i.scheduler=r,i.debouncedSubscription=null,i.lastValue=null,i.hasValue=!1,i}return i(t,e),t.prototype._next=function(e){this.clearDebounce(),this.lastValue=e,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(ge,this.dueTime,this))},t.prototype._complete=function(){this.debouncedNext(),this.destination.complete()},t.prototype.debouncedNext=function(){if(this.clearDebounce(),this.hasValue){var e=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(e)}},t.prototype.clearDebounce=function(){var e=this.debouncedSubscription;null!==e&&(this.remove(e),e.unsubscribe(),this.debouncedSubscription=null)},t}(g);function ge(e){e.debouncedNext()}var ye=function(){function e(e,t){this.compare=e,this.keySelector=t}return e.prototype.call=function(e,t){return t.subscribe(new me(e,this.compare,this.keySelector))},e}(),me=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.keySelector=r,i.hasKey=!1,"function"==typeof n&&(i.compare=n),i}return i(t,e),t.prototype.compare=function(e,t){return e===t},t.prototype._next=function(e){var t;try{var n=this.keySelector;t=n?n(e):e}catch(i){return this.destination.error(i)}var r=!1;if(this.hasKey)try{r=(0,this.compare)(this.key,t)}catch(i){return this.destination.error(i)}else this.hasKey=!0;r||(this.key=t,this.destination.next(e))},t}(g);function be(e){return function(t){return t.lift(new xe(e))}}var xe=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){var n=new we(e),r=ie(this.notifier,new ne(n));return r&&!n.seenValue?(n.add(r),t.subscribe(n)):n},e}(),we=function(e){function t(t){var n=e.call(this,t)||this;return n.seenValue=!1,n}return i(t,e),t.prototype.notifyNext=function(){this.seenValue=!0,this.complete()},t.prototype.notifyComplete=function(){},t}(re);var Ee=function(){function e(e,t){this.observables=e,this.project=t}return e.prototype.call=function(e,t){return t.subscribe(new ke(e,this.observables,this.project))},e}(),ke=function(e){function t(t,n,r){var i=e.call(this,t)||this;i.observables=n,i.project=r,i.toRespond=[];var o=n.length;i.values=new Array(o);for(var a=0;a<o;a++)i.toRespond.push(a);for(a=0;a<o;a++){var s=n[a];i.add(Q(i,s,void 0,a))}return i}return i(t,e),t.prototype.notifyNext=function(e,t,n){this.values[n]=t;var r=this.toRespond;if(r.length>0){var i=r.indexOf(n);-1!==i&&r.splice(i,1)}},t.prototype.notifyComplete=function(){},t.prototype._next=function(e){if(0===this.toRespond.length){var t=[e].concat(this.values);this.project?this._tryProject(t):this.destination.next(t)}},t.prototype._tryProject=function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(Y);function Pe(e){Array.from(e.children).forEach((t=>e.removeChild(t)))}function Se(e){return e.replace(/\/$/,"")}function Ce(e,t){const n=Se(e).split("/");return n[0]===Se(t)&&n.shift(),n.pop(),n}class _e{set renderTime(e){this.renderReportElement.innerHTML=`Last render took ${e.renderTime}ms: <b class="font-mono text-medium">${e.numNodes} nodes</b> | <b class="font-mono text-medium">${e.numEdges} edges</b>.`}constructor(e,t){this.container=e,this.projectGraphs=t,this.selectProjectSubject=new C,this.selectProject$=this.selectProjectSubject.asObservable(),this.renderReportElement=void 0,this.render()}render(){Pe(this.container);const e=document.createElement("h4");e.className="text-lg font-bold mr-4",e.innerText="Debugger";const t=document.createElement("select");t.className="w-auto flex items-center px-4 py-2 border border-gray-300 rounded-md text-sm font-medium text-gray-700 bg-white",this.projectGraphs.forEach((e=>{const n=document.createElement("option");n.value=e.id,n.innerText=e.label,t.appendChild(n)})),t.value=window.selectedProjectGraph,t.dataset.cy="project-select",t.onchange=e=>this.selectProjectSubject.next(e.currentTarget.value),this.renderReportElement=document.createElement("p"),this.renderReportElement.className="text-sm",this.container.appendChild(e),this.container.appendChild(t),this.container.appendChild(this.renderReportElement)}}var je=n("rFOX"),De=n("Ded0"),Te=n.n(De),Be=n("CQyY"),Oe=n.n(Be);class Me{constructor(e){this.node=e}render(){const e=document.createElement("div"),t=this.createHeader(),n=this.createTags(),r=this.createButtons();return e.appendChild(t),e.appendChild(n),e.appendChild(r),e}createHeader(){const e=document.createElement("h4"),t=document.createElement("span"),n=document.createTextNode(this.node.attr("id"));return t.classList.add("tag"),t.innerText=this.node.attr("type"),e.appendChild(t),e.appendChild(n),e}createTags(){var e,t;const n=document.createElement("p"),r=document.createElement("strong"),i=document.createTextNode(null!=(e=null==(t=this.node.attr("tags"))?void 0:t.join(", "))?e:"");return r.innerText="tags",n.appendChild(r),n.appendChild(document.createElement("br")),n.appendChild(i),n}createButtons(){const e=document.createElement("div"),t=document.createElement("button"),n=document.createElement("button");return e.classList.add("flex"),t.addEventListener("click",(()=>window.focusProject(this.node.attr("id")))),t.innerText="Focus",n.addEventListener("click",(()=>{window.excludeProject(this.node.attr("id"))})),n.innerText="Exclude",e.appendChild(t),e.appendChild(n),e}}let Ne;!function(e){e.blue="hsla(214, 62%, 21%, 1)",e.green="hsla(162, 47%, 50%, 1)",e.lightBlue="hsla(192, 75%, 59%, 1)",e.gray="hsla(0, 0%, 92%, 1)",e.darkGray="hsla(0, 0%, 72%, 1)",e.black="hsla(220, 9%, 46%, 1)",e.red="hsla(347, 92%, 65%, 1)",e.white="#fff"}(Ne||(Ne={}));const Ie=[{selector:"edge",style:{width:"1px","line-color":Ne.black,"curve-style":"unbundled-bezier","target-arrow-shape":"triangle","target-arrow-fill":"filled","target-arrow-color":Ne.black}},{selector:"edge.affected",style:{"line-color":Ne.red,"target-arrow-color":Ne.red,"curve-style":"unbundled-bezier"}},{selector:"edge.implicit",style:{label:"implicit","font-size":"16px","edge-text-rotation":"autorotate","curve-style":"unbundled-bezier"}},{selector:"edge.dynamic",style:{"line-dash-pattern":[5,5],"line-style":"dashed","curve-style":"unbundled-bezier"}}],Le=[{selector:"node",style:{"font-size":"32px","font-family":'system-ui, "Helvetica Neue", sans-serif',"border-style":"solid","border-color":Ne.darkGray,"border-width":"1px","text-halign":"center","text-valign":"center","padding-left":"16px",color:Ne.black,label:"data(id)",width:"label",backgroundColor:Ne.white,"transition-property":"background-color, border-color, line-color, target-arrow-color","transition-duration":250,"transition-timing-function":"ease-out"}},{selector:'node[type="app"]',style:{shape:"round-rectangle"}},{selector:'node[type="lib"]',style:{shape:"round-rectangle"}},{selector:'node[type="e2e"]',style:{shape:"round-rectangle"}},{selector:"node.focused",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.green}},{selector:"node.affected",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.red}},{selector:":parent",style:{"background-opacity":.5,"background-color":Ne.gray,"border-color":Ne.darkGray,label:"data(label)","text-halign":"center","text-valign":"top","font-weight":"bold","font-size":"48px"}},{selector:"node.highlight",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.blue}},{selector:"node.transparent:childless",style:{opacity:.5}},{selector:"node.transparent:parent",style:{"text-opacity":.5,"background-opacity":.25,"border-opacity":.5}},{selector:"edge.highlight",style:{"mid-target-arrow-color":Ne.blue}},{selector:"edge.transparent",style:{opacity:.2}}];class Ae{constructor(e){this.dep=e,this.affected=!1}getCytosacpeNodeDef(){var e;let t;return t={group:"edges",data:{id:`${this.dep.source}|${this.dep.target}`,source:this.dep.source,target:this.dep.target}},t.classes=null!=(e=this.dep.type)?e:"",this.affected&&(t.classes+=" affected"),t}}class ze{constructor(e){this.config=e}getCytoscapeNodeDef(){return{group:"nodes",data:{id:this.config.id,parent:this.config.parentId,label:this.config.label},selectable:!1,grabbable:!1,pannable:!0}}}class Re{constructor(e,t){this.project=e,this.workspaceRoot=t,this.affected=!1,this.focused=!1}getCytoscapeNodeDef(e){return{group:"nodes",data:this.getData(e),classes:this.getClasses(),selectable:!1,grabbable:!1,pannable:!0}}getData(e){return{id:this.project.name,type:this.project.type,tags:this.project.data.tags,parent:e&&this.project.data.hasOwnProperty("root")?this.getParentId():null}}getClasses(){var e;let t=null!=(e=this.project.type)?e:"";return this.focused&&(t+=" focused"),this.affected&&(t+=" affected"),t}getParentId(){const e=this.getAncestors();return e.length>0?e[e.length-1].id:null}getAncestors(){if(!this.project.data.root)return[];return Ce(this.project.data.root,this.workspaceRoot).map(((e,t,n)=>{const r=[...n].slice(0,t+1).join("/");return{label:r,id:`dir-${r}`,parentId:t>0?`dir-${[...n].slice(0,t).join("/")}`:null}}))}}class Fe{constructor(e){this.tooltipService=e,this.graph=void 0,this.openTooltip=null,this.affectedProjects=void 0,this.projectGraph=void 0,this.renderTimesSubject=new C,this.renderTimes$=this.renderTimesSubject.asObservable(),je.use(Te()),je.use(Oe())}render(e,t){const n=Date.now();this.tooltipService.hideAll(),this.generateCytoscapeLayout(e,t),this.listenForProjectNodeClicks(),this.listenForProjectNodeHovers();const r={renderTime:Date.now()-n,numNodes:this.graph.nodes().length,numEdges:this.graph.edges().length};this.renderTimesSubject.next(r)}generateCytoscapeLayout(e,t){const n=this.createElements(e,t);this.graph=je({container:document.getElementById("graph-container"),elements:[...n],layout:{name:"dagre",nodeDimensionsIncludeLabels:!0,rankSep:75,edgeSep:50,ranker:"network-simplex"},boxSelectionEnabled:!1,style:[...Le,...Ie]}),this.graph.on("zoom",(()=>{this.openTooltip&&(this.openTooltip.hide(),this.openTooltip=null)}))}createElements(e,t){let n=[];const r=e.map((e=>e.name)),i=[],o=[],a={};e.forEach((e=>{const n="app"===e.type||"e2e"===e.type?window.workspaceLayout.appsDir:window.workspaceLayout.libsDir,s=new Re(e,n);if(s.focused=e.name===window.focusedProject,s.affected=this.affectedProjects.includes(e.name),i.push(s),this.projectGraph.dependencies[e.name].forEach((e=>{if(r.includes(e.target)){const t=new Ae(e);t.affected=this.affectedProjects.includes(e.source)&&this.affectedProjects.includes(e.target),o.push(t)}})),t){s.getAncestors().forEach((e=>a[e.id]=e))}}));const s=i.map((e=>e.getCytoscapeNodeDef(t))),u=o.map((e=>e.getCytosacpeNodeDef()));if(n=s.concat(u),t){n=Object.keys(a).map((e=>new ze(a[e]).getCytoscapeNodeDef())).concat(n)}return n}listenForProjectNodeClicks(){this.graph.$("node:childless").on("click",(e=>{const t=e.target;let n=t.popperRef();const r=new Me(t).render();this.openTooltip=this.tooltipService.open(n,r)}))}listenForProjectNodeHovers(){this.graph.on("mouseover",(e=>{const t=e.target;t.isNode&&t.isNode()&&!t.isParent()&&(this.graph.elements().difference(t.outgoers().union(t.incomers())).not(t).addClass("transparent"),t.addClass("highlight").outgoers().union(t.incomers()).addClass("highlight"))})),this.graph.on("mouseout",(e=>{const t=e.target;t.isNode&&t.isNode()&&!t.isParent()&&(this.graph.elements().removeClass("transparent"),t.removeClass("highlight").outgoers().union(t.incomers()).removeClass("highlight"))}))}}const Ve={showDebugger:!1,projectGraphs:[],defaultProjectGraph:null,projectGraphService:null};var qe=n("1ajG"),Ye="tippy-content",Xe="tippy-backdrop",He="tippy-arrow",We="tippy-svg-arrow",Ge={passive:!0,capture:!0};function Ue(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function Ke(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function Qe(e,t){return"function"==typeof e?e.apply(void 0,t):e}function Ze(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function $e(e){return[].concat(e)}function Je(e,t){-1===e.indexOf(t)&&e.push(t)}function et(e){return e.split("-")[0]}function tt(e){return[].slice.call(e)}function nt(){return document.createElement("div")}function rt(e){return["Element","Fragment"].some((function(t){return Ke(e,t)}))}function it(e){return Ke(e,"MouseEvent")}function ot(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function at(e){return rt(e)?[e]:function(e){return Ke(e,"NodeList")}(e)?tt(e):Array.isArray(e)?e:tt(document.querySelectorAll(e))}function st(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function ut(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function lt(e){var t,n=$e(e)[0];return(null==n||null==(t=n.ownerDocument)?void 0:t.body)?n.ownerDocument:document}function ct(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}var dt={isTouch:!1},ht=0;function pt(){dt.isTouch||(dt.isTouch=!0,window.performance&&document.addEventListener("mousemove",ft))}function ft(){var e=performance.now();e-ht<20&&(dt.isTouch=!1,document.removeEventListener("mousemove",ft)),ht=e}function vt(){var e=document.activeElement;if(ot(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var gt="undefined"!=typeof window&&"undefined"!=typeof document?navigator.userAgent:"",yt=/MSIE |Trident\//.test(gt);var mt={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},bt=Object.assign({appendTo:function(){return document.body},aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},mt,{},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),xt=Object.keys(bt);function wt(e){var t=(e.plugins||[]).reduce((function(t,n){var r=n.name,i=n.defaultValue;return r&&(t[r]=void 0!==e[r]?e[r]:i),t}),{});return Object.assign({},e,{},t)}function Et(e,t){var n=Object.assign({},t,{content:Qe(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(wt(Object.assign({},bt,{plugins:t}))):xt).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(i){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},bt.aria,{},n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function kt(e,t){e.innerHTML=t}function Pt(e){var t=nt();return!0===e?t.className=He:(t.className=We,rt(e)?t.appendChild(e):kt(t,e)),t}function St(e,t){rt(t.content)?(kt(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?kt(e,t.content):e.textContent=t.content)}function Ct(e){var t=e.firstElementChild,n=tt(t.children);return{box:t,content:n.find((function(e){return e.classList.contains(Ye)})),arrow:n.find((function(e){return e.classList.contains(He)||e.classList.contains(We)})),backdrop:n.find((function(e){return e.classList.contains(Xe)}))}}function _t(e){var t=nt(),n=nt();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=nt();function i(n,r){var i=Ct(t),o=i.box,a=i.content,s=i.arrow;r.theme?o.setAttribute("data-theme",r.theme):o.removeAttribute("data-theme"),"string"==typeof r.animation?o.setAttribute("data-animation",r.animation):o.removeAttribute("data-animation"),r.inertia?o.setAttribute("data-inertia",""):o.removeAttribute("data-inertia"),o.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?o.setAttribute("role",r.role):o.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||St(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(o.removeChild(s),o.appendChild(Pt(r.arrow))):o.appendChild(Pt(r.arrow)):s&&o.removeChild(s)}return r.className=Ye,r.setAttribute("data-state","hidden"),St(r,e.props),t.appendChild(n),n.appendChild(r),i(e.props,e.props),{popper:t,onUpdate:i}}_t.$$tippy=!0;var jt=1,Dt=[],Tt=[];function Bt(e,t){var n,r,i,o,a,s,u,l,c,d=Et(e,Object.assign({},bt,{},wt((n=t,Object.keys(n).reduce((function(e,t){return void 0!==n[t]&&(e[t]=n[t]),e}),{}))))),h=!1,p=!1,f=!1,v=!1,g=[],y=Ze(U,d.interactiveDebounce),m=jt++,b=(c=d.plugins).filter((function(e,t){return c.indexOf(e)===t})),x={id:m,reference:e,popper:nt(),popperInstance:null,props:d,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:b,clearDelayTimeouts:function(){clearTimeout(r),clearTimeout(i),cancelAnimationFrame(o)},setProps:function(t){0;if(x.state.isDestroyed)return;N("onBeforeUpdate",[x,t]),W();var n=x.props,r=Et(e,Object.assign({},x.props,{},t,{ignoreAttributes:!0}));x.props=r,H(),n.interactiveDebounce!==r.interactiveDebounce&&(A(),y=Ze(U,r.interactiveDebounce));n.triggerTarget&&!r.triggerTarget?$e(n.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):r.triggerTarget&&e.removeAttribute("aria-expanded");L(),M(),k&&k(n,r);x.popperInstance&&($(),ee().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));N("onAfterUpdate",[x,t])},setContent:function(e){x.setProps({content:e})},show:function(){0;var e=x.state.isVisible,t=x.state.isDestroyed,n=!x.state.isEnabled,r=dt.isTouch&&!x.props.touch,i=Ue(x.props.duration,0,bt.duration);if(e||t||n||r)return;if(D().hasAttribute("disabled"))return;if(N("onShow",[x],!1),!1===x.props.onShow(x))return;x.state.isVisible=!0,j()&&(E.style.visibility="visible");M(),V(),x.state.isMounted||(E.style.transition="none");if(j()){var o=B(),a=o.box,s=o.content;st([a,s],0)}u=function(){var e;if(x.state.isVisible&&!v){if(v=!0,E.offsetHeight,E.style.transition=x.props.moveTransition,j()&&x.props.animation){var t=B(),n=t.box,r=t.content;st([n,r],i),ut([n,r],"visible")}I(),L(),Je(Tt,x),null==(e=x.popperInstance)||e.forceUpdate(),x.state.isMounted=!0,N("onMount",[x]),x.props.animation&&j()&&function(e,t){Y(e,t)}(i,(function(){x.state.isShown=!0,N("onShown",[x])}))}},function(){var e,t=x.props.appendTo,n=D();e=x.props.interactive&&t===bt.appendTo||"parent"===t?n.parentNode:Qe(t,[n]);e.contains(E)||e.appendChild(E);$(),!1}()},hide:function(){0;var e=!x.state.isVisible,t=x.state.isDestroyed,n=!x.state.isEnabled,r=Ue(x.props.duration,1,bt.duration);if(e||t||n)return;if(N("onHide",[x],!1),!1===x.props.onHide(x))return;x.state.isVisible=!1,x.state.isShown=!1,v=!1,h=!1,j()&&(E.style.visibility="hidden");if(A(),q(),M(),j()){var i=B(),o=i.box,a=i.content;x.props.animation&&(st([o,a],r),ut([o,a],"hidden"))}I(),L(),x.props.animation?j()&&function(e,t){Y(e,(function(){!x.state.isVisible&&E.parentNode&&E.parentNode.contains(E)&&t()}))}(r,x.unmount):x.unmount()},hideWithInteractivity:function(e){0;T().addEventListener("mousemove",y),Je(Dt,y),y(e)},enable:function(){x.state.isEnabled=!0},disable:function(){x.hide(),x.state.isEnabled=!1},unmount:function(){0;x.state.isVisible&&x.hide();if(!x.state.isMounted)return;J(),ee().forEach((function(e){e._tippy.unmount()})),E.parentNode&&E.parentNode.removeChild(E);Tt=Tt.filter((function(e){return e!==x})),x.state.isMounted=!1,N("onHidden",[x])},destroy:function(){0;if(x.state.isDestroyed)return;x.clearDelayTimeouts(),x.unmount(),W(),delete e._tippy,x.state.isDestroyed=!0,N("onDestroy",[x])}};if(!d.render)return x;var w=d.render(x),E=w.popper,k=w.onUpdate;E.setAttribute("data-tippy-root",""),E.id="tippy-"+x.id,x.popper=E,e._tippy=x,E._tippy=x;var P=b.map((function(e){return e.fn(x)})),S=e.hasAttribute("aria-expanded");return H(),L(),M(),N("onCreate",[x]),d.showOnCreate&&te(),E.addEventListener("mouseenter",(function(){x.props.interactive&&x.state.isVisible&&x.clearDelayTimeouts()})),E.addEventListener("mouseleave",(function(e){x.props.interactive&&x.props.trigger.indexOf("mouseenter")>=0&&(T().addEventListener("mousemove",y),y(e))})),x;function C(){var e=x.props.touch;return Array.isArray(e)?e:[e,0]}function _(){return"hold"===C()[0]}function j(){var e;return!!(null==(e=x.props.render)?void 0:e.$$tippy)}function D(){return l||e}function T(){var e=D().parentNode;return e?lt(e):document}function B(){return Ct(E)}function O(e){return x.state.isMounted&&!x.state.isVisible||dt.isTouch||a&&"focus"===a.type?0:Ue(x.props.delay,e?0:1,bt.delay)}function M(){E.style.pointerEvents=x.props.interactive&&x.state.isVisible?"":"none",E.style.zIndex=""+x.props.zIndex}function N(e,t,n){var r;(void 0===n&&(n=!0),P.forEach((function(n){n[e]&&n[e].apply(void 0,t)})),n)&&(r=x.props)[e].apply(r,t)}function I(){var t=x.props.aria;if(t.content){var n="aria-"+t.content,r=E.id;$e(x.props.triggerTarget||e).forEach((function(e){var t=e.getAttribute(n);if(x.state.isVisible)e.setAttribute(n,t?t+" "+r:r);else{var i=t&&t.replace(r,"").trim();i?e.setAttribute(n,i):e.removeAttribute(n)}}))}}function L(){!S&&x.props.aria.expanded&&$e(x.props.triggerTarget||e).forEach((function(e){x.props.interactive?e.setAttribute("aria-expanded",x.state.isVisible&&e===D()?"true":"false"):e.removeAttribute("aria-expanded")}))}function A(){T().removeEventListener("mousemove",y),Dt=Dt.filter((function(e){return e!==y}))}function z(e){if(!(dt.isTouch&&(f||"mousedown"===e.type)||x.props.interactive&&E.contains(e.target))){if(D().contains(e.target)){if(dt.isTouch)return;if(x.state.isVisible&&x.props.trigger.indexOf("click")>=0)return}else N("onClickOutside",[x,e]);!0===x.props.hideOnClick&&(x.clearDelayTimeouts(),x.hide(),p=!0,setTimeout((function(){p=!1})),x.state.isMounted||q())}}function R(){f=!0}function F(){f=!1}function V(){var e=T();e.addEventListener("mousedown",z,!0),e.addEventListener("touchend",z,Ge),e.addEventListener("touchstart",F,Ge),e.addEventListener("touchmove",R,Ge)}function q(){var e=T();e.removeEventListener("mousedown",z,!0),e.removeEventListener("touchend",z,Ge),e.removeEventListener("touchstart",F,Ge),e.removeEventListener("touchmove",R,Ge)}function Y(e,t){var n=B().box;function r(e){e.target===n&&(ct(n,"remove",r),t())}if(0===e)return t();ct(n,"remove",s),ct(n,"add",r),s=r}function X(t,n,r){void 0===r&&(r=!1),$e(x.props.triggerTarget||e).forEach((function(e){e.addEventListener(t,n,r),g.push({node:e,eventType:t,handler:n,options:r})}))}function H(){var e;_()&&(X("touchstart",G,{passive:!0}),X("touchend",K,{passive:!0})),(e=x.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(X(e,G),e){case"mouseenter":X("mouseleave",K);break;case"focus":X(yt?"focusout":"blur",Q);break;case"focusin":X("focusout",Q)}}))}function W(){g.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,i=e.options;t.removeEventListener(n,r,i)})),g=[]}function G(e){var t,n=!1;if(x.state.isEnabled&&!Z(e)&&!p){var r="focus"===(null==(t=a)?void 0:t.type);a=e,l=e.currentTarget,L(),!x.state.isVisible&&it(e)&&Dt.forEach((function(t){return t(e)})),"click"===e.type&&(x.props.trigger.indexOf("mouseenter")<0||h)&&!1!==x.props.hideOnClick&&x.state.isVisible?n=!0:te(e),"click"===e.type&&(h=!n),n&&!r&&ne(e)}}function U(e){var t=e.target,n=D().contains(t)||E.contains(t);if("mousemove"!==e.type||!n){var r=ee().concat(E).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:d}:null})).filter(Boolean);(function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,i=e.popperState,o=e.props.interactiveBorder,a=et(i.placement),s=i.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,l="top"===a?s.bottom.y:0,c="right"===a?s.left.x:0,d="left"===a?s.right.x:0,h=t.top-r+u>o,p=r-t.bottom-l>o,f=t.left-n+c>o,v=n-t.right-d>o;return h||p||f||v}))})(r,e)&&(A(),ne(e))}}function K(e){Z(e)||x.props.trigger.indexOf("click")>=0&&h||(x.props.interactive?x.hideWithInteractivity(e):ne(e))}function Q(e){x.props.trigger.indexOf("focusin")<0&&e.target!==D()||x.props.interactive&&e.relatedTarget&&E.contains(e.relatedTarget)||ne(e)}function Z(e){return!!dt.isTouch&&_()!==e.type.indexOf("touch")>=0}function $(){J();var t=x.props,n=t.popperOptions,r=t.placement,i=t.offset,o=t.getReferenceClientRect,a=t.moveTransition,s=j()?Ct(E).arrow:null,l=o?{getBoundingClientRect:o,contextElement:o.contextElement||D()}:e,c={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(j()){var n=B().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}},d=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!a}},c];j()&&s&&d.push({name:"arrow",options:{element:s,padding:3}}),d.push.apply(d,(null==n?void 0:n.modifiers)||[]),x.popperInstance=(0,qe.createPopper)(l,E,Object.assign({},n,{placement:r,onFirstUpdate:u,modifiers:d}))}function J(){x.popperInstance&&(x.popperInstance.destroy(),x.popperInstance=null)}function ee(){return tt(E.querySelectorAll("[data-tippy-root]"))}function te(e){x.clearDelayTimeouts(),e&&N("onTrigger",[x,e]),V();var t=O(!0),n=C(),i=n[0],o=n[1];dt.isTouch&&"hold"===i&&o&&(t=o),t?r=setTimeout((function(){x.show()}),t):x.show()}function ne(e){if(x.clearDelayTimeouts(),N("onUntrigger",[x,e]),x.state.isVisible){if(!(x.props.trigger.indexOf("mouseenter")>=0&&x.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&h)){var t=O(!1);t?i=setTimeout((function(){x.state.isVisible&&x.hide()}),t):o=requestAnimationFrame((function(){x.hide()}))}}else q()}}function Ot(e,t){void 0===t&&(t={});var n=bt.plugins.concat(t.plugins||[]);document.addEventListener("touchstart",pt,Ge),window.addEventListener("blur",vt);var r=Object.assign({},t,{plugins:n}),i=at(e).reduce((function(e,t){var n=t&&Bt(t,r);return n&&e.push(n),e}),[]);return rt(e)?i[0]:i}Ot.defaultProps=bt,Ot.setDefaultProps=function(e){Object.keys(e).forEach((function(t){bt[t]=e[t]}))},Ot.currentInput=dt;Object.assign({},qe.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}});Ot.setDefaultProps({render:_t});const Mt=Ot;class Nt{open(e,t){let n=Mt(document.createElement("div"),{trigger:"manual",theme:"nx",interactive:!0,appendTo:document.body,content:t,getReferenceClientRect:e.getBoundingClientRect});return n.show(),n}hideAll(){var e,t,n,r;n=(t=void 0===e?{}:e).exclude,r=t.duration,Tt.forEach((function(e){var t=!1;if(n&&(t=ot(n)?e.reference===n:e.popper===n.popper),!t){var i=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:i})}}))}}class It{constructor(e=!1,t=!1){var n,r;this.showAffected=!1,this.groupByFolder=!1,this.selectAffectedSubject=new C,this.selectAllSubject=new C,this.deselectAllSubject=new C,this.groupByFolderSubject=new C,this.searchByDepthSubject=new j(1),this.searchByDepthEnabledSubject=new j(!1),this.searchDepthChangesSubject=new C,this.selectAffected$=this.selectAffectedSubject.asObservable(),this.selectAll$=this.selectAllSubject.asObservable(),this.deselectAll$=this.deselectAllSubject.asObservable(),this.groupByFolder$=this.groupByFolderSubject.asObservable(),this.searchDepth$=$([this.searchByDepthSubject,this.searchByDepthEnabledSubject]).pipe(F((([e,t])=>t?e:-1)),(function(e){return e.lift(new ye(n,r))})),this.searchDepthDisplay=void 0,this.showAffected=e,this.groupByFolder=t,this.searchDepthChangesSubject.pipe(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){var n;"function"==typeof e[e.length-1]&&(n=e.pop());var r=e;return t.lift(new Ee(r,n))}}(this.searchByDepthSubject)).subscribe((([e,t])=>{"decrement"===e&&t>1?this.searchByDepthSubject.next(t-1):"increment"===e&&this.searchByDepthSubject.next(t+1)})),this.searchByDepthSubject.subscribe((e=>{this.searchDepthDisplay&&(this.searchDepthDisplay.innerText=e.toString())}))}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div>\n <div class="mt-8 px-4">\n <button type="button" class="w-full flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50" data-cy="selectAllButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-gray-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" />\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z" />\n </svg>\n Show all projects\n </button>\n <button type="button" class="mt-3 w-full flex items-center px-4 py-2 border border-red-300 rounded-md shadow-sm text-sm font-medium text-red-500 bg-white hover:bg-red-50 hidden" data-cy="affectedButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-red-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z" />\n </svg>\n Show affected projects\n </button>\n <button type="button" class="mt-3 w-full flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50" data-cy="deselectAllButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-gray-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l3.59 3.59m0 0A9.953 9.953 0 0112 5c4.478 0 8.268 2.943 9.543 7a10.025 10.025 0 01-4.132 5.411m0 0L21 21" />\n </svg>\n Hide all projects\n </button>\n </div>\n \n <div class="mt-8 px-4">\n <div class="flex items-start">\n <div class="flex items-center h-5">\n <input id="displayOptions" name="displayOptions" value="groupByFolder" type="checkbox" class="h-4 w-4 border-gray-300 rounded">\n </div>\n <div class="ml-3 text-sm">\n <label for="displayOptions" class="cursor-pointer font-medium text-gray-700">Group by folder</label>\n <p class="text-gray-500">Visually arrange libraries by folders with different colors.</p>\n </div>\n </div>\n </div>\n \n <div class="mt-4 px-4">\n <div class="mt-4 flex items-start">\n <div class="flex items-center h-5">\n <input id="depthFilter" name="depthFilter" value="groupByFolder" type="checkbox" class="h-4 w-4 border-gray-300 rounded">\n </div>\n <div class="ml-3 text-sm">\n <label for="depthFilter" class="cursor-pointer font-medium text-gray-700">Activate proximity</label>\n <p class="text-gray-500">Explore connected libraries step by step.</p>\n </div>\n </div>\n <div class="mt-3 px-10">\n <div class="flex rounded-md shadow-sm text-gray-500">\n <button id="depthFilterDecrement" title="Remove ancestor level" class="inline-flex items-center py-2 px-4 rounded-l-md border border-gray-300 bg-gray-50 text-gray-500 hover:bg-gray-100">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20 12H4" />\n </svg>\n </button>\n <span id="depthFilterValue" class="p-1.5 bg-white flex-1 block w-full rounded-none border-t border-b border-gray-300 text-center font-mono">1</span>\n <button id="depthFilterIncrement" title="Add ancestor level" class="inline-flex items-center py-2 px-4 rounded-r-md border border-gray-300 bg-gray-50 text-gray-500 hover:bg-gray-100">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 6v6m0 0v6m0-6h6m-6 0H6" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}render(e){Pe(e);const t=It.renderHtmlTemplate(),n=t.querySelector('[data-cy="affectedButton"]');this.showAffected&&(n.classList.remove("hidden"),n.addEventListener("click",(()=>this.selectAffectedSubject.next())));t.querySelector('[data-cy="selectAllButton"]').addEventListener("click",(()=>{this.selectAllSubject.next()}));t.querySelector('[data-cy="deselectAllButton"]').addEventListener("click",(()=>{this.deselectAllSubject.next()}));const r=t.querySelector("#displayOptions");r.checked=this.groupByFolder,r.addEventListener("change",(e=>this.groupByFolderSubject.next(e.target.checked))),this.searchDepthDisplay=t.querySelector("#depthFilterValue");const i=t.querySelector("#depthFilterIncrement"),o=t.querySelector("#depthFilterDecrement"),a=t.querySelector("#depthFilter");i.addEventListener("click",(()=>{this.searchDepthChangesSubject.next("increment")})),o.addEventListener("click",(()=>{this.searchDepthChangesSubject.next("decrement")})),a.addEventListener("change",(e=>this.searchByDepthEnabledSubject.next(e.target.checked))),e.appendChild(t)}}class Lt{set projectName(e){this.render(e)}constructor(e){this.container=e,this.unfocusSubject=new C,this.unfocus$=this.unfocusSubject.asObservable(),this.render()}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div class="mt-10 px-4">\n <div class="p-2 shadow-sm bg-green-nx-base text-gray-50 border border-gray-200 rounded-md flex items-center group relative cursor-pointer overflow-hidden" data-cy="unfocusButton">\n <p class="truncate transition duration-200 ease-in-out group-hover:opacity-60">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 inline -mt-1 mr-1" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 9l3 3m0 0l-3 3m3-3H8m13 0a9 9 0 11-18 0 9 9 0 0118 0z" />\n </svg>\n <span id="focused-project-name">e2e-some-other-very-long-project-name</span>\n </p>\n <div class="absolute right-2 flex transition-all translate-x-32 transition duration-200 ease-in-out group-hover:translate-x-0 pl-2 rounded-md text-gray-700 items-center text-sm font-medium bg-white shadow-sm ring-1 ring-gray-500">\n Reset\n <span class="p-1 rounded-md">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" />\n </svg>\n </span>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}unfocusProject(){this.render()}render(e){Pe(this.container);const t=Lt.renderHtmlTemplate(),n=t.querySelector("#focused-project-name"),r=t.querySelector('[data-cy="unfocusButton"]');e&&""!==e?(n.innerText=`Focused on ${e}`,this.container.hidden=!1):this.container.hidden=!0,r.addEventListener("click",(()=>this.unfocusSubject.next())),this.container.appendChild(t)}}class At{set projects(e){this._projects=e;const t=Object.values(this.selectedItems).filter((e=>"true"===e.dataset.active)).map((e=>e.dataset.project));this.render(),this.selectProjects(t)}get projects(){return this._projects}constructor(e){this.container=e,this.focusProjectSubject=new C,this.checkedProjectsChangeSubject=new C,this.selectedItems={},this.checkedProjectsChange$=this.checkedProjectsChangeSubject.asObservable(),this.focusProject$=this.focusProjectSubject.asObservable(),this._projects=[],this.render()}static renderHtmlItemTemplate(){const e=document.createElement("template");return e.innerHTML='\n <li class="text-xs text-gray-600 block cursor-default select-none relative py-1 pl-3 pr-9">\n <div class="flex items-center">\n <button type="button" class="flex rounded-md" title="Focus on this library">\n <span class="p-1 rounded-md flex items-center font-medium bg-white transition hover:bg-gray-50 shadow-sm ring-1 ring-gray-200">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" viewBox="0 0 20 20" fill="currentColor">\n <path d="M4 4a2 2 0 012-2h4.586A2 2 0 0112 2.586L15.414 6A2 2 0 0116 7.414V16a2 2 0 01-2 2h-1.528A6 6 0 004 9.528V4z" />\n <path fill-rule="evenodd" d="M8 10a4 4 0 00-3.446 6.032l-1.261 1.26a1 1 0 101.414 1.415l1.261-1.261A4 4 0 108 10zm-2 4a2 2 0 114 0 2 2 0 01-4 0z" clip-rule="evenodd" />\n </svg>\n </span>\n </button>\n <label class="font-mono font-normal ml-3 p-2 transition hover:bg-gray-50 cursor-pointer block rounded-md truncate w-full" data-project="project-name" data-active="false">\n project-name\n </label>\n </div>\n <span role="selection-icon" title="This library is visible" class="text-green-nx-base absolute inset-y-0 right-0 flex items-center cursor-pointer">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" />\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z" />\n </svg>\n </span>\n </li>\n '.trim(),e.content.firstChild}selectProjects(e){e.forEach((e=>{this.selectedItems[e]&&(this.selectedItems[e].dataset.active="true",this.selectedItems[e].dispatchEvent(new CustomEvent("change")))})),this.emitChanges()}setCheckedProjects(e){Object.keys(this.selectedItems).forEach((t=>{this.selectedItems[t].dataset.active=e.includes(t).toString(),this.selectedItems[t].dispatchEvent(new CustomEvent("change"))}))}checkAllProjects(){Object.values(this.selectedItems).forEach((e=>{e.dataset.active="true",e.dispatchEvent(new CustomEvent("change"))}))}uncheckAllProjects(){Object.values(this.selectedItems).forEach((e=>{e.dataset.active="false",e.dispatchEvent(new CustomEvent("change"))}))}uncheckProject(e){this.selectedItems[e].dataset.active="false",this.selectedItems[e].dispatchEvent(new CustomEvent("change"))}emitChanges(){const e=Object.values(this.selectedItems).filter((e=>"true"===e.dataset.active)).map((e=>e.dataset.project));this.checkedProjectsChangeSubject.next(e)}render(){Pe(this.container);const e=this.getProjectsByType("app"),t=this.getProjectsByType("lib"),n=this.getProjectsByType("e2e"),r=this.groupProjectsByDirectory(e),i=this.groupProjectsByDirectory(t),o=this.groupProjectsByDirectory(n),a=Object.keys(r).sort(),s=Object.keys(i).sort(),u=Object.keys(o).sort(),l=document.createElement("h2");l.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",l.textContent="App projects",this.container.append(l),a.forEach((e=>{this.createProjectList(e,r[e])}));const c=document.createElement("h2");c.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",c.textContent="E2E projects",this.container.append(c),u.forEach((e=>{this.createProjectList(e,o[e])}));const d=document.createElement("h2");d.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",d.textContent="Lib projects",this.container.append(d),s.forEach((e=>{this.createProjectList(e,i[e])}))}getProjectsByType(e){return this.projects.filter((t=>t.type===e)).sort(((e,t)=>e.name.localeCompare(t.name)))}groupProjectsByDirectory(e){let t={};return e.forEach((e=>{const n="app"===e.type||"e2e"===e.type?window.workspaceLayout.appsDir:window.workspaceLayout.libsDir,r=Ce(e.data.root,n).join("/");t.hasOwnProperty(r)||(t[r]=[]),t[r].push(e)})),t}createProjectList(e,t){const n=document.createElement("h3");n.className="mt-4 py-2 uppercase tracking-wide font-semibold text-sm lg:text-xs text-gray-900 cursor-text",n.textContent=e;const r=document.createElement("ul");r.className="mt-2 -ml-3",[...t].sort(((e,t)=>e.name.localeCompare(t.name))),t.forEach((e=>{const t=At.renderHtmlItemTemplate(),n=t.querySelector('span[role="selection-icon"]');t.querySelector("button").addEventListener("click",(()=>this.focusProjectSubject.next(e.name)));const i=t.querySelector("label");i.innerText=e.name,i.dataset.project=e.name,i.dataset.active="false",n.classList.add("hidden"),i.addEventListener("click",(e=>{const t=e.target;t.dataset.active="false"===t.dataset.active?"true":"false",t.dispatchEvent(new CustomEvent("change")),this.emitChanges()})),i.addEventListener("change",(e=>{"false"===e.target.dataset.active?n.classList.add("hidden"):n.classList.remove("hidden")})),n.addEventListener("click",(()=>{i.dispatchEvent(new Event("click"))})),this.selectedItems[e.name]=i,r.append(t)})),this.container.append(n),this.container.append(r)}}class zt{constructor(e){this.container=e,this.textInput=void 0,this.includeInPathCheckbox=void 0,this.changesSubject=new C,this.subscriptions=[],this.changes$=this.changesSubject.asObservable(),this.subscriptions.map((e=>e.unsubscribe())),this.render()}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div>\n <div class="mt-10 px-4">\n <form class="flex rounded-md shadow-sm relative" onSubmit="return false">\n <span class="inline-flex items-center p-2 rounded-l-md border border-r-0 border-gray-300 bg-gray-50 text-gray-500">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z" />\n </svg>\n </span>\n <input type="text" class="p-1.5 bg-white text-gray-600 flex-1 block w-full rounded-none rounded-r-md border border-gray-300" placeholder="lib name, other lib name" data-cy="textFilterInput" name="filter">\n <button id="textFilterReset" type="reset" class="p-1 top-1 right-1 absolute bg-white inline-block rounded-md text-gray-500">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2M3 12l6.414 6.414a2 2 0 001.414.586H19a2 2 0 002-2V7a2 2 0 00-2-2h-8.172a2 2 0 00-1.414.586L3 12z" />\n </svg>\n </button>\n </form>\n </div>\n <div class="mt-4 px-4">\n <div class="flex items-start">\n <div class="flex items-center h-5">\n <input id="includeInPath" name="textFilterCheckbox" type="checkbox" value="includeInPath" class="h-4 w-4 border-gray-300 rounded" disabled>\n </div>\n <div class="ml-3 text-sm">\n <label for="includeInPath" class="font-medium text-gray-700 cursor-pointer">Include related libraries</label>\n <p class="text-gray-500">Show libraries that are related to your search.</p>\n </div>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}emitChanges(){this.changesSubject.next({text:this.textInput.value.toLowerCase(),includeInPath:this.includeInPathCheckbox.checked})}render(){Pe(this.container);const e=zt.renderHtmlTemplate(),t=e.querySelector("#textFilterReset");var n,r,i,o;t.classList.add("hidden"),this.textInput=e.querySelector('input[type="text"]'),this.textInput.addEventListener("keyup",(e=>{"Enter"===e.key&&this.emitChanges(),this.textInput.value.length?(t.classList.remove("hidden"),this.includeInPathCheckbox.disabled=!1):(t.classList.add("hidden"),this.includeInPathCheckbox.disabled=!0)})),this.subscriptions.push(ce(this.textInput,"keyup").pipe((i=e=>"Enter"!==e.key,function(e){return e.lift(new he(i,o))}),(n=500,void 0===r&&(r=R),function(e){return e.lift(new fe(n,r))}),F((()=>this.emitChanges()))).subscribe()),this.includeInPathCheckbox=e.querySelector("#includeInPath"),this.includeInPathCheckbox.addEventListener("change",(()=>this.emitChanges())),t.addEventListener("click",(()=>{this.textInput.value="",this.includeInPathCheckbox.checked=!1,this.includeInPathCheckbox.disabled=!0,t.classList.add("hidden"),this.emitChanges()})),this.container.appendChild(e)}}class Rt{set projects(e){this.projectList.projects=e,this.focusedProjectPanel.unfocusProject()}constructor(e){this.affectedProjects=e,this.selectedProjectsChangedSubject=new j([]),this.groupByFolderChangedSubject=new j(window.groupByFolder),this.focusProjectSubject=new C,this.filterByTextSubject=new C,this.selectedProjectsChanged$=this.selectedProjectsChangedSubject.asObservable(),this.groupByFolderChanged$=this.groupByFolderChangedSubject.asObservable(),this.displayOptionsPanel=void 0,this.focusedProjectPanel=void 0,this.textFilterPanel=void 0,this.projectList=void 0,this.groupByFolder=window.groupByFolder,this.selectedProjects=[];const t=this.affectedProjects.length>0,n=document.getElementById("display-options-panel");this.displayOptionsPanel=new It(t,this.groupByFolder),this.displayOptionsPanel.render(n);const r=document.getElementById("focused-project");this.focusedProjectPanel=new Lt(r);const i=document.getElementById("text-filter-panel");this.textFilterPanel=new zt(i);const o=document.getElementById("project-lists");this.projectList=new At(o),this.projectList.projects=window.projects,t&&this.selectAffectedProjects(),window.focusProject=e=>{this.focusProjectSubject.next(e)},window.excludeProject=e=>{this.excludeProject(e)},this.listenForDOMEvents(),null!==window.focusedProject&&this.focusProject(window.focusedProject),window.exclude.length>0&&window.exclude.forEach((e=>this.excludeProject(e)))}selectProjects(e){this.projectList.selectProjects(e)}resetSidebarVisibility(){const e=document.getElementById("sidebar");e.classList.contains("hidden")&&(e.classList.remove("hidden"),e.style.marginLeft="0px")}listenForDOMEvents(){this.displayOptionsPanel.selectAll$.subscribe((()=>{this.selectAllProjects()})),this.displayOptionsPanel.deselectAll$.subscribe((()=>{this.deselectAllProjects()})),this.displayOptionsPanel.selectAffected$.subscribe((()=>{this.selectAffectedProjects()})),this.displayOptionsPanel.groupByFolder$.subscribe((e=>{this.groupByFolderChangedSubject.next(e)})),this.focusedProjectPanel.unfocus$.subscribe((()=>{this.unfocusProject()})),this.textFilterPanel.changes$.subscribe((e=>{this.filterByTextSubject.next(e)})),$([this.filterByTextSubject,this.displayOptionsPanel.searchDepth$]).subscribe((([e,t])=>{e.text&&e.text.length?this.filterProjectsByText(e.text,e.includeInPath,t):this.deselectAllProjects()})),this.projectList.checkedProjectsChange$.subscribe((e=>{this.emitSelectedProjects(e)})),this.projectList.focusProject$.subscribe((e=>{this.focusProjectSubject.next(e)})),$([this.focusProjectSubject,this.displayOptionsPanel.searchDepth$]).subscribe((([e,t])=>{e&&this.focusProject(e,t)}))}setFocusedProject(e=null){window.focusedProject=e,this.focusedProjectPanel.projectName=e?window.graph.nodes[e].name:null}selectAffectedProjects(){this.setFocusedProject(null),this.projectList.setCheckedProjects(this.affectedProjects),this.emitSelectedProjects(this.affectedProjects)}selectAllProjects(){this.setFocusedProject(null),this.projectList.checkAllProjects(),this.emitSelectedProjects(window.projects.map((e=>e.name)))}deselectAllProjects(){this.setFocusedProject(null),this.projectList.uncheckAllProjects(),this.emitSelectedProjects([])}focusProject(e,t=-1){this.filterByTextSubject.next({text:null,includeInPath:!1}),this.setFocusedProject(e);const n=window.projects.map((e=>e.name)).filter((n=>this.hasPath(e,n,[],1,t)||this.hasPath(n,e,[],1,t)));this.projectList.setCheckedProjects(n),this.emitSelectedProjects(n)}unfocusProject(){this.focusProjectSubject.next(null),this.setFocusedProject(null),this.projectList.uncheckAllProjects(),this.emitSelectedProjects([])}excludeProject(e){const t=[...this.selectedProjects];t.splice(this.selectedProjects.indexOf(e),1),this.projectList.uncheckProject(e),this.emitSelectedProjects(t)}emitSelectedProjects(e){this.selectedProjects=e,this.selectedProjectsChangedSubject.next(e)}filterProjectsByText(e,t,n){this.focusProjectSubject.next(null),this.setFocusedProject(null),this.projectList.uncheckAllProjects();const r=e.split(",").map((e=>e.trim())),i=new Set;window.projects.map((e=>e.name)).forEach((e=>{r.findIndex((t=>e.includes(t)))>-1&&(i.add(e),t&&window.projects.map((e=>e.name)).forEach((t=>{(this.hasPath(e,t,[],1,n)||this.hasPath(t,e,[],1,n))&&i.add(t)})))}));const o=Array.from(i);this.projectList.setCheckedProjects(o),this.emitSelectedProjects(o)}hasPath(e,t,n,r,i=-1){if(e===t)return!0;if(-1===i||r<=i)for(let o of window.graph.dependencies[t]||[])if(!(n.indexOf(o.target)>-1)&&(n.push(o.target),this.hasPath(e,o.target,n,r+1,i)))return!0;return!1}}class Ft{constructor(e=Ve){this.config=e,this.sidebar=void 0,this.tooltipService=new Nt,this.graph=new Fe(this.tooltipService),this.debuggerPanel=void 0,this.windowResize$=ce(window,"resize").pipe(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=e[e.length-1];return M(n)?(e.pop(),function(t){return le(e,t,n)}):function(t){return le(e,t)}}({})),this.render$=new C,this.render$.subscribe((e=>this.render(e))),this.loadProjectGraph(e.defaultProjectGraph),!0===window.watch&&setInterval((()=>this.loadProjectGraph(e.defaultProjectGraph)),5e3)}async loadProjectGraph(e){const t=this.config.projectGraphs.find((t=>t.id===e)),n=await this.config.projectGraphService.getProjectGraph(t.url),r=null==n?void 0:n.layout,i=Object.values(n.projects).reduce(((e,t)=>(e[t.name]=t,e)),{}),o=window.graph?n.changes.added.filter((e=>!window.graph.nodes[e])):n.changes.added;window.projects=n.projects,window.graph={dependencies:n.dependencies,nodes:i},window.focusedProject=null,window.projectGraphList=this.config.projectGraphs,window.selectedProjectGraph=e,window.workspaceLayout=r,this.sidebar?this.render$.next({newProjects:o}):this.render$.next()}render(e){const t=document.getElementById("debugger-panel");this.config.showDebugger&&(t.hidden=!1,t.style.display="flex",this.debuggerPanel=new _e(t,window.projectGraphList),this.debuggerPanel.selectProject$.subscribe((e=>{this.loadProjectGraph(e),this.sidebar.resetSidebarVisibility()}))),this.graph.projectGraph=window.graph;const n=window.affected;this.graph.affectedProjects=n,this.sidebar?(this.sidebar.projects=window.projects,(null==e?void 0:e.newProjects.length)>0&&this.sidebar.selectProjects(e.newProjects)):this.sidebar=new Rt(n),$([this.sidebar.selectedProjectsChanged$,this.sidebar.groupByFolderChanged$,this.windowResize$]).pipe(be(this.render$)).subscribe((([e,t])=>{const n=[];e.forEach((e=>{window.graph.nodes[e]&&n.push(window.graph.nodes[e])})),0===n.length?document.getElementById("no-projects-chosen").style.display="flex":(document.getElementById("no-projects-chosen").style.display="none",this.graph.render(n,t))})),this.debuggerPanel&&this.graph.renderTimes$.pipe(be(this.render$)).subscribe((e=>this.debuggerPanel.renderTime=e))}}class Vt{async getHash(){return new Promise((e=>e("some-hash")))}async getProjectGraph(e){return new Promise((e=>e(window.projectGraphResponse)))}}const qt={environment:"release",appConfig:{showDebugger:!1,projectGraphs:[{id:"local",label:"local",url:"projectGraph.json"}],defaultProjectGraph:"local",projectGraphService:new class{async getHash(){const e=new Request("currentHash",{mode:"no-cors"});return(await fetch(e)).json()}async getProjectGraph(e){const t=new Request(e,{mode:"no-cors"});return(await fetch(t)).json()}}}};"dev-watch"===qt.environment&&(window.watch=!0),"release"===qt.environment&&"build"===window.localMode&&(qt.appConfig.projectGraphService=new Vt),setTimeout((()=>new Ft(qt.appConfig)))},"1ajG":(e,t,n)=>{"use strict";n.r(t),n.d(t,{afterMain:()=>E,afterRead:()=>b,afterWrite:()=>S,applyStyles:()=>O,arrow:()=>Q,auto:()=>s,basePlacements:()=>u,beforeMain:()=>x,beforeRead:()=>y,beforeWrite:()=>k,bottom:()=>i,clippingParents:()=>d,computeStyles:()=>J,createPopper:()=>Be,createPopperBase:()=>De,createPopperLite:()=>Te,detectOverflow:()=>ge,end:()=>c,eventListeners:()=>te,flip:()=>ye,hide:()=>xe,left:()=>a,main:()=>w,modifierPhases:()=>C,offset:()=>we,placements:()=>g,popper:()=>p,popperGenerator:()=>je,popperOffsets:()=>Ee,preventOverflow:()=>ke,read:()=>m,reference:()=>f,right:()=>o,start:()=>l,top:()=>r,variationPlacements:()=>v,viewport:()=>h,write:()=>P});var r="top",i="bottom",o="right",a="left",s="auto",u=[r,i,o,a],l="start",c="end",d="clippingParents",h="viewport",p="popper",f="reference",v=u.reduce((function(e,t){return e.concat([t+"-"+l,t+"-"+c])}),[]),g=[].concat(u,[s]).reduce((function(e,t){return e.concat([t,t+"-"+l,t+"-"+c])}),[]),y="beforeRead",m="read",b="afterRead",x="beforeMain",w="main",E="afterMain",k="beforeWrite",P="write",S="afterWrite",C=[y,m,b,x,w,E,k,P,S];function _(e){return e?(e.nodeName||"").toLowerCase():null}function j(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function D(e){return e instanceof j(e).Element||e instanceof Element}function T(e){return e instanceof j(e).HTMLElement||e instanceof HTMLElement}function B(e){return"undefined"!=typeof ShadowRoot&&(e instanceof j(e).ShadowRoot||e instanceof ShadowRoot)}const O={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];T(i)&&_(i)&&(Object.assign(i.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});T(r)&&_(r)&&(Object.assign(r.style,o),Object.keys(i).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};function M(e){return e.split("-")[0]}function N(e){var t=e.getBoundingClientRect();return{width:t.width,height:t.height,top:t.top,right:t.right,bottom:t.bottom,left:t.left,x:t.left,y:t.top}}function I(e){var t=N(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function L(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&B(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function A(e){return j(e).getComputedStyle(e)}function z(e){return["table","td","th"].indexOf(_(e))>=0}function R(e){return((D(e)?e.ownerDocument:e.document)||window.document).documentElement}function F(e){return"html"===_(e)?e:e.assignedSlot||e.parentNode||(B(e)?e.host:null)||R(e)}function V(e){return T(e)&&"fixed"!==A(e).position?e.offsetParent:null}function q(e){for(var t=j(e),n=V(e);n&&z(n)&&"static"===A(n).position;)n=V(n);return n&&("html"===_(n)||"body"===_(n)&&"static"===A(n).position)?t:n||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&T(e)&&"fixed"===A(e).position)return null;for(var n=F(e);T(n)&&["html","body"].indexOf(_(n))<0;){var r=A(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}function Y(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var X=Math.max,H=Math.min,W=Math.round;function G(e,t,n){return X(e,H(t,n))}function U(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function K(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}const Q={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,s=e.name,l=e.options,c=n.elements.arrow,d=n.modifiersData.popperOffsets,h=M(n.placement),p=Y(h),f=[a,o].indexOf(h)>=0?"height":"width";if(c&&d){var v=function(e,t){return U("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:K(e,u))}(l.padding,n),g=I(c),y="y"===p?r:a,m="y"===p?i:o,b=n.rects.reference[f]+n.rects.reference[p]-d[p]-n.rects.popper[f],x=d[p]-n.rects.reference[p],w=q(c),E=w?"y"===p?w.clientHeight||0:w.clientWidth||0:0,k=b/2-x/2,P=v[y],S=E-g[f]-v[m],C=E/2-g[f]/2+k,_=G(P,C,S),j=p;n.modifiersData[s]=((t={})[j]=_,t.centerOffset=_-C,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&L(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};var Z={top:"auto",right:"auto",bottom:"auto",left:"auto"};function $(e){var t,n=e.popper,s=e.popperRect,u=e.placement,l=e.offsets,c=e.position,d=e.gpuAcceleration,h=e.adaptive,p=e.roundOffsets,f=!0===p?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:W(W(t*r)/r)||0,y:W(W(n*r)/r)||0}}(l):"function"==typeof p?p(l):l,v=f.x,g=void 0===v?0:v,y=f.y,m=void 0===y?0:y,b=l.hasOwnProperty("x"),x=l.hasOwnProperty("y"),w=a,E=r,k=window;if(h){var P=q(n),S="clientHeight",C="clientWidth";P===j(n)&&"static"!==A(P=R(n)).position&&(S="scrollHeight",C="scrollWidth"),P=P,u===r&&(E=i,m-=P[S]-s.height,m*=d?1:-1),u===a&&(w=o,g-=P[C]-s.width,g*=d?1:-1)}var _,D=Object.assign({position:c},h&&Z);return d?Object.assign({},D,((_={})[E]=x?"0":"",_[w]=b?"0":"",_.transform=(k.devicePixelRatio||1)<2?"translate("+g+"px, "+m+"px)":"translate3d("+g+"px, "+m+"px, 0)",_)):Object.assign({},D,((t={})[E]=x?m+"px":"",t[w]=b?g+"px":"",t.transform="",t))}const J={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=void 0===r||r,o=n.adaptive,a=void 0===o||o,s=n.roundOffsets,u=void 0===s||s,l={placement:M(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,$(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:u})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,$(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var ee={passive:!0};const te={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,o=void 0===i||i,a=r.resize,s=void 0===a||a,u=j(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&l.forEach((function(e){e.addEventListener("scroll",n.update,ee)})),s&&u.addEventListener("resize",n.update,ee),function(){o&&l.forEach((function(e){e.removeEventListener("scroll",n.update,ee)})),s&&u.removeEventListener("resize",n.update,ee)}},data:{}};var ne={left:"right",right:"left",bottom:"top",top:"bottom"};function re(e){return e.replace(/left|right|bottom|top/g,(function(e){return ne[e]}))}var ie={start:"end",end:"start"};function oe(e){return e.replace(/start|end/g,(function(e){return ie[e]}))}function ae(e){var t=j(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function se(e){return N(R(e)).left+ae(e).scrollLeft}function ue(e){var t=A(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function le(e){return["html","body","#document"].indexOf(_(e))>=0?e.ownerDocument.body:T(e)&&ue(e)?e:le(F(e))}function ce(e,t){var n;void 0===t&&(t=[]);var r=le(e),i=r===(null==(n=e.ownerDocument)?void 0:n.body),o=j(r),a=i?[o].concat(o.visualViewport||[],ue(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(ce(F(a)))}function de(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function he(e,t){return t===h?de(function(e){var t=j(e),n=R(e),r=t.visualViewport,i=n.clientWidth,o=n.clientHeight,a=0,s=0;return r&&(i=r.width,o=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(a=r.offsetLeft,s=r.offsetTop)),{width:i,height:o,x:a+se(e),y:s}}(e)):T(t)?function(e){var t=N(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(t):de(function(e){var t,n=R(e),r=ae(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=X(n.scrollWidth,n.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=X(n.scrollHeight,n.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-r.scrollLeft+se(e),u=-r.scrollTop;return"rtl"===A(i||n).direction&&(s+=X(n.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:u}}(R(e)))}function pe(e,t,n){var r="clippingParents"===t?function(e){var t=ce(F(e)),n=["absolute","fixed"].indexOf(A(e).position)>=0&&T(e)?q(e):e;return D(n)?t.filter((function(e){return D(e)&&L(e,n)&&"body"!==_(e)})):[]}(e):[].concat(t),i=[].concat(r,[n]),o=i[0],a=i.reduce((function(t,n){var r=he(e,n);return t.top=X(r.top,t.top),t.right=H(r.right,t.right),t.bottom=H(r.bottom,t.bottom),t.left=X(r.left,t.left),t}),he(e,o));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function fe(e){return e.split("-")[1]}function ve(e){var t,n=e.reference,s=e.element,u=e.placement,d=u?M(u):null,h=u?fe(u):null,p=n.x+n.width/2-s.width/2,f=n.y+n.height/2-s.height/2;switch(d){case r:t={x:p,y:n.y-s.height};break;case i:t={x:p,y:n.y+n.height};break;case o:t={x:n.x+n.width,y:f};break;case a:t={x:n.x-s.width,y:f};break;default:t={x:n.x,y:n.y}}var v=d?Y(d):null;if(null!=v){var g="y"===v?"height":"width";switch(h){case l:t[v]=t[v]-(n[g]/2-s[g]/2);break;case c:t[v]=t[v]+(n[g]/2-s[g]/2)}}return t}function ge(e,t){void 0===t&&(t={});var n=t,a=n.placement,s=void 0===a?e.placement:a,l=n.boundary,c=void 0===l?d:l,v=n.rootBoundary,g=void 0===v?h:v,y=n.elementContext,m=void 0===y?p:y,b=n.altBoundary,x=void 0!==b&&b,w=n.padding,E=void 0===w?0:w,k=U("number"!=typeof E?E:K(E,u)),P=m===p?f:p,S=e.elements.reference,C=e.rects.popper,_=e.elements[x?P:m],j=pe(D(_)?_:_.contextElement||R(e.elements.popper),c,g),T=N(S),B=ve({reference:T,element:C,strategy:"absolute",placement:s}),O=de(Object.assign({},C,B)),M=m===p?O:T,I={top:j.top-M.top+k.top,bottom:M.bottom-j.bottom+k.bottom,left:j.left-M.left+k.left,right:M.right-j.right+k.right},L=e.modifiersData.offset;if(m===p&&L){var A=L[s];Object.keys(I).forEach((function(e){var t=[o,i].indexOf(e)>=0?1:-1,n=[r,i].indexOf(e)>=0?"y":"x";I[e]+=A[n]*t}))}return I}const ye={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,c=e.name;if(!t.modifiersData[c]._skip){for(var d=n.mainAxis,h=void 0===d||d,p=n.altAxis,f=void 0===p||p,y=n.fallbackPlacements,m=n.padding,b=n.boundary,x=n.rootBoundary,w=n.altBoundary,E=n.flipVariations,k=void 0===E||E,P=n.allowedAutoPlacements,S=t.options.placement,C=M(S),_=y||(C===S||!k?[re(S)]:function(e){if(M(e)===s)return[];var t=re(e);return[oe(e),t,oe(t)]}(S)),j=[S].concat(_).reduce((function(e,n){return e.concat(M(n)===s?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,i=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?g:l,d=fe(r),h=d?s?v:v.filter((function(e){return fe(e)===d})):u,p=h.filter((function(e){return c.indexOf(e)>=0}));0===p.length&&(p=h);var f=p.reduce((function(t,n){return t[n]=ge(e,{placement:n,boundary:i,rootBoundary:o,padding:a})[M(n)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:n,boundary:b,rootBoundary:x,padding:m,flipVariations:k,allowedAutoPlacements:P}):n)}),[]),D=t.rects.reference,T=t.rects.popper,B=new Map,O=!0,N=j[0],I=0;I<j.length;I++){var L=j[I],A=M(L),z=fe(L)===l,R=[r,i].indexOf(A)>=0,F=R?"width":"height",V=ge(t,{placement:L,boundary:b,rootBoundary:x,altBoundary:w,padding:m}),q=R?z?o:a:z?i:r;D[F]>T[F]&&(q=re(q));var Y=re(q),X=[];if(h&&X.push(V[A]<=0),f&&X.push(V[q]<=0,V[Y]<=0),X.every((function(e){return e}))){N=L,O=!1;break}B.set(L,X)}if(O)for(var H=function(e){var t=j.find((function(t){var n=B.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return N=t,"break"},W=k?3:1;W>0;W--){if("break"===H(W))break}t.placement!==N&&(t.modifiersData[c]._skip=!0,t.placement=N,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function me(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function be(e){return[r,o,i,a].some((function(t){return e[t]>=0}))}const xe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=ge(t,{elementContext:"reference"}),s=ge(t,{altBoundary:!0}),u=me(a,r),l=me(s,i,o),c=be(u),d=be(l);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:l,isReferenceHidden:c,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":d})}};const we={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,i=e.name,s=n.offset,u=void 0===s?[0,0]:s,l=g.reduce((function(e,n){return e[n]=function(e,t,n){var i=M(e),s=[a,r].indexOf(i)>=0?-1:1,u="function"==typeof n?n(Object.assign({},t,{placement:e})):n,l=u[0],c=u[1];return l=l||0,c=(c||0)*s,[a,o].indexOf(i)>=0?{x:c,y:l}:{x:l,y:c}}(n,t.rects,u),e}),{}),c=l[t.placement],d=c.x,h=c.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=h),t.modifiersData[i]=l}};const Ee={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=ve({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};const ke={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,s=e.name,u=n.mainAxis,c=void 0===u||u,d=n.altAxis,h=void 0!==d&&d,p=n.boundary,f=n.rootBoundary,v=n.altBoundary,g=n.padding,y=n.tether,m=void 0===y||y,b=n.tetherOffset,x=void 0===b?0:b,w=ge(t,{boundary:p,rootBoundary:f,padding:g,altBoundary:v}),E=M(t.placement),k=fe(t.placement),P=!k,S=Y(E),C="x"===S?"y":"x",_=t.modifiersData.popperOffsets,j=t.rects.reference,D=t.rects.popper,T="function"==typeof x?x(Object.assign({},t.rects,{placement:t.placement})):x,B={x:0,y:0};if(_){if(c||h){var O="y"===S?r:a,N="y"===S?i:o,L="y"===S?"height":"width",A=_[S],z=_[S]+w[O],R=_[S]-w[N],F=m?-D[L]/2:0,V=k===l?j[L]:D[L],W=k===l?-D[L]:-j[L],U=t.elements.arrow,K=m&&U?I(U):{width:0,height:0},Q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},Z=Q[O],$=Q[N],J=G(0,j[L],K[L]),ee=P?j[L]/2-F-J-Z-T:V-J-Z-T,te=P?-j[L]/2+F+J+$+T:W+J+$+T,ne=t.elements.arrow&&q(t.elements.arrow),re=ne?"y"===S?ne.clientTop||0:ne.clientLeft||0:0,ie=t.modifiersData.offset?t.modifiersData.offset[t.placement][S]:0,oe=_[S]+ee-ie-re,ae=_[S]+te-ie;if(c){var se=G(m?H(z,oe):z,A,m?X(R,ae):R);_[S]=se,B[S]=se-A}if(h){var ue="x"===S?r:a,le="x"===S?i:o,ce=_[C],de=ce+w[ue],he=ce-w[le],pe=G(m?H(de,oe):de,ce,m?X(he,ae):he);_[C]=pe,B[C]=pe-ce}}t.modifiersData[s]=B}},requiresIfExists:["offset"]};function Pe(e,t,n){void 0===n&&(n=!1);var r,i,o=R(t),a=N(e),s=T(t),u={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(s||!s&&!n)&&(("body"!==_(t)||ue(o))&&(u=(r=t)!==j(r)&&T(r)?{scrollLeft:(i=r).scrollLeft,scrollTop:i.scrollTop}:ae(r)),T(t)?((l=N(t)).x+=t.clientLeft,l.y+=t.clientTop):o&&(l.x=se(o))),{x:a.left+u.scrollLeft-l.x,y:a.top+u.scrollTop-l.y,width:a.width,height:a.height}}function Se(e){var t=new Map,n=new Set,r=[];function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||i(e)})),r}var Ce={placement:"bottom",modifiers:[],strategy:"absolute"};function _e(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function je(e){void 0===e&&(e={});var t=e,n=t.defaultModifiers,r=void 0===n?[]:n,i=t.defaultOptions,o=void 0===i?Ce:i;return function(e,t,n){void 0===n&&(n=o);var i,a,s={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ce,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},u=[],l=!1,c={state:s,setOptions:function(n){d(),s.options=Object.assign({},o,s.options,n),s.scrollParents={reference:D(e)?ce(e):e.contextElement?ce(e.contextElement):[],popper:ce(t)};var i=function(e){var t=Se(e);return C.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}(function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}([].concat(r,s.options.modifiers)));return s.orderedModifiers=i.filter((function(e){return e.enabled})),s.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,i=e.effect;if("function"==typeof i){var o=i({state:s,name:t,instance:c,options:r}),a=function(){};u.push(o||a)}})),c.update()},forceUpdate:function(){if(!l){var e=s.elements,t=e.reference,n=e.popper;if(_e(t,n)){s.rects={reference:Pe(t,q(n),"fixed"===s.options.strategy),popper:I(n)},s.reset=!1,s.placement=s.options.placement,s.orderedModifiers.forEach((function(e){return s.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<s.orderedModifiers.length;r++)if(!0!==s.reset){var i=s.orderedModifiers[r],o=i.fn,a=i.options,u=void 0===a?{}:a,d=i.name;"function"==typeof o&&(s=o({state:s,options:u,name:d,instance:c})||s)}else s.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){c.forceUpdate(),e(s)}))},function(){return a||(a=new Promise((function(e){Promise.resolve().then((function(){a=void 0,e(i())}))}))),a}),destroy:function(){d(),l=!0}};if(!_e(e,t))return c;function d(){u.forEach((function(e){return e()})),u=[]}return c.setOptions(n).then((function(e){!l&&n.onFirstUpdate&&n.onFirstUpdate(e)})),c}}var De=je(),Te=je({defaultModifiers:[te,Ee,J,O]}),Be=je({defaultModifiers:[te,Ee,J,O,we,ye,ke,Q,xe]})},Ded0:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,(function(t){return e[t]}).bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){var r=n(1),i=function(e){e&&e("layout","dagre",r)};"undefined"!=typeof cytoscape&&i(cytoscape),e.exports=i},function(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}var i=n(2),o=n(3),a=n(4);function s(e){this.options=o({},i,e)}s.prototype.run=function(){var e=this.options,t=e.cy,n=e.eles,i=function(e,t){return"function"==typeof t?t.apply(e,[e]):t},o=e.boundingBox||{x1:0,y1:0,w:t.width(),h:t.height()};void 0===o.x2&&(o.x2=o.x1+o.w),void 0===o.w&&(o.w=o.x2-o.x1),void 0===o.y2&&(o.y2=o.y1+o.h),void 0===o.h&&(o.h=o.y2-o.y1);var s=new a.graphlib.Graph({multigraph:!0,compound:!0}),u={},l=function(e,t){null!=t&&(u[e]=t)};l("nodesep",e.nodeSep),l("edgesep",e.edgeSep),l("ranksep",e.rankSep),l("rankdir",e.rankDir),l("ranker",e.ranker),s.setGraph(u),s.setDefaultEdgeLabel((function(){return{}})),s.setDefaultNodeLabel((function(){return{}}));for(var c=n.nodes(),d=0;d<c.length;d++){var h=c[d],p=h.layoutDimensions(e);s.setNode(h.id(),{width:p.w,height:p.h,name:h.id()})}for(var f=0;f<c.length;f++){var v=c[f];v.isChild()&&s.setParent(v.id(),v.parent().id())}for(var g=n.edges().stdFilter((function(e){return!e.source().isParent()&&!e.target().isParent()})),y=0;y<g.length;y++){var m=g[y];s.setEdge(m.source().id(),m.target().id(),{minlen:i(m,e.minLen),weight:i(m,e.edgeWeight),name:m.id()},m.id())}a.layout(s);for(var b,x=s.nodes(),w=0;w<x.length;w++){var E=x[w],k=s.node(E);t.getElementById(E).scratch().dagre=k}return e.boundingBox?(b={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0},c.forEach((function(e){var t=e.scratch().dagre;b.x1=Math.min(b.x1,t.x),b.x2=Math.max(b.x2,t.x),b.y1=Math.min(b.y1,t.y),b.y2=Math.max(b.y2,t.y)})),b.w=b.x2-b.x1,b.h=b.y2-b.y1):b=o,c.layoutPositions(this,e,(function(t){var n=(t="object"===r(t)?t:this).scratch().dagre;return function(t){if(e.boundingBox){var n=0===b.w?0:(t.x-b.x1)/b.w,r=0===b.h?0:(t.y-b.y1)/b.h;return{x:o.x1+n*o.w,y:o.y1+r*o.h}}return t}({x:n.x,y:n.y})})),this},e.exports=s},function(e,t){var n={nodeSep:void 0,edgeSep:void 0,rankSep:void 0,rankDir:void 0,ranker:void 0,minLen:function(e){return 1},edgeWeight:function(e){return 1},fit:!0,padding:30,spacingFactor:void 0,nodeDimensionsIncludeLabels:!1,animate:!1,animateFilter:function(e,t){return!0},animationDuration:500,animationEasing:void 0,boundingBox:void 0,transform:function(e,t){return t},ready:function(){},stop:function(){}};e.exports=n},function(e,t){e.exports=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.forEach((function(t){Object.keys(t).forEach((function(n){return e[n]=t[n]}))})),e}},function(t,n){t.exports=e}])},e.exports=r(n("4e6e"))},CQyY:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(e,t,n){"use strict";e.exports=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.forEach((function(t){null!=t&&Object.keys(t).forEach((function(n){return e[n]=t[n]}))})),e}},function(e,t,n){"use strict";var r=n(5).getBoundingBox;e.exports={getRef:function(e,t){return{getBoundingClientRect:function(){return r(e,t)}}}}},function(e,t,n){"use strict";var r=n(0),i=n(1).getRef,o=n(6).getContent,a={},s=n(8).createPopper;e.exports={getPopper:function(e,t){var n=i(e,t),u=o(e,t.content),l=r({},a,t.popper);return s(n,u,l)}}},function(e,t,n){"use strict";var r=n(0),i=n(2).getPopper,o=n(1).getRef;function a(e,t){var n=function(e){return e.isNode()?{w:e.renderedWidth(),h:e.renderedHeight()}:{w:3,h:3}},i=e.cy(),o={renderedDimensions:n,renderedPosition:function(e){return e.isNode()?function(e,t){var n=e.renderedPosition(),r=t(e),i=r.w/2,o=r.h/2;return{x:n.x-i,y:n.y-o}}(e,n):function(e){var t=e.midpoint(),n=e.cy().pan(),r=e.cy().zoom();return{x:t.x*r+n.x,y:t.y*r+n.y}}(e)},popper:{},cy:i};return r({},o,t)}function s(e){e.length>1&&(console.warn("Popper.js Extension should only be used on one element."),console.warn("Ignoring all subsequent elements"))}e.exports={popper:function(e){return s(this),i(this[0],a(this[0],e))},popperRef:function(e){return s(this),o(this[0],a(this[0],e))}}},function(e,t,n){"use strict";var r=n(0),i=n(2).getPopper,o=n(1).getRef;function a(e,t){return r({},{boundingBox:{top:0,left:0,right:0,bottom:0,w:3,h:3},renderedDimensions:function(){return{w:3,h:3}},renderedPosition:function(){return{x:0,y:0}},popper:{},cy:e},t)}e.exports={popper:function(e){return i(this,a(this,e))},popperRef:function(e){return o(this,a(this,e))}}},function(e,t,n){"use strict";e.exports={getBoundingBox:function(e,t){var n=t.renderedPosition,r=t.cy,i=t.renderedDimensions,o=r.container().getBoundingClientRect(),a=i(e),s=n(e);return{top:s.y+o.top,left:s.x+o.left,right:s.x+a.w+o.left,bottom:s.y+a.h+o.top,width:a.w,height:a.h}}}},function(e,t,n){"use strict";e.exports={getContent:function(e,t){var n=null;if("function"!=typeof t){if(t instanceof HTMLElement)return t;throw new Error("Can not create popper from 'target' with unknown type")}if(null===(n=t(e)))throw new Error("No 'target' specified to create popper");return n}}},function(e,t,n){"use strict";var r=n(4),i=n(3),o=function(e){e&&(e("core","popper",r.popper),e("collection","popper",i.popper),e("core","popperRef",r.popperRef),e("collection","popperRef",i.popperRef))};"undefined"!=typeof cytoscape&&o(cytoscape),e.exports=o},function(t,n){t.exports=e}])},e.exports=r(n("1ajG"))},rFOX:(e,t,n)=>{"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var i=r(n("E/ZA")),o=r(n("3Ssf"));function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),e}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(u){i=!0,o=u}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var h="undefined"==typeof window?null:window,p=h?h.navigator:null,f=(h&&h.document,a("")),v=a({}),g=a((function(){})),y="undefined"==typeof HTMLElement?"undefined":a(HTMLElement),m=function(e){return e&&e.instanceString&&x(e.instanceString)?e.instanceString():null},b=function(e){return null!=e&&a(e)==f},x=function(e){return null!=e&&a(e)===g},w=function(e){return!S(e)&&(Array.isArray?Array.isArray(e):null!=e&&e instanceof Array)},E=function(e){return null!=e&&a(e)===v&&!w(e)&&e.constructor===Object},k=function(e){return null!=e&&a(e)===a(1)&&!isNaN(e)},P=function(e){return"undefined"===y?void 0:null!=e&&e instanceof HTMLElement},S=function(e){return C(e)||_(e)},C=function(e){return"collection"===m(e)&&e._private.single},_=function(e){return"collection"===m(e)&&!e._private.single},j=function(e){return"core"===m(e)},D=function(e){return"stylesheet"===m(e)},T=function(e){return null==e||!(""!==e&&!e.match(/^\s+$/))},B=function(e){return function(e){return null!=e&&a(e)===v}(e)&&x(e.then)},O=function(e,t){t||(t=function(){if(1===arguments.length)return arguments[0];if(0===arguments.length)return"undefined";for(var e=[],t=0;t<arguments.length;t++)e.push(arguments[t]);return e.join("$")});var n=function n(){var r,i=this,o=arguments,a=t.apply(i,o),s=n.cache;return(r=s[a])||(r=s[a]=e.apply(i,o)),r};return n.cache={},n},M=O((function(e){return e.replace(/([A-Z])/g,(function(e){return"-"+e.toLowerCase()}))})),N=O((function(e){return e.replace(/(-\w)/g,(function(e){return e[1].toUpperCase()}))})),I=O((function(e,t){return e+t[0].toUpperCase()+t.substring(1)}),(function(e,t){return e+"$"+t})),L=function(e){return T(e)?e:e.charAt(0).toUpperCase()+e.substring(1)},A="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",z=function(e,t){return e<t?-1:e>t?1:0},R=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments,n=1;n<t.length;n++){var r=t[n];if(null!=r)for(var i=Object.keys(r),o=0;o<i.length;o++){var a=i[o];e[a]=r[a]}}return e},F=function(e){return(w(e)?e:null)||function(e){return V[e.toLowerCase()]}(e)||function(e){if((4===e.length||7===e.length)&&"#"===e[0]){var t,n,r,i=16;return 4===e.length?(t=parseInt(e[1]+e[1],i),n=parseInt(e[2]+e[2],i),r=parseInt(e[3]+e[3],i)):(t=parseInt(e[1]+e[2],i),n=parseInt(e[3]+e[4],i),r=parseInt(e[5]+e[6],i)),[t,n,r]}}(e)||function(e){var t,n=new RegExp("^rgb[a]?\\(((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)(?:\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)$").exec(e);if(n){t=[];for(var r=[],i=1;i<=3;i++){var o=n[i];if("%"===o[o.length-1]&&(r[i]=!0),o=parseFloat(o),r[i]&&(o=o/100*255),o<0||o>255)return;t.push(Math.floor(o))}var a=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(a&&!s)return;var u=n[4];if(void 0!==u){if((u=parseFloat(u))<0||u>1)return;t.push(u)}}return t}(e)||function(e){var t,n,r,i,o,a,s,u;function l(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var c=new RegExp("^hsl[a]?\\(((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?)))\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])(?:\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)$").exec(e);if(c){if((n=parseInt(c[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(c[2]))<0||r>100)return;if(r/=100,(i=parseFloat(c[3]))<0||i>100)return;if(i/=100,void 0!==(o=c[4])&&((o=parseFloat(o))<0||o>1))return;if(0===r)a=s=u=Math.round(255*i);else{var d=i<.5?i*(1+r):i+r-i*r,h=2*i-d;a=Math.round(255*l(h,d,n+1/3)),s=Math.round(255*l(h,d,n)),u=Math.round(255*l(h,d,n-1/3))}t=[a,s,u,o]}return t}(e)},V={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},q=function(e){for(var t=e.map,n=e.keys,r=n.length,i=0;i<r;i++){var o=n[i];if(E(o))throw Error("Tried to set map with object key");i<n.length-1?(null==t[o]&&(t[o]={}),t=t[o]):t[o]=e.value}},Y=function(e){for(var t=e.map,n=e.keys,r=n.length,i=0;i<r;i++){var o=n[i];if(E(o))throw Error("Tried to get map with object key");if(null==(t=t[o]))return t}return t},X=h?h.performance:null,H=X&&X.now?function(){return X.now()}:function(){return Date.now()},W=function(){if(h){if(h.requestAnimationFrame)return function(e){h.requestAnimationFrame(e)};if(h.mozRequestAnimationFrame)return function(e){h.mozRequestAnimationFrame(e)};if(h.webkitRequestAnimationFrame)return function(e){h.webkitRequestAnimationFrame(e)};if(h.msRequestAnimationFrame)return function(e){h.msRequestAnimationFrame(e)}}return function(e){e&&setTimeout((function(){e(H())}),1e3/60)}}(),G=function(e){return W(e)},U=H,K=9261,Q=65599,Z=5381,$=function(e){for(var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K,r=n;!(t=e.next()).done;)r=r*Q+t.value|0;return r},J=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K;return t*Q+e|0},ee=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Z;return(t<<5)+t+e|0},te=function(e){return 2097152*e[0]+e[1]},ne=function(e,t){return[J(e[0],t[0]),ee(e[1],t[1])]},re=function(e,t){var n={value:0,done:!1},r=0,i=e.length;return $({next:function(){return r<i?n.value=e.charCodeAt(r++):n.done=!0,n}},t)},ie=function(){return oe(arguments)},oe=function(e){for(var t,n=0;n<e.length;n++){var r=e[n];t=0===n?re(r):re(r,t)}return t},ae=!0,se=null!=console.warn,ue=null!=console.trace,le=Number.MAX_SAFE_INTEGER||9007199254740991,ce=function(){return!0},de=function(){return!1},he=function(){return 0},pe=function(){},fe=function(e){throw new Error(e)},ve=function(e){if(void 0===e)return ae;ae=!!e},ge=function(e){ve()&&(se?console.warn(e):(console.log(e),ue&&console.trace()))},ye=function(e){return null==e?e:w(e)?e.slice():E(e)?function(e){return R({},e)}(e):e},me=function(e,t){for(t=e="";e++<36;t+=51*e&52?(15^e?8^Math.random()*(20^e?16:4):4).toString(16):"-");return t},be={},xe=function(){return be},we=function(e){var t=Object.keys(e);return function(n){for(var r={},i=0;i<t.length;i++){var o=t[i],a=null==n?void 0:n[o];r[o]=void 0===a?e[o]:a}return r}},Ee=function(e,t,n){for(var r=e.length-1;r>=0&&(e[r]!==t||(e.splice(r,1),!n));r--);},ke=function(e){e.splice(0,e.length)},Pe=function(e,t,n){return n&&(t=I(n,t)),e[t]},Se=function(e,t,n,r){n&&(t=I(n,t)),e[t]=r},Ce="undefined"!=typeof Map?Map:function(){function e(){s(this,e),this._obj={}}return l(e,[{key:"set",value:function(e,t){return this._obj[e]=t,this}},{key:"delete",value:function(e){return this._obj[e]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(e){return void 0!==this._obj[e]}},{key:"get",value:function(e){return this._obj[e]}}]),e}(),_e=function(){function e(t){if(s(this,e),this._obj=Object.create(null),this.size=0,null!=t){var n;n=null!=t.instanceString&&t.instanceString()===this.instanceString()?t.toArray():t;for(var r=0;r<n.length;r++)this.add(n[r])}}return l(e,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(e){var t=this._obj;1!==t[e]&&(t[e]=1,this.size++)}},{key:"delete",value:function(e){var t=this._obj;1===t[e]&&(t[e]=0,this.size--)}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(e){return 1===this._obj[e]}},{key:"toArray",value:function(){var e=this;return Object.keys(this._obj).filter((function(t){return e.has(t)}))}},{key:"forEach",value:function(e,t){return this.toArray().forEach(e,t)}}]),e}(),je="undefined"!==("undefined"==typeof Set?"undefined":a(Set))?Set:_e,De=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0!==e&&void 0!==t&&j(e)){var r=t.group;if(null==r&&(r=t.data&&null!=t.data.source&&null!=t.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!t.selected,selectable:void 0===t.selectable||!!t.selectable,locked:!!t.locked,grabbed:!1,grabbable:void 0===t.grabbable||!!t.grabbable,pannable:void 0===t.pannable?"edges"===r:!!t.pannable,active:!1,classes:new je,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==i.position.x&&(i.position.x=0),null==i.position.y&&(i.position.y=0),t.renderedPosition){var o=t.renderedPosition,a=e.pan(),s=e.zoom();i.position={x:(o.x-a.x)/s,y:(o.y-a.y)/s}}var u=[];w(t.classes)?u=t.classes:b(t.classes)&&(u=t.classes.split(/\s+/));for(var l=0,c=u.length;l<c;l++){var d=u[l];d&&""!==d&&i.classes.add(d)}this.createEmitter();var h=t.style||t.css;h&&(ge("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(h)),(void 0===n||n)&&this.restore()}else fe("An element must be of type `nodes` or `edges`; you specified `"+r+"`")}else fe("An element must have a core reference and parameters set")},Te=function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},function(t,n,r){var i;E(t)&&!S(t)&&(t=(i=t).roots||i.root,n=i.visit,r=i.directed),r=2!==arguments.length||x(n)?r:n,n=x(n)?n:function(){};for(var o,a=this._private.cy,s=t=b(t)?this.filter(t):t,u=[],l=[],c={},d={},h={},p=0,f=this.byGroup(),v=f.nodes,g=f.edges,y=0;y<s.length;y++){var m=s[y],w=m.id();m.isNode()&&(u.unshift(m),e.bfs&&(h[w]=!0,l.push(m)),d[w]=0)}var k=function(){var t=e.bfs?u.shift():u.pop(),i=t.id();if(e.dfs){if(h[i])return"continue";h[i]=!0,l.push(t)}var a,s=d[i],f=c[i],y=null!=f?f.source():null,m=null!=f?f.target():null,b=null==f?void 0:t.same(y)?m[0]:y[0];if(!0===(a=n(t,f,b,p++,s)))return o=t,"break";if(!1===a)return"break";for(var x=t.connectedEdges().filter((function(e){return(!r||e.source().same(t))&&g.has(e)})),w=0;w<x.length;w++){var E=x[w],k=E.connectedNodes().filter((function(e){return!e.same(t)&&v.has(e)})),P=k.id();0===k.length||h[P]||(k=k[0],u.push(k),e.bfs&&(h[P]=!0,l.push(k)),c[P]=E,d[P]=d[i]+1)}};e:for(;0!==u.length;){var P=k();switch(P){case"continue":continue;case"break":break e}}for(var C=a.collection(),_=0;_<l.length;_++){var j=l[_],D=c[j.id()];null!=D&&C.push(D),C.push(j)}return{path:a.collection(C),found:a.collection(o)}}},Be={breadthFirstSearch:Te({bfs:!0}),depthFirstSearch:Te({dfs:!0})};Be.bfs=Be.breadthFirstSearch,Be.dfs=Be.depthFirstSearch;var Oe=we({root:null,weight:function(e){return 1},directed:!1}),Me={dijkstra:function(e){if(!E(e)){var t=arguments;e={root:t[0],weight:t[1],directed:t[2]}}var n=Oe(e),r=n.root,i=n.weight,a=n.directed,s=this,u=i,l=b(r)?this.filter(r)[0]:r[0],c={},d={},h={},p=this.byGroup(),f=p.nodes,v=p.edges;v.unmergeBy((function(e){return e.isLoop()}));for(var g=function(e){return c[e.id()]},y=function(e,t){c[e.id()]=t,m.updateItem(e)},m=new o((function(e,t){return g(e)-g(t)})),x=0;x<f.length;x++){var w=f[x];c[w.id()]=w.same(l)?0:1/0,m.push(w)}for(var k=function(e,t){for(var n,r=(a?e.edgesTo(t):e.edgesWith(t)).intersect(v),i=1/0,o=0;o<r.length;o++){var s=r[o],l=u(s);(l<i||!n)&&(i=l,n=s)}return{edge:n,dist:i}};m.size()>0;){var P=m.pop(),S=g(P),C=P.id();if(h[C]=S,S!==1/0)for(var _=P.neighborhood().intersect(f),j=0;j<_.length;j++){var D=_[j],T=D.id(),B=k(P,D),O=S+B.dist;O<g(D)&&(y(D,O),d[T]={node:P,edge:B.edge})}}return{distanceTo:function(e){var t=b(e)?f.filter(e)[0]:e[0];return h[t.id()]},pathTo:function(e){var t=b(e)?f.filter(e)[0]:e[0],n=[],r=t,i=r.id();if(t.length>0)for(n.unshift(t);d[i];){var o=d[i];n.unshift(o.edge),n.unshift(o.node),i=(r=o.node).id()}return s.spawn(n)}}}},Ne={kruskal:function(e){e=e||function(e){return 1};for(var t=this.byGroup(),n=t.nodes,r=t.edges,i=n.length,o=new Array(i),a=n,s=function(e){for(var t=0;t<o.length;t++){if(o[t].has(e))return t}},u=0;u<i;u++)o[u]=this.spawn(n[u]);for(var l=r.sort((function(t,n){return e(t)-e(n)})),c=0;c<l.length;c++){var d=l[c],h=d.source()[0],p=d.target()[0],f=s(h),v=s(p),g=o[f],y=o[v];f!==v&&(a.merge(d),g.merge(y),o.splice(v,1))}return a}},Ie=we({root:null,goal:null,weight:function(e){return 1},heuristic:function(e){return 0},directed:!1}),Le={aStar:function(e){var t=this.cy(),n=Ie(e),r=n.root,i=n.goal,a=n.heuristic,s=n.directed,u=n.weight;r=t.collection(r)[0],i=t.collection(i)[0];var l,c,d=r.id(),h=i.id(),p={},f={},v={},g=new o((function(e,t){return f[e.id()]-f[t.id()]})),y=new je,m={},b={},x=function(e,t){g.push(e),y.add(t)};x(r,d),p[d]=0,f[d]=a(r);for(var w,E=0;g.size()>0;){if(l=g.pop(),c=l.id(),y.delete(c),E++,c===h){for(var k=[],P=i,S=h,C=b[S];k.unshift(P),null!=C&&k.unshift(C),null!=(P=m[S]);)C=b[S=P.id()];return{found:!0,distance:p[c],path:this.spawn(k),steps:E}}v[c]=!0;for(var _=l._private.edges,j=0;j<_.length;j++){var D=_[j];if(this.hasElementWithId(D.id())&&(!s||D.data("source")===c)){var T=D.source(),B=D.target(),O=T.id()!==c?T:B,M=O.id();if(this.hasElementWithId(M)&&!v[M]){var N=p[c]+u(D);w=M,y.has(w)?N<p[M]&&(p[M]=N,f[M]=N+a(O),m[M]=l,b[M]=D):(p[M]=N,f[M]=N+a(O),x(O,M),m[M]=l,b[M]=D)}}}}return{found:!1,distance:void 0,path:void 0,steps:E}}},Ae=we({weight:function(e){return 1},directed:!1}),ze={floydWarshall:function(e){for(var t=this.cy(),n=Ae(e),r=n.weight,i=n.directed,o=r,a=this.byGroup(),s=a.nodes,u=a.edges,l=s.length,c=l*l,d=function(e){return s.indexOf(e)},h=function(e){return s[e]},p=new Array(c),f=0;f<c;f++){var v=f%l,g=(f-v)/l;p[f]=g===v?0:1/0}for(var y=new Array(c),m=new Array(c),x=0;x<u.length;x++){var w=u[x],E=w.source()[0],k=w.target()[0];if(E!==k){var P=d(E),S=d(k),C=P*l+S,_=o(w);if(p[C]>_&&(p[C]=_,y[C]=S,m[C]=w),!i){var j=S*l+P;!i&&p[j]>_&&(p[j]=_,y[j]=P,m[j]=w)}}}for(var D=0;D<l;D++)for(var T=0;T<l;T++)for(var B=T*l+D,O=0;O<l;O++){var M=T*l+O,N=D*l+O;p[B]+p[N]<p[M]&&(p[M]=p[B]+p[N],y[M]=y[B])}var I=function(e){return d(function(e){return(b(e)?t.filter(e):e)[0]}(e))},L={distance:function(e,t){var n=I(e),r=I(t);return p[n*l+r]},path:function(e,n){var r=I(e),i=I(n),o=h(r);if(r===i)return o.collection();if(null==y[r*l+i])return t.collection();var a,s=t.collection(),u=r;for(s.merge(o);r!==i;)u=r,r=y[r*l+i],a=m[u*l+r],s.merge(a),s.merge(h(r));return s}};return L}},Re=we({weight:function(e){return 1},directed:!1,root:null}),Fe={bellmanFord:function(e){var t=this,n=Re(e),r=n.weight,i=n.directed,o=n.root,a=r,s=this,u=this.cy(),l=this.byGroup(),c=l.edges,d=l.nodes,h=d.length,p=new Ce,f=!1;o=u.collection(o)[0],c.unmergeBy((function(e){return e.isLoop()}));for(var v=c.length,g=function(e){var t=p.get(e.id());return t||(t={},p.set(e.id(),t)),t},y=function(e){return(b(e)?u.$(e):e)[0]},m=0;m<h;m++){var x=d[m],w=g(x);x.same(o)?w.dist=0:w.dist=1/0,w.pred=null,w.edge=null}for(var E=!1,k=function(e,t,n,r,i,o){var a=r.dist+o;a<i.dist&&!n.same(r.edge)&&(i.dist=a,i.pred=e,i.edge=n,E=!0)},P=1;P<h;P++){E=!1;for(var S=0;S<v;S++){var C=c[S],_=C.source(),j=C.target(),D=a(C),T=g(_),B=g(j);k(_,0,C,T,B,D),i||k(j,0,C,B,T,D)}if(!E)break}if(E)for(var O=0;O<v;O++){var M=c[O],N=M.source(),I=M.target(),L=a(M),A=g(N).dist,z=g(I).dist;if(A+L<z||!i&&z+L<A){ge("Graph contains a negative weight cycle for Bellman-Ford"),f=!0;break}}return{distanceTo:function(e){return g(y(e)).dist},pathTo:function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o,r=y(e),i=[],a=r;;){if(null==a)return t.spawn();var u=g(a),l=u.edge,c=u.pred;if(i.unshift(a[0]),a.same(n)&&i.length>0)break;null!=l&&i.unshift(l),a=c}return s.spawn(i)},hasNegativeWeightCycle:f,negativeWeightCycles:[]}}},Ve=Math.sqrt(2),qe=function(e,t,n){0===n.length&&fe("Karger-Stein must be run on a connected (sub)graph");for(var r=n[e],i=r[1],o=r[2],a=t[i],s=t[o],u=n,l=u.length-1;l>=0;l--){var c=u[l],d=c[1],h=c[2];(t[d]===a&&t[h]===s||t[d]===s&&t[h]===a)&&u.splice(l,1)}for(var p=0;p<u.length;p++){var f=u[p];f[1]===s?(u[p]=f.slice(),u[p][1]=a):f[2]===s&&(u[p]=f.slice(),u[p][2]=a)}for(var v=0;v<t.length;v++)t[v]===s&&(t[v]=a);return u},Ye=function(e,t,n,r){for(;n>r;){var i=Math.floor(Math.random()*t.length);t=qe(i,e,t),n--}return t},Xe={kargerStein:function(){var e=this,t=this.byGroup(),n=t.nodes,r=t.edges;r.unmergeBy((function(e){return e.isLoop()}));var i=n.length,o=r.length,a=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),s=Math.floor(i/Ve);if(!(i<2)){for(var u=[],l=0;l<o;l++){var c=r[l];u.push([l,n.indexOf(c.source()),n.indexOf(c.target())])}for(var d=1/0,h=[],p=new Array(i),f=new Array(i),v=new Array(i),g=function(e,t){for(var n=0;n<i;n++)t[n]=e[n]},y=0;y<=a;y++){for(var m=0;m<i;m++)f[m]=m;var b=Ye(f,u.slice(),i,s),x=b.slice();g(f,v);var w=Ye(f,b,s,2),E=Ye(v,x,s,2);w.length<=E.length&&w.length<d?(d=w.length,h=w,g(f,p)):E.length<=w.length&&E.length<d&&(d=E.length,h=E,g(v,p))}for(var k=this.spawn(h.map((function(e){return r[e[0]]}))),P=this.spawn(),S=this.spawn(),C=p[0],_=0;_<p.length;_++){var j=p[_],D=n[_];j===C?P.merge(D):S.merge(D)}var T=function(t){var n=e.spawn();return t.forEach((function(t){n.merge(t),t.connectedEdges().forEach((function(t){e.contains(t)&&!k.contains(t)&&n.merge(t)}))})),n},B=[T(P),T(S)];return{cut:k,components:B,partition1:P,partition2:S}}fe("At least 2 nodes are required for Karger-Stein algorithm")}},He=function(e,t,n){return{x:e.x*t+n.x,y:e.y*t+n.y}},We=function(e,t,n){return{x:(e.x-n.x)/t,y:(e.y-n.y)/t}},Ge=function(e){return{x:e[0],y:e[1]}},Ue=function(e,t){return Math.atan2(t,e)-Math.PI/2},Ke=Math.log2||function(e){return Math.log(e)/Math.log(2)},Qe=function(e){return e>0?1:e<0?-1:0},Ze=function(e,t){return Math.sqrt($e(e,t))},$e=function(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r},Je=function(e){for(var t=e.length,n=0,r=0;r<t;r++)n+=e[r];for(var i=0;i<t;i++)e[i]=e[i]/n;return e},et=function(e,t,n,r){return(1-r)*(1-r)*e+2*(1-r)*r*t+r*r*n},tt=function(e,t,n,r){return{x:et(e.x,t.x,n.x,r),y:et(e.y,t.y,n.y,r)}},nt=function(e,t,n){return Math.max(e,Math.min(n,t))},rt=function(e){if(null==e)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(null!=e.x1&&null!=e.y1){if(null!=e.x2&&null!=e.y2&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(null!=e.w&&null!=e.h&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},it=function(e,t,n){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},ot=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},at=function(e){var t,n,r,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===o.length)t=n=r=i=o[0];else if(2===o.length)t=r=o[0],i=n=o[1];else if(4===o.length){var a=d(o,4);t=a[0],n=a[1],r=a[2],i=a[3]}return e.x1-=i,e.x2+=n,e.y1-=t,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},st=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},ut=function(e,t){return!(e.x1>t.x2)&&(!(t.x1>e.x2)&&(!(e.x2<t.x1)&&(!(t.x2<e.x1)&&(!(e.y2<t.y1)&&(!(t.y2<e.y1)&&(!(e.y1>t.y2)&&!(t.y1>e.y2)))))))},lt=function(e,t,n){return e.x1<=t&&t<=e.x2&&e.y1<=n&&n<=e.y2},ct=function(e,t){return lt(e,t.x1,t.y1)&&lt(e,t.x2,t.y2)},dt=function(e,t,n,r,i,o,a){var s,u=Dt(i,o),l=i/2,c=o/2,d=r-c-a;if((s=kt(e,t,n,r,n-l+u-a,d,n+l-u+a,d,!1)).length>0)return s;var h=n+l+a;if((s=kt(e,t,n,r,h,r-c+u-a,h,r+c-u+a,!1)).length>0)return s;var p=r+c+a;if((s=kt(e,t,n,r,n-l+u-a,p,n+l-u+a,p,!1)).length>0)return s;var f,v=n-l-a;if((s=kt(e,t,n,r,v,r-c+u-a,v,r+c-u+a,!1)).length>0)return s;var g=n-l+u,y=r-c+u;if((f=wt(e,t,n,r,g,y,u+a)).length>0&&f[0]<=g&&f[1]<=y)return[f[0],f[1]];var m=n+l-u,b=r-c+u;if((f=wt(e,t,n,r,m,b,u+a)).length>0&&f[0]>=m&&f[1]<=b)return[f[0],f[1]];var x=n+l-u,w=r+c-u;if((f=wt(e,t,n,r,x,w,u+a)).length>0&&f[0]>=x&&f[1]>=w)return[f[0],f[1]];var E=n-l+u,k=r+c-u;return(f=wt(e,t,n,r,E,k,u+a)).length>0&&f[0]<=E&&f[1]>=k?[f[0],f[1]]:[]},ht=function(e,t,n,r,i,o,a){var s=a,u=Math.min(n,i),l=Math.max(n,i),c=Math.min(r,o),d=Math.max(r,o);return u-s<=e&&e<=l+s&&c-s<=t&&t<=d+s},pt=function(e,t,n,r,i,o,a,s,u){var l=Math.min(n,a,i)-u,c=Math.max(n,a,i)+u,d=Math.min(r,s,o)-u,h=Math.max(r,s,o)+u;return!(e<l||e>c||t<d||t>h)},ft=function(e,t,n,r,i,o,a,s){var u=[];!function(e,t,n,r,i){var o,a,s,u,l,c,d,h;0===e&&(e=1e-5),s=-27*(r/=e)+(t/=e)*(9*(n/=e)-t*t*2),o=(a=(3*n-t*t)/9)*a*a+(s/=54)*s,i[1]=0,d=t/3,o>0?(l=(l=s+Math.sqrt(o))<0?-Math.pow(-l,1/3):Math.pow(l,1/3),c=(c=s-Math.sqrt(o))<0?-Math.pow(-c,1/3):Math.pow(c,1/3),i[0]=-d+l+c,d+=(l+c)/2,i[4]=i[2]=-d,d=Math.sqrt(3)*(-c+l)/2,i[3]=d,i[5]=-d):(i[5]=i[3]=0,0===o?(h=s<0?-Math.pow(-s,1/3):Math.pow(s,1/3),i[0]=2*h-d,i[4]=i[2]=-(h+d)):(u=(a=-a)*a*a,u=Math.acos(s/Math.sqrt(u)),h=2*Math.sqrt(a),i[0]=-d+h*Math.cos(u/3),i[2]=-d+h*Math.cos((u+2*Math.PI)/3),i[4]=-d+h*Math.cos((u+4*Math.PI)/3)))}(1*n*n-4*n*i+2*n*a+4*i*i-4*i*a+a*a+r*r-4*r*o+2*r*s+4*o*o-4*o*s+s*s,9*n*i-3*n*n-3*n*a-6*i*i+3*i*a+9*r*o-3*r*r-3*r*s-6*o*o+3*o*s,3*n*n-6*n*i+n*a-n*e+2*i*i+2*i*e-a*e+3*r*r-6*r*o+r*s-r*t+2*o*o+2*o*t-s*t,1*n*i-n*n+n*e-i*e+r*o-r*r+r*t-o*t,u);for(var l=[],c=0;c<6;c+=2)Math.abs(u[c+1])<1e-7&&u[c]>=0&&u[c]<=1&&l.push(u[c]);l.push(1),l.push(0);for(var d,h,p,f=-1,v=0;v<l.length;v++)d=Math.pow(1-l[v],2)*n+2*(1-l[v])*l[v]*i+l[v]*l[v]*a,h=Math.pow(1-l[v],2)*r+2*(1-l[v])*l[v]*o+l[v]*l[v]*s,p=Math.pow(d-e,2)+Math.pow(h-t,2),f>=0?p<f&&(f=p):f=p;return f},vt=function(e,t,n,r,i,o){var a=[e-n,t-r],s=[i-n,o-r],u=s[0]*s[0]+s[1]*s[1],l=a[0]*a[0]+a[1]*a[1],c=a[0]*s[0]+a[1]*s[1],d=c*c/u;return c<0?l:d>u?(e-i)*(e-i)+(t-o)*(t-o):l-d},gt=function(e,t,n){for(var r,i,o,a,s=0,u=0;u<n.length/2;u++)if(r=n[2*u],i=n[2*u+1],u+1<n.length/2?(o=n[2*(u+1)],a=n[2*(u+1)+1]):(o=n[2*(u+1-n.length/2)],a=n[2*(u+1-n.length/2)+1]),r==e&&o==e);else{if(!(r>=e&&e>=o||r<=e&&e<=o))continue;(e-r)/(o-r)*(a-i)+i>t&&s++}return s%2!=0},yt=function(e,t,n,r,i,o,a,s,u){var l,c=new Array(n.length);null!=s[0]?(l=Math.atan(s[1]/s[0]),s[0]<0?l+=Math.PI/2:l=-l-Math.PI/2):l=s;for(var d,h=Math.cos(-l),p=Math.sin(-l),f=0;f<c.length/2;f++)c[2*f]=o/2*(n[2*f]*h-n[2*f+1]*p),c[2*f+1]=a/2*(n[2*f+1]*h+n[2*f]*p),c[2*f]+=r,c[2*f+1]+=i;if(u>0){var v=bt(c,-u);d=mt(v)}else d=c;return gt(e,t,d)},mt=function(e){for(var t,n,r,i,o,a,s,u,l=new Array(e.length/2),c=0;c<e.length/4;c++){t=e[4*c],n=e[4*c+1],r=e[4*c+2],i=e[4*c+3],c<e.length/4-1?(o=e[4*(c+1)],a=e[4*(c+1)+1],s=e[4*(c+1)+2],u=e[4*(c+1)+3]):(o=e[0],a=e[1],s=e[2],u=e[3]);var d=kt(t,n,r,i,o,a,s,u,!0);l[2*c]=d[0],l[2*c+1]=d[1]}return l},bt=function(e,t){for(var n,r,i,o,a=new Array(2*e.length),s=0;s<e.length/2;s++){n=e[2*s],r=e[2*s+1],s<e.length/2-1?(i=e[2*(s+1)],o=e[2*(s+1)+1]):(i=e[0],o=e[1]);var u=o-r,l=-(i-n),c=Math.sqrt(u*u+l*l),d=u/c,h=l/c;a[4*s]=n+d*t,a[4*s+1]=r+h*t,a[4*s+2]=i+d*t,a[4*s+3]=o+h*t}return a},xt=function(e,t,n,r,i,o,a){return e-=i,t-=o,(e/=n/2+a)*e+(t/=r/2+a)*t<=1},wt=function(e,t,n,r,i,o,a){var s=[n-e,r-t],u=[e-i,t-o],l=s[0]*s[0]+s[1]*s[1],c=2*(u[0]*s[0]+u[1]*s[1]),d=c*c-4*l*(u[0]*u[0]+u[1]*u[1]-a*a);if(d<0)return[];var h=(-c+Math.sqrt(d))/(2*l),p=(-c-Math.sqrt(d))/(2*l),f=Math.min(h,p),v=Math.max(h,p),g=[];if(f>=0&&f<=1&&g.push(f),v>=0&&v<=1&&g.push(v),0===g.length)return[];var y=g[0]*s[0]+e,m=g[0]*s[1]+t;return g.length>1?g[0]==g[1]?[y,m]:[y,m,g[1]*s[0]+e,g[1]*s[1]+t]:[y,m]},Et=function(e,t,n){return t<=e&&e<=n||n<=e&&e<=t?e:e<=t&&t<=n||n<=t&&t<=e?t:n},kt=function(e,t,n,r,i,o,a,s,u){var l=e-i,c=n-e,d=a-i,h=t-o,p=r-t,f=s-o,v=d*h-f*l,g=c*h-p*l,y=f*c-d*p;if(0!==y){var m=v/y,b=g/y,x=-.001;return x<=m&&m<=1.001&&x<=b&&b<=1.001||u?[e+m*c,t+m*p]:[]}return 0===v||0===g?Et(e,n,a)===a?[a,s]:Et(e,n,i)===i?[i,o]:Et(i,a,n)===n?[n,r]:[]:[]},Pt=function(e,t,n,r,i,o,a,s){var u,l,c,d,h,p,f=[],v=new Array(n.length),g=!0;if(null==o&&(g=!1),g){for(var y=0;y<v.length/2;y++)v[2*y]=n[2*y]*o+r,v[2*y+1]=n[2*y+1]*a+i;if(s>0){var m=bt(v,-s);l=mt(m)}else l=v}else l=n;for(var b=0;b<l.length/2;b++)c=l[2*b],d=l[2*b+1],b<l.length/2-1?(h=l[2*(b+1)],p=l[2*(b+1)+1]):(h=l[0],p=l[1]),0!==(u=kt(e,t,r,i,c,d,h,p)).length&&f.push(u[0],u[1]);return f},St=function(e,t,n){var r=[e[0]-t[0],e[1]-t[1]],i=Math.sqrt(r[0]*r[0]+r[1]*r[1]),o=(i-n)/i;return o<0&&(o=1e-5),[t[0]+o*r[0],t[1]+o*r[1]]},Ct=function(e,t){var n=jt(e,t);return n=_t(n)},_t=function(e){for(var t,n,r=e.length/2,i=1/0,o=1/0,a=-1/0,s=-1/0,u=0;u<r;u++)t=e[2*u],n=e[2*u+1],i=Math.min(i,t),a=Math.max(a,t),o=Math.min(o,n),s=Math.max(s,n);for(var l=2/(a-i),c=2/(s-o),d=0;d<r;d++)t=e[2*d]=e[2*d]*l,n=e[2*d+1]=e[2*d+1]*c,i=Math.min(i,t),a=Math.max(a,t),o=Math.min(o,n),s=Math.max(s,n);if(o<-1)for(var h=0;h<r;h++)n=e[2*h+1]=e[2*h+1]+(-1-o);return e},jt=function(e,t){var n=1/e*2*Math.PI,r=e%2==0?Math.PI/2+n/2:Math.PI/2;r+=t;for(var i,o=new Array(2*e),a=0;a<e;a++)i=a*n+r,o[2*a]=Math.cos(i),o[2*a+1]=Math.sin(-i);return o},Dt=function(e,t){return Math.min(e/4,t/4,8)},Tt=function(e,t){return Math.min(e/10,t/10,8)},Bt=function(e,t){return{heightOffset:Math.min(15,.05*t),widthOffset:Math.min(100,.25*e),ctrlPtOffsetPct:.05}},Ot=we({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(e){return 1}}),Mt={pageRank:function(e){for(var t=Ot(e),n=t.dampingFactor,r=t.precision,i=t.iterations,o=t.weight,a=this._private.cy,s=this.byGroup(),u=s.nodes,l=s.edges,c=u.length,d=c*c,h=l.length,p=new Array(d),f=new Array(c),v=(1-n)/c,g=0;g<c;g++){for(var y=0;y<c;y++){p[g*c+y]=0}f[g]=0}for(var m=0;m<h;m++){var b=l[m],x=b.data("source"),w=b.data("target");if(x!==w){var E=u.indexOfId(x),k=u.indexOfId(w),P=o(b);p[k*c+E]+=P,f[E]+=P}}for(var S=1/c+v,C=0;C<c;C++)if(0===f[C])for(var _=0;_<c;_++){p[_*c+C]=S}else for(var j=0;j<c;j++){var D=j*c+C;p[D]=p[D]/f[C]+v}for(var T,B=new Array(c),O=new Array(c),M=0;M<c;M++)B[M]=1;for(var N=0;N<i;N++){for(var I=0;I<c;I++)O[I]=0;for(var L=0;L<c;L++)for(var A=0;A<c;A++){var z=L*c+A;O[L]+=p[z]*B[A]}Je(O),T=B,B=O,O=T;for(var R=0,F=0;F<c;F++){var V=T[F]-B[F];R+=V*V}if(R<r)break}return{rank:function(e){return e=a.collection(e)[0],B[u.indexOf(e)]}}}},Nt=we({root:null,weight:function(e){return 1},directed:!1,alpha:0}),It={degreeCentralityNormalized:function(e){e=Nt(e);var t=this.cy(),n=this.nodes(),r=n.length;if(e.directed){for(var i={},o={},a=0,s=0,u=0;u<r;u++){var l=n[u],c=l.id();e.root=l;var d=this.degreeCentrality(e);a<d.indegree&&(a=d.indegree),s<d.outdegree&&(s=d.outdegree),i[c]=d.indegree,o[c]=d.outdegree}return{indegree:function(e){return 0==a?0:(b(e)&&(e=t.filter(e)),i[e.id()]/a)},outdegree:function(e){return 0===s?0:(b(e)&&(e=t.filter(e)),o[e.id()]/s)}}}for(var h={},p=0,f=0;f<r;f++){var v=n[f];e.root=v;var g=this.degreeCentrality(e);p<g.degree&&(p=g.degree),h[v.id()]=g.degree}return{degree:function(e){return 0===p?0:(b(e)&&(e=t.filter(e)),h[e.id()]/p)}}},degreeCentrality:function(e){e=Nt(e);var t=this.cy(),n=this,r=e,i=r.root,o=r.weight,a=r.directed,s=r.alpha;if(i=t.collection(i)[0],a){for(var u=i.connectedEdges(),l=u.filter((function(e){return e.target().same(i)&&n.has(e)})),c=u.filter((function(e){return e.source().same(i)&&n.has(e)})),d=l.length,h=c.length,p=0,f=0,v=0;v<l.length;v++)p+=o(l[v]);for(var g=0;g<c.length;g++)f+=o(c[g]);return{indegree:Math.pow(d,1-s)*Math.pow(p,s),outdegree:Math.pow(h,1-s)*Math.pow(f,s)}}for(var y=i.connectedEdges().intersection(n),m=y.length,b=0,x=0;x<y.length;x++)b+=o(y[x]);return{degree:Math.pow(m,1-s)*Math.pow(b,s)}}};It.dc=It.degreeCentrality,It.dcn=It.degreeCentralityNormalised=It.degreeCentralityNormalized;var Lt=we({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),At={closenessCentralityNormalized:function(e){for(var t=Lt(e),n=t.harmonic,r=t.weight,i=t.directed,o=this.cy(),a={},s=0,u=this.nodes(),l=this.floydWarshall({weight:r,directed:i}),c=0;c<u.length;c++){for(var d=0,h=u[c],p=0;p<u.length;p++)if(c!==p){var f=l.distance(h,u[p]);d+=n?1/f:f}n||(d=1/d),s<d&&(s=d),a[h.id()]=d}return{closeness:function(e){return 0==s?0:(e=b(e)?o.filter(e)[0].id():e.id(),a[e]/s)}}},closenessCentrality:function(e){var t=Lt(e),n=t.root,r=t.weight,i=t.directed,o=t.harmonic;n=this.filter(n)[0];for(var a=this.dijkstra({root:n,weight:r,directed:i}),s=0,u=this.nodes(),l=0;l<u.length;l++){var c=u[l];if(!c.same(n)){var d=a.distanceTo(c);s+=o?1/d:d}}return o?s:1/s}};At.cc=At.closenessCentrality,At.ccn=At.closenessCentralityNormalised=At.closenessCentralityNormalized;var zt=we({weight:null,directed:!1}),Rt={betweennessCentrality:function(e){for(var t=zt(e),n=t.directed,r=t.weight,i=null!=r,a=this.cy(),s=this.nodes(),u={},l={},c=0,d=function(e,t){l[e]=t,t>c&&(c=t)},h=function(e){return l[e]},p=0;p<s.length;p++){var f=s[p],v=f.id();u[v]=n?f.outgoers().nodes():f.openNeighborhood().nodes(),d(v,0)}for(var g=function(e){for(var t=s[e].id(),n=[],l={},c={},p={},f=new o((function(e,t){return p[e]-p[t]})),v=0;v<s.length;v++){var g=s[v].id();l[g]=[],c[g]=0,p[g]=1/0}for(c[t]=1,p[t]=0,f.push(t);!f.empty();){var y=f.pop();if(n.push(y),i)for(var m=0;m<u[y].length;m++){var b=u[y][m],x=a.getElementById(y),w=void 0;w=x.edgesTo(b).length>0?x.edgesTo(b)[0]:b.edgesTo(x)[0];var E=r(w);b=b.id(),p[b]>p[y]+E&&(p[b]=p[y]+E,f.nodes.indexOf(b)<0?f.push(b):f.updateItem(b),c[b]=0,l[b]=[]),p[b]==p[y]+E&&(c[b]=c[b]+c[y],l[b].push(y))}else for(var k=0;k<u[y].length;k++){var P=u[y][k].id();p[P]==1/0&&(f.push(P),p[P]=p[y]+1),p[P]==p[y]+1&&(c[P]=c[P]+c[y],l[P].push(y))}}for(var S={},C=0;C<s.length;C++)S[s[C].id()]=0;for(;n.length>0;){for(var _=n.pop(),j=0;j<l[_].length;j++){var D=l[_][j];S[D]=S[D]+c[D]/c[_]*(1+S[_])}_!=s[e].id()&&d(_,h(_)+S[_])}},y=0;y<s.length;y++)g(y);var m={betweenness:function(e){var t=a.collection(e).id();return h(t)},betweennessNormalized:function(e){if(0==c)return 0;var t=a.collection(e).id();return h(t)/c}};return m.betweennessNormalised=m.betweennessNormalized,m}};Rt.bc=Rt.betweennessCentrality;var Ft=we({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(e){return 1}]}),Vt=function(e,t){for(var n=0,r=0;r<t.length;r++)n+=t[r](e);return n},qt=function(e,t){for(var n,r=0;r<t;r++){n=0;for(var i=0;i<t;i++)n+=e[i*t+r];for(var o=0;o<t;o++)e[o*t+r]=e[o*t+r]/n}},Yt=function(e,t,n){for(var r=new Array(n*n),i=0;i<n;i++){for(var o=0;o<n;o++)r[i*n+o]=0;for(var a=0;a<n;a++)for(var s=0;s<n;s++)r[i*n+s]+=e[i*n+a]*t[a*n+s]}return r},Xt=function(e,t,n){for(var r=e.slice(0),i=1;i<n;i++)e=Yt(e,r,t);return e},Ht=function(e,t,n){for(var r=new Array(t*t),i=0;i<t*t;i++)r[i]=Math.pow(e[i],n);return qt(r,t),r},Wt=function(e,t,n,r){for(var i=0;i<n;i++){if(Math.round(e[i]*Math.pow(10,r))/Math.pow(10,r)!==Math.round(t[i]*Math.pow(10,r))/Math.pow(10,r))return!1}return!0},Gt=function(e,t){for(var n=0;n<e.length;n++)if(!t[n]||e[n].id()!==t[n].id())return!1;return!0},Ut=function(e){for(var t=this.nodes(),n=this.edges(),r=this.cy(),i=function(e){return Ft(e)}(e),o={},a=0;a<t.length;a++)o[t[a].id()]=a;for(var s,u=t.length,l=u*u,c=new Array(l),d=0;d<l;d++)c[d]=0;for(var h=0;h<n.length;h++){var p=n[h],f=o[p.source().id()],v=o[p.target().id()],g=Vt(p,i.attributes);c[f*u+v]+=g,c[v*u+f]+=g}!function(e,t,n){for(var r=0;r<t;r++)e[r*t+r]=n}(c,u,i.multFactor),qt(c,u);for(var y=!0,m=0;y&&m<i.maxIterations;)y=!1,s=Xt(c,u,i.expandFactor),c=Ht(s,u,i.inflateFactor),Wt(c,s,l,4)||(y=!0),m++;var b=function(e,t,n,r){for(var i=[],o=0;o<t;o++){for(var a=[],s=0;s<t;s++)Math.round(1e3*e[o*t+s])/1e3>0&&a.push(n[s]);0!==a.length&&i.push(r.collection(a))}return i}(c,u,t,r);return b=function(e){for(var t=0;t<e.length;t++)for(var n=0;n<e.length;n++)t!=n&&Gt(e[t],e[n])&&e.splice(n,1);return e}(b),b},Kt={markovClustering:Ut,mcl:Ut},Qt=function(e){return e},Zt=function(e,t){return Math.abs(t-e)},$t=function(e,t,n){return e+Zt(t,n)},Jt=function(e,t,n){return e+Math.pow(n-t,2)},en=function(e){return Math.sqrt(e)},tn=function(e,t,n){return Math.max(e,Zt(t,n))},nn=function(e,t,n,r,i){for(var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:Qt,a=r,s=0;s<e;s++)a=i(a,t(s),n(s));return o(a)},rn={euclidean:function(e,t,n){return e>=2?nn(e,t,n,0,Jt,en):nn(e,t,n,0,$t)},squaredEuclidean:function(e,t,n){return nn(e,t,n,0,Jt)},manhattan:function(e,t,n){return nn(e,t,n,0,$t)},max:function(e,t,n){return nn(e,t,n,-1/0,tn)}};function on(e,t,n,r,i,o){var a;return a=x(e)?e:rn[e]||rn.euclidean,0===t&&x(e)?a(i,o):a(t,n,r,i,o)}rn["squared-euclidean"]=rn.squaredEuclidean,rn.squaredeuclidean=rn.squaredEuclidean;var an=we({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),sn=function(e){return an(e)},un=function(e,t,n,r,i){var o="kMedoids"!==i?function(e){return n[e]}:function(e){return r[e](n)},a=n,s=t;return on(e,r.length,o,(function(e){return r[e](t)}),a,s)},ln=function(e,t,n){for(var r=n.length,i=new Array(r),o=new Array(r),a=new Array(t),s=null,u=0;u<r;u++)i[u]=e.min(n[u]).value,o[u]=e.max(n[u]).value;for(var l=0;l<t;l++){s=[];for(var c=0;c<r;c++)s[c]=Math.random()*(o[c]-i[c])+i[c];a[l]=s}return a},cn=function(e,t,n,r,i){for(var o=1/0,a=0,s=0;s<t.length;s++){var u=un(n,e,t[s],r,i);u<o&&(o=u,a=s)}return a},dn=function(e,t,n){for(var r=[],i=null,o=0;o<t.length;o++)n[(i=t[o]).id()]===e&&r.push(i);return r},hn=function(e,t,n){for(var r=0;r<e.length;r++)for(var i=0;i<e[r].length;i++){if(Math.abs(e[r][i]-t[r][i])>n)return!1}return!0},pn=function(e,t,n){for(var r=0;r<n;r++)if(e===t[r])return!0;return!1},fn=function(e,t){var n=new Array(t);if(e.length<50)for(var r=0;r<t;r++){for(var i=e[Math.floor(Math.random()*e.length)];pn(i,n,r);)i=e[Math.floor(Math.random()*e.length)];n[r]=i}else for(var o=0;o<t;o++)n[o]=e[Math.floor(Math.random()*e.length)];return n},vn=function(e,t,n){for(var r=0,i=0;i<t.length;i++)r+=un("manhattan",t[i],e,n,"kMedoids");return r},gn=function(e,t,n,r,i){for(var o,a,s=0;s<t.length;s++)for(var u=0;u<e.length;u++)r[s][u]=Math.pow(n[s][u],i.m);for(var l=0;l<e.length;l++)for(var c=0;c<i.attributes.length;c++){o=0,a=0;for(var d=0;d<t.length;d++)o+=r[d][l]*i.attributes[c](t[d]),a+=r[d][l];e[l][c]=o/a}},yn=function(e,t,n,r,i){for(var o=0;o<e.length;o++)t[o]=e[o].slice();for(var a,s,u,l=2/(i.m-1),c=0;c<n.length;c++)for(var d=0;d<r.length;d++){a=0;for(var h=0;h<n.length;h++)s=un(i.distance,r[d],n[c],i.attributes,"cmeans"),u=un(i.distance,r[d],n[h],i.attributes,"cmeans"),a+=Math.pow(s/u,l);e[d][c]=1/a}},mn=function(e){var t,n,r,i,o,a=this.cy(),s=this.nodes(),u=sn(e);i=new Array(s.length);for(var l=0;l<s.length;l++)i[l]=new Array(u.k);r=new Array(s.length);for(var c=0;c<s.length;c++)r[c]=new Array(u.k);for(var d=0;d<s.length;d++){for(var h=0,p=0;p<u.k;p++)r[d][p]=Math.random(),h+=r[d][p];for(var f=0;f<u.k;f++)r[d][f]=r[d][f]/h}n=new Array(u.k);for(var v=0;v<u.k;v++)n[v]=new Array(u.attributes.length);o=new Array(s.length);for(var g=0;g<s.length;g++)o[g]=new Array(u.k);for(var y=!0,m=0;y&&m<u.maxIterations;)y=!1,gn(n,s,r,o,u),yn(r,i,n,s,u),hn(r,i,u.sensitivityThreshold)||(y=!0),m++;return t=function(e,t,n,r){for(var i,o,a=new Array(n.k),s=0;s<a.length;s++)a[s]=[];for(var u=0;u<t.length;u++){i=-1/0,o=-1;for(var l=0;l<t[0].length;l++)t[u][l]>i&&(i=t[u][l],o=l);a[o].push(e[u])}for(var c=0;c<a.length;c++)a[c]=r.collection(a[c]);return a}(s,r,u,a),{clusters:t,degreeOfMembership:r}},bn={kMeans:function(e){var t,n=this.cy(),r=this.nodes(),i=null,o=sn(e),s=new Array(o.k),u={};t=o.testMode?"number"==typeof o.testCentroids?ln(r,o.k,o.attributes):"object"===a(o.testCentroids)?o.testCentroids:ln(r,o.k,o.attributes):ln(r,o.k,o.attributes);for(var l,c,d,h=!0,p=0;h&&p<o.maxIterations;){for(var f=0;f<r.length;f++)u[(i=r[f]).id()]=cn(i,t,o.distance,o.attributes,"kMeans");h=!1;for(var v=0;v<o.k;v++){var g=dn(v,r,u);if(0!==g.length){for(var y=o.attributes.length,m=t[v],b=new Array(y),x=new Array(y),w=0;w<y;w++){x[w]=0;for(var E=0;E<g.length;E++)i=g[E],x[w]+=o.attributes[w](i);b[w]=x[w]/g.length,l=b[w],c=m[w],d=o.sensitivityThreshold,Math.abs(c-l)<=d||(h=!0)}t[v]=b,s[v]=n.collection(g)}}p++}return s},kMedoids:function(e){var t,n,r=this.cy(),i=this.nodes(),o=null,s=sn(e),u=new Array(s.k),l={},c=new Array(s.k);s.testMode?"number"==typeof s.testCentroids||(t="object"===a(s.testCentroids)?s.testCentroids:fn(i,s.k)):t=fn(i,s.k);for(var d=!0,h=0;d&&h<s.maxIterations;){for(var p=0;p<i.length;p++)l[(o=i[p]).id()]=cn(o,t,s.distance,s.attributes,"kMedoids");d=!1;for(var f=0;f<t.length;f++){var v=dn(f,i,l);if(0!==v.length){c[f]=vn(t[f],v,s.attributes);for(var g=0;g<v.length;g++)(n=vn(v[g],v,s.attributes))<c[f]&&(c[f]=n,t[f]=v[g],d=!0);u[f]=r.collection(v)}}h++}return u},fuzzyCMeans:mn,fcm:mn},xn=we({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),wn={single:"min",complete:"max"},En=function(e,t,n,r,i){for(var o,a=0,s=1/0,u=i.attributes,l=function(e,t){return on(i.distance,u.length,(function(t){return u[t](e)}),(function(e){return u[e](t)}),e,t)},c=0;c<e.length;c++){var d=e[c].key,h=n[d][r[d]];h<s&&(a=d,s=h)}if("threshold"===i.mode&&s>=i.threshold||"dendrogram"===i.mode&&1===e.length)return!1;var p,f=t[a],v=t[r[a]];p="dendrogram"===i.mode?{left:f,right:v,key:f.key}:{value:f.value.concat(v.value),key:f.key},e[f.index]=p,e.splice(v.index,1),t[f.key]=p;for(var g=0;g<e.length;g++){var y=e[g];f.key===y.key?o=1/0:"min"===i.linkage?(o=n[f.key][y.key],n[f.key][y.key]>n[v.key][y.key]&&(o=n[v.key][y.key])):"max"===i.linkage?(o=n[f.key][y.key],n[f.key][y.key]<n[v.key][y.key]&&(o=n[v.key][y.key])):o="mean"===i.linkage?(n[f.key][y.key]*f.size+n[v.key][y.key]*v.size)/(f.size+v.size):"dendrogram"===i.mode?l(y.value,f.value):l(y.value[0],f.value[0]),n[f.key][y.key]=n[y.key][f.key]=o}for(var m=0;m<e.length;m++){var b=e[m].key;if(r[b]===f.key||r[b]===v.key){for(var x=b,w=0;w<e.length;w++){var E=e[w].key;n[b][E]<n[b][x]&&(x=E)}r[b]=x}e[m].index=m}return f.key=v.key=f.index=v.index=null,!0},kn=function e(t,n,r){t&&(t.value?n.push(t.value):(t.left&&e(t.left,n),t.right&&e(t.right,n)))},Pn=function e(t,n){if(!t)return"";if(t.left&&t.right){var r=e(t.left,n),i=e(t.right,n),o=n.add({group:"nodes",data:{id:r+","+i}});return n.add({group:"edges",data:{source:r,target:o.id()}}),n.add({group:"edges",data:{source:i,target:o.id()}}),o.id()}return t.value?t.value.id():void 0},Sn=function e(t,n,r){if(!t)return[];var i=[],o=[],a=[];return 0===n?(t.left&&kn(t.left,i),t.right&&kn(t.right,o),a=i.concat(o),[r.collection(a)]):1===n?t.value?[r.collection(t.value)]:(t.left&&kn(t.left,i),t.right&&kn(t.right,o),[r.collection(i),r.collection(o)]):t.value?[r.collection(t.value)]:(t.left&&(i=e(t.left,n-1,r)),t.right&&(o=e(t.right,n-1,r)),i.concat(o))},Cn=function(e){for(var t=this.cy(),n=this.nodes(),r=function(e){var t=xn(e),n=wn[t.linkage];return null!=n&&(t.linkage=n),t}(e),i=r.attributes,o=function(e,t){return on(r.distance,i.length,(function(t){return i[t](e)}),(function(e){return i[e](t)}),e,t)},a=[],s=[],u=[],l=[],c=0;c<n.length;c++){var d={value:"dendrogram"===r.mode?n[c]:[n[c]],key:c,index:c};a[c]=d,l[c]=d,s[c]=[],u[c]=0}for(var h=0;h<a.length;h++)for(var p=0;p<=h;p++){var f=void 0;f="dendrogram"===r.mode?h===p?1/0:o(a[h].value,a[p].value):h===p?1/0:o(a[h].value[0],a[p].value[0]),s[h][p]=f,s[p][h]=f,f<s[h][u[h]]&&(u[h]=p)}for(var v,g=En(a,l,s,u,r);g;)g=En(a,l,s,u,r);return"dendrogram"===r.mode?(v=Sn(a[0],r.dendrogramDepth,t),r.addDendrogram&&Pn(a[0],t)):(v=new Array(a.length),a.forEach((function(e,n){e.key=e.index=null,v[n]=t.collection(e.value)}))),v},_n={hierarchicalClustering:Cn,hca:Cn},jn=we({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),Dn=function(e,t,n,r){var i=function(e,t){return r[t](e)};return-on(e,r.length,(function(e){return i(t,e)}),(function(e){return i(n,e)}),t,n)},Tn=function(e,t){var n=null;return n="median"===t?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n<e.length&&e.splice(n,e.length-n),t>0&&e.splice(0,t)):e=e.slice(t,n);for(var o=0,a=e.length-1;a>=0;a--){var s=e[a];i?isFinite(s)||(e[a]=-1/0,o++):e.splice(a,1)}r&&e.sort((function(e,t){return e-t}));var u=e.length,l=Math.floor(u/2);return u%2!=0?e[l+1+o]:(e[l-1+o]+e[l+o])/2}(e):"mean"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=0,i=0,o=t;o<n;o++){var a=e[o];isFinite(a)&&(r+=a,i++)}return r/i}(e):"min"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=1/0,i=t;i<n;i++){var o=e[i];isFinite(o)&&(r=Math.min(o,r))}return r}(e):"max"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=-1/0,i=t;i<n;i++){var o=e[i];isFinite(o)&&(r=Math.max(o,r))}return r}(e):t,n},Bn=function(e,t,n){for(var r=[],i=0;i<e;i++){for(var o=-1,a=-1/0,s=0;s<n.length;s++){var u=n[s];t[i*e+u]>a&&(o=u,a=t[i*e+u])}o>0&&r.push(o)}for(var l=0;l<n.length;l++)r[n[l]]=n[l];return r},On=function(e){for(var t,n,r,i,o,a,s=this.cy(),u=this.nodes(),l=function(e){var t=e.damping,n=e.preference;.5<=t&&t<1||fe("Damping must range on [0.5, 1). Got: ".concat(t));var r=["median","mean","min","max"];return r.some((function(e){return e===n}))||k(n)||fe("Preference must be one of [".concat(r.map((function(e){return"'".concat(e,"'")})).join(", "),"] or a number. Got: ").concat(n)),jn(e)}(e),c={},d=0;d<u.length;d++)c[u[d].id()]=d;n=(t=u.length)*t,r=new Array(n);for(var h=0;h<n;h++)r[h]=-1/0;for(var p=0;p<t;p++)for(var f=0;f<t;f++)p!==f&&(r[p*t+f]=Dn(l.distance,u[p],u[f],l.attributes));i=Tn(r,l.preference);for(var v=0;v<t;v++)r[v*t+v]=i;o=new Array(n);for(var g=0;g<n;g++)o[g]=0;a=new Array(n);for(var y=0;y<n;y++)a[y]=0;for(var m=new Array(t),b=new Array(t),x=new Array(t),w=0;w<t;w++)m[w]=0,b[w]=0,x[w]=0;for(var E,P=new Array(t*l.minIterations),S=0;S<P.length;S++)P[S]=0;for(E=0;E<l.maxIterations;E++){for(var C=0;C<t;C++){for(var _=-1/0,j=-1/0,D=-1,T=0,B=0;B<t;B++)m[B]=o[C*t+B],(T=a[C*t+B]+r[C*t+B])>=_?(j=_,_=T,D=B):T>j&&(j=T);for(var O=0;O<t;O++)o[C*t+O]=(1-l.damping)*(r[C*t+O]-_)+l.damping*m[O];o[C*t+D]=(1-l.damping)*(r[C*t+D]-j)+l.damping*m[D]}for(var M=0;M<t;M++){for(var N=0,I=0;I<t;I++)m[I]=a[I*t+M],b[I]=Math.max(0,o[I*t+M]),N+=b[I];N-=b[M],b[M]=o[M*t+M],N+=b[M];for(var L=0;L<t;L++)a[L*t+M]=(1-l.damping)*Math.min(0,N-b[L])+l.damping*m[L];a[M*t+M]=(1-l.damping)*(N-b[M])+l.damping*m[M]}for(var A=0,z=0;z<t;z++){var R=a[z*t+z]+o[z*t+z]>0?1:0;P[E%l.minIterations*t+z]=R,A+=R}if(A>0&&(E>=l.minIterations-1||E==l.maxIterations-1)){for(var F=0,V=0;V<t;V++){x[V]=0;for(var q=0;q<l.minIterations;q++)x[V]+=P[q*t+V];0!==x[V]&&x[V]!==l.minIterations||F++}if(F===t)break}}for(var Y=function(e,t,n){for(var r=[],i=0;i<e;i++)t[i*e+i]+n[i*e+i]>0&&r.push(i);return r}(t,o,a),X=function(e,t,n){for(var r=Bn(e,t,n),i=0;i<n.length;i++){for(var o=[],a=0;a<r.length;a++)r[a]===n[i]&&o.push(a);for(var s=-1,u=-1/0,l=0;l<o.length;l++){for(var c=0,d=0;d<o.length;d++)c+=t[o[d]*e+o[l]];c>u&&(s=l,u=c)}n[i]=o[s]}return Bn(e,t,n)}(t,r,Y),H={},W=0;W<Y.length;W++)H[Y[W]]=[];for(var G=0;G<u.length;G++){var U=X[c[u[G].id()]];null!=U&&H[U].push(u[G])}for(var K=new Array(Y.length),Q=0;Q<Y.length;Q++)K[Q]=s.collection(H[Y[Q]]);return K},Mn={affinityPropagation:On,ap:On},Nn=we({root:void 0,directed:!1}),In=function(){var e=this,t={},n=0,r=0,i=[],o=[],a={},s=function s(u,l,c){u===c&&(r+=1),t[l]={id:n,low:n++,cutVertex:!1};var d,h,p,f,v=e.getElementById(l).connectedEdges().intersection(e);0===v.size()?i.push(e.spawn(e.getElementById(l))):v.forEach((function(n){d=n.source().id(),h=n.target().id(),(p=d===l?h:d)!==c&&(f=n.id(),a[f]||(a[f]=!0,o.push({x:l,y:p,edge:n})),p in t?t[l].low=Math.min(t[l].low,t[p].id):(s(u,p,l),t[l].low=Math.min(t[l].low,t[p].low),t[l].id<=t[p].low&&(t[l].cutVertex=!0,function(n,r){for(var a=o.length-1,s=[],u=e.spawn();o[a].x!=n||o[a].y!=r;)s.push(o.pop().edge),a--;s.push(o.pop().edge),s.forEach((function(n){var r=n.connectedNodes().intersection(e);u.merge(n),r.forEach((function(n){var r=n.id(),i=n.connectedEdges().intersection(e);u.merge(n),t[r].cutVertex?u.merge(i.filter((function(e){return e.isLoop()}))):u.merge(i)}))})),i.push(u)}(l,p))))}))};e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||(r=0,s(n,n),t[n].cutVertex=r>1)}}));var u=Object.keys(t).filter((function(e){return t[e].cutVertex})).map((function(t){return e.getElementById(t)}));return{cut:e.spawn(u),components:i}},Ln=function(){var e=this,t={},n=0,r=[],i=[],o=e.spawn(e),a=function a(s){if(i.push(s),t[s]={index:n,low:n++,explored:!1},e.getElementById(s).connectedEdges().intersection(e).forEach((function(e){var n=e.target().id();n!==s&&(n in t||a(n),t[n].explored||(t[s].low=Math.min(t[s].low,t[n].low)))})),t[s].index===t[s].low){for(var u=e.spawn();;){var l=i.pop();if(u.merge(e.getElementById(l)),t[l].low=t[s].index,t[l].explored=!0,l===s)break}var c=u.edgesWith(u),d=u.merge(c);r.push(d),o=o.difference(d)}};return e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||a(n)}})),{cut:o,components:r}},An={};[Be,Me,Ne,Le,ze,Fe,Xe,Mt,It,At,Rt,Kt,bn,_n,Mn,{hierholzer:function(e){if(!E(e)){var t=arguments;e={root:t[0],directed:t[1]}}var n,r,i,o=Nn(e),a=o.root,s=o.directed,u=this,l=!1;a&&(i=b(a)?this.filter(a)[0].id():a[0].id());var c={},d={};s?u.forEach((function(e){var t=e.id();if(e.isNode()){var i=e.indegree(!0),o=e.outdegree(!0),a=i-o,s=o-i;1==a?n?l=!0:n=t:1==s?r?l=!0:r=t:(s>1||a>1)&&(l=!0),c[t]=[],e.outgoers().forEach((function(e){e.isEdge()&&c[t].push(e.id())}))}else d[t]=[void 0,e.target().id()]})):u.forEach((function(e){var t=e.id();e.isNode()?(e.degree(!0)%2&&(n?r?l=!0:r=t:n=t),c[t]=[],e.connectedEdges().forEach((function(e){return c[t].push(e.id())}))):d[t]=[e.source().id(),e.target().id()]}));var h={found:!1,trail:void 0};if(l)return h;if(r&&n)if(s){if(i&&r!=i)return h;i=r}else{if(i&&r!=i&&n!=i)return h;i||(i=r)}else i||(i=u[0].id());var p=function(e){for(var t,n,r,i=e,o=[e];c[i].length;)t=c[i].shift(),n=d[t][0],i!=(r=d[t][1])?(c[r]=c[r].filter((function(e){return e!=t})),i=r):s||i==n||(c[n]=c[n].filter((function(e){return e!=t})),i=n),o.unshift(t),o.unshift(i);return o},f=[],v=[];for(v=p(i);1!=v.length;)0==c[v[0]].length?(f.unshift(u.getElementById(v.shift())),f.unshift(u.getElementById(v.shift()))):v=p(v.shift()).concat(v);for(var g in f.unshift(u.getElementById(v.shift())),c)if(c[g].length)return h;return h.found=!0,h.trail=this.spawn(f,!0),h}},{hopcroftTarjanBiconnected:In,htbc:In,htb:In,hopcroftTarjanBiconnectedComponents:In},{tarjanStronglyConnected:Ln,tsc:Ln,tscc:Ln,tarjanStronglyConnectedComponents:Ln}].forEach((function(e){R(An,e)}));var zn=function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof t&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))};zn.prototype={fulfill:function(e){return Rn(this,1,"fulfillValue",e)},reject:function(e){return Rn(this,2,"rejectReason",e)},then:function(e,t){var n=this,r=new zn;return n.onFulfilled.push(qn(e,r,"fulfill")),n.onRejected.push(qn(t,r,"reject")),Fn(n),r.proxy}};var Rn=function(e,t,n,r){return 0===e.state&&(e.state=t,e[n]=r,Fn(e)),e},Fn=function(e){1===e.state?Vn(e,"onFulfilled",e.fulfillValue):2===e.state&&Vn(e,"onRejected",e.rejectReason)},Vn=function(e,t,n){if(0!==e[t].length){var r=e[t];e[t]=[];var i=function(){for(var e=0;e<r.length;e++)r[e](n)};"function"==typeof setImmediate?setImmediate(i):setTimeout(i,0)}},qn=function(e,t,n){return function(r){if("function"!=typeof e)t[n].call(t,r);else{var i;try{i=e(r)}catch(o){return void t.reject(o)}Yn(t,i)}}},Yn=function e(t,n){if(t!==n&&t.proxy!==n){var r;if("object"===a(n)&&null!==n||"function"==typeof n)try{r=n.then}catch(o){return void t.reject(o)}if("function"!=typeof r)t.fulfill(n);else{var i=!1;try{r.call(n,(function(r){i||(i=!0,r===n?t.reject(new TypeError("circular thenable chain")):e(t,r))}),(function(e){i||(i=!0,t.reject(e))}))}catch(o){i||t.reject(o)}}}else t.reject(new TypeError("cannot resolve promise with itself"))};zn.all=function(e){return new zn((function(t,n){for(var r=new Array(e.length),i=0,o=function(n,o){r[n]=o,++i===e.length&&t(r)},a=0;a<e.length;a++)!function(t){var r=e[t];null!=r&&null!=r.then?r.then((function(e){o(t,e)}),(function(e){n(e)})):o(t,r)}(a)}))},zn.resolve=function(e){return new zn((function(t,n){t(e)}))},zn.reject=function(e){return new zn((function(t,n){n(e)}))};var Xn="undefined"!=typeof Promise?Promise:zn,Hn=function(e,t,n){var r=j(e),i=!r,o=this._private=R({duration:1e3},t,n);if(o.target=e,o.style=o.style||o.css,o.started=!1,o.playing=!1,o.hooked=!1,o.applying=!1,o.progress=0,o.completes=[],o.frames=[],o.complete&&x(o.complete)&&o.completes.push(o.complete),i){var a=e.position();o.startPosition=o.startPosition||{x:a.x,y:a.y},o.startStyle=o.startStyle||e.cy().style().getAnimationStartStyle(e,o.style)}if(r){var s=e.pan();o.startPan={x:s.x,y:s.y},o.startZoom=e.zoom()}this.length=1,this[0]=this},Wn=Hn.prototype;R(Wn,{instanceString:function(){return"animation"},hook:function(){var e=this._private;if(!e.hooked){var t=e.target._private.animation;(e.queue?t.queue:t.current).push(this),S(e.target)&&e.target.cy().addToAnimationPool(e.target),e.hooked=!0}return this},play:function(){var e=this._private;return 1===e.progress&&(e.progress=0),e.playing=!0,e.started=!1,e.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var e=this._private;return e.applying=!0,e.started=!1,e.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var e=this._private;return e.playing=!1,e.started=!1,this},stop:function(){var e=this._private;return e.playing=!1,e.started=!1,e.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(e){var t=this._private;return void 0===e?t.progress*t.duration:this.progress(e/t.duration)},progress:function(e){var t=this._private,n=t.playing;return void 0===e?t.progress:(n&&this.pause(),t.progress=e,t.started=!1,n&&this.play(),this)},completed:function(){return 1===this._private.progress},reverse:function(){var e=this._private,t=e.playing;t&&this.pause(),e.progress=1-e.progress,e.started=!1;var n=function(t,n){var r=e[t];null!=r&&(e[t]=e[n],e[n]=r)};if(n("zoom","startZoom"),n("pan","startPan"),n("position","startPosition"),e.style)for(var r=0;r<e.style.length;r++){var i=e.style[r],o=i.name,a=e.startStyle[o];e.startStyle[o]=i,e.style[r]=a}return t&&this.play(),this},promise:function(e){var t,n=this._private;if("frame"===e)t=n.frames;else t=n.completes;return new Xn((function(e,n){t.push((function(){e()}))}))}}),Wn.complete=Wn.completed,Wn.run=Wn.play,Wn.running=Wn.playing;var Gn={animated:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return!1;var n=t[0];return n?n._private.animation.current.length>0:void 0}},clearQueue:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n<t.length;n++){t[n]._private.animation.queue=[]}return this}},delay:function(){return function(e,t){return(this._private.cy||this).styleEnabled()?this.animate({delay:e,duration:e,complete:t}):this}},delayAnimation:function(){return function(e,t){return(this._private.cy||this).styleEnabled()?this.animation({delay:e,duration:e,complete:t}):this}},animation:function(){return function(e,t){var n=this,r=void 0!==n.length,i=r?n:[n],o=this._private.cy||this,a=!r,s=!a;if(!o.styleEnabled())return this;var u=o.style();if(e=R({},e,t),0===Object.keys(e).length)return new Hn(i[0],e);switch(void 0===e.duration&&(e.duration=400),e.duration){case"slow":e.duration=600;break;case"fast":e.duration=200}if(s&&(e.style=u.getPropsList(e.style||e.css),e.css=void 0),s&&null!=e.renderedPosition){var l=e.renderedPosition,c=o.pan(),d=o.zoom();e.position=We(l,d,c)}if(a&&null!=e.panBy){var h=e.panBy,p=o.pan();e.pan={x:p.x+h.x,y:p.y+h.y}}var f=e.center||e.centre;if(a&&null!=f){var v=o.getCenterPan(f.eles,e.zoom);null!=v&&(e.pan=v)}if(a&&null!=e.fit){var g=e.fit,y=o.getFitViewport(g.eles||g.boundingBox,g.padding);null!=y&&(e.pan=y.pan,e.zoom=y.zoom)}if(a&&E(e.zoom)){var m=o.getZoomedViewport(e.zoom);null!=m?(m.zoomed&&(e.zoom=m.zoom),m.panned&&(e.pan=m.pan)):e.zoom=null}return new Hn(i[0],e)}},animate:function(){return function(e,t){var n=this,r=void 0!==n.length?n:[n];if(!(this._private.cy||this).styleEnabled())return this;t&&(e=R({},e,t));for(var i=0;i<r.length;i++){var o=r[i],a=o.animated()&&(void 0===e.queue||e.queue);o.animation(e,a?{queue:!0}:void 0).play()}return this}},stop:function(){return function(e,t){var n=this,r=void 0!==n.length?n:[n],i=this._private.cy||this;if(!i.styleEnabled())return this;for(var o=0;o<r.length;o++){for(var a=r[o]._private,s=a.animation.current,u=0;u<s.length;u++){var l=s[u]._private;t&&(l.duration=0)}e&&(a.animation.queue=[]),t||(a.animation.current=[])}return i.notify("draw"),this}}},Un={data:function(e){return e=R({},{field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(e){},beforeSet:function(e,t){},onSet:function(e){},canSet:function(e){return!0}},e),function(t,n){var r=e,i=this,o=void 0!==i.length,a=o?i:[i],s=o?i[0]:i;if(b(t)){var u;if(r.allowGetting&&void 0===n)return s&&(r.beforeGet(s),u=s._private[r.field][t]),u;if(r.allowSetting&&void 0!==n&&!r.immutableKeys[t]){var l=c({},t,n);r.beforeSet(i,l);for(var d=0,h=a.length;d<h;d++){var p=a[d];r.canSet(p)&&(p._private[r.field][t]=n)}r.updateStyle&&i.updateStyle(),r.onSet(i),r.settingTriggersEvent&&i[r.triggerFnName](r.settingEvent)}}else if(r.allowSetting&&E(t)){var f,v,g=t,y=Object.keys(g);r.beforeSet(i,g);for(var m=0;m<y.length;m++){if(v=g[f=y[m]],!r.immutableKeys[f])for(var w=0;w<a.length;w++){var k=a[w];r.canSet(k)&&(k._private[r.field][f]=v)}}r.updateStyle&&i.updateStyle(),r.onSet(i),r.settingTriggersEvent&&i[r.triggerFnName](r.settingEvent)}else if(r.allowBinding&&x(t)){var P=t;i.on(r.bindingEvent,P)}else if(r.allowGetting&&void 0===t){var S;return s&&(r.beforeGet(s),S=s._private[r.field]),S}return i}},removeData:function(e){return e=R({},{field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}},e),function(t){var n=e,r=this,i=void 0!==r.length?r:[r];if(b(t)){for(var o=t.split(/\s+/),a=o.length,s=0;s<a;s++){var u=o[s];if(!T(u))if(!n.immutableKeys[u])for(var l=0,c=i.length;l<c;l++)i[l]._private[n.field][u]=void 0}n.triggerEvent&&r[n.triggerFnName](n.event)}else if(void 0===t){for(var d=0,h=i.length;d<h;d++)for(var p=i[d]._private[n.field],f=Object.keys(p),v=0;v<f.length;v++){var g=f[v];!n.immutableKeys[g]&&(p[g]=void 0)}n.triggerEvent&&r[n.triggerFnName](n.event)}return r}}},Kn={eventAliasesOn:function(e){var t=e;t.addListener=t.listen=t.bind=t.on,t.unlisten=t.unbind=t.off=t.removeListener,t.trigger=t.emit,t.pon=t.promiseOn=function(e,t){var n=this,r=Array.prototype.slice.call(arguments,0);return new Xn((function(e,t){var i=r.concat([function(t){n.off.apply(n,o),e(t)}]),o=i.concat([]);n.on.apply(n,i)}))}}},Qn={};[Gn,Un,Kn].forEach((function(e){R(Qn,e)}));var Zn={animate:Qn.animate(),animation:Qn.animation(),animated:Qn.animated(),clearQueue:Qn.clearQueue(),delay:Qn.delay(),delayAnimation:Qn.delayAnimation(),stop:Qn.stop()},$n={classes:function(e){var t=this;if(void 0===e){var n=[];return t[0]._private.classes.forEach((function(e){return n.push(e)})),n}w(e)||(e=(e||"").match(/\S+/g)||[]);for(var r=[],i=new je(e),o=0;o<t.length;o++){for(var a=t[o],s=a._private,u=s.classes,l=!1,c=0;c<e.length;c++){var d=e[c];if(!u.has(d)){l=!0;break}}l||(l=u.size!==e.length),l&&(s.classes=i,r.push(a))}return r.length>0&&this.spawn(r).updateStyle().emit("class"),t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return null!=t&&t._private.classes.has(e)},toggleClass:function(e,t){w(e)||(e=e.match(/\S+/g)||[]);for(var n=this,r=void 0===t,i=[],o=0,a=n.length;o<a;o++)for(var s=n[o],u=s._private.classes,l=!1,c=0;c<e.length;c++){var d=e[c],h=u.has(d),p=!1;t||r&&!h?(u.add(d),p=!0):(!t||r&&h)&&(u.delete(d),p=!0),!l&&p&&(i.push(s),l=!0)}return i.length>0&&this.spawn(i).updateStyle().emit("class"),n},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var n=this;if(null==t)t=250;else if(0===t)return n;return n.addClass(e),setTimeout((function(){n.removeClass(e)}),t),n}};$n.className=$n.classNames=$n.classes;var Jn={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:A,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Jn.variable="(?:[\\w-]|(?:\\\\"+Jn.metaChar+"))+",Jn.value=Jn.string+"|"+Jn.number,Jn.className=Jn.variable,Jn.id=Jn.variable,function(){var e,t,n;for(e=Jn.comparatorOp.split("|"),n=0;n<e.length;n++)t=e[n],Jn.comparatorOp+="|@"+t;for(e=Jn.comparatorOp.split("|"),n=0;n<e.length;n++)(t=e[n]).indexOf("!")>=0||"="!==t&&(Jn.comparatorOp+="|\\!"+t)}();var er=0,tr=1,nr=2,rr=3,ir=4,or=5,ar=6,sr=7,ur=8,lr=9,cr=10,dr=11,hr=12,pr=13,fr=14,vr=15,gr=16,yr=17,mr=18,br=19,xr=20,wr=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort((function(e,t){return function(e,t){return-1*z(e,t)}(e.selector,t.selector)})),Er=function(){for(var e,t={},n=0;n<wr.length;n++)t[(e=wr[n]).selector]=e.matches;return t}(),kr="("+wr.map((function(e){return e.selector})).join("|")+")",Pr=function(e){return e.replace(new RegExp("\\\\("+Jn.metaChar+")","g"),(function(e,t){return t}))},Sr=function(e,t,n){e[e.length-1]=n},Cr=[{name:"group",query:!0,regex:"("+Jn.group+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:er,value:"*"===r?r:r+"s"})}},{name:"state",query:!0,regex:kr,populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:sr,value:r})}},{name:"id",query:!0,regex:"\\#("+Jn.id+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:ur,value:Pr(r)})}},{name:"className",query:!0,regex:"\\.("+Jn.className+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:lr,value:Pr(r)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+Jn.variable+")\\s*\\]",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:ir,field:Pr(r)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+Jn.variable+")\\s*("+Jn.comparatorOp+")\\s*("+Jn.value+")\\s*\\]",populate:function(e,t,n){var r=d(n,3),i=r[0],o=r[1],a=r[2];a=null!=new RegExp("^"+Jn.string+"$").exec(a)?a.substring(1,a.length-1):parseFloat(a),t.checks.push({type:rr,field:Pr(i),operator:o,value:a})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+Jn.boolOp+")\\s*("+Jn.variable+")\\s*\\]",populate:function(e,t,n){var r=d(n,2),i=r[0],o=r[1];t.checks.push({type:or,field:Pr(o),operator:i})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+Jn.meta+")\\s*("+Jn.comparatorOp+")\\s*("+Jn.number+")\\s*\\]\\]",populate:function(e,t,n){var r=d(n,3),i=r[0],o=r[1],a=r[2];t.checks.push({type:ar,field:Pr(i),operator:o,value:parseFloat(a)})}},{name:"nextQuery",separator:!0,regex:Jn.separator,populate:function(e,t){var n=e.currentSubject,r=e.edgeCount,i=e.compoundCount,o=e[e.length-1];return null!=n&&(o.subject=n,e.currentSubject=null),o.edgeCount=r,o.compoundCount=i,e.edgeCount=0,e.compoundCount=0,e[e.length++]={checks:[]}}},{name:"directedEdge",separator:!0,regex:Jn.directedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,i={checks:[]};return n.checks.push({type:dr,source:r,target:i}),Sr(e,0,n),e.edgeCount++,i}var o={checks:[]},a=t,s={checks:[]};return o.checks.push({type:hr,source:a,target:s}),Sr(e,0,o),e.edgeCount++,s}},{name:"undirectedEdge",separator:!0,regex:Jn.undirectedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,i={checks:[]};return n.checks.push({type:cr,nodes:[r,i]}),Sr(e,0,n),e.edgeCount++,i}var o={checks:[]},a=t,s={checks:[]};return o.checks.push({type:fr,node:a,neighbor:s}),Sr(e,0,o),s}},{name:"child",separator:!0,regex:Jn.child,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},i=e[e.length-1];return n.checks.push({type:vr,parent:i,child:r}),Sr(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var o={checks:[]},a=e[e.length-1],s={checks:[]},u={checks:[]},l={checks:[]},c={checks:[]};return o.checks.push({type:br,left:a,right:s,subject:u}),u.checks=t.checks,t.checks=[{type:xr}],c.checks.push({type:xr}),s.checks.push({type:yr,parent:c,child:l}),Sr(e,0,o),e.currentSubject=u,e.compoundCount++,l}var d={checks:[]},h={checks:[]},p=[{type:yr,parent:d,child:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"descendant",separator:!0,regex:Jn.descendant,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},i=e[e.length-1];return n.checks.push({type:gr,ancestor:i,descendant:r}),Sr(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var o={checks:[]},a=e[e.length-1],s={checks:[]},u={checks:[]},l={checks:[]},c={checks:[]};return o.checks.push({type:br,left:a,right:s,subject:u}),u.checks=t.checks,t.checks=[{type:xr}],c.checks.push({type:xr}),s.checks.push({type:mr,ancestor:c,descendant:l}),Sr(e,0,o),e.currentSubject=u,e.compoundCount++,l}var d={checks:[]},h={checks:[]},p=[{type:mr,ancestor:d,descendant:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"subject",modifier:!0,regex:Jn.subject,populate:function(e,t){if(null!=e.currentSubject&&e.currentSubject!==t)return ge("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=t;var n=e[e.length-1].checks[0],r=null==n?null:n.type;r===dr?n.type=pr:r===cr&&(n.type=fr,n.node=n.nodes[1],n.neighbor=n.nodes[0],n.nodes=null)}}];Cr.forEach((function(e){return e.regexObj=new RegExp("^"+e.regex)}));var _r=function(e){for(var t,n,r,i=0;i<Cr.length;i++){var o=Cr[i],a=o.name,s=e.match(o.regexObj);if(null!=s){n=s,t=o,r=a;var u=s[0];e=e.substring(u.length);break}}return{expr:t,match:n,name:r,remaining:e}},jr={parse:function(e){var t=this,n=t.inputText=e,r=t[0]={checks:[]};for(t.length=1,n=function(e){var t=e.match(/^\s+/);if(t){var n=t[0];e=e.substring(n.length)}return e}(n);;){var i=_r(n);if(null==i.expr)return ge("The selector `"+e+"`is invalid"),!1;var o=i.match.slice(1),a=i.expr.populate(t,r,o);if(!1===a)return!1;if(null!=a&&(r=a),(n=i.remaining).match(/^\s*$/))break}var s=t[t.length-1];null!=t.currentSubject&&(s.subject=t.currentSubject),s.edgeCount=t.edgeCount,s.compoundCount=t.compoundCount;for(var u=0;u<t.length;u++){var l=t[u];if(l.compoundCount>0&&l.edgeCount>0)return ge("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(l.edgeCount>1)return ge("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;1===l.edgeCount&&ge("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var e=function(e){return null==e?"":e},t=function(t){return b(t)?'"'+t+'"':e(t)},n=function(e){return" "+e+" "},r=function(r,o){var a=r.type,s=r.value;switch(a){case er:var u=e(s);return u.substring(0,u.length-1);case rr:var l=r.field,c=r.operator;return"["+l+n(e(c))+t(s)+"]";case or:var d=r.operator,h=r.field;return"["+e(d)+h+"]";case ir:return"["+r.field+"]";case ar:var p=r.operator;return"[["+r.field+n(e(p))+t(s)+"]]";case sr:return s;case ur:return"#"+s;case lr:return"."+s;case yr:case vr:return i(r.parent,o)+n(">")+i(r.child,o);case mr:case gr:return i(r.ancestor,o)+" "+i(r.descendant,o);case br:var f=i(r.left,o),v=i(r.subject,o),g=i(r.right,o);return f+(f.length>0?" ":"")+v+g;case xr:return""}},i=function(e,t){return e.checks.reduce((function(n,i,o){return n+(t===e&&0===o?"$":"")+r(i,t)}),"")},o="",a=0;a<this.length;a++){var s=this[a];o+=i(s,s.subject),this.length>1&&a<this.length-1&&(o+=", ")}return this.toStringCache=o,o}},Dr=function(e,t,n){var r,i,o,a=b(e),s=k(e),u=b(n),l=!1,c=!1,d=!1;switch(t.indexOf("!")>=0&&(t=t.replace("!",""),c=!0),t.indexOf("@")>=0&&(t=t.replace("@",""),l=!0),(a||u||l)&&(i=a||s?""+e:"",o=""+n),l&&(e=i=i.toLowerCase(),n=o=o.toLowerCase()),t){case"*=":r=i.indexOf(o)>=0;break;case"$=":r=i.indexOf(o,i.length-o.length)>=0;break;case"^=":r=0===i.indexOf(o);break;case"=":r=e===n;break;case">":d=!0,r=e>n;break;case">=":d=!0,r=e>=n;break;case"<":d=!0,r=e<n;break;case"<=":d=!0,r=e<=n;break;default:r=!1}return!c||null==e&&d||(r=!r),r},Tr=function(e,t){return e.data(t)},Br=[],Or=function(e,t){return e.checks.every((function(e){return Br[e.type](e,t)}))};Br[er]=function(e,t){var n=e.value;return"*"===n||n===t.group()},Br[sr]=function(e,t){return function(e,t){return Er[e](t)}(e.value,t)},Br[ur]=function(e,t){var n=e.value;return t.id()===n},Br[lr]=function(e,t){var n=e.value;return t.hasClass(n)},Br[ar]=function(e,t){var n=e.field,r=e.operator,i=e.value;return Dr(function(e,t){return e[t]()}(t,n),r,i)},Br[rr]=function(e,t){var n=e.field,r=e.operator,i=e.value;return Dr(Tr(t,n),r,i)},Br[or]=function(e,t){var n=e.field,r=e.operator;return function(e,t){switch(t){case"?":return!!e;case"!":return!e;case"^":return void 0===e}}(Tr(t,n),r)},Br[ir]=function(e,t){var n=e.field;e.operator;return void 0!==Tr(t,n)},Br[cr]=function(e,t){var n=e.nodes[0],r=e.nodes[1],i=t.source(),o=t.target();return Or(n,i)&&Or(r,o)||Or(r,i)&&Or(n,o)},Br[fr]=function(e,t){return Or(e.node,t)&&t.neighborhood().some((function(t){return t.isNode()&&Or(e.neighbor,t)}))},Br[dr]=function(e,t){return Or(e.source,t.source())&&Or(e.target,t.target())},Br[hr]=function(e,t){return Or(e.source,t)&&t.outgoers().some((function(t){return t.isNode()&&Or(e.target,t)}))},Br[pr]=function(e,t){return Or(e.target,t)&&t.incomers().some((function(t){return t.isNode()&&Or(e.source,t)}))},Br[vr]=function(e,t){return Or(e.child,t)&&Or(e.parent,t.parent())},Br[yr]=function(e,t){return Or(e.parent,t)&&t.children().some((function(t){return Or(e.child,t)}))},Br[gr]=function(e,t){return Or(e.descendant,t)&&t.ancestors().some((function(t){return Or(e.ancestor,t)}))},Br[mr]=function(e,t){return Or(e.ancestor,t)&&t.descendants().some((function(t){return Or(e.descendant,t)}))},Br[br]=function(e,t){return Or(e.subject,t)&&Or(e.left,t)&&Or(e.right,t)},Br[xr]=function(){return!0},Br[tr]=function(e,t){return e.value.has(t)},Br[nr]=function(e,t){return(0,e.value)(t)};var Mr={matches:function(e){for(var t=0;t<this.length;t++){var n=this[t];if(Or(n,e))return!0}return!1},filter:function(e){var t=this;if(1===t.length&&1===t[0].checks.length&&t[0].checks[0].type===ur)return e.getElementById(t[0].checks[0].value).collection();var n=function(e){for(var n=0;n<t.length;n++){var r=t[n];if(Or(r,e))return!0}return!1};return null==t.text()&&(n=function(){return!0}),e.filter(n)}},Nr=function(e){this.inputText=e,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,null==e||b(e)&&e.match(/^\s*$/)||(S(e)?this.addQuery({checks:[{type:tr,value:e.collection()}]}):x(e)?this.addQuery({checks:[{type:nr,value:e}]}):b(e)?this.parse(e)||(this.invalid=!0):fe("A selector must be created from a string; found "))},Ir=Nr.prototype;[jr,Mr].forEach((function(e){return R(Ir,e)})),Ir.text=function(){return this.inputText},Ir.size=function(){return this.length},Ir.eq=function(e){return this[e]},Ir.sameText=function(e){return!this.invalid&&!e.invalid&&this.text()===e.text()},Ir.addQuery=function(e){this[this.length++]=e},Ir.selector=Ir.toString;var Lr={allAre:function(e){var t=new Nr(e);return this.every((function(e){return t.matches(e)}))},is:function(e){var t=new Nr(e);return this.some((function(e){return t.matches(e)}))},some:function(e,t){for(var n=0;n<this.length;n++){if(t?e.apply(t,[this[n],n,this]):e(this[n],n,this))return!0}return!1},every:function(e,t){for(var n=0;n<this.length;n++){if(!(t?e.apply(t,[this[n],n,this]):e(this[n],n,this)))return!1}return!0},same:function(e){if(this===e)return!0;e=this.cy().collection(e);var t=this.length;return t===e.length&&(1===t?this[0]===e[0]:this.every((function(t){return e.hasElementWithId(t.id())})))},anySame:function(e){return e=this.cy().collection(e),this.some((function(t){return e.hasElementWithId(t.id())}))},allAreNeighbors:function(e){e=this.cy().collection(e);var t=this.neighborhood();return e.every((function(e){return t.hasElementWithId(e.id())}))},contains:function(e){e=this.cy().collection(e);var t=this;return e.every((function(e){return t.hasElementWithId(e.id())}))}};Lr.allAreNeighbours=Lr.allAreNeighbors,Lr.has=Lr.contains,Lr.equal=Lr.equals=Lr.same;var Ar,zr,Rr=function(e,t){return function(n,r,i,o){var a,s=n,u=this;if(null==s?a="":S(s)&&1===s.length&&(a=s.id()),1===u.length&&a){var l=u[0]._private,c=l.traversalCache=l.traversalCache||{},d=c[t]=c[t]||[],h=re(a),p=d[h];return p||(d[h]=e.call(u,n,r,i,o))}return e.call(u,n,r,i,o)}},Fr={parent:function(e){var t=[];if(1===this.length){var n=this[0]._private.parent;if(n)return n}for(var r=0;r<this.length;r++){var i=this[r]._private.parent;i&&t.push(i)}return this.spawn(t,!0).filter(e)},parents:function(e){for(var t=[],n=this.parent();n.nonempty();){for(var r=0;r<n.length;r++){var i=n[r];t.push(i)}n=n.parent()}return this.spawn(t,!0).filter(e)},commonAncestors:function(e){for(var t,n=0;n<this.length;n++){var r=this[n].parents();t=(t=t||r).intersect(r)}return t.filter(e)},orphans:function(e){return this.stdFilter((function(e){return e.isOrphan()})).filter(e)},nonorphans:function(e){return this.stdFilter((function(e){return e.isChild()})).filter(e)},children:Rr((function(e){for(var t=[],n=0;n<this.length;n++)for(var r=this[n]._private.children,i=0;i<r.length;i++)t.push(r[i]);return this.spawn(t,!0).filter(e)}),"children"),siblings:function(e){return this.parent().children().not(this).filter(e)},isParent:function(){var e=this[0];if(e)return e.isNode()&&0!==e._private.children.length},isChildless:function(){var e=this[0];if(e)return e.isNode()&&0===e._private.children.length},isChild:function(){var e=this[0];if(e)return e.isNode()&&null!=e._private.parent},isOrphan:function(){var e=this[0];if(e)return e.isNode()&&null==e._private.parent},descendants:function(e){var t=[];return function e(n){for(var r=0;r<n.length;r++){var i=n[r];t.push(i),i.children().nonempty()&&e(i.children())}}(this.children()),this.spawn(t,!0).filter(e)}};function Vr(e,t,n,r){for(var i=[],o=new je,a=e.cy().hasCompoundNodes(),s=0;s<e.length;s++){var u=e[s];n?i.push(u):a&&r(i,o,u)}for(;i.length>0;){var l=i.shift();t(l),o.add(l.id()),a&&r(i,o,l)}return e}function qr(e,t,n){if(n.isParent())for(var r=n._private.children,i=0;i<r.length;i++){var o=r[i];t.has(o.id())||e.push(o)}}function Yr(e,t,n){if(n.isChild()){var r=n._private.parent;t.has(r.id())||e.push(r)}}function Xr(e,t,n){Yr(e,t,n),qr(e,t,n)}Fr.forEachDown=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,qr)},Fr.forEachUp=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,Yr)},Fr.forEachUpAndDown=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,Xr)},Fr.ancestors=Fr.parents,(Ar=zr={data:Qn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Qn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Qn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Qn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Qn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Qn.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}}).attr=Ar.data,Ar.removeAttr=Ar.removeData;var Hr,Wr,Gr=zr,Ur={};function Kr(e){return function(t){var n=this;if(void 0===t&&(t=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,i=n[0],o=i._private.edges,a=0;a<o.length;a++){var s=o[a];!t&&s.isLoop()||(r+=e(i,s))}return r}}}function Qr(e,t){return function(n){for(var r,i=this.nodes(),o=0;o<i.length;o++){var a=i[o][e](n);void 0===a||void 0!==r&&!t(a,r)||(r=a)}return r}}R(Ur,{degree:Kr((function(e,t){return t.source().same(t.target())?2:1})),indegree:Kr((function(e,t){return t.target().same(e)?1:0})),outdegree:Kr((function(e,t){return t.source().same(e)?1:0}))}),R(Ur,{minDegree:Qr("degree",(function(e,t){return e<t})),maxDegree:Qr("degree",(function(e,t){return e>t})),minIndegree:Qr("indegree",(function(e,t){return e<t})),maxIndegree:Qr("indegree",(function(e,t){return e>t})),minOutdegree:Qr("outdegree",(function(e,t){return e<t})),maxOutdegree:Qr("outdegree",(function(e,t){return e>t}))}),R(Ur,{totalDegree:function(e){for(var t=0,n=this.nodes(),r=0;r<n.length;r++)t+=n[r].degree(e);return t}});var Zr=function(e,t,n){for(var r=0;r<e.length;r++){var i=e[r];if(!i.locked()){var o=i._private.position,a={x:null!=t.x?t.x-o.x:0,y:null!=t.y?t.y-o.y:0};!i.isParent()||0===a.x&&0===a.y||i.children().shift(a,n),i.dirtyBoundingBoxCache()}}},$r={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(e){e.updateCompoundBounds()},beforeSet:function(e,t){Zr(e,t,!1)},onSet:function(e){e.dirtyCompoundBoundsCache()},canSet:function(e){return!e.locked()}};Hr=Wr={position:Qn.data($r),silentPosition:Qn.data(R({},$r,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(e,t){Zr(e,t,!0)},onSet:function(e){e.dirtyCompoundBoundsCache()}})),positions:function(e,t){if(E(e))t?this.silentPosition(e):this.position(e);else if(x(e)){var n=e,r=this.cy();r.startBatch();for(var i=0;i<this.length;i++){var o,a=this[i];(o=n(a,i))&&(t?a.silentPosition(o):a.position(o))}r.endBatch()}return this},silentPositions:function(e){return this.positions(e,!0)},shift:function(e,t,n){var r;if(E(e)?(r={x:k(e.x)?e.x:0,y:k(e.y)?e.y:0},n=t):b(e)&&k(t)&&((r={x:0,y:0})[e]=t),null!=r){var i=this.cy();i.startBatch();for(var o=0;o<this.length;o++){var a=this[o],s=a.position(),u={x:s.x+r.x,y:s.y+r.y};n?a.silentPosition(u):a.position(u)}i.endBatch()}return this},silentShift:function(e,t){return E(e)?this.shift(e,!0):b(e)&&k(t)&&this.shift(e,t,!0),this},renderedPosition:function(e,t){var n=this[0],r=this.cy(),i=r.zoom(),o=r.pan(),a=E(e)?e:void 0,s=void 0!==a||void 0!==t&&b(e);if(n&&n.isNode()){if(!s){var u=n.position();return a=He(u,i,o),void 0===e?a:a[e]}for(var l=0;l<this.length;l++){var c=this[l];void 0!==t?c.position(e,(t-o[e])/i):void 0!==a&&c.position(We(a,i,o))}}else if(!s)return;return this},relativePosition:function(e,t){var n=this[0],r=this.cy(),i=E(e)?e:void 0,o=void 0!==i||void 0!==t&&b(e),a=r.hasCompoundNodes();if(n&&n.isNode()){if(!o){var s=n.position(),u=a?n.parent():null,l=u&&u.length>0,c=l;l&&(u=u[0]);var d=c?u.position():{x:0,y:0};return i={x:s.x-d.x,y:s.y-d.y},void 0===e?i:i[e]}for(var h=0;h<this.length;h++){var p=this[h],f=a?p.parent():null,v=f&&f.length>0,g=v;v&&(f=f[0]);var y=g?f.position():{x:0,y:0};void 0!==t?p.position(e,t+y[e]):void 0!==i&&p.position({x:i.x+y.x,y:i.y+y.y})}}else if(!o)return;return this}},Hr.modelPosition=Hr.point=Hr.position,Hr.modelPositions=Hr.points=Hr.positions,Hr.renderedPoint=Hr.renderedPosition,Hr.relativePoint=Hr.relativePosition;var Jr,ei,ti=Wr;Jr=ei={},ei.renderedBoundingBox=function(e){var t=this.boundingBox(e),n=this.cy(),r=n.zoom(),i=n.pan(),o=t.x1*r+i.x,a=t.x2*r+i.x,s=t.y1*r+i.y,u=t.y2*r+i.y;return{x1:o,x2:a,y1:s,y2:u,w:a-o,h:u-s}},ei.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();return t.styleEnabled()&&t.hasCompoundNodes()?(this.forEachUp((function(t){if(t.isParent()){var n=t._private;n.compoundBoundsClean=!1,n.bbCache=null,e||t.emitAndNotify("bounds")}})),this):this},ei.updateCompoundBounds=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function n(e){if(e.isParent()){var t=e._private,n=e.children(),r="include"===e.pstyle("compound-sizing-wrt-labels").value,i={width:{val:e.pstyle("min-width").pfValue,left:e.pstyle("min-width-bias-left"),right:e.pstyle("min-width-bias-right")},height:{val:e.pstyle("min-height").pfValue,top:e.pstyle("min-height-bias-top"),bottom:e.pstyle("min-height-bias-bottom")}},o=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),a=t.position;0!==o.w&&0!==o.h||((o={w:e.pstyle("width").pfValue,h:e.pstyle("height").pfValue}).x1=a.x-o.w/2,o.x2=a.x+o.w/2,o.y1=a.y-o.h/2,o.y2=a.y+o.h/2);var s=i.width.left.value;"px"===i.width.left.units&&i.width.val>0&&(s=100*s/i.width.val);var u=i.width.right.value;"px"===i.width.right.units&&i.width.val>0&&(u=100*u/i.width.val);var l=i.height.top.value;"px"===i.height.top.units&&i.height.val>0&&(l=100*l/i.height.val);var c=i.height.bottom.value;"px"===i.height.bottom.units&&i.height.val>0&&(c=100*c/i.height.val);var d=y(i.width.val-o.w,s,u),h=d.biasDiff,p=d.biasComplementDiff,f=y(i.height.val-o.h,l,c),v=f.biasDiff,g=f.biasComplementDiff;t.autoPadding=function(e,t,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return e>0?n.pfValue*e:0;case"height":return t>0?n.pfValue*t:0;case"average":return e>0&&t>0?n.pfValue*(e+t)/2:0;case"min":return e>0&&t>0?e>t?n.pfValue*t:n.pfValue*e:0;case"max":return e>0&&t>0?e>t?n.pfValue*e:n.pfValue*t:0;default:return 0}}(o.w,o.h,e.pstyle("padding"),e.pstyle("padding-relative-to").value),t.autoWidth=Math.max(o.w,i.width.val),a.x=(-h+o.x1+o.x2+p)/2,t.autoHeight=Math.max(o.h,i.height.val),a.y=(-v+o.y1+o.y2+g)/2}function y(e,t,n){var r=0,i=0,o=t+n;return e>0&&o>0&&(r=t/o*e,i=n/o*e),{biasDiff:r,biasComplementDiff:i}}}for(var r=0;r<this.length;r++){var i=this[r],o=i._private;o.compoundBoundsClean&&!e||(n(i),t.batching()||(o.compoundBoundsClean=!0))}return this};var ni=function(e){return e===1/0||e===-1/0?0:e},ri=function(e,t,n,r,i){r-t!=0&&i-n!=0&&null!=t&&null!=n&&null!=r&&null!=i&&(e.x1=t<e.x1?t:e.x1,e.x2=r>e.x2?r:e.x2,e.y1=n<e.y1?n:e.y1,e.y2=i>e.y2?i:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},ii=function(e,t){return null==t?e:ri(e,t.x1,t.y1,t.x2,t.y2)},oi=function(e,t,n){return Pe(e,t,n)},ai=function(e,t,n){if(!t.cy().headless()){var r,i,o=t._private,a=o.rstyle,s=a.arrowWidth/2;if("none"!==t.pstyle(n+"-arrow-shape").value){"source"===n?(r=a.srcX,i=a.srcY):"target"===n?(r=a.tgtX,i=a.tgtY):(r=a.midX,i=a.midY);var u=o.arrowBounds=o.arrowBounds||{},l=u[n]=u[n]||{};l.x1=r-s,l.y1=i-s,l.x2=r+s,l.y2=i+s,l.w=l.x2-l.x1,l.h=l.y2-l.y1,ot(l,1),ri(e,l.x1,l.y1,l.x2,l.y2)}}},si=function(e,t,n){if(!t.cy().headless()){var r;r=n?n+"-":"";var i=t._private,o=i.rstyle;if(t.pstyle(r+"label").strValue){var a,s,u,l,c=t.pstyle("text-halign"),d=t.pstyle("text-valign"),h=oi(o,"labelWidth",n),p=oi(o,"labelHeight",n),f=oi(o,"labelX",n),v=oi(o,"labelY",n),g=t.pstyle(r+"text-margin-x").pfValue,y=t.pstyle(r+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle(r+"text-rotation"),x=t.pstyle("text-outline-width").pfValue,w=t.pstyle("text-border-width").pfValue/2,E=t.pstyle("text-background-padding").pfValue,k=p,P=h,S=P/2,C=k/2;if(m)a=f-S,s=f+S,u=v-C,l=v+C;else{switch(c.value){case"left":a=f-P,s=f;break;case"center":a=f-S,s=f+S;break;case"right":a=f,s=f+P}switch(d.value){case"top":u=v-k,l=v;break;case"center":u=v-C,l=v+C;break;case"bottom":u=v,l=v+k}}a+=g-Math.max(x,w)-E-2,s+=g+Math.max(x,w)+E+2,u+=y-Math.max(x,w)-E-2,l+=y+Math.max(x,w)+E+2;var _=n||"main",j=i.labelBounds,D=j[_]=j[_]||{};D.x1=a,D.y1=u,D.x2=s,D.y2=l,D.w=s-a,D.h=l-u;var T=m&&"autorotate"===b.strValue,B=null!=b.pfValue&&0!==b.pfValue;if(T||B){var O=T?oi(i.rstyle,"labelAngle",n):b.pfValue,M=Math.cos(O),N=Math.sin(O),I=(a+s)/2,L=(u+l)/2;if(!m){switch(c.value){case"left":I=s;break;case"right":I=a}switch(d.value){case"top":L=l;break;case"bottom":L=u}}var A=function(e,t){return{x:(e-=I)*M-(t-=L)*N+I,y:e*N+t*M+L}},z=A(a,u),R=A(a,l),F=A(s,u),V=A(s,l);a=Math.min(z.x,R.x,F.x,V.x),s=Math.max(z.x,R.x,F.x,V.x),u=Math.min(z.y,R.y,F.y,V.y),l=Math.max(z.y,R.y,F.y,V.y)}var q=_+"Rot",Y=j[q]=j[q]||{};Y.x1=a,Y.y1=u,Y.x2=s,Y.y2=l,Y.w=s-a,Y.h=l-u,ri(e,a,u,s,l),ri(i.labelBounds.all,a,u,s,l)}return e}},ui=function(e){var t=0,n=function(e){return(e?1:0)<<t++},r=0;return r+=n(e.incudeNodes),r+=n(e.includeEdges),r+=n(e.includeLabels),r+=n(e.includeMainLabels),r+=n(e.includeSourceLabels),r+=n(e.includeTargetLabels),r+=n(e.includeOverlays)},li=function(e){if(e.isEdge()){var t=e.source().position(),n=e.target().position(),r=function(e){return Math.round(e)};return function(e,t){var n={value:0,done:!1},r=0,i=e.length;return $({next:function(){return r<i?n.value=e[r++]:n.done=!0,n}},t)}([r(t.x),r(t.y),r(n.x),r(n.y)])}return 0},ci=function(e,t){var n,r=e._private,i=e.isEdge(),o=(null==t?hi:ui(t))===hi,a=li(e),s=r.bbCachePosKey===a,u=t.useCache&&s,l=function(e){return null==e._private.bbCache||e._private.styleDirty};if(!u||l(e)||i&&l(e.source())||l(e.target())?(s||e.recalculateRenderedStyle(u),n=function(e,t){var n,r,i,o,a,s,u,l=e._private.cy,c=l.styleEnabled(),d=l.headless(),h=rt(),p=e._private,f=e.isNode(),v=e.isEdge(),g=p.rstyle,y=f&&c?e.pstyle("bounds-expansion").pfValue:[0],m=function(e){return"none"!==e.pstyle("display").value},b=!c||m(e)&&(!v||m(e.source())&&m(e.target()));if(b){var x=0;c&&t.includeOverlays&&0!==e.pstyle("overlay-opacity").value&&(x=e.pstyle("overlay-padding").value);var w=0;if(c&&(w=e.pstyle("width").pfValue/2),f&&t.includeNodes){var E=e.position();a=E.x,s=E.y;var k=e.outerWidth()/2,P=e.outerHeight()/2;ri(h,n=a-k,i=s-P,r=a+k,o=s+P)}else if(v&&t.includeEdges)if(c&&!d){var S=e.pstyle("curve-style").strValue;if(n=Math.min(g.srcX,g.midX,g.tgtX),r=Math.max(g.srcX,g.midX,g.tgtX),i=Math.min(g.srcY,g.midY,g.tgtY),o=Math.max(g.srcY,g.midY,g.tgtY),ri(h,n-=w,i-=w,r+=w,o+=w),"haystack"===S){var C=g.haystackPts;if(C&&2===C.length){if(n=C[0].x,i=C[0].y,n>(r=C[1].x)){var _=n;n=r,r=_}if(i>(o=C[1].y)){var j=i;i=o,o=j}ri(h,n-w,i-w,r+w,o+w)}}else if("bezier"===S||"unbundled-bezier"===S||"segments"===S||"taxi"===S){var D;switch(S){case"bezier":case"unbundled-bezier":D=g.bezierPts;break;case"segments":case"taxi":D=g.linePts}if(null!=D)for(var T=0;T<D.length;T++){var B=D[T];n=B.x-w,r=B.x+w,i=B.y-w,o=B.y+w,ri(h,n,i,r,o)}}}else{var O=e.source().position(),M=e.target().position();if((n=O.x)>(r=M.x)){var N=n;n=r,r=N}if((i=O.y)>(o=M.y)){var I=i;i=o,o=I}ri(h,n-=w,i-=w,r+=w,o+=w)}if(c&&t.includeEdges&&v&&(ai(h,e,"mid-source"),ai(h,e,"mid-target"),ai(h,e,"source"),ai(h,e,"target")),c&&"yes"===e.pstyle("ghost").value){var L=e.pstyle("ghost-offset-x").pfValue,A=e.pstyle("ghost-offset-y").pfValue;ri(h,h.x1+L,h.y1+A,h.x2+L,h.y2+A)}var z=p.bodyBounds=p.bodyBounds||{};st(z,h),at(z,y),ot(z,1),c&&(n=h.x1,r=h.x2,i=h.y1,o=h.y2,ri(h,n-x,i-x,r+x,o+x));var R=p.overlayBounds=p.overlayBounds||{};st(R,h),at(R,y),ot(R,1);var F=p.labelBounds=p.labelBounds||{};null!=F.all?((u=F.all).x1=1/0,u.y1=1/0,u.x2=-1/0,u.y2=-1/0,u.w=0,u.h=0):F.all=rt(),c&&t.includeLabels&&(t.includeMainLabels&&si(h,e,null),v&&(t.includeSourceLabels&&si(h,e,"source"),t.includeTargetLabels&&si(h,e,"target")))}return h.x1=ni(h.x1),h.y1=ni(h.y1),h.x2=ni(h.x2),h.y2=ni(h.y2),h.w=ni(h.x2-h.x1),h.h=ni(h.y2-h.y1),h.w>0&&h.h>0&&b&&(at(h,y),ot(h,1)),h}(e,di),r.bbCache=n,r.bbCachePosKey=a):n=r.bbCache,!o){var c=e.isNode();n=rt(),(t.includeNodes&&c||t.includeEdges&&!c)&&(t.includeOverlays?ii(n,r.overlayBounds):ii(n,r.bodyBounds)),t.includeLabels&&(t.includeMainLabels&&(!i||t.includeSourceLabels&&t.includeTargetLabels)?ii(n,r.labelBounds.all):(t.includeMainLabels&&ii(n,r.labelBounds.mainRot),t.includeSourceLabels&&ii(n,r.labelBounds.sourceRot),t.includeTargetLabels&&ii(n,r.labelBounds.targetRot))),n.w=n.x2-n.x1,n.h=n.y2-n.y1}return n},di={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,useCache:!0},hi=ui(di),pi=we(di);ei.boundingBox=function(e){var t;if(1!==this.length||null==this[0]._private.bbCache||this[0]._private.styleDirty||void 0!==e&&void 0!==e.useCache&&!0!==e.useCache){t=rt();var n=pi(e=e||di),r=this;if(r.cy().styleEnabled())for(var i=0;i<r.length;i++){var o=r[i],a=o._private,s=li(o),u=a.bbCachePosKey===s,l=n.useCache&&u&&!a.styleDirty;o.recalculateRenderedStyle(l)}this.updateCompoundBounds(!e.useCache);for(var c=0;c<r.length;c++){var d=r[c];ii(t,ci(d,n))}}else e=void 0===e?di:pi(e),t=ci(this[0],e);return t.x1=ni(t.x1),t.y1=ni(t.y1),t.x2=ni(t.x2),t.y2=ni(t.y2),t.w=ni(t.x2-t.x1),t.h=ni(t.y2-t.y1),t},ei.dirtyBoundingBoxCache=function(){for(var e=0;e<this.length;e++){var t=this[e]._private;t.bbCache=null,t.bbCachePosKey=null,t.bodyBounds=null,t.overlayBounds=null,t.labelBounds.all=null,t.labelBounds.source=null,t.labelBounds.target=null,t.labelBounds.main=null,t.labelBounds.sourceRot=null,t.labelBounds.targetRot=null,t.labelBounds.mainRot=null,t.arrowBounds.source=null,t.arrowBounds.target=null,t.arrowBounds["mid-source"]=null,t.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this},ei.boundingBoxAt=function(e){var t=this.nodes(),n=this.cy(),r=n.hasCompoundNodes(),i=n.collection();if(r&&(i=t.filter((function(e){return e.isParent()})),t=t.not(i)),E(e)){var o=e;e=function(){return o}}n.startBatch(),t.forEach((function(t,n){return t._private.bbAtOldPos=e(t,n)})).silentPositions(e),r&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0));var a=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}}(this.boundingBox({useCache:!1}));return t.silentPositions((function(e){return e._private.bbAtOldPos})),r&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0)),n.endBatch(),a},Jr.boundingbox=Jr.bb=Jr.boundingBox,Jr.renderedBoundingbox=Jr.renderedBoundingBox;var fi,vi,gi=ei;fi=vi={};var yi=function(e){e.uppercaseName=L(e.name),e.autoName="auto"+e.uppercaseName,e.labelName="label"+e.uppercaseName,e.outerName="outer"+e.uppercaseName,e.uppercaseOuterName=L(e.outerName),fi[e.name]=function(){var t=this[0],n=t._private,r=n.cy._private.styleEnabled;if(t){if(r){if(t.isParent())return t.updateCompoundBounds(),n[e.autoName]||0;var i=t.pstyle(e.name);return"label"===i.strValue?(t.recalculateRenderedStyle(),n.rstyle[e.labelName]||0):i.pfValue}return 1}},fi["outer"+e.uppercaseName]=function(){var t=this[0],n=t._private.cy._private.styleEnabled;if(t)return n?t[e.name]()+t.pstyle("border-width").pfValue+2*t.padding():1},fi["rendered"+e.uppercaseName]=function(){var t=this[0];if(t)return t[e.name]()*this.cy().zoom()},fi["rendered"+e.uppercaseOuterName]=function(){var t=this[0];if(t)return t[e.outerName]()*this.cy().zoom()}};yi({name:"width"}),yi({name:"height"}),vi.padding=function(){var e=this[0],t=e._private;return e.isParent()?(e.updateCompoundBounds(),void 0!==t.autoPadding?t.autoPadding:e.pstyle("padding").pfValue):e.pstyle("padding").pfValue},vi.paddedHeight=function(){var e=this[0];return e.height()+2*e.padding()},vi.paddedWidth=function(){var e=this[0];return e.width()+2*e.padding()};var mi=vi,bi={controlPoints:{get:function(e){return e.renderer().getControlPoints(e)},mult:!0},segmentPoints:{get:function(e){return e.renderer().getSegmentPoints(e)},mult:!0},sourceEndpoint:{get:function(e){return e.renderer().getSourceEndpoint(e)}},targetEndpoint:{get:function(e){return e.renderer().getTargetEndpoint(e)}},midpoint:{get:function(e){return e.renderer().getEdgeMidpoint(e)}}},xi=Object.keys(bi).reduce((function(e,t){var n=bi[t],r=function(e){return"rendered"+e[0].toUpperCase()+e.substr(1)}(t);return e[t]=function(){return function(e,t){if(e.isEdge())return t(e)}(this,n.get)},n.mult?e[r]=function(){return function(e,t){if(e.isEdge()){var n=e.cy(),r=n.pan(),i=n.zoom();return t(e).map((function(e){return He(e,i,r)}))}}(this,n.get)}:e[r]=function(){return function(e,t){if(e.isEdge()){var n=e.cy();return He(t(e),n.zoom(),n.pan())}}(this,n.get)},e}),{}),wi=R({},ti,gi,mi,xi),Ei=function(e,t){this.recycle(e,t)};function ki(){return!1}function Pi(){return!0}Ei.prototype={instanceString:function(){return"event"},recycle:function(e,t){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=ki,null!=e&&e.preventDefault?(this.type=e.type,this.isDefaultPrevented=e.defaultPrevented?Pi:ki):null!=e&&e.type?t=e:this.type=e,null!=t&&(this.originalEvent=t.originalEvent,this.type=null!=t.type?t.type:this.type,this.cy=t.cy,this.target=t.target,this.position=t.position,this.renderedPosition=t.renderedPosition,this.namespace=t.namespace,this.layout=t.layout),null!=this.cy&&null!=this.position&&null==this.renderedPosition){var n=this.position,r=this.cy.zoom(),i=this.cy.pan();this.renderedPosition={x:n.x*r+i.x,y:n.y*r+i.y}}this.timeStamp=e&&e.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=Pi;var e=this.originalEvent;e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){this.isPropagationStopped=Pi;var e=this.originalEvent;e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Pi,this.stopPropagation()},isDefaultPrevented:ki,isPropagationStopped:ki,isImmediatePropagationStopped:ki};var Si=/^([^.]+)(\.(?:[^.]+))?$/,Ci={qualifierCompare:function(e,t){return e===t},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(e){return e},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},_i=Object.keys(Ci),ji={};function Di(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ji,t=arguments.length>1?arguments[1]:void 0,n=0;n<_i.length;n++){var r=_i[n];this[r]=e[r]||Ci[r]}this.context=t||this.context,this.listeners=[],this.emitting=0}var Ti=Di.prototype,Bi=function(e,t,n,r,i,o,a){x(r)&&(i=r,r=null),a&&(o=null==o?a:R({},o,a));for(var s=w(n)?n:n.split(/\s+/),u=0;u<s.length;u++){var l=s[u];if(!T(l)){var c=l.match(Si);if(c)if(!1===t(e,l,c[1],c[2]?c[2]:null,r,i,o))break}}},Oi=function(e,t){return e.addEventFields(e.context,t),new Ei(t.type,t)},Mi=function(e,t,n){if("event"!==m(n))if(E(n))t(e,Oi(e,n));else for(var r=w(n)?n:n.split(/\s+/),i=0;i<r.length;i++){var o=r[i];if(!T(o)){var a=o.match(Si);if(a){var s=a[1],u=a[2]?a[2]:null;t(e,Oi(e,{type:s,namespace:u,target:e.context}))}}}else t(e,n)};Ti.on=Ti.addListener=function(e,t,n,r,i){return Bi(this,(function(e,t,n,r,i,o,a){x(o)&&e.listeners.push({event:t,callback:o,type:n,namespace:r,qualifier:i,conf:a})}),e,t,n,r,i),this},Ti.one=function(e,t,n,r){return this.on(e,t,n,r,{one:!0})},Ti.removeListener=Ti.off=function(e,t,n,r){var i=this;0!==this.emitting&&(this.listeners=this.listeners.slice());for(var o=this.listeners,a=function(a){var s=o[a];Bi(i,(function(t,n,r,i,u,l){if((s.type===r||"*"===e)&&(!i&&".*"!==s.namespace||s.namespace===i)&&(!u||t.qualifierCompare(s.qualifier,u))&&(!l||s.callback===l))return o.splice(a,1),!1}),e,t,n,r)},s=o.length-1;s>=0;s--)a(s);return this},Ti.removeAllListeners=function(){return this.removeListener("*")},Ti.emit=Ti.trigger=function(e,t,n){var r=this.listeners,i=r.length;return this.emitting++,w(t)||(t=[t]),Mi(this,(function(e,o){null!=n&&(r=[{event:o.event,type:o.type,namespace:o.namespace,callback:n}],i=r.length);for(var a=function(n){var i=r[n];if(i.type===o.type&&(!i.namespace||i.namespace===o.namespace||".*"===i.namespace)&&e.eventMatches(e.context,i,o)){var a=[o];null!=t&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];e.push(r)}}(a,t),e.beforeEmit(e.context,i,o),i.conf&&i.conf.one&&(e.listeners=e.listeners.filter((function(e){return e!==i})));var s=e.callbackContext(e.context,i,o),u=i.callback.apply(s,a);e.afterEmit(e.context,i,o),!1===u&&(o.stopPropagation(),o.preventDefault())}},s=0;s<i;s++)a(s);e.bubble(e.context)&&!o.isPropagationStopped()&&e.parent(e.context).emit(o,t)}),e),this.emitting--,this};var Ni={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&C(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e.cy(),t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e},beforeEmit:function(e,t){t.conf&&t.conf.once&&t.conf.onceCollection.removeListener(t.event,t.qualifier,t.callback)},bubble:function(){return!0},parent:function(e){return e.isChild()?e.parent():e.cy()}},Ii=function(e){return b(e)?new Nr(e):e},Li={createEmitter:function(){for(var e=0;e<this.length;e++){var t=this[e],n=t._private;n.emitter||(n.emitter=new Di(Ni,t))}return this},emitter:function(){return this._private.emitter},on:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().on(e,r,n)}return this},removeListener:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().removeListener(e,r,n)}return this},removeAllListeners:function(){for(var e=0;e<this.length;e++){this[e].emitter().removeAllListeners()}return this},one:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().one(e,r,n)}return this},once:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().on(e,r,n,{once:!0,onceCollection:this})}},emit:function(e,t){for(var n=0;n<this.length;n++){this[n].emitter().emit(e,t)}return this},emitAndNotify:function(e,t){if(0!==this.length)return this.cy().notify(e,this),this.emit(e,t),this}};Qn.eventAliasesOn(Li);var Ai={nodes:function(e){return this.filter((function(e){return e.isNode()})).filter(e)},edges:function(e){return this.filter((function(e){return e.isEdge()})).filter(e)},byGroup:function(){for(var e=this.spawn(),t=this.spawn(),n=0;n<this.length;n++){var r=this[n];r.isNode()?e.push(r):t.push(r)}return{nodes:e,edges:t}},filter:function(e,t){if(void 0===e)return this;if(b(e)||S(e))return new Nr(e).filter(this);if(x(e)){for(var n=this.spawn(),r=this,i=0;i<r.length;i++){var o=r[i];(t?e.apply(t,[o,i,r]):e(o,i,r))&&n.push(o)}return n}return this.spawn()},not:function(e){if(e){b(e)&&(e=this.filter(e));for(var t=this.spawn(),n=0;n<this.length;n++){var r=this[n];e.has(r)||t.push(r)}return t}return this},absoluteComplement:function(){return this.cy().mutableElements().not(this)},intersect:function(e){if(b(e)){var t=e;return this.filter(t)}for(var n=this.spawn(),r=e,i=this.length<e.length,o=i?this:r,a=i?r:this,s=0;s<o.length;s++){var u=o[s];a.has(u)&&n.push(u)}return n},xor:function(e){var t=this._private.cy;b(e)&&(e=t.$(e));var n=this.spawn(),r=e,i=function(e,t){for(var r=0;r<e.length;r++){var i=e[r],o=i._private.data.id;t.hasElementWithId(o)||n.push(i)}};return i(this,r),i(r,this),n},diff:function(e){var t=this._private.cy;b(e)&&(e=t.$(e));var n=this.spawn(),r=this.spawn(),i=this.spawn(),o=e,a=function(e,t,n){for(var r=0;r<e.length;r++){var o=e[r],a=o._private.data.id;t.hasElementWithId(a)?i.merge(o):n.push(o)}};return a(this,o,n),a(o,this,r),{left:n,right:r,both:i}},add:function(e){var t=this._private.cy;if(!e)return this;if(b(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=this.spawnSelf(),i=0;i<e.length;i++){var o=e[i],a=!this.has(o);a&&r.push(o)}return r},merge:function(e){var t=this._private,n=t.cy;if(!e)return this;if(e&&b(e)){var r=e;e=n.mutableElements().filter(r)}for(var i=t.map,o=0;o<e.length;o++){var a=e[o],s=a._private.data.id;if(!i.has(s)){var u=this.length++;this[u]=a,i.set(s,{ele:a,index:u})}}return this},unmergeAt:function(e){var t=this[e].id(),n=this._private.map;this[e]=void 0,n.delete(t);var r=e===this.length-1;if(this.length>1&&!r){var i=this.length-1,o=this[i],a=o._private.data.id;this[i]=void 0,this[e]=o,n.set(a,{ele:o,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,n=e._private.data.id,r=t.map.get(n);if(!r)return this;var i=r.index;return this.unmergeAt(i),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&b(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=0;r<e.length;r++)this.unmergeOne(e[r]);return this},unmergeBy:function(e){for(var t=this.length-1;t>=0;t--){e(this[t])&&this.unmergeAt(t)}return this},map:function(e,t){for(var n=[],r=this,i=0;i<r.length;i++){var o=r[i],a=t?e.apply(t,[o,i,r]):e(o,i,r);n.push(a)}return n},reduce:function(e,t){for(var n=t,r=this,i=0;i<r.length;i++)n=e(n,r[i],i,r);return n},max:function(e,t){for(var n,r=-1/0,i=this,o=0;o<i.length;o++){var a=i[o],s=t?e.apply(t,[a,o,i]):e(a,o,i);s>r&&(r=s,n=a)}return{value:r,ele:n}},min:function(e,t){for(var n,r=1/0,i=this,o=0;o<i.length;o++){var a=i[o],s=t?e.apply(t,[a,o,i]):e(a,o,i);s<r&&(r=s,n=a)}return{value:r,ele:n}}},zi=Ai;zi.u=zi["|"]=zi["+"]=zi.union=zi.or=zi.add,zi["\\"]=zi["!"]=zi["-"]=zi.difference=zi.relativeComplement=zi.subtract=zi.not,zi.n=zi["&"]=zi["."]=zi.and=zi.intersection=zi.intersect,zi["^"]=zi["(+)"]=zi["(-)"]=zi.symmetricDifference=zi.symdiff=zi.xor,zi.fnFilter=zi.filterFn=zi.stdFilter=zi.filter,zi.complement=zi.abscomp=zi.absoluteComplement;var Ri=function(e,t){var n=e.cy().hasCompoundNodes();function r(e){var t=e.pstyle("z-compound-depth");return"auto"===t.value?n?e.zDepth():0:"bottom"===t.value?-1:"top"===t.value?le:0}var i=r(e)-r(t);if(0!==i)return i;function o(e){return"auto"===e.pstyle("z-index-compare").value&&e.isNode()?1:0}var a=o(e)-o(t);if(0!==a)return a;var s=e.pstyle("z-index").value-t.pstyle("z-index").value;return 0!==s?s:e.poolIndex()-t.poolIndex()},Fi={forEach:function(e,t){if(x(e))for(var n=this.length,r=0;r<n;r++){var i=this[r];if(!1===(t?e.apply(t,[i,r,this]):e(i,r,this)))break}return this},toArray:function(){for(var e=[],t=0;t<this.length;t++)e.push(this[t]);return e},slice:function(e,t){var n=[],r=this.length;null==t&&(t=r),null==e&&(e=0),e<0&&(e=r+e),t<0&&(t=r+t);for(var i=e;i>=0&&i<t&&i<r;i++)n.push(this[i]);return this.spawn(n)},size:function(){return this.length},eq:function(e){return this[e]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return 0===this.length},nonempty:function(){return!this.empty()},sort:function(e){if(!x(e))return this;var t=this.toArray().sort(e);return this.spawn(t)},sortByZIndex:function(){return this.sort(Ri)},zDepth:function(){var e=this[0];if(e){var t=e._private;if("nodes"===t.group){var n=t.data.parent?e.parents().size():0;return e.isParent()?n:le-1}var r=t.source,i=t.target,o=r.zDepth(),a=i.zDepth();return Math.max(o,a,0)}}};Fi.each=Fi.forEach;var Vi;Vi="undefined",("undefined"==typeof Symbol?"undefined":a(Symbol))!=Vi&&a(Symbol.iterator)!=Vi&&(Fi[Symbol.iterator]=function(){var e=this,t={value:void 0,done:!1},n=0,r=this.length;return c({next:function(){return n<r?t.value=e[n++]:(t.value=void 0,t.done=!0),t}},Symbol.iterator,(function(){return this}))});var qi=we({nodeDimensionsIncludeLabels:!1}),Yi={layoutDimensions:function(e){var t;if(e=qi(e),this.takesUpSpace())if(e.nodeDimensionsIncludeLabels){var n=this.boundingBox();t={w:n.w,h:n.h}}else t={w:this.outerWidth(),h:this.outerHeight()};else t={w:0,h:0};return 0!==t.w&&0!==t.h||(t.w=t.h=1),t},layoutPositions:function(e,t,n){var r=this.nodes().filter((function(e){return!e.isParent()})),i=this.cy(),o=t.eles,a=function(e){return e.id()},s=O(n,a);e.emit({type:"layoutstart",layout:e}),e.animations=[];var u=t.spacingFactor&&1!==t.spacingFactor,l=function(){if(!u)return null;for(var e=rt(),t=0;t<r.length;t++){var n=r[t],i=s(n,t);it(e,i.x,i.y)}return e}(),c=O((function(e,n){var r=s(e,n);u&&(r=function(e,t,n){var r=t.x1+t.w/2,i=t.y1+t.h/2;return{x:r+(n.x-r)*e,y:i+(n.y-i)*e}}(Math.abs(t.spacingFactor),l,r));return null!=t.transform&&(r=t.transform(e,r)),r}),a);if(t.animate){for(var d=0;d<r.length;d++){var h=r[d],p=c(h,d);if(null==t.animateFilter||t.animateFilter(h,d)){var f=h.animation({position:p,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(f)}else h.position(p)}if(t.fit){var v=i.animation({fit:{boundingBox:o.boundingBoxAt(c),padding:t.padding},duration:t.animationDuration,easing:t.animationEasing});e.animations.push(v)}else if(void 0!==t.zoom&&void 0!==t.pan){var g=i.animation({zoom:t.zoom,pan:t.pan,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(g)}e.animations.forEach((function(e){return e.play()})),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),Xn.all(e.animations.map((function(e){return e.promise()}))).then((function(){e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})}))}else r.positions(c),t.fit&&i.fit(t.eles,t.padding),null!=t.zoom&&i.zoom(t.zoom),t.pan&&i.pan(t.pan),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e});return this},layout:function(e){return this.cy().makeLayout(R({},e,{eles:this}))}};function Xi(e,t,n){var r,i=n._private,o=i.styleCache=i.styleCache||[];return null!=(r=o[e])?r:r=o[e]=t(n)}function Hi(e,t){return e=re(e),function(n){return Xi(e,t,n)}}function Wi(e,t){e=re(e);var n=function(e){return t.call(e)};return function(){var t=this[0];if(t)return Xi(e,n,t)}}Yi.createLayout=Yi.makeLayout=Yi.layout;var Gi={recalculateRenderedStyle:function(e){var t=this.cy(),n=t.renderer(),r=t.styleEnabled();return n&&r&&n.recalculateRenderedStyle(this,e),this},dirtyStyleCache:function(){var e,t=this.cy(),n=function(e){return e._private.styleCache=null};t.hasCompoundNodes()?((e=this.spawnSelf().merge(this.descendants()).merge(this.parents())).merge(e.connectedEdges()),e.forEach(n)):this.forEach((function(e){n(e),e.connectedEdges().forEach(n)}));return this},updateStyle:function(e){var t=this._private.cy;if(!t.styleEnabled())return this;if(t.batching())return t._private.batchStyleEles.merge(this),this;var n=this;e=!(!e&&void 0!==e),t.hasCompoundNodes()&&(n=this.spawnSelf().merge(this.descendants()).merge(this.parents()));var r=n;return e?r.emitAndNotify("style"):r.emit("style"),n.forEach((function(e){return e._private.styleDirty=!0})),this},cleanStyle:function(){var e=this.cy();if(e.styleEnabled())for(var t=0;t<this.length;t++){var n=this[t];n._private.styleDirty&&(n._private.styleDirty=!1,e.style().apply(n))}},parsedStyle:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var i=n._private.style[e];return null!=i?i:t?r.style().getDefaultProperty(e):null}},numericStyle:function(e){var t=this[0];if(t.cy().styleEnabled()&&t){var n=t.pstyle(e);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(e){var t=this[0];if(t.cy().styleEnabled())return t?t.pstyle(e).units:void 0},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=this[0];return n?t.style().getRenderedStyle(n,e):void 0},style:function(e,t){var n=this.cy();if(!n.styleEnabled())return this;var r=n.style();if(E(e)){var i=e;r.applyBypass(this,i,false),this.emitAndNotify("style")}else if(b(e)){if(void 0===t){var o=this[0];return o?r.getStylePropertyValue(o,e):void 0}r.applyBypass(this,e,t,false),this.emitAndNotify("style")}else if(void 0===e){var a=this[0];return a?r.getRawStyle(a):void 0}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=t.style(),r=this;if(void 0===e)for(var i=0;i<r.length;i++){var o=r[i];n.removeAllBypasses(o,false)}else{e=e.split(/\s+/);for(var a=0;a<r.length;a++){var s=r[a];n.removeBypasses(s,e,false)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var e=this.cy();if(!e.styleEnabled())return 1;var t=e.hasCompoundNodes(),n=this[0];if(n){var r=n._private,i=n.pstyle("opacity").value;if(!t)return i;var o=r.data.parent?n.parents():null;if(o)for(var a=0;a<o.length;a++){i*=o[a].pstyle("opacity").value}return i}},transparent:function(){if(!this.cy().styleEnabled())return!1;var e=this[0],t=e.cy().hasCompoundNodes();return e?t?0===e.effectiveOpacity():0===e.pstyle("opacity").value:void 0},backgrounding:function(){return!!this.cy().styleEnabled()&&!!this[0]._private.backgrounding}};function Ui(e,t){var n=e._private.data.parent?e.parents():null;if(n)for(var r=0;r<n.length;r++){if(!t(n[r]))return!1}return!0}function Ki(e){var t=e.ok,n=e.edgeOkViaNode||e.ok,r=e.parentOk||e.ok;return function(){var e=this.cy();if(!e.styleEnabled())return!0;var i=this[0],o=e.hasCompoundNodes();if(i){var a=i._private;if(!t(i))return!1;if(i.isNode())return!o||Ui(i,r);var s=a.source,u=a.target;return n(s)&&(!o||Ui(s,n))&&(s===u||n(u)&&(!o||Ui(u,n)))}}}var Qi=Hi("eleTakesUpSpace",(function(e){return"element"===e.pstyle("display").value&&0!==e.width()&&(!e.isNode()||0!==e.height())}));Gi.takesUpSpace=Wi("takesUpSpace",Ki({ok:Qi}));var Zi=Hi("eleInteractive",(function(e){return"yes"===e.pstyle("events").value&&"visible"===e.pstyle("visibility").value&&Qi(e)})),$i=Hi("parentInteractive",(function(e){return"visible"===e.pstyle("visibility").value&&Qi(e)}));Gi.interactive=Wi("interactive",Ki({ok:Zi,parentOk:$i,edgeOkViaNode:Qi})),Gi.noninteractive=function(){var e=this[0];if(e)return!e.interactive()};var Ji=Hi("eleVisible",(function(e){return"visible"===e.pstyle("visibility").value&&0!==e.pstyle("opacity").pfValue&&Qi(e)})),eo=Qi;Gi.visible=Wi("visible",Ki({ok:Ji,edgeOkViaNode:eo})),Gi.hidden=function(){var e=this[0];if(e)return!e.visible()},Gi.isBundledBezier=Wi("isBundledBezier",(function(){return!!this.cy().styleEnabled()&&(!this.removed()&&"bezier"===this.pstyle("curve-style").value&&this.takesUpSpace())})),Gi.bypass=Gi.css=Gi.style,Gi.renderedCss=Gi.renderedStyle,Gi.removeBypass=Gi.removeCss=Gi.removeStyle,Gi.pstyle=Gi.parsedStyle;var to={};function no(e){return function(){var t=arguments,n=[];if(2===t.length){var r=t[0],i=t[1];this.on(e.event,r,i)}else if(1===t.length&&x(t[0])){var o=t[0];this.on(e.event,o)}else if(0===t.length||1===t.length&&w(t[0])){for(var a=1===t.length?t[0]:null,s=0;s<this.length;s++){var u=this[s],l=!e.ableField||u._private[e.ableField],c=u._private[e.field]!=e.value;if(e.overrideAble){var d=e.overrideAble(u);if(void 0!==d&&(l=d,!d))return this}l&&(u._private[e.field]=e.value,c&&n.push(u))}var h=this.spawn(n);h.updateStyle(),h.emit(e.event),a&&h.emit(a)}return this}}function ro(e){to[e.field]=function(){var t=this[0];if(t){if(e.overrideField){var n=e.overrideField(t);if(void 0!==n)return n}return t._private[e.field]}},to[e.on]=no({event:e.on,field:e.field,ableField:e.ableField,overrideAble:e.overrideAble,value:!0}),to[e.off]=no({event:e.off,field:e.field,ableField:e.ableField,overrideAble:e.overrideAble,value:!1})}ro({field:"locked",overrideField:function(e){return!!e.cy().autolock()||void 0},on:"lock",off:"unlock"}),ro({field:"grabbable",overrideField:function(e){return!e.cy().autoungrabify()&&!e.pannable()&&void 0},on:"grabify",off:"ungrabify"}),ro({field:"selected",ableField:"selectable",overrideAble:function(e){return!e.cy().autounselectify()&&void 0},on:"select",off:"unselect"}),ro({field:"selectable",overrideField:function(e){return!e.cy().autounselectify()&&void 0},on:"selectify",off:"unselectify"}),to.deselect=to.unselect,to.grabbed=function(){var e=this[0];if(e)return e._private.grabbed},ro({field:"active",on:"activate",off:"unactivate"}),ro({field:"pannable",on:"panify",off:"unpanify"}),to.inactive=function(){var e=this[0];if(e)return!e._private.active};var io={},oo=function(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r];if(i.isNode()){for(var o=!1,a=i.connectedEdges(),s=0;s<a.length;s++){var u=a[s],l=u.source(),c=u.target();if(e.noIncomingEdges&&c===i&&l!==i||e.noOutgoingEdges&&l===i&&c!==i){o=!0;break}}o||n.push(i)}}return this.spawn(n,!0).filter(t)}},ao=function(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r];if(i.isNode())for(var o=i.connectedEdges(),a=0;a<o.length;a++){var s=o[a],u=s.source(),l=s.target();e.outgoing&&u===i?(n.push(s),n.push(l)):e.incoming&&l===i&&(n.push(s),n.push(u))}}return this.spawn(n,!0).filter(t)}},so=function(e){return function(t){for(var n=this,r=[],i={};;){var o=e.outgoing?n.outgoers():n.incomers();if(0===o.length)break;for(var a=!1,s=0;s<o.length;s++){var u=o[s],l=u.id();i[l]||(i[l]=!0,r.push(u),a=!0)}if(!a)break;n=o}return this.spawn(r,!0).filter(t)}};function uo(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r]._private[e.attr];i&&n.push(i)}return this.spawn(n,!0).filter(t)}}function lo(e){return function(t){var n=[],r=this._private.cy,i=e||{};b(t)&&(t=r.$(t));for(var o=0;o<t.length;o++)for(var a=t[o]._private.edges,s=0;s<a.length;s++){var u=a[s],l=u._private.data,c=this.hasElementWithId(l.source)&&t.hasElementWithId(l.target),d=t.hasElementWithId(l.source)&&this.hasElementWithId(l.target);if(c||d){if(i.thisIsSrc||i.thisIsTgt){if(i.thisIsSrc&&!c)continue;if(i.thisIsTgt&&!d)continue}n.push(u)}}return this.spawn(n,!0)}}function co(e){return e=R({},{codirected:!1},e),function(t){for(var n=[],r=this.edges(),i=e,o=0;o<r.length;o++)for(var a=r[o]._private,s=a.source,u=s._private.data.id,l=a.data.target,c=s._private.edges,d=0;d<c.length;d++){var h=c[d],p=h._private.data,f=p.target,v=p.source,g=f===l&&v===u,y=u===f&&l===v;(i.codirected&&g||!i.codirected&&(g||y))&&n.push(h)}return this.spawn(n,!0).filter(t)}}io.clearTraversalCache=function(){for(var e=0;e<this.length;e++)this[e]._private.traversalCache=null},R(io,{roots:oo({noIncomingEdges:!0}),leaves:oo({noOutgoingEdges:!0}),outgoers:Rr(ao({outgoing:!0}),"outgoers"),successors:so({outgoing:!0}),incomers:Rr(ao({incoming:!0}),"incomers"),predecessors:so({incoming:!0})}),R(io,{neighborhood:Rr((function(e){for(var t=[],n=this.nodes(),r=0;r<n.length;r++)for(var i=n[r],o=i.connectedEdges(),a=0;a<o.length;a++){var s=o[a],u=s.source(),l=s.target(),c=i===u?l:u;c.length>0&&t.push(c[0]),t.push(s[0])}return this.spawn(t,!0).filter(e)}),"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}}),io.neighbourhood=io.neighborhood,io.closedNeighbourhood=io.closedNeighborhood,io.openNeighbourhood=io.openNeighborhood,R(io,{source:Rr((function(e){var t,n=this[0];return n&&(t=n._private.source||n.cy().collection()),t&&e?t.filter(e):t}),"source"),target:Rr((function(e){var t,n=this[0];return n&&(t=n._private.target||n.cy().collection()),t&&e?t.filter(e):t}),"target"),sources:uo({attr:"source"}),targets:uo({attr:"target"})}),R(io,{edgesWith:Rr(lo(),"edgesWith"),edgesTo:Rr(lo({thisIsSrc:!0}),"edgesTo")}),R(io,{connectedEdges:Rr((function(e){for(var t=[],n=0;n<this.length;n++){var r=this[n];if(r.isNode())for(var i=r._private.edges,o=0;o<i.length;o++){var a=i[o];t.push(a)}}return this.spawn(t,!0).filter(e)}),"connectedEdges"),connectedNodes:Rr((function(e){for(var t=[],n=0;n<this.length;n++){var r=this[n];r.isEdge()&&(t.push(r.source()[0]),t.push(r.target()[0]))}return this.spawn(t,!0).filter(e)}),"connectedNodes"),parallelEdges:Rr(co(),"parallelEdges"),codirectedEdges:Rr(co({codirected:!0}),"codirectedEdges")}),R(io,{components:function(e){var t=this,n=t.cy(),r=n.collection(),i=null==e?t.nodes():e.nodes(),o=[];null!=e&&i.empty()&&(i=e.sources());var a=function(e,t){r.merge(e),i.unmerge(e),t.merge(e)};if(i.empty())return t.spawn();var s=function(){var e=n.collection();o.push(e);var r=i[0];a(r,e),t.bfs({directed:!1,roots:r,visit:function(t){return a(t,e)}}),e.forEach((function(n){n.connectedEdges().forEach((function(n){t.has(n)&&e.has(n.source())&&e.has(n.target())&&e.merge(n)}))}))};do{s()}while(i.length>0);return o},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}}),io.componentsOf=io.components;var ho=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(void 0!==e){var r=new Ce,i=!1;if(t){if(t.length>0&&E(t[0])&&!C(t[0])){i=!0;for(var o=[],a=new je,s=0,u=t.length;s<u;s++){var l=t[s];null==l.data&&(l.data={});var c=l.data;if(null==c.id)c.id=me();else if(e.hasElementWithId(c.id)||a.has(c.id))continue;var d=new De(e,l,!1);o.push(d),a.add(c.id)}t=o}}else t=[];this.length=0;for(var h=0,p=t.length;h<p;h++){var f=t[h][0];if(null!=f){var v=f._private.data.id;n&&r.has(v)||(n&&r.set(v,{index:this.length,ele:f}),this[this.length]=f,this.length++)}}this._private={eles:this,cy:e,get map(){return null==this.lazyMap&&this.rebuildMap(),this.lazyMap},set map(e){this.lazyMap=e},rebuildMap:function(){for(var e=this.lazyMap=new Ce,t=this.eles,n=0;n<t.length;n++){var r=t[n];e.set(r.id(),{index:n,ele:r})}}},n&&(this._private.map=r),i&&this.restore()}else fe("A collection must have a reference to the core")},po=De.prototype=ho.prototype=Object.create(Array.prototype);po.instanceString=function(){return"collection"},po.spawn=function(e,t){return new ho(this.cy(),e,t)},po.spawnSelf=function(){return this.spawn(this)},po.cy=function(){return this._private.cy},po.renderer=function(){return this._private.cy.renderer()},po.element=function(){return this[0]},po.collection=function(){return _(this)?this:new ho(this._private.cy,[this])},po.unique=function(){return new ho(this._private.cy,this,!0)},po.hasElementWithId=function(e){return e=""+e,this._private.map.has(e)},po.getElementById=function(e){e=""+e;var t=this._private.cy,n=this._private.map.get(e);return n?n.ele:new ho(t)},po.$id=po.getElementById,po.poolIndex=function(){var e=this._private.cy._private.elements,t=this[0]._private.data.id;return e._private.map.get(t).index},po.indexOf=function(e){var t=e[0]._private.data.id;return this._private.map.get(t).index},po.indexOfId=function(e){return e=""+e,this._private.map.get(e).index},po.json=function(e){var t=this.element(),n=this.cy();if(null==t&&e)return this;if(null!=t){var r=t._private;if(E(e)){if(n.startBatch(),e.data){t.data(e.data);var i=r.data;if(t.isEdge()){var o=!1,a={},s=e.data.source,u=e.data.target;null!=s&&s!=i.source&&(a.source=""+s,o=!0),null!=u&&u!=i.target&&(a.target=""+u,o=!0),o&&(t=t.move(a))}else{var l="parent"in e.data,c=e.data.parent;!l||null==c&&null==i.parent||c==i.parent||(void 0===c&&(c=null),null!=c&&(c=""+c),t=t.move({parent:c}))}}e.position&&t.position(e.position);var d=function(n,i,o){var a=e[n];null!=a&&a!==r[n]&&(a?t[i]():t[o]())};return d("removed","remove","restore"),d("selected","select","unselect"),d("selectable","selectify","unselectify"),d("locked","lock","unlock"),d("grabbable","grabify","ungrabify"),d("pannable","panify","unpanify"),null!=e.classes&&t.classes(e.classes),n.endBatch(),this}if(void 0===e){var h={data:ye(r.data),position:ye(r.position),group:r.group,removed:r.removed,selected:r.selected,selectable:r.selectable,locked:r.locked,grabbable:r.grabbable,pannable:r.pannable,classes:(null,"")},p=0;return r.classes.forEach((function(e){return h.classes+=0==p++?e:" "+e})),h}}},po.jsons=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t].json();e.push(n)}return e},po.clone=function(){for(var e=this.cy(),t=[],n=0;n<this.length;n++){var r=this[n].json(),i=new De(e,r,!1);t.push(i)}return new ho(e,t)},po.copy=po.clone,po.restore=function(){for(var e,t,n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this,o=i.cy(),a=o._private,s=[],u=[],l=0,c=i.length;l<c;l++){var d=i[l];r&&!d.removed()||(d.isNode()?s.push(d):u.push(d))}e=s.concat(u);var h=function(){e.splice(t,1),t--};for(t=0;t<e.length;t++){var p=e[t],f=p._private,v=f.data;if(p.clearTraversalCache(),r||f.removed)if(void 0===v.id)v.id=me();else if(k(v.id))v.id=""+v.id;else{if(T(v.id)||!b(v.id)){fe("Can not create element with invalid string ID `"+v.id+"`"),h();continue}if(o.hasElementWithId(v.id)){fe("Can not create second element with ID `"+v.id+"`"),h();continue}}else;var g=v.id;if(p.isNode()){var y=f.position;null==y.x&&(y.x=0),null==y.y&&(y.y=0)}if(p.isEdge()){for(var m=p,x=["source","target"],w=x.length,E=!1,P=0;P<w;P++){var S=x[P],C=v[S];k(C)&&(C=v[S]=""+v[S]),null==C||""===C?(fe("Can not create edge `"+g+"` with unspecified "+S),E=!0):o.hasElementWithId(C)||(fe("Can not create edge `"+g+"` with nonexistant "+S+" `"+C+"`"),E=!0)}if(E){h();continue}var _=o.getElementById(v.source),j=o.getElementById(v.target);_.same(j)?_._private.edges.push(m):(_._private.edges.push(m),j._private.edges.push(m)),m._private.source=_,m._private.target=j}f.map=new Ce,f.map.set(g,{ele:p,index:0}),f.removed=!1,r&&o.addToPool(p)}for(var D=0;D<s.length;D++){var B=s[D],O=B._private.data;k(O.parent)&&(O.parent=""+O.parent);var M=O.parent,N=null!=M;if(N){var I=o.getElementById(M);if(I.empty())O.parent=void 0;else{for(var L=!1,A=I;!A.empty();){if(B.same(A)){L=!0,O.parent=void 0;break}A=A.parent()}L||(I[0]._private.children.push(B),B._private.parent=I[0],a.hasCompoundNodes=!0)}}}if(e.length>0){for(var z=e.length===i.length?i:new ho(o,e),R=0;R<z.length;R++){var F=z[R];F.isNode()||(F.parallelEdges().clearTraversalCache(),F.source().clearTraversalCache(),F.target().clearTraversalCache())}(a.hasCompoundNodes?o.collection().merge(z).merge(z.connectedNodes()).merge(z.parent()):z).dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(n),n?z.emitAndNotify("add"):r&&z.emit("add")}return i},po.removed=function(){var e=this[0];return e&&e._private.removed},po.inside=function(){var e=this[0];return e&&!e._private.removed},po.remove=function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],i={},o=n._private.cy;function a(e){for(var t=e._private.edges,n=0;n<t.length;n++)u(t[n])}function s(e){for(var t=e._private.children,n=0;n<t.length;n++)u(t[n])}function u(e){var n=i[e.id()];t&&e.removed()||n||(i[e.id()]=!0,e.isNode()?(r.push(e),a(e),s(e)):r.unshift(e))}for(var l=0,c=n.length;l<c;l++){var d=n[l];u(d)}function h(e,t){var n=e._private.edges;Ee(n,t),e.clearTraversalCache()}function p(e){e.clearTraversalCache()}var f=[];function v(e,t){t=t[0];var n=(e=e[0])._private.children,r=e.id();Ee(n,t),t._private.parent=null,f.ids[r]||(f.ids[r]=!0,f.push(e))}f.ids={},n.dirtyCompoundBoundsCache(),t&&o.removeFromPool(r);for(var g=0;g<r.length;g++){var y=r[g];if(y.isEdge()){var m=y.source()[0],b=y.target()[0];h(m,y),h(b,y);for(var x=y.parallelEdges(),w=0;w<x.length;w++){var E=x[w];p(E),E.isBundledBezier()&&E.dirtyBoundingBoxCache()}}else{var k=y.parent();0!==k.length&&v(k,y)}t&&(y._private.removed=!0)}var P=o._private.elements;o._private.hasCompoundNodes=!1;for(var S=0;S<P.length;S++){var C=P[S];if(C.isParent()){o._private.hasCompoundNodes=!0;break}}var _=new ho(this.cy(),r);_.size()>0&&(e?_.emitAndNotify("remove"):t&&_.emit("remove"));for(var j=0;j<f.length;j++){var D=f[j];t&&D.removed()||D.updateStyle()}return _},po.move=function(e){var t=this._private.cy,n=this,r=!1,i=!1,o=function(e){return null==e?e:""+e};if(void 0!==e.source||void 0!==e.target){var a=o(e.source),s=o(e.target),u=null!=a&&t.hasElementWithId(a),l=null!=s&&t.hasElementWithId(s);(u||l)&&(t.batch((function(){n.remove(r,i),n.emitAndNotify("moveout");for(var e=0;e<n.length;e++){var t=n[e],o=t._private.data;t.isEdge()&&(u&&(o.source=a),l&&(o.target=s))}n.restore(r,i)})),n.emitAndNotify("move"))}else if(void 0!==e.parent){var c=o(e.parent);if(null===c||t.hasElementWithId(c)){var d=null===c?void 0:c;t.batch((function(){var e=n.remove(r,i);e.emitAndNotify("moveout");for(var t=0;t<n.length;t++){var o=n[t],a=o._private.data;o.isNode()&&(a.parent=d)}e.restore(r,i)})),n.emitAndNotify("move")}}return this},[An,Zn,$n,Lr,Fr,Gr,Ur,wi,Li,Ai,{isNode:function(){return"nodes"===this.group()},isEdge:function(){return"edges"===this.group()},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var e=this[0];if(e)return e._private.group}},Fi,Yi,Gi,to,io].forEach((function(e){R(po,e)}));var fo={add:function(e){var t,n=this;if(S(e)){var r=e;if(r._private.cy===n)t=r.restore();else{for(var i=[],o=0;o<r.length;o++){var a=r[o];i.push(a.json())}t=new ho(n,i)}}else if(w(e)){t=new ho(n,e)}else if(E(e)&&(w(e.nodes)||w(e.edges))){for(var s=e,u=[],l=["nodes","edges"],c=0,d=l.length;c<d;c++){var h=l[c],p=s[h];if(w(p))for(var f=0,v=p.length;f<v;f++){var g=R({group:h},p[f]);u.push(g)}}t=new ho(n,u)}else{t=new De(n,e).collection()}return t},remove:function(e){if(S(e));else if(b(e)){var t=e;e=this.$(t)}return e.remove()}};var vo=function(){function e(e){return-e.tension*e.x-e.friction*e.v}function t(t,n,r){var i={x:t.x+r.dx*n,v:t.v+r.dv*n,tension:t.tension,friction:t.friction};return{dx:i.v,dv:e(i)}}function n(n,r){var i={dx:n.v,dv:e(n)},o=t(n,.5*r,i),a=t(n,.5*r,o),s=t(n,r,a),u=1/6*(i.dx+2*(o.dx+a.dx)+s.dx),l=1/6*(i.dv+2*(o.dv+a.dv)+s.dv);return n.x=n.x+u*r,n.v=n.v+l*r,n}return function e(t,r,i){var o,a,s,u={x:-1,v:0,tension:null,friction:null},l=[0],c=0,d=1e-4;for(t=parseFloat(t)||500,r=parseFloat(r)||20,i=i||null,u.tension=t,u.friction=r,a=(o=null!==i)?(c=e(t,r))/i*.016:.016;s=n(s||u,a),l.push(1+s.x),c+=16,Math.abs(s.x)>d&&Math.abs(s.v)>d;);return o?function(e){return l[e*(l.length-1)|0]}:c}}(),go=function(e,t,n,r){var i=function(e,t,n,r){var i=4,o=.001,a=1e-7,s=10,u=11,l=1/(u-1),c="undefined"!=typeof Float32Array;if(4!==arguments.length)return!1;for(var d=0;d<4;++d)if("number"!=typeof arguments[d]||isNaN(arguments[d])||!isFinite(arguments[d]))return!1;e=Math.min(e,1),n=Math.min(n,1),e=Math.max(e,0),n=Math.max(n,0);var h=c?new Float32Array(u):new Array(u);function p(e,t){return 1-3*t+3*e}function f(e,t){return 3*t-6*e}function v(e){return 3*e}function g(e,t,n){return((p(t,n)*e+f(t,n))*e+v(t))*e}function y(e,t,n){return 3*p(t,n)*e*e+2*f(t,n)*e+v(t)}function m(t,r){for(var o=0;o<i;++o){var a=y(r,e,n);if(0===a)return r;r-=(g(r,e,n)-t)/a}return r}function b(){for(var t=0;t<u;++t)h[t]=g(t*l,e,n)}function x(t,r,i){var o,u,l=0;do{(o=g(u=r+(i-r)/2,e,n)-t)>0?i=u:r=u}while(Math.abs(o)>a&&++l<s);return u}function w(t){for(var r=0,i=1,a=u-1;i!==a&&h[i]<=t;++i)r+=l;--i;var s=r+(t-h[i])/(h[i+1]-h[i])*l,c=y(s,e,n);return c>=o?m(t,s):0===c?s:x(t,r,r+l)}var E=!1;function k(){E=!0,e===t&&n===r||b()}var P=function(i){return E||k(),e===t&&n===r?i:0===i?0:1===i?1:g(w(i),t,r)};P.getControlPoints=function(){return[{x:e,y:t},{x:n,y:r}]};var S="generateBezier("+[e,t,n,r]+")";return P.toString=function(){return S},P}(e,t,n,r);return function(e,t,n){return e+(t-e)*i(n)}},yo={linear:function(e,t,n){return e+(t-e)*n},ease:go(.25,.1,.25,1),"ease-in":go(.42,0,1,1),"ease-out":go(0,0,.58,1),"ease-in-out":go(.42,0,.58,1),"ease-in-sine":go(.47,0,.745,.715),"ease-out-sine":go(.39,.575,.565,1),"ease-in-out-sine":go(.445,.05,.55,.95),"ease-in-quad":go(.55,.085,.68,.53),"ease-out-quad":go(.25,.46,.45,.94),"ease-in-out-quad":go(.455,.03,.515,.955),"ease-in-cubic":go(.55,.055,.675,.19),"ease-out-cubic":go(.215,.61,.355,1),"ease-in-out-cubic":go(.645,.045,.355,1),"ease-in-quart":go(.895,.03,.685,.22),"ease-out-quart":go(.165,.84,.44,1),"ease-in-out-quart":go(.77,0,.175,1),"ease-in-quint":go(.755,.05,.855,.06),"ease-out-quint":go(.23,1,.32,1),"ease-in-out-quint":go(.86,0,.07,1),"ease-in-expo":go(.95,.05,.795,.035),"ease-out-expo":go(.19,1,.22,1),"ease-in-out-expo":go(1,0,0,1),"ease-in-circ":go(.6,.04,.98,.335),"ease-out-circ":go(.075,.82,.165,1),"ease-in-out-circ":go(.785,.135,.15,.86),spring:function(e,t,n){if(0===n)return yo.linear;var r=vo(e,t,n);return function(e,t,n){return e+(t-e)*r(n)}},"cubic-bezier":go};function mo(e,t,n,r,i){if(1===r)return n;if(t===n)return n;var o=i(t,n,r);return null==e||((e.roundValue||e.color)&&(o=Math.round(o)),void 0!==e.min&&(o=Math.max(o,e.min)),void 0!==e.max&&(o=Math.min(o,e.max))),o}function bo(e,t){return null!=e.pfValue||null!=e.value?null==e.pfValue||null!=t&&"%"===t.type.units?e.value:e.pfValue:e}function xo(e,t,n,r,i){var o=null!=i?i.type:null;n<0?n=0:n>1&&(n=1);var a=bo(e,i),s=bo(t,i);if(k(a)&&k(s))return mo(o,a,s,n,r);if(w(a)&&w(s)){for(var u=[],l=0;l<s.length;l++){var c=a[l],d=s[l];if(null!=c&&null!=d){var h=mo(o,c,d,n,r);u.push(h)}else u.push(d)}return u}}function wo(e,t,n,r){var i=!r,o=e._private,a=t._private,s=a.easing,u=a.startTime,l=(r?e:e.cy()).style();if(!a.easingImpl)if(null==s)a.easingImpl=yo.linear;else{var c,d,h;if(b(s))c=l.parse("transition-timing-function",s).value;else c=s;b(c)?(d=c,h=[]):(d=c[1],h=c.slice(2).map((function(e){return+e}))),h.length>0?("spring"===d&&h.push(a.duration),a.easingImpl=yo[d].apply(null,h)):a.easingImpl=yo[d]}var p,f=a.easingImpl;if(p=0===a.duration?1:(n-u)/a.duration,a.applying&&(p=a.progress),p<0?p=0:p>1&&(p=1),null==a.delay){var v=a.startPosition,g=a.position;if(g&&i&&!e.locked()){var y={};Eo(v.x,g.x)&&(y.x=xo(v.x,g.x,p,f)),Eo(v.y,g.y)&&(y.y=xo(v.y,g.y,p,f)),e.position(y)}var m=a.startPan,x=a.pan,w=o.pan,E=null!=x&&r;E&&(Eo(m.x,x.x)&&(w.x=xo(m.x,x.x,p,f)),Eo(m.y,x.y)&&(w.y=xo(m.y,x.y,p,f)),e.emit("pan"));var k=a.startZoom,P=a.zoom,S=null!=P&&r;S&&(Eo(k,P)&&(o.zoom=nt(o.minZoom,xo(k,P,p,f),o.maxZoom)),e.emit("zoom")),(E||S)&&e.emit("viewport");var C=a.style;if(C&&C.length>0&&i){for(var _=0;_<C.length;_++){var j=C[_],D=j.name,T=j,B=a.startStyle[D],O=xo(B,T,p,f,l.properties[B.name]);l.overrideBypass(e,D,O)}e.emit("style")}}return a.progress=p,p}function Eo(e,t){return null!=e&&null!=t&&(!(!k(e)||!k(t))||!(!e||!t))}function ko(e,t,n,r){var i=t._private;i.started=!0,i.startTime=n-i.progress*i.duration}function Po(e,t){var n=t._private.aniEles,r=[];function i(t,n){var i=t._private,o=i.animation.current,a=i.animation.queue,s=!1;if(0===o.length){var u=a.shift();u&&o.push(u)}for(var l=function(e){for(var t=e.length-1;t>=0;t--){(0,e[t])()}e.splice(0,e.length)},c=o.length-1;c>=0;c--){var d=o[c],h=d._private;h.stopped?(o.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,l(h.frames)):(h.playing||h.applying)&&(h.playing&&h.applying&&(h.applying=!1),h.started||ko(0,d,e),wo(t,d,e,n),h.applying&&(h.applying=!1),l(h.frames),null!=h.step&&h.step(e),d.completed()&&(o.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,l(h.completes)),s=!0)}return n||0!==o.length||0!==a.length||r.push(t),s}for(var o=!1,a=0;a<n.length;a++){var s=i(n[a]);o=o||s}var u=i(t,!0);(o||u)&&(n.length>0?t.notify("draw",n):t.notify("draw")),n.unmerge(r),t.emit("step")}var So={animate:Qn.animate(),animation:Qn.animation(),animated:Qn.animated(),clearQueue:Qn.clearQueue(),delay:Qn.delay(),delayAnimation:Qn.delayAnimation(),stop:Qn.stop(),addToAnimationPool:function(e){this.styleEnabled()&&this._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,e.styleEnabled()){var t=e.renderer();t&&t.beforeRender?t.beforeRender((function(t,n){Po(n,e)}),t.beforeRenderPriorities.animations):function t(){e._private.animationsRunning&&G((function(n){Po(n,e),t()}))}()}}},Co={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&C(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e}},_o=function(e){return b(e)?new Nr(e):e},jo={createEmitter:function(){var e=this._private;return e.emitter||(e.emitter=new Di(Co,this)),this},emitter:function(){return this._private.emitter},on:function(e,t,n){return this.emitter().on(e,_o(t),n),this},removeListener:function(e,t,n){return this.emitter().removeListener(e,_o(t),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,n){return this.emitter().one(e,_o(t),n),this},once:function(e,t,n){return this.emitter().one(e,_o(t),n),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};Qn.eventAliasesOn(jo);var Do={png:function(e){return e=e||{},this._private.renderer.png(e)},jpg:function(e){var t=this._private.renderer;return(e=e||{}).bg=e.bg||"#fff",t.jpg(e)}};Do.jpeg=Do.jpg;var To={layout:function(e){var t=this;if(null!=e)if(null!=e.name){var n=e.name,r=t.extension("layout",n);if(null!=r){var i;i=b(e.eles)?t.$(e.eles):null!=e.eles?e.eles:t.$();var o=new r(R({},e,{cy:t,eles:i}));return o}fe("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?")}else fe("A `name` must be specified to make a layout");else fe("Layout options must be specified to make a layout")}};To.createLayout=To.makeLayout=To.layout;var Bo={notify:function(e,t){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();null!=t&&r.merge(t)}else if(n.notificationsEnabled){var i=this.renderer();!this.destroyed()&&i&&i.notify(e,t)}},notifications:function(e){var t=this._private;return void 0===e?t.notificationsEnabled:(t.notificationsEnabled=!!e,this)},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;return null==e.batchCount&&(e.batchCount=0),0===e.batchCount&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},endBatch:function(){var e=this._private;if(0===e.batchCount)return this;if(e.batchCount--,0===e.batchCount){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach((function(n){var r=e.batchNotifications[n];r.empty()?t.notify(n):t.notify(n,r)}))}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch((function(){for(var n=Object.keys(e),r=0;r<n.length;r++){var i=n[r],o=e[i];t.getElementById(i).data(o)}}))}},Oo=we({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1}),Mo={renderTo:function(e,t,n,r){return this._private.renderer.renderTo(e,t,n,r),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(e){var t=this,n=t.extension("renderer",e.name);if(null!=n){void 0!==e.wheelSensitivity&&ge("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var r=Oo(e);r.cy=t,t._private.renderer=new n(r),this.notify("init")}else fe("Can not initialise: No such renderer `".concat(e.name,"` found. Did you forget to import it and `cytoscape.use()` it?"))},destroyRenderer:function(){var e=this;e.notify("destroy");var t=e.container();if(t)for(t._cyreg=null;t.childNodes.length>0;)t.removeChild(t.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach((function(e){var t=e._private;t.rscratch={},t.rstyle={},t.animation.current=[],t.animation.queue=[]}))},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};Mo.invalidateDimensions=Mo.resize;var No={collection:function(e,t){return b(e)?this.$(e):S(e)?e.collection():w(e)?new ho(this,e,t):new ho(this)},nodes:function(e){var t=this.$((function(e){return e.isNode()}));return e?t.filter(e):t},edges:function(e){var t=this.$((function(e){return e.isEdge()}));return e?t.filter(e):t},$:function(e){var t=this._private.elements;return e?t.filter(e):t.spawnSelf()},mutableElements:function(){return this._private.elements}};No.elements=No.filter=No.$;var Io={},Lo="t";Io.apply=function(e){for(var t=this,n=t._private.cy.collection(),r=0;r<e.length;r++){var i=e[r],o=t.getContextMeta(i);if(!o.empty){var a=t.getContextStyle(o),s=t.applyContextStyle(o,a,i);i._private.appliedInitStyle?t.updateTransitions(i,s.diffProps):i._private.appliedInitStyle=!0,t.updateStyleHints(i)&&n.push(i)}}return n},Io.getPropertiesDiff=function(e,t){var n=this,r=n._private.propDiffs=n._private.propDiffs||{},i=e+"-"+t,o=r[i];if(o)return o;for(var a=[],s={},u=0;u<n.length;u++){var l=n[u],c=e[u]===Lo,d=t[u]===Lo,h=c!==d,p=l.mappedProperties.length>0;if(h||d&&p){var f=void 0;h&&p||h?f=l.properties:p&&(f=l.mappedProperties);for(var v=0;v<f.length;v++){for(var g=f[v],y=g.name,m=!1,b=u+1;b<n.length;b++){var x=n[b];if(t[b]===Lo&&(m=null!=x.properties[g.name]))break}s[y]||m||(s[y]=!0,a.push(y))}}}return r[i]=a,a},Io.getContextMeta=function(e){for(var t,n=this,r="",i=e._private.styleCxtKey||"",o=0;o<n.length;o++){var a=n[o];r+=a.selector&&a.selector.matches(e)?Lo:"f"}return t=n.getPropertiesDiff(i,r),e._private.styleCxtKey=r,{key:r,diffPropNames:t,empty:0===t.length}},Io.getContextStyle=function(e){var t=e.key,n=this._private.contextStyles=this._private.contextStyles||{};if(n[t])return n[t];for(var r={_private:{key:t}},i=0;i<this.length;i++){var o=this[i];if(t[i]===Lo)for(var a=0;a<o.properties.length;a++){var s=o.properties[a];r[s.name]=s}}return n[t]=r,r},Io.applyContextStyle=function(e,t,n){for(var r=e.diffPropNames,i={},o=this.types,a=0;a<r.length;a++){var s=r[a],u=t[s],l=n.pstyle(s);if(!u){if(!l)continue;u=l.bypass?{name:s,deleteBypassed:!0}:{name:s,delete:!0}}if(l!==u){if(u.mapped===o.fn&&null!=l&&null!=l.mapping&&l.mapping.value===u.value){var c=l.mapping;if((c.fnValue=u.value(n))===c.prevFnValue)continue}var d=i[s]={prev:l};this.applyParsedProperty(n,u),d.next=n.pstyle(s),d.next&&d.next.bypass&&(d.next=d.next.bypassed)}}return{diffProps:i}},Io.updateStyleHints=function(e){var t=e._private,n=this,r=n.propertyGroupNames,i=n.propertyGroupKeys,o=function(e,t,r){return n.getPropertiesHash(e,t,r)},a=t.styleKey;if(e.removed())return!1;var s="nodes"===t.group,u=e._private.style;r=Object.keys(u);for(var l=0;l<i.length;l++){var c=i[l];t.styleKeys[c]=[K,Z]}for(var d,h=function(e,n){return t.styleKeys[n][0]=J(e,t.styleKeys[n][0])},p=function(e,n){return t.styleKeys[n][1]=ee(e,t.styleKeys[n][1])},f=function(e,t){h(e,t),p(e,t)},v=function(e,t){for(var n=0;n<e.length;n++){var r=e.charCodeAt(n);h(r,t),p(r,t)}},g=0;g<r.length;g++){var y=r[g],m=u[y];if(null!=m){var b=this.properties[y],x=b.type,w=b.groupKey,E=void 0;null!=b.hashOverride?E=b.hashOverride(e,m):null!=m.pfValue&&(E=m.pfValue);var k=null==b.enums?m.value:null,P=null!=E,S=P||null!=k,C=m.units;if(x.number&&S&&!x.multiple)f(-128<(d=P?E:k)&&d<128&&Math.floor(d)!==d?2e9-(1024*d|0):d,w),P||null==C||v(C,w);else v(m.strValue,w)}}for(var _,j,D=[K,Z],T=0;T<i.length;T++){var B=i[T],O=t.styleKeys[B];D[0]=J(O[0],D[0]),D[1]=ee(O[1],D[1])}t.styleKey=(_=D[0],j=D[1],2097152*_+j);var M=t.styleKeys;t.labelDimsKey=te(M.labelDimensions);var N=o(e,["label"],M.labelDimensions);if(t.labelKey=te(N),t.labelStyleKey=te(ne(M.commonLabel,N)),!s){var I=o(e,["source-label"],M.labelDimensions);t.sourceLabelKey=te(I),t.sourceLabelStyleKey=te(ne(M.commonLabel,I));var L=o(e,["target-label"],M.labelDimensions);t.targetLabelKey=te(L),t.targetLabelStyleKey=te(ne(M.commonLabel,L))}if(s){var A=t.styleKeys,z=A.nodeBody,R=A.nodeBorder,F=A.backgroundImage,V=A.compound,q=A.pie,Y=[z,R,F,V,q].filter((function(e){return null!=e})).reduce(ne,[K,Z]);t.nodeKey=te(Y),t.hasPie=null!=q&&q[0]!==K&&q[1]!==Z}return a!==t.styleKey},Io.clearStyleHints=function(e){var t=e._private;t.styleCxtKey="",t.styleKeys={},t.styleKey=null,t.labelKey=null,t.labelStyleKey=null,t.sourceLabelKey=null,t.sourceLabelStyleKey=null,t.targetLabelKey=null,t.targetLabelStyleKey=null,t.nodeKey=null,t.hasPie=null},Io.applyParsedProperty=function(e,t){var n,r=this,i=t,o=e._private.style,a=r.types,s=r.properties[i.name].type,u=i.bypass,l=o[i.name],c=l&&l.bypass,d=e._private,h="mapping",p=function(e){return null==e?null:null!=e.pfValue?e.pfValue:e.value},f=function(){var t=p(l),n=p(i);r.checkTriggers(e,i.name,t,n)};if(i&&"pie"===i.name.substr(0,3)&&ge("The pie style properties are deprecated. Create charts using background images instead."),"curve-style"===t.name&&e.isEdge()&&("bezier"!==t.value&&e.isLoop()||"haystack"===t.value&&(e.source().isParent()||e.target().isParent()))&&(i=t=this.parse(t.name,"bezier",u)),i.delete)return o[i.name]=void 0,f(),!0;if(i.deleteBypassed)return l?!!l.bypass&&(l.bypassed=void 0,f(),!0):(f(),!0);if(i.deleteBypass)return l?!!l.bypass&&(o[i.name]=l.bypassed,f(),!0):(f(),!0);var v=function(){ge("Do not assign mappings to elements without corresponding data (i.e. ele `"+e.id()+"` has no mapping for property `"+i.name+"` with data field `"+i.field+"`); try a `["+i.field+"]` selector to limit scope to elements with `"+i.field+"` defined")};switch(i.mapped){case a.mapData:for(var g,y=i.field.split("."),m=d.data,b=0;b<y.length&&m;b++){m=m[y[b]]}if(null==m)return v(),!1;if(!k(m))return ge("Do not use continuous mappers without specifying numeric data (i.e. `"+i.field+": "+m+"` for `"+e.id()+"` is non-numeric)"),!1;var x=i.fieldMax-i.fieldMin;if((g=0===x?0:(m-i.fieldMin)/x)<0?g=0:g>1&&(g=1),s.color){var w=i.valueMin[0],E=i.valueMax[0],P=i.valueMin[1],S=i.valueMax[1],C=i.valueMin[2],_=i.valueMax[2],j=null==i.valueMin[3]?1:i.valueMin[3],D=null==i.valueMax[3]?1:i.valueMax[3],T=[Math.round(w+(E-w)*g),Math.round(P+(S-P)*g),Math.round(C+(_-C)*g),Math.round(j+(D-j)*g)];n={bypass:i.bypass,name:i.name,value:T,strValue:"rgb("+T[0]+", "+T[1]+", "+T[2]+")"}}else{if(!s.number)return!1;var B=i.valueMin+(i.valueMax-i.valueMin)*g;n=this.parse(i.name,B,i.bypass,h)}if(!n)return v(),!1;n.mapping=i,i=n;break;case a.data:for(var O=i.field.split("."),M=d.data,N=0;N<O.length&&M;N++){M=M[O[N]]}if(null!=M&&(n=this.parse(i.name,M,i.bypass,h)),!n)return v(),!1;n.mapping=i,i=n;break;case a.fn:var I=i.value,L=null!=i.fnValue?i.fnValue:I(e);if(i.prevFnValue=L,null==L)return ge("Custom function mappers may not return null (i.e. `"+i.name+"` for ele `"+e.id()+"` is null)"),!1;if(!(n=this.parse(i.name,L,i.bypass,h)))return ge("Custom function mappers may not return invalid values for the property type (i.e. `"+i.name+"` for ele `"+e.id()+"` is invalid)"),!1;n.mapping=ye(i),i=n;break;case void 0:break;default:return!1}return u?(i.bypassed=c?l.bypassed:l,o[i.name]=i):c?l.bypassed=i:o[i.name]=i,f(),!0},Io.cleanElements=function(e,t){for(var n=0;n<e.length;n++){var r=e[n];if(this.clearStyleHints(r),r.dirtyCompoundBoundsCache(),r.dirtyBoundingBoxCache(),t)for(var i=r._private.style,o=Object.keys(i),a=0;a<o.length;a++){var s=o[a],u=i[s];null!=u&&(u.bypass?u.bypassed=null:i[s]=null)}else r._private.style={}}},Io.update=function(){this._private.cy.mutableElements().updateStyle()},Io.updateTransitions=function(e,t){var n=this,r=e._private,i=e.pstyle("transition-property").value,o=e.pstyle("transition-duration").pfValue,a=e.pstyle("transition-delay").pfValue;if(i.length>0&&o>0){for(var s={},u=!1,l=0;l<i.length;l++){var c=i[l],d=e.pstyle(c),h=t[c];if(h){var p=h.prev,f=null!=h.next?h.next:d,v=!1,g=void 0,y=1e-6;p&&(k(p.pfValue)&&k(f.pfValue)?(v=f.pfValue-p.pfValue,g=p.pfValue+y*v):k(p.value)&&k(f.value)?(v=f.value-p.value,g=p.value+y*v):w(p.value)&&w(f.value)&&(v=p.value[0]!==f.value[0]||p.value[1]!==f.value[1]||p.value[2]!==f.value[2],g=p.strValue),v&&(s[c]=f.strValue,this.applyBypass(e,c,g),u=!0))}}if(!u)return;r.transitioning=!0,new Xn((function(t){a>0?e.delayAnimation(a).play().promise().then(t):t()})).then((function(){return e.animation({style:s,duration:o,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1)},Io.checkTrigger=function(e,t,n,r,i,o){var a=this.properties[t],s=i(a);null!=s&&s(n,r)&&o(a)},Io.checkZOrderTrigger=function(e,t,n,r){var i=this;this.checkTrigger(e,t,n,r,(function(e){return e.triggersZOrder}),(function(){i._private.cy.notify("zorder",e)}))},Io.checkBoundsTrigger=function(e,t,n,r){this.checkTrigger(e,t,n,r,(function(e){return e.triggersBounds}),(function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),"curve-style"!==t||"bezier"!==n&&"bezier"!==r||!i.triggersBoundsOfParallelBeziers||e.parallelEdges().forEach((function(e){e.isBundledBezier()&&e.dirtyBoundingBoxCache()}))}))},Io.checkTriggers=function(e,t,n,r){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,n,r),this.checkBoundsTrigger(e,t,n,r)};var Ao={applyBypass:function(e,t,n,r){var i=[];if("*"===t||"**"===t){if(void 0!==n)for(var o=0;o<this.properties.length;o++){var a=this.properties[o].name,s=this.parse(a,n,!0);s&&i.push(s)}}else if(b(t)){var u=this.parse(t,n,!0);u&&i.push(u)}else{if(!E(t))return!1;var l=t;r=n;for(var c=Object.keys(l),d=0;d<c.length;d++){var h=c[d],p=l[h];if(void 0===p&&(p=l[N(h)]),void 0!==p){var f=this.parse(h,p,!0);f&&i.push(f)}}}if(0===i.length)return!1;for(var v=!1,g=0;g<e.length;g++){for(var y=e[g],m={},x=void 0,w=0;w<i.length;w++){var k=i[w];if(r){var P=y.pstyle(k.name);x=m[k.name]={prev:P}}v=this.applyParsedProperty(y,ye(k))||v,r&&(x.next=y.pstyle(k.name))}v&&this.updateStyleHints(y),r&&this.updateTransitions(y,m,true)}return v},overrideBypass:function(e,t,n){t=M(t);for(var r=0;r<e.length;r++){var i=e[r],o=i._private.style[t],a=this.properties[t].type,s=a.color,u=a.mutiple,l=o?null!=o.pfValue?o.pfValue:o.value:null;o&&o.bypass?(o.value=n,null!=o.pfValue&&(o.pfValue=n),o.strValue=s?"rgb("+n.join(",")+")":u?n.join(" "):""+n,this.updateStyleHints(i)):this.applyBypass(i,t,n),this.checkTriggers(i,t,l,n)}},removeAllBypasses:function(e,t){return this.removeBypasses(e,this.propertyNames,t)},removeBypasses:function(e,t,n){for(var r=0;r<e.length;r++){for(var i=e[r],o={},a=0;a<t.length;a++){var s=t[a],u=this.properties[s],l=i.pstyle(u.name);if(l&&l.bypass){var c=this.parse(s,"",!0),d=o[u.name]={prev:l};this.applyParsedProperty(i,c),d.next=i.pstyle(u.name)}}this.updateStyleHints(i),n&&this.updateTransitions(i,o,true)}}},zo={getEmSizeInPixels:function(){var e=this.containerCss("font-size");return null!=e?parseFloat(e):1},containerCss:function(e){var t=this._private.cy.container();if(h&&t&&h.getComputedStyle)return h.getComputedStyle(t).getPropertyValue(e)}},Ro={getRenderedStyle:function(e,t){return t?this.getStylePropertyValue(e,t,!0):this.getRawStyle(e,!0)},getRawStyle:function(e,t){var n=this;if(e=e[0]){for(var r={},i=0;i<n.properties.length;i++){var o=n.properties[i],a=n.getStylePropertyValue(e,o.name,t);null!=a&&(r[o.name]=a,r[N(o.name)]=a)}return r}},getIndexedStyle:function(e,t,n,r){var i=e.pstyle(t)[n][r];return null!=i?i:e.cy().style().getDefaultProperty(t)[n][0]},getStylePropertyValue:function(e,t,n){if(e=e[0]){var r=this.properties[t];r.alias&&(r=r.pointsTo);var i=r.type,o=e.pstyle(r.name);if(o){var a=o.value,s=o.units,u=o.strValue;if(n&&i.number&&null!=a&&k(a)){var l=e.cy().zoom(),c=function(e){return e*l},d=function(e,t){return c(e)+t},h=w(a);return(h?s.every((function(e){return null!=e})):null!=s)?h?a.map((function(e,t){return d(e,s[t])})).join(" "):d(a,s):h?a.map((function(e){return b(e)?e:""+c(e)})).join(" "):""+c(a)}if(null!=u)return u}return null}},getAnimationStartStyle:function(e,t){for(var n={},r=0;r<t.length;r++){var i=t[r].name,o=e.pstyle(i);void 0!==o&&(o=E(o)?this.parse(i,o.strValue):this.parse(i,o)),o&&(n[i]=o)}return n},getPropsList:function(e){var t=[],n=e,r=this.properties;if(n)for(var i=Object.keys(n),o=0;o<i.length;o++){var a=i[o],s=n[a],u=r[a]||r[M(a)],l=this.parse(u.name,s);l&&t.push(l)}return t},getNonDefaultPropertiesHash:function(e,t,n){var r,i,o,a,s,u,l=n.slice();for(s=0;s<t.length;s++)if(r=t[s],null!=(i=e.pstyle(r,!1)))if(null!=i.pfValue)l[0]=J(a,l[0]),l[1]=ee(a,l[1]);else for(o=i.strValue,u=0;u<o.length;u++)a=o.charCodeAt(u),l[0]=J(a,l[0]),l[1]=ee(a,l[1]);return l}};Ro.getPropertiesHash=Ro.getNonDefaultPropertiesHash;var Fo={appendFromJson:function(e){for(var t=this,n=0;n<e.length;n++){var r=e[n],i=r.selector,o=r.style||r.css,a=Object.keys(o);t.selector(i);for(var s=0;s<a.length;s++){var u=a[s],l=o[u];t.css(u,l)}}return t},fromJson:function(e){var t=this;return t.resetToDefault(),t.appendFromJson(e),t},json:function(){for(var e=[],t=this.defaultLength;t<this.length;t++){for(var n=this[t],r=n.selector,i=n.properties,o={},a=0;a<i.length;a++){var s=i[a];o[s.name]=s.strValue}e.push({selector:r?r.toString():"core",style:o})}return e}},Vo={appendFromString:function(e){var t,n,r,i=this,o=""+e;function a(){o=o.length>t.length?o.substr(t.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(o=o.replace(/[/][*](\s|.)+?[*][/]/g,"");;){if(o.match(/^\s*$/))break;var u=o.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!u){ge("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+o);break}t=u[0];var l=u[1];if("core"!==l)if(new Nr(l).invalid){ge("Skipping parsing of block: Invalid selector found in string stylesheet: "+l),a();continue}var c=u[2],d=!1;n=c;for(var h=[];;){if(n.match(/^\s*$/))break;var p=n.match(/^\s*(.+?)\s*:\s*(.+?)\s*;/);if(!p){ge("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+c),d=!0;break}r=p[0];var f=p[1],v=p[2];if(this.properties[f])i.parse(f,v)?(h.push({name:f,val:v}),s()):(ge("Skipping property: Invalid property definition in: "+r),s());else ge("Skipping property: Invalid property name in: "+r),s()}if(d){a();break}i.selector(l);for(var g=0;g<h.length;g++){var y=h[g];i.css(y.name,y.val)}a()}return i},fromString:function(e){var t=this;return t.resetToDefault(),t.appendFromString(e),t}},qo={};!function(){var e=A,t=function(e){return"^"+e+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},n=function(t){var n=e+"|\\w+|rgb[a]?\\((?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)(?:\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)|hsl[a]?\\((?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?)))\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])(?:\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)|\\#[0-9a-fA-F]{3}|\\#[0-9a-fA-F]{6}";return"^"+t+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+e+")\\s*\\,\\s*("+e+")\\s*,\\s*("+n+")\\s*\\,\\s*("+n+")\\)$"},r=["^url\\s*\\(\\s*['\"]?(.+?)['\"]?\\s*\\)$","^(none)$","^(.+)$"];qo.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","taxi"]},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","polygon"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:t("data")},layoutData:{mapping:!0,regex:t("layoutData")},scratch:{mapping:!0,regex:t("scratch")},mapData:{mapping:!0,regex:n("mapData")},mapLayoutData:{mapping:!0,regex:n("mapLayoutData")},mapScratch:{mapping:!0,regex:n("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:r,singleRegexMatchValue:!0},urls:{regexes:r,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(e,t){switch(e.length){case 2:return"deg"!==t[0]&&"rad"!==t[0]&&"deg"!==t[1]&&"rad"!==t[1];case 1:return b(e[0])||"deg"===t[0]||"rad"===t[0];default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+e+")\\s*,\\s*("+e+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+e+")\\s*,\\s*("+e+")\\s*,\\s*("+e+")\\s*,\\s*("+e+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(e){var t=e.length;return 1===t||2===t||4===t}}};var i={zeroNonZero:function(e,t){return(null==e||null==t)&&e!==t||(0==e&&0!=t||0!=e&&0==t)},any:function(e,t){return e!=t},emptyNonEmpty:function(e,t){var n=T(e),r=T(t);return n&&!r||!n&&r}},o=qo.types,a=[{name:"label",type:o.text,triggersBounds:i.any,triggersZOrder:i.emptyNonEmpty},{name:"text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any}],s=[{name:"source-label",type:o.text,triggersBounds:i.any},{name:"source-text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"source-text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"source-text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"source-text-offset",type:o.size,triggersBounds:i.any}],u=[{name:"target-label",type:o.text,triggersBounds:i.any},{name:"target-text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"target-text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"target-text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"target-text-offset",type:o.size,triggersBounds:i.any}],l=[{name:"font-family",type:o.fontFamily,triggersBounds:i.any},{name:"font-style",type:o.fontStyle,triggersBounds:i.any},{name:"font-weight",type:o.fontWeight,triggersBounds:i.any},{name:"font-size",type:o.size,triggersBounds:i.any},{name:"text-transform",type:o.textTransform,triggersBounds:i.any},{name:"text-wrap",type:o.textWrap,triggersBounds:i.any},{name:"text-overflow-wrap",type:o.textOverflowWrap,triggersBounds:i.any},{name:"text-max-width",type:o.size,triggersBounds:i.any},{name:"text-outline-width",type:o.size,triggersBounds:i.any},{name:"line-height",type:o.positiveNumber,triggersBounds:i.any}],c=[{name:"text-valign",type:o.valign,triggersBounds:i.any},{name:"text-halign",type:o.halign,triggersBounds:i.any},{name:"color",type:o.color},{name:"text-outline-color",type:o.color},{name:"text-outline-opacity",type:o.zeroOneNumber},{name:"text-background-color",type:o.color},{name:"text-background-opacity",type:o.zeroOneNumber},{name:"text-background-padding",type:o.size,triggersBounds:i.any},{name:"text-border-opacity",type:o.zeroOneNumber},{name:"text-border-color",type:o.color},{name:"text-border-width",type:o.size,triggersBounds:i.any},{name:"text-border-style",type:o.borderStyle,triggersBounds:i.any},{name:"text-background-shape",type:o.textBackgroundShape,triggersBounds:i.any},{name:"text-justification",type:o.justification}],d=[{name:"events",type:o.bool},{name:"text-events",type:o.bool}],h=[{name:"display",type:o.display,triggersZOrder:i.any,triggersBounds:i.any,triggersBoundsOfParallelBeziers:!0},{name:"visibility",type:o.visibility,triggersZOrder:i.any},{name:"opacity",type:o.zeroOneNumber,triggersZOrder:i.zeroNonZero},{name:"text-opacity",type:o.zeroOneNumber},{name:"min-zoomed-font-size",type:o.size},{name:"z-compound-depth",type:o.zCompoundDepth,triggersZOrder:i.any},{name:"z-index-compare",type:o.zIndexCompare,triggersZOrder:i.any},{name:"z-index",type:o.nonNegativeInt,triggersZOrder:i.any}],p=[{name:"overlay-padding",type:o.size,triggersBounds:i.any},{name:"overlay-color",type:o.color},{name:"overlay-opacity",type:o.zeroOneNumber,triggersBounds:i.zeroNonZero}],f=[{name:"transition-property",type:o.propList},{name:"transition-duration",type:o.time},{name:"transition-delay",type:o.time},{name:"transition-timing-function",type:o.easing}],v=function(e,t){return"label"===t.value?-e.poolIndex():t.pfValue},g=[{name:"height",type:o.nodeSize,triggersBounds:i.any,hashOverride:v},{name:"width",type:o.nodeSize,triggersBounds:i.any,hashOverride:v},{name:"shape",type:o.nodeShape,triggersBounds:i.any},{name:"shape-polygon-points",type:o.polygonPointList,triggersBounds:i.any},{name:"background-color",type:o.color},{name:"background-fill",type:o.fill},{name:"background-opacity",type:o.zeroOneNumber},{name:"background-blacken",type:o.nOneOneNumber},{name:"background-gradient-stop-colors",type:o.colors},{name:"background-gradient-stop-positions",type:o.percentages},{name:"background-gradient-direction",type:o.gradientDirection},{name:"padding",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"padding-relative-to",type:o.paddingRelativeTo,triggersBounds:i.any},{name:"bounds-expansion",type:o.boundsExpansion,triggersBounds:i.any}],y=[{name:"border-color",type:o.color},{name:"border-opacity",type:o.zeroOneNumber},{name:"border-width",type:o.size,triggersBounds:i.any},{name:"border-style",type:o.borderStyle}],m=[{name:"background-image",type:o.urls},{name:"background-image-crossorigin",type:o.bgCrossOrigin},{name:"background-image-opacity",type:o.zeroOneNumbers},{name:"background-image-containment",type:o.bgContainment},{name:"background-image-smoothing",type:o.bools},{name:"background-position-x",type:o.bgPos},{name:"background-position-y",type:o.bgPos},{name:"background-width-relative-to",type:o.bgRelativeTo},{name:"background-height-relative-to",type:o.bgRelativeTo},{name:"background-repeat",type:o.bgRepeat},{name:"background-fit",type:o.bgFit},{name:"background-clip",type:o.bgClip},{name:"background-width",type:o.bgWH},{name:"background-height",type:o.bgWH},{name:"background-offset-x",type:o.bgPos},{name:"background-offset-y",type:o.bgPos}],x=[{name:"position",type:o.position,triggersBounds:i.any},{name:"compound-sizing-wrt-labels",type:o.compoundIncludeLabels,triggersBounds:i.any},{name:"min-width",type:o.size,triggersBounds:i.any},{name:"min-width-bias-left",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-width-bias-right",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-height",type:o.size,triggersBounds:i.any},{name:"min-height-bias-top",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-height-bias-bottom",type:o.sizeMaybePercent,triggersBounds:i.any}],w=[{name:"line-style",type:o.lineStyle},{name:"line-color",type:o.color},{name:"line-fill",type:o.fill},{name:"line-cap",type:o.lineCap},{name:"line-opacity",type:o.zeroOneNumber},{name:"line-dash-pattern",type:o.numbers},{name:"line-dash-offset",type:o.number},{name:"line-gradient-stop-colors",type:o.colors},{name:"line-gradient-stop-positions",type:o.percentages},{name:"curve-style",type:o.curveStyle,triggersBounds:i.any,triggersBoundsOfParallelBeziers:!0},{name:"haystack-radius",type:o.zeroOneNumber,triggersBounds:i.any},{name:"source-endpoint",type:o.edgeEndpoint,triggersBounds:i.any},{name:"target-endpoint",type:o.edgeEndpoint,triggersBounds:i.any},{name:"control-point-step-size",type:o.size,triggersBounds:i.any},{name:"control-point-distances",type:o.bidirectionalSizes,triggersBounds:i.any},{name:"control-point-weights",type:o.numbers,triggersBounds:i.any},{name:"segment-distances",type:o.bidirectionalSizes,triggersBounds:i.any},{name:"segment-weights",type:o.numbers,triggersBounds:i.any},{name:"taxi-turn",type:o.bidirectionalSizeMaybePercent,triggersBounds:i.any},{name:"taxi-turn-min-distance",type:o.size,triggersBounds:i.any},{name:"taxi-direction",type:o.axisDirection,triggersBounds:i.any},{name:"edge-distances",type:o.edgeDistances,triggersBounds:i.any},{name:"arrow-scale",type:o.positiveNumber,triggersBounds:i.any},{name:"loop-direction",type:o.angle,triggersBounds:i.any},{name:"loop-sweep",type:o.angle,triggersBounds:i.any},{name:"source-distance-from-node",type:o.size,triggersBounds:i.any},{name:"target-distance-from-node",type:o.size,triggersBounds:i.any}],E=[{name:"ghost",type:o.bool,triggersBounds:i.any},{name:"ghost-offset-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"ghost-offset-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"ghost-opacity",type:o.zeroOneNumber}],k=[{name:"selection-box-color",type:o.color},{name:"selection-box-opacity",type:o.zeroOneNumber},{name:"selection-box-border-color",type:o.color},{name:"selection-box-border-width",type:o.size},{name:"active-bg-color",type:o.color},{name:"active-bg-opacity",type:o.zeroOneNumber},{name:"active-bg-size",type:o.size},{name:"outside-texture-bg-color",type:o.color},{name:"outside-texture-bg-opacity",type:o.zeroOneNumber}],P=[];qo.pieBackgroundN=16,P.push({name:"pie-size",type:o.sizeMaybePercent});for(var S=1;S<=qo.pieBackgroundN;S++)P.push({name:"pie-"+S+"-background-color",type:o.color}),P.push({name:"pie-"+S+"-background-size",type:o.percent}),P.push({name:"pie-"+S+"-background-opacity",type:o.zeroOneNumber});var C=[],_=qo.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:o.arrowShape,triggersBounds:i.any},{name:"arrow-color",type:o.color},{name:"arrow-fill",type:o.arrowFill}].forEach((function(e){_.forEach((function(t){var n=t+"-"+e.name,r=e.type,i=e.triggersBounds;C.push({name:n,type:r,triggersBounds:i})}))}),{});var j=qo.properties=[].concat(d,f,h,p,E,c,l,a,s,u,g,y,m,P,x,w,C,k),D=qo.propertyGroups={behavior:d,transition:f,visibility:h,overlay:p,ghost:E,commonLabel:c,labelDimensions:l,mainLabel:a,sourceLabel:s,targetLabel:u,nodeBody:g,nodeBorder:y,backgroundImage:m,pie:P,compound:x,edgeLine:w,edgeArrow:C,core:k},B=qo.propertyGroupNames={};(qo.propertyGroupKeys=Object.keys(D)).forEach((function(e){B[e]=D[e].map((function(e){return e.name})),D[e].forEach((function(t){return t.groupKey=e}))}));var O=qo.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];qo.propertyNames=j.map((function(e){return e.name}));for(var M=0;M<j.length;M++){var N=j[M];j[N.name]=N}for(var I=0;I<O.length;I++){var L=O[I],z=j[L.pointsTo],R={name:L.name,alias:!0,pointsTo:z};j.push(R),j[L.name]=R}}(),qo.getDefaultProperty=function(e){return this.getDefaultProperties()[e]},qo.getDefaultProperties=function(){var e=this._private;if(null!=e.defaultProperties)return e.defaultProperties;for(var t=R({"selection-box-color":"#ddd","selection-box-opacity":.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce((function(e,t){for(var n=1;n<=qo.pieBackgroundN;n++){var r=t.name.replace("{{i}}",n),i=t.value;e[r]=i}return e}),{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":.5,"segment-weights":.5,"segment-distances":20,"taxi-turn":"50%","taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"}].reduce((function(e,t){return qo.arrowPrefixes.forEach((function(n){var r=n+"-"+t.name,i=t.value;e[r]=i})),e}),{})),n={},r=0;r<this.properties.length;r++){var i=this.properties[r];if(!i.pointsTo){var o=i.name,a=t[o],s=this.parse(o,a);n[o]=s}}return e.defaultProperties=n,e.defaultProperties},qo.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":.25}),this.defaultLength=this.length};var Yo={parse:function(e,t,n,r){var i=this;if(x(t))return i.parseImplWarn(e,t,n,r);var o,a=ie(e,""+t,n?"t":"f","mapping"===r||!0===r||!1===r||null==r?"dontcare":r),s=i.propCache=i.propCache||[];return(o=s[a])||(o=s[a]=i.parseImplWarn(e,t,n,r)),(n||"mapping"===r)&&(o=ye(o))&&(o.value=ye(o.value)),o},parseImplWarn:function(e,t,n,r){var i=this.parseImpl(e,t,n,r);return i||null==t||ge("The style property `".concat(e,": ").concat(t,"` is invalid")),!i||"width"!==i.name&&"height"!==i.name||"label"!==t||ge("The style value of `label` is deprecated for `"+i.name+"`"),i}};Yo.parseImpl=function(e,t,n,r){var i=this;e=M(e);var o=i.properties[e],a=t,s=i.types;if(!o)return null;if(void 0===t)return null;o.alias&&(o=o.pointsTo,e=o.name);var u=b(t);u&&(t=t.trim());var l,c,d=o.type;if(!d)return null;if(n&&(""===t||null===t))return{name:e,value:t,bypass:!0,deleteBypass:!0};if(x(t))return{name:e,value:t,strValue:"fn",mapped:s.fn,bypass:n};if(!u||r||t.length<7||"a"!==t[1]);else{if(t.length>=7&&"d"===t[0]&&(l=new RegExp(s.data.regex).exec(t))){if(n)return!1;var h=s.data;return{name:e,value:l,strValue:""+t,mapped:h,field:l[1],bypass:n}}if(t.length>=10&&"m"===t[0]&&(c=new RegExp(s.mapData.regex).exec(t))){if(n)return!1;if(d.multiple)return!1;var p=s.mapData;if(!d.color&&!d.number)return!1;var f=this.parse(e,c[4]);if(!f||f.mapped)return!1;var v=this.parse(e,c[5]);if(!v||v.mapped)return!1;if(f.pfValue===v.pfValue||f.strValue===v.strValue)return ge("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+f.strValue+"`"),this.parse(e,f.strValue);if(d.color){var g=f.value,y=v.value;if(!(g[0]!==y[0]||g[1]!==y[1]||g[2]!==y[2]||g[3]!==y[3]&&(null!=g[3]&&1!==g[3]||null!=y[3]&&1!==y[3])))return!1}return{name:e,value:c,strValue:""+t,mapped:p,field:c[1],fieldMin:parseFloat(c[2]),fieldMax:parseFloat(c[3]),valueMin:f.value,valueMax:v.value,bypass:n}}}if(d.multiple&&"multiple"!==r){var m;if(m=u?t.split(/\s+/):w(t)?t:[t],d.evenMultiple&&m.length%2!=0)return null;for(var E=[],P=[],S=[],C="",_=!1,j=0;j<m.length;j++){var D=i.parse(e,m[j],n,"multiple");_=_||b(D.value),E.push(D.value),S.push(null!=D.pfValue?D.pfValue:D.value),P.push(D.units),C+=(j>0?" ":"")+D.strValue}return d.validate&&!d.validate(E,P)?null:d.singleEnum&&_?1===E.length&&b(E[0])?{name:e,value:E[0],strValue:E[0],bypass:n}:null:{name:e,value:E,pfValue:S,strValue:C,bypass:n,units:P}}var T,B,O=function(){for(var r=0;r<d.enums.length;r++){if(d.enums[r]===t)return{name:e,value:t,strValue:""+t,bypass:n}}return null};if(d.number){var N,I="px";if(d.units&&(N=d.units),d.implicitUnits&&(I=d.implicitUnits),!d.unitless)if(u){var L="px|em"+(d.allowPercent?"|\\%":"");N&&(L=N);var z=t.match("^("+A+")("+L+")?$");z&&(t=z[1],N=z[2]||I)}else N&&!d.implicitUnits||(N=I);if(t=parseFloat(t),isNaN(t)&&void 0===d.enums)return null;if(isNaN(t)&&void 0!==d.enums)return t=a,O();if(d.integer&&(!k(B=t)||Math.floor(B)!==B))return null;if(void 0!==d.min&&(t<d.min||d.strictMin&&t===d.min)||void 0!==d.max&&(t>d.max||d.strictMax&&t===d.max))return null;var R={name:e,value:t,strValue:""+t+(N||""),units:N,bypass:n};return d.unitless||"px"!==N&&"em"!==N?R.pfValue=t:R.pfValue="px"!==N&&N?this.getEmSizeInPixels()*t:t,"ms"!==N&&"s"!==N||(R.pfValue="ms"===N?t:1e3*t),"deg"!==N&&"rad"!==N||(R.pfValue="rad"===N?t:(T=t,Math.PI*T/180)),"%"===N&&(R.pfValue=t/100),R}if(d.propList){var V=[],q=""+t;if("none"===q);else{for(var Y=q.split(/\s*,\s*|\s+/),X=0;X<Y.length;X++){var H=Y[X].trim();i.properties[H]?V.push(H):ge("`"+H+"` is not a valid property name")}if(0===V.length)return null}return{name:e,value:V,strValue:0===V.length?"none":V.join(" "),bypass:n}}if(d.color){var W=F(t);return W?{name:e,value:W,pfValue:W,strValue:"rgb("+W[0]+","+W[1]+","+W[2]+")",bypass:n}:null}if(d.regex||d.regexes){if(d.enums){var G=O();if(G)return G}for(var U=d.regexes?d.regexes:[d.regex],K=0;K<U.length;K++){var Q=new RegExp(U[K]).exec(t);if(Q)return{name:e,value:d.singleRegexMatchValue?Q[1]:Q,strValue:""+t,bypass:n}}return null}return d.string?{name:e,value:""+t,strValue:""+t,bypass:n}:d.enums?O():null};var Xo=function e(t){if(!(this instanceof e))return new e(t);j(t)?(this._private={cy:t,coreStyle:{}},this.length=0,this.resetToDefault()):fe("A style must have a core reference")},Ho=Xo.prototype;Ho.instanceString=function(){return"style"},Ho.clear=function(){for(var e=this._private,t=e.cy.elements(),n=0;n<this.length;n++)this[n]=void 0;return this.length=0,e.contextStyles={},e.propDiffs={},this.cleanElements(t,!0),t.forEach((function(e){var t=e[0]._private;t.styleDirty=!0,t.appliedInitStyle=!1})),this},Ho.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this},Ho.core=function(e){return this._private.coreStyle[e]||this.getDefaultProperty(e)},Ho.selector=function(e){var t="core"===e?null:new Nr(e),n=this.length++;return this[n]={selector:t,properties:[],mappedProperties:[],index:n},this},Ho.css=function(){var e=this,t=arguments;if(1===t.length)for(var n=t[0],r=0;r<e.properties.length;r++){var i=e.properties[r],o=n[i.name];void 0===o&&(o=n[N(i.name)]),void 0!==o&&this.cssRule(i.name,o)}else 2===t.length&&this.cssRule(t[0],t[1]);return this},Ho.style=Ho.css,Ho.cssRule=function(e,t){var n=this.parse(e,t);if(n){var r=this.length-1;this[r].properties.push(n),this[r].properties[n.name]=n,n.name.match(/pie-(\d+)-background-size/)&&n.value&&(this._private.hasPie=!0),n.mapped&&this[r].mappedProperties.push(n),!this[r].selector&&(this._private.coreStyle[n.name]=n)}return this},Ho.append=function(e){return D(e)?e.appendToStyle(this):w(e)?this.appendFromJson(e):b(e)&&this.appendFromString(e),this},Xo.fromJson=function(e,t){var n=new Xo(e);return n.fromJson(t),n},Xo.fromString=function(e,t){return new Xo(e).fromString(t)},[Io,Ao,zo,Ro,Fo,Vo,qo,Yo].forEach((function(e){R(Ho,e)})),Xo.types=Ho.types,Xo.properties=Ho.properties,Xo.propertyGroups=Ho.propertyGroups,Xo.propertyGroupNames=Ho.propertyGroupNames,Xo.propertyGroupKeys=Ho.propertyGroupKeys;var Wo={style:function(e){e&&this.setStyle(e).update();return this._private.style},setStyle:function(e){var t=this._private;return D(e)?t.style=e.generateStyle(this):w(e)?t.style=Xo.fromJson(this,e):b(e)?t.style=Xo.fromString(this,e):t.style=Xo(this),t.style},updateStyle:function(){this.mutableElements().updateStyle()}},Go={autolock:function(e){return void 0===e?this._private.autolock:(this._private.autolock=!!e,this)},autoungrabify:function(e){return void 0===e?this._private.autoungrabify:(this._private.autoungrabify=!!e,this)},autounselectify:function(e){return void 0===e?this._private.autounselectify:(this._private.autounselectify=!!e,this)},selectionType:function(e){var t=this._private;return null==t.selectionType&&(t.selectionType="single"),void 0===e?t.selectionType:("additive"!==e&&"single"!==e||(t.selectionType=e),this)},panningEnabled:function(e){return void 0===e?this._private.panningEnabled:(this._private.panningEnabled=!!e,this)},userPanningEnabled:function(e){return void 0===e?this._private.userPanningEnabled:(this._private.userPanningEnabled=!!e,this)},zoomingEnabled:function(e){return void 0===e?this._private.zoomingEnabled:(this._private.zoomingEnabled=!!e,this)},userZoomingEnabled:function(e){return void 0===e?this._private.userZoomingEnabled:(this._private.userZoomingEnabled=!!e,this)},boxSelectionEnabled:function(e){return void 0===e?this._private.boxSelectionEnabled:(this._private.boxSelectionEnabled=!!e,this)},pan:function(){var e,t,n,r,i,o=arguments,a=this._private.pan;switch(o.length){case 0:return a;case 1:if(b(o[0]))return a[e=o[0]];if(E(o[0])){if(!this._private.panningEnabled)return this;r=(n=o[0]).x,i=n.y,k(r)&&(a.x=r),k(i)&&(a.y=i),this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;e=o[0],t=o[1],"x"!==e&&"y"!==e||!k(t)||(a[e]=t),this.emit("pan viewport")}return this.notify("viewport"),this},panBy:function(e,t){var n,r,i,o,a,s=arguments,u=this._private.pan;if(!this._private.panningEnabled)return this;switch(s.length){case 1:E(e)&&(o=(i=s[0]).x,a=i.y,k(o)&&(u.x+=o),k(a)&&(u.y+=a),this.emit("pan viewport"));break;case 2:r=t,"x"!==(n=e)&&"y"!==n||!k(r)||(u[n]+=r),this.emit("pan viewport")}return this.notify("viewport"),this},fit:function(e,t){var n=this.getFitViewport(e,t);if(n){var r=this._private;r.zoom=n.zoom,r.pan=n.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(e,t){if(k(e)&&void 0===t&&(t=e,e=void 0),this._private.panningEnabled&&this._private.zoomingEnabled){var n,r;if(b(e)){var i=e;e=this.$(i)}else if(E(r=e)&&k(r.x1)&&k(r.x2)&&k(r.y1)&&k(r.y2)){var o=e;(n={x1:o.x1,y1:o.y1,x2:o.x2,y2:o.y2}).w=n.x2-n.x1,n.h=n.y2-n.y1}else S(e)||(e=this.mutableElements());if(!S(e)||!e.empty()){n=n||e.boundingBox();var a,s=this.width(),u=this.height();if(t=k(t)?t:0,!isNaN(s)&&!isNaN(u)&&s>0&&u>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:a=(a=(a=Math.min((s-2*t)/n.w,(u-2*t)/n.h))>this._private.maxZoom?this._private.maxZoom:a)<this._private.minZoom?this._private.minZoom:a,pan:{x:(s-a*(n.x1+n.x2))/2,y:(u-a*(n.y1+n.y2))/2}}}}},zoomRange:function(e,t){var n=this._private;if(null==t){var r=e;e=r.min,t=r.max}return k(e)&&k(t)&&e<=t?(n.minZoom=e,n.maxZoom=t):k(e)&&void 0===t&&e<=n.maxZoom?n.minZoom=e:k(t)&&void 0===e&&t>=n.minZoom&&(n.maxZoom=t),this},minZoom:function(e){return void 0===e?this._private.minZoom:this.zoomRange({min:e})},maxZoom:function(e){return void 0===e?this._private.maxZoom:this.zoomRange({max:e})},getZoomedViewport:function(e){var t,n,r=this._private,i=r.pan,o=r.zoom,a=!1;if(r.zoomingEnabled||(a=!0),k(e)?n=e:E(e)&&(n=e.level,null!=e.position?t=He(e.position,o,i):null!=e.renderedPosition&&(t=e.renderedPosition),null==t||r.panningEnabled||(a=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)<r.minZoom?r.minZoom:n,a||!k(n)||n===o||null!=t&&(!k(t.x)||!k(t.y)))return null;if(null!=t){var s=i,u=o,l=n;return{zoomed:!0,panned:!0,zoom:l,pan:{x:-l/u*(t.x-s.x)+t.x,y:-l/u*(t.y-s.y)+t.y}}}return{zoomed:!0,panned:!1,zoom:n,pan:i}},zoom:function(e){if(void 0===e)return this._private.zoom;var t=this.getZoomedViewport(e),n=this._private;return null!=t&&t.zoomed?(n.zoom=t.zoom,t.panned&&(n.pan.x=t.pan.x,n.pan.y=t.pan.y),this.emit("zoom"+(t.panned?" pan":"")+" viewport"),this.notify("viewport"),this):this},viewport:function(e){var t=this._private,n=!0,r=!0,i=[],o=!1,a=!1;if(!e)return this;if(k(e.zoom)||(n=!1),E(e.pan)||(r=!1),!n&&!r)return this;if(n){var s=e.zoom;s<t.minZoom||s>t.maxZoom||!t.zoomingEnabled?o=!0:(t.zoom=s,i.push("zoom"))}if(r&&(!o||!e.cancelOnFailedZoom)&&t.panningEnabled){var u=e.pan;k(u.x)&&(t.pan.x=u.x,a=!1),k(u.y)&&(t.pan.y=u.y,a=!1),a||i.push("pan")}return i.length>0&&(i.push("viewport"),this.emit(i.join(" ")),this.notify("viewport")),this},center:function(e){var t=this.getCenterPan(e);return t&&(this._private.pan=t,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(e,t){if(this._private.panningEnabled){if(b(e)){var n=e;e=this.mutableElements().filter(n)}else S(e)||(e=this.mutableElements());if(0!==e.length){var r=e.boundingBox(),i=this.width(),o=this.height();return{x:(i-(t=void 0===t?this._private.zoom:t)*(r.x1+r.x2))/2,y:(o-t*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e,t,n=this._private,r=n.container;return n.sizeCache=n.sizeCache||(r?(e=h.getComputedStyle(r),t=function(t){return parseFloat(e.getPropertyValue(t))},{width:r.clientWidth-t("padding-left")-t("padding-right"),height:r.clientHeight-t("padding-top")-t("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-e.x)/t,x2:(n.x2-e.x)/t,y1:(n.y1-e.y)/t,y2:(n.y2-e.y)/t};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}}};Go.centre=Go.center,Go.autolockNodes=Go.autolock,Go.autoungrabifyNodes=Go.autoungrabify;var Uo={data:Qn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Qn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Qn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Qn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Uo.attr=Uo.data,Uo.removeAttr=Uo.removeData;var Ko=function(e){var t=this,n=(e=R({},e)).container;n&&!P(n)&&P(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var i=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=t;var o=void 0!==h&&void 0!==n&&!e.headless,a=e;a.layout=R({name:o?"grid":"null"},a.layout),a.renderer=R({name:o?"canvas":"null"},a.renderer);var s=function(e,t,n){return void 0!==t?t:void 0!==n?n:e},u=this._private={container:n,ready:!1,options:a,elements:new ho(this),listeners:[],aniEles:new ho(this),data:a.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,a.zoomingEnabled),userZoomingEnabled:s(!0,a.userZoomingEnabled),panningEnabled:s(!0,a.panningEnabled),userPanningEnabled:s(!0,a.userPanningEnabled),boxSelectionEnabled:s(!0,a.boxSelectionEnabled),autolock:s(!1,a.autolock,a.autolockNodes),autoungrabify:s(!1,a.autoungrabify,a.autoungrabifyNodes),autounselectify:s(!1,a.autounselectify),styleEnabled:void 0===a.styleEnabled?o:a.styleEnabled,zoom:k(a.zoom)?a.zoom:1,pan:{x:E(a.pan)&&k(a.pan.x)?a.pan.x:0,y:E(a.pan)&&k(a.pan.y)?a.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1};this.createEmitter(),this.selectionType(a.selectionType),this.zoomRange({min:a.minZoom,max:a.maxZoom});u.styleEnabled&&t.setStyle([]);var l=R({},a,a.renderer);t.initRenderer(l);!function(e,t){if(e.some(B))return Xn.all(e).then(t);t(e)}([a.style,a.elements],(function(e){var n=e[0],o=e[1];u.styleEnabled&&t.style().append(n),function(e,n,r){t.notifications(!1);var i=t.mutableElements();i.length>0&&i.remove(),null!=e&&(E(e)||w(e))&&t.add(e),t.one("layoutready",(function(e){t.notifications(!0),t.emit(e),t.one("load",n),t.emitAndNotify("load")})).one("layoutstop",(function(){t.one("done",r),t.emit("done")}));var o=R({},t._private.options.layout);o.eles=t.elements(),t.layout(o).run()}(o,(function(){t.startAnimationLoop(),u.ready=!0,x(a.ready)&&t.on("ready",a.ready);for(var e=0;e<i.length;e++){var n=i[e];t.on("ready",n)}r&&(r.readies=[]),t.emit("ready")}),a.done)}))},Qo=Ko.prototype;R(Qo,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(e){return this.isReady()?this.emitter().emit("ready",[],e):this.on("ready",e),this},destroy:function(){var e=this;if(!e.destroyed())return e.stopAnimationLoop(),e.destroyRenderer(),this.emit("destroy"),e._private.destroyed=!0,e},hasElementWithId:function(e){return this._private.elements.hasElementWithId(e)},getElementById:function(e){return this._private.elements.getElementById(e)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(e){return this._private.elements.merge(e),this},removeFromPool:function(e){return this._private.elements.unmerge(e),this},container:function(){return this._private.container||null},mount:function(e){if(null!=e){var t=this,n=t._private,r=n.options;return!P(e)&&P(e[0])&&(e=e[0]),t.stopAnimationLoop(),t.destroyRenderer(),n.container=e,n.styleEnabled=!0,t.invalidateSize(),t.initRenderer(R({},r,r.renderer,{name:"null"===r.renderer.name?"canvas":r.renderer.name})),t.startAnimationLoop(),t.style(r.style),t.emit("mount"),t}},unmount:function(){var e=this;return e.stopAnimationLoop(),e.destroyRenderer(),e.initRenderer({name:"null"}),e.emit("unmount"),e},options:function(){return ye(this._private.options)},json:function(e){var t=this,n=t._private,r=t.mutableElements();if(E(e)){if(t.startBatch(),e.elements){var i={},o=function(e,n){for(var r=[],o=[],a=0;a<e.length;a++){var s=e[a];if(s.data.id){var u=""+s.data.id,l=t.getElementById(u);i[u]=!0,0!==l.length?o.push({ele:l,json:s}):n?(s.group=n,r.push(s)):r.push(s)}else ge("cy.json() cannot handle elements without an ID attribute")}t.add(r);for(var c=0;c<o.length;c++){var d=o[c],h=d.ele,p=d.json;h.json(p)}};if(w(e.elements))o(e.elements);else for(var a=["nodes","edges"],s=0;s<a.length;s++){var u=a[s],l=e.elements[u];w(l)&&o(l,u)}var c=t.collection();r.filter((function(e){return!i[e.id()]})).forEach((function(e){e.isParent()?c.merge(e):e.remove()})),c.forEach((function(e){return e.children().move({parent:null})})),c.forEach((function(e){return function(e){return t.getElementById(e.id())}(e).remove()}))}e.style&&t.style(e.style),null!=e.zoom&&e.zoom!==n.zoom&&t.zoom(e.zoom),e.pan&&(e.pan.x===n.pan.x&&e.pan.y===n.pan.y||t.pan(e.pan)),e.data&&t.data(e.data);for(var d=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify"],h=0;h<d.length;h++){var p=d[h];null!=e[p]&&t[p](e[p])}return t.endBatch(),this}var f={};!!e?f.elements=this.elements().map((function(e){return e.json()})):(f.elements={},r.forEach((function(e){var t=e.group();f.elements[t]||(f.elements[t]=[]),f.elements[t].push(e.json())}))),this._private.styleEnabled&&(f.style=t.style().json()),f.data=ye(t.data());var v=n.options;return f.zoomingEnabled=n.zoomingEnabled,f.userZoomingEnabled=n.userZoomingEnabled,f.zoom=n.zoom,f.minZoom=n.minZoom,f.maxZoom=n.maxZoom,f.panningEnabled=n.panningEnabled,f.userPanningEnabled=n.userPanningEnabled,f.pan=ye(n.pan),f.boxSelectionEnabled=n.boxSelectionEnabled,f.renderer=ye(v.renderer),f.hideEdgesOnViewport=v.hideEdgesOnViewport,f.textureOnViewport=v.textureOnViewport,f.wheelSensitivity=v.wheelSensitivity,f.motionBlur=v.motionBlur,f}}),Qo.$id=Qo.getElementById,[fo,So,jo,Do,To,Bo,Mo,No,Wo,Go,Uo].forEach((function(e){R(Qo,e)}));var Zo={fit:!0,directed:!1,padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,maximal:!1,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}},$o=function(e){return e.scratch("breadthfirst")},Jo=function(e,t){return e.scratch("breadthfirst",t)};function ea(e){this.options=R({},Zo,e)}ea.prototype.run=function(){var e,t=this.options,n=t,r=t.cy,i=n.eles,o=i.nodes().filter((function(e){return!e.isParent()})),a=i,s=n.directed,u=n.maximal||n.maximalAdjustments>0,l=rt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(S(n.roots))e=n.roots;else if(w(n.roots)){for(var c=[],d=0;d<n.roots.length;d++){var h=n.roots[d],p=r.getElementById(h);c.push(p)}e=r.collection(c)}else if(b(n.roots))e=r.$(n.roots);else if(s)e=o.roots();else{var f=i.components();e=r.collection();for(var v=function(t){var n=f[t],r=n.maxDegree(!1),i=n.filter((function(e){return e.degree(!1)===r}));e=e.add(i)},g=0;g<f.length;g++)v(g)}var y=[],m={},x=function(e,t){null==y[t]&&(y[t]=[]);var n=y[t].length;y[t].push(e),Jo(e,{index:n,depth:t})};a.bfs({roots:e,directed:n.directed,visit:function(e,t,n,r,i){var o=e[0],a=o.id();x(o,i),m[a]=!0}});for(var E=[],k=0;k<o.length;k++){var P=o[k];m[P.id()]||E.push(P)}var C=function(e){for(var t=y[e],n=0;n<t.length;n++){var r=t[n];null!=r?Jo(r,{depth:e,index:n}):(t.splice(n,1),n--)}},_=function(){for(var e=0;e<y.length;e++)C(e)},j=function(e,t){for(var n=$o(e),r=e.incomers().filter((function(e){return e.isNode()&&i.has(e)})),o=-1,a=e.id(),s=0;s<r.length;s++){var u=r[s],l=$o(u);o=Math.max(o,l.depth)}return n.depth<=o&&(t[a]?null:(function(e,t){var n=$o(e),r=n.depth,i=n.index;y[r][i]=null,x(e,t)}(e,o+1),t[a]=!0,!0))};if(s&&u){var D=[],T={},B=function(e){return D.push(e)};for(o.forEach((function(e){return D.push(e)}));D.length>0;){var O=D.shift(),M=j(O,T);if(M)O.outgoers().filter((function(e){return e.isNode()&&i.has(e)})).forEach(B);else if(null===M){ge("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}_();var N=0;if(n.avoidOverlap)for(var I=0;I<o.length;I++){var L=o[I].layoutDimensions(n),A=L.w,R=L.h;N=Math.max(N,A,R)}for(var F={},V=function(e){if(F[e.id()])return F[e.id()];for(var t=$o(e).depth,n=e.neighborhood(),r=0,i=0,a=0;a<n.length;a++){var s=n[a];if(!s.isEdge()&&!s.isParent()&&o.has(s)){var u=$o(s);if(null!=u){var l=u.index,c=u.depth;if(null!=l&&null!=c){var d=y[c].length;c<t&&(r+=l/d,i++)}}}}return r/=i=Math.max(1,i),0===i&&(r=0),F[e.id()]=r,r},q=function(e,t){var n=V(e)-V(t);return 0===n?z(e.id(),t.id()):n},Y=0;Y<y.length;Y++)y[Y].sort(q),C(Y);for(var X=[],H=0;H<E.length;H++)X.push(E[H]);y.unshift(X),_();for(var W=0,G=0;G<y.length;G++)W=Math.max(y[G].length,W);var U=l.x1+l.w/2,K=l.x1+l.h/2,Q=y.reduce((function(e,t){return Math.max(e,t.length)}),0);return i.nodes().layoutPositions(this,n,(function(e){var t=$o(e),r=t.depth,i=t.index,o=y[r].length,a=Math.max(l.w/((n.grid?Q:o)+1),N),s=Math.max(l.h/(y.length+1),N),u=Math.min(l.w/2/y.length,l.h/2/y.length);if(u=Math.max(u,N),n.circle){var c=u*r+u-(y.length>0&&y[0].length<=3?u/2:0),d=2*Math.PI/y[r].length*i;return 0===r&&1===y[0].length&&(c=1),{x:U+c*Math.cos(d),y:K+c*Math.sin(d)}}return{x:U+(i+1-(o+1)/2)*a,y:(r+1)*s}})),this};var ta={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function na(e){this.options=R({},ta,e)}na.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,o=r.nodes().not(":parent");t.sort&&(o=o.sort(t.sort));for(var a,s=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),u=s.x1+s.w/2,l=s.y1+s.h/2,c=(void 0===t.sweep?2*Math.PI-2*Math.PI/o.length:t.sweep)/Math.max(1,o.length-1),d=0,h=0;h<o.length;h++){var p=o[h].layoutDimensions(t),f=p.w,v=p.h;d=Math.max(d,f,v)}if(a=k(t.radius)?t.radius:o.length<=1?0:Math.min(s.h,s.w)/2-d,o.length>1&&t.avoidOverlap){d*=1.75;var g=Math.cos(c)-Math.cos(0),y=Math.sin(c)-Math.sin(0),m=Math.sqrt(d*d/(g*g+y*y));a=Math.max(m,a)}return r.nodes().layoutPositions(this,t,(function(e,n){var r=t.startAngle+n*c*(i?1:-1),o=a*Math.cos(r),s=a*Math.sin(r);return{x:u+o,y:l+s}})),this};var ra,ia={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function oa(e){this.options=R({},ia,e)}oa.prototype.run=function(){for(var e=this.options,t=e,n=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,r=e.cy,i=t.eles,o=i.nodes().not(":parent"),a=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=a.x1+a.w/2,u=a.y1+a.h/2,l=[],c=0,d=0;d<o.length;d++){var h,p=o[d];h=t.concentric(p),l.push({value:h,node:p}),p._private.scratch.concentric=h}o.updateStyle();for(var f=0;f<o.length;f++){var v=o[f].layoutDimensions(t);c=Math.max(c,v.w,v.h)}l.sort((function(e,t){return t.value-e.value}));for(var g=t.levelWidth(o),y=[[]],m=y[0],b=0;b<l.length;b++){var x=l[b];if(m.length>0)Math.abs(m[0].value-x.value)>=g&&(m=[],y.push(m));m.push(x)}var w=c+t.minNodeSpacing;if(!t.avoidOverlap){var E=y.length>0&&y[0].length>1,k=(Math.min(a.w,a.h)/2-w)/(y.length+E?1:0);w=Math.min(w,k)}for(var P=0,S=0;S<y.length;S++){var C=y[S],_=void 0===t.sweep?2*Math.PI-2*Math.PI/C.length:t.sweep,j=C.dTheta=_/Math.max(1,C.length-1);if(C.length>1&&t.avoidOverlap){var D=Math.cos(j)-Math.cos(0),T=Math.sin(j)-Math.sin(0),B=Math.sqrt(w*w/(D*D+T*T));P=Math.max(B,P)}C.r=P,P+=w}if(t.equidistant){for(var O=0,M=0,N=0;N<y.length;N++){var I=y[N].r-M;O=Math.max(O,I)}M=0;for(var L=0;L<y.length;L++){var A=y[L];0===L&&(M=A.r),A.r=M,M+=O}}for(var z={},R=0;R<y.length;R++)for(var F=y[R],V=F.dTheta,q=F.r,Y=0;Y<F.length;Y++){var X=F[Y],H=t.startAngle+(n?1:-1)*V*Y,W={x:s+q*Math.cos(H),y:u+q*Math.sin(H)};z[X.node.id()]=W}return i.nodes().layoutPositions(this,t,(function(e){var t=e.id();return z[t]})),this};var aa={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(e,t){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(e){return 2048},nodeOverlap:4,idealEdgeLength:function(e){return 32},edgeElasticity:function(e){return 32},nestingFactor:1.2,gravity:1,numIter:1e3,initialTemp:1e3,coolingFactor:.99,minTemp:1};function sa(e){this.options=R({},aa,e),this.options.layout=this}sa.prototype.run=function(){var e=this.options,t=e.cy,n=this;n.stopped=!1,!0!==e.animate&&!1!==e.animate||n.emit({type:"layoutstart",layout:n}),ra=!0===e.debug;var r=ua(t,n,e);ra&&undefined(r),e.randomize&&da(r);var i=U(),o=function(){pa(r,t,e),!0===e.fit&&t.fit(e.padding)},a=function(t){return!(n.stopped||t>=e.numIter)&&(fa(r,e),r.temperature=r.temperature*e.coolingFactor,!(r.temperature<e.minTemp))},s=function(){if(!0===e.animate||!1===e.animate)o(),n.one("layoutstop",e.stop),n.emit({type:"layoutstop",layout:n});else{var t=e.eles.nodes(),i=ha(r,e,t);t.layoutPositions(n,e,i)}},u=0,l=!0;if(!0===e.animate){!function t(){for(var n=0;l&&n<e.refresh;)l=a(u),u++,n++;l?(U()-i>=e.animationThreshold&&o(),G(t)):(Ca(r,e),s())}()}else{for(;l;)l=a(u),u++;Ca(r,e),s()}return this},sa.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},sa.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var ua=function(e,t,n){for(var r=n.eles.edges(),i=n.eles.nodes(),o={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:i.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:e.width(),clientHeight:e.width(),boundingBox:rt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()})},a=n.eles.components(),s={},u=0;u<a.length;u++)for(var l=a[u],c=0;c<l.length;c++){s[l[c].id()]=u}for(u=0;u<o.nodeSize;u++){var d=(g=i[u]).layoutDimensions(n);(M={}).isLocked=g.locked(),M.id=g.data("id"),M.parentId=g.data("parent"),M.cmptId=s[g.id()],M.children=[],M.positionX=g.position("x"),M.positionY=g.position("y"),M.offsetX=0,M.offsetY=0,M.height=d.w,M.width=d.h,M.maxX=M.positionX+M.width/2,M.minX=M.positionX-M.width/2,M.maxY=M.positionY+M.height/2,M.minY=M.positionY-M.height/2,M.padLeft=parseFloat(g.style("padding")),M.padRight=parseFloat(g.style("padding")),M.padTop=parseFloat(g.style("padding")),M.padBottom=parseFloat(g.style("padding")),M.nodeRepulsion=x(n.nodeRepulsion)?n.nodeRepulsion(g):n.nodeRepulsion,o.layoutNodes.push(M),o.idToIndex[M.id]=u}var h=[],p=0,f=-1,v=[];for(u=0;u<o.nodeSize;u++){var g,y=(g=o.layoutNodes[u]).parentId;null!=y?o.layoutNodes[o.idToIndex[y]].children.push(g.id):(h[++f]=g.id,v.push(g.id))}for(o.graphSet.push(v);p<=f;){var m=h[p++],b=o.idToIndex[m],w=o.layoutNodes[b].children;if(w.length>0){o.graphSet.push(w);for(u=0;u<w.length;u++)h[++f]=w[u]}}for(u=0;u<o.graphSet.length;u++){var E=o.graphSet[u];for(c=0;c<E.length;c++){var k=o.idToIndex[E[c]];o.indexToGraph[k]=u}}for(u=0;u<o.edgeSize;u++){var P=r[u],S={};S.id=P.data("id"),S.sourceId=P.data("source"),S.targetId=P.data("target");var C=x(n.idealEdgeLength)?n.idealEdgeLength(P):n.idealEdgeLength,_=x(n.edgeElasticity)?n.edgeElasticity(P):n.edgeElasticity,j=o.idToIndex[S.sourceId],D=o.idToIndex[S.targetId];if(o.indexToGraph[j]!=o.indexToGraph[D]){for(var T=la(S.sourceId,S.targetId,o),B=o.graphSet[T],O=0,M=o.layoutNodes[j];-1===B.indexOf(M.id);)M=o.layoutNodes[o.idToIndex[M.parentId]],O++;for(M=o.layoutNodes[D];-1===B.indexOf(M.id);)M=o.layoutNodes[o.idToIndex[M.parentId]],O++;C*=O*n.nestingFactor}S.idealLength=C,S.elasticity=_,o.layoutEdges.push(S)}return o},la=function(e,t,n){var r=ca(e,t,0,n);return 2>r.count?0:r.graph},ca=function e(t,n,r,i){var o=i.graphSet[r];if(-1<o.indexOf(t)&&-1<o.indexOf(n))return{count:2,graph:r};for(var a=0,s=0;s<o.length;s++){var u=o[s],l=i.idToIndex[u],c=i.layoutNodes[l].children;if(0!==c.length){var d=e(t,n,i.indexToGraph[i.idToIndex[c[0]]],i);if(0!==d.count){if(1!==d.count)return d;if(2===++a)break}}}return{count:a,graph:r}},da=function(e,t){for(var n=e.clientWidth,r=e.clientHeight,i=0;i<e.nodeSize;i++){var o=e.layoutNodes[i];0!==o.children.length||o.isLocked||(o.positionX=Math.random()*n,o.positionY=Math.random()*r)}},ha=function(e,t,n){var r=e.boundingBox,i={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};return t.boundingBox&&(n.forEach((function(t){var n=e.layoutNodes[e.idToIndex[t.data("id")]];i.x1=Math.min(i.x1,n.positionX),i.x2=Math.max(i.x2,n.positionX),i.y1=Math.min(i.y1,n.positionY),i.y2=Math.max(i.y2,n.positionY)})),i.w=i.x2-i.x1,i.h=i.y2-i.y1),function(n,o){var a=e.layoutNodes[e.idToIndex[n.data("id")]];if(t.boundingBox){var s=(a.positionX-i.x1)/i.w,u=(a.positionY-i.y1)/i.h;return{x:r.x1+s*r.w,y:r.y1+u*r.h}}return{x:a.positionX,y:a.positionY}}},pa=function(e,t,n){var r=n.layout,i=n.eles.nodes(),o=ha(e,n,i);i.positions(o),!0!==e.ready&&(e.ready=!0,r.one("layoutready",n.ready),r.emit({type:"layoutready",layout:this}))},fa=function(e,t,n){va(e,t),xa(e),wa(e,t),Ea(e),ka(e)},va=function(e,t){for(var n=0;n<e.graphSet.length;n++)for(var r=e.graphSet[n],i=r.length,o=0;o<i;o++)for(var a=e.layoutNodes[e.idToIndex[r[o]]],s=o+1;s<i;s++){var u=e.layoutNodes[e.idToIndex[r[s]]];ya(a,u,e,t)}},ga=function(e){return-e+2*e*Math.random()},ya=function(e,t,n,r){if(e.cmptId===t.cmptId||n.isCompound){var i=t.positionX-e.positionX,o=t.positionY-e.positionY;0===i&&0===o&&(i=ga(1),o=ga(1));var a=ma(e,t,i,o);if(a>0)var s=(l=r.nodeOverlap*a)*i/(v=Math.sqrt(i*i+o*o)),u=l*o/v;else{var l,c=ba(e,i,o),d=ba(t,-1*i,-1*o),h=d.x-c.x,p=d.y-c.y,f=h*h+p*p,v=Math.sqrt(f);s=(l=(e.nodeRepulsion+t.nodeRepulsion)/f)*h/v,u=l*p/v}e.isLocked||(e.offsetX-=s,e.offsetY-=u),t.isLocked||(t.offsetX+=s,t.offsetY+=u)}},ma=function(e,t,n,r){if(n>0)var i=e.maxX-t.minX;else i=t.maxX-e.minX;if(r>0)var o=e.maxY-t.minY;else o=t.maxY-e.minY;return i>=0&&o>=0?Math.sqrt(i*i+o*o):0},ba=function(e,t,n){var r=e.positionX,i=e.positionY,o=e.height||1,a=e.width||1,s=n/t,u=o/a,l={};return 0===t&&0<n||0===t&&0>n?(l.x=r,l.y=i+o/2,l):0<t&&-1*u<=s&&s<=u?(l.x=r+a/2,l.y=i+a*n/2/t,l):0>t&&-1*u<=s&&s<=u?(l.x=r-a/2,l.y=i-a*n/2/t,l):0<n&&(s<=-1*u||s>=u)?(l.x=r+o*t/2/n,l.y=i+o/2,l):0>n&&(s<=-1*u||s>=u)?(l.x=r-o*t/2/n,l.y=i-o/2,l):l},xa=function(e,t){for(var n=0;n<e.edgeSize;n++){var r=e.layoutEdges[n],i=e.idToIndex[r.sourceId],o=e.layoutNodes[i],a=e.idToIndex[r.targetId],s=e.layoutNodes[a],u=s.positionX-o.positionX,l=s.positionY-o.positionY;if(0!==u||0!==l){var c=ba(o,u,l),d=ba(s,-1*u,-1*l),h=d.x-c.x,p=d.y-c.y,f=Math.sqrt(h*h+p*p),v=Math.pow(r.idealLength-f,2)/r.elasticity;if(0!==f)var g=v*h/f,y=v*p/f;else g=0,y=0;o.isLocked||(o.offsetX+=g,o.offsetY+=y),s.isLocked||(s.offsetX-=g,s.offsetY-=y)}}},wa=function(e,t){for(var n=0;n<e.graphSet.length;n++){var r=e.graphSet[n],i=r.length;if(0===n)var o=e.clientHeight/2,a=e.clientWidth/2;else{var s=e.layoutNodes[e.idToIndex[r[0]]],u=e.layoutNodes[e.idToIndex[s.parentId]];o=u.positionX,a=u.positionY}for(var l=0;l<i;l++){var c=e.layoutNodes[e.idToIndex[r[l]]];if(!c.isLocked){var d=o-c.positionX,h=a-c.positionY,p=Math.sqrt(d*d+h*h);if(p>1){var f=t.gravity*d/p,v=t.gravity*h/p;c.offsetX+=f,c.offsetY+=v}}}}},Ea=function(e,t){var n=[],r=0,i=-1;for(n.push.apply(n,e.graphSet[0]),i+=e.graphSet[0].length;r<=i;){var o=n[r++],a=e.idToIndex[o],s=e.layoutNodes[a],u=s.children;if(0<u.length&&!s.isLocked){for(var l=s.offsetX,c=s.offsetY,d=0;d<u.length;d++){var h=e.layoutNodes[e.idToIndex[u[d]]];h.offsetX+=l,h.offsetY+=c,n[++i]=u[d]}s.offsetX=0,s.offsetY=0}}},ka=function(e,t){for(var n=0;n<e.nodeSize;n++){0<(i=e.layoutNodes[n]).children.length&&(i.maxX=void 0,i.minX=void 0,i.maxY=void 0,i.minY=void 0)}for(n=0;n<e.nodeSize;n++){if(!(0<(i=e.layoutNodes[n]).children.length||i.isLocked)){var r=Pa(i.offsetX,i.offsetY,e.temperature);i.positionX+=r.x,i.positionY+=r.y,i.offsetX=0,i.offsetY=0,i.minX=i.positionX-i.width,i.maxX=i.positionX+i.width,i.minY=i.positionY-i.height,i.maxY=i.positionY+i.height,Sa(i,e)}}for(n=0;n<e.nodeSize;n++){var i;0<(i=e.layoutNodes[n]).children.length&&!i.isLocked&&(i.positionX=(i.maxX+i.minX)/2,i.positionY=(i.maxY+i.minY)/2,i.width=i.maxX-i.minX,i.height=i.maxY-i.minY)}},Pa=function(e,t,n){var r=Math.sqrt(e*e+t*t);if(r>n)var i={x:n*e/r,y:n*t/r};else i={x:e,y:t};return i},Sa=function e(t,n){var r=t.parentId;if(null!=r){var i=n.layoutNodes[n.idToIndex[r]],o=!1;return(null==i.maxX||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,o=!0),(null==i.minX||t.minX-i.padLeft<i.minX)&&(i.minX=t.minX-i.padLeft,o=!0),(null==i.maxY||t.maxY+i.padBottom>i.maxY)&&(i.maxY=t.maxY+i.padBottom,o=!0),(null==i.minY||t.minY-i.padTop<i.minY)&&(i.minY=t.minY-i.padTop,o=!0),o?e(i,n):void 0}},Ca=function(e,t){for(var n=e.layoutNodes,r=[],i=0;i<n.length;i++){var o=n[i],a=o.cmptId;(r[a]=r[a]||[]).push(o)}var s=0;for(i=0;i<r.length;i++){if(v=r[i]){v.x1=1/0,v.x2=-1/0,v.y1=1/0,v.y2=-1/0;for(var u=0;u<v.length;u++){var l=v[u];v.x1=Math.min(v.x1,l.positionX-l.width/2),v.x2=Math.max(v.x2,l.positionX+l.width/2),v.y1=Math.min(v.y1,l.positionY-l.height/2),v.y2=Math.max(v.y2,l.positionY+l.height/2)}v.w=v.x2-v.x1,v.h=v.y2-v.y1,s+=v.w*v.h}}r.sort((function(e,t){return t.w*t.h-e.w*e.h}));var c=0,d=0,h=0,p=0,f=Math.sqrt(s)*e.clientWidth/e.clientHeight;for(i=0;i<r.length;i++){var v;if(v=r[i]){for(u=0;u<v.length;u++){(l=v[u]).isLocked||(l.positionX+=c-v.x1,l.positionY+=d-v.y1)}c+=v.w+t.componentSpacing,h+=v.w+t.componentSpacing,p=Math.max(p,v.h),h>f&&(d+=p+t.componentSpacing,c=0,h=0,p=0)}}},_a={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function ja(e){this.options=R({},_a,e)}ja.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=r.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var o=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===o.h||0===o.w)r.nodes().layoutPositions(this,t,(function(e){return{x:o.x1,y:o.y1}}));else{var a=i.size(),s=Math.sqrt(a*o.h/o.w),u=Math.round(s),l=Math.round(o.w/o.h*s),c=function(e){if(null==e)return Math.min(u,l);Math.min(u,l)==u?u=e:l=e},d=function(e){if(null==e)return Math.max(u,l);Math.max(u,l)==u?u=e:l=e},h=t.rows,p=null!=t.cols?t.cols:t.columns;if(null!=h&&null!=p)u=h,l=p;else if(null!=h&&null==p)u=h,l=Math.ceil(a/u);else if(null==h&&null!=p)l=p,u=Math.ceil(a/l);else if(l*u>a){var f=c(),v=d();(f-1)*v>=a?c(f-1):(v-1)*f>=a&&d(v-1)}else for(;l*u<a;){var g=c(),y=d();(y+1)*g>=a?d(y+1):c(g+1)}var m=o.w/l,b=o.h/u;if(t.condense&&(m=0,b=0),t.avoidOverlap)for(var x=0;x<i.length;x++){var w=i[x],E=w._private.position;null!=E.x&&null!=E.y||(E.x=0,E.y=0);var k=w.layoutDimensions(t),P=t.avoidOverlapPadding,S=k.w+P,C=k.h+P;m=Math.max(m,S),b=Math.max(b,C)}for(var _={},j=function(e,t){return!!_["c-"+e+"-"+t]},D=function(e,t){_["c-"+e+"-"+t]=!0},T=0,B=0,O=function(){++B>=l&&(B=0,T++)},M={},N=0;N<i.length;N++){var I=i[N],L=t.position(I);if(L&&(void 0!==L.row||void 0!==L.col)){var A={row:L.row,col:L.col};if(void 0===A.col)for(A.col=0;j(A.row,A.col);)A.col++;else if(void 0===A.row)for(A.row=0;j(A.row,A.col);)A.row++;M[I.id()]=A,D(A.row,A.col)}}i.layoutPositions(this,t,(function(e,t){var n,r;if(e.locked()||e.isParent())return!1;var i=M[e.id()];if(i)n=i.col*m+m/2+o.x1,r=i.row*b+b/2+o.y1;else{for(;j(T,B);)O();n=B*m+m/2+o.x1,r=T*b+b/2+o.y1,D(T,B),O()}return{x:n,y:r}}))}return this};var Da={ready:function(){},stop:function(){}};function Ta(e){this.options=R({},Da,e)}Ta.prototype.run=function(){var e=this.options,t=e.eles,n=this;e.cy;return n.emit("layoutstart"),t.nodes().positions((function(){return{x:0,y:0}})),n.one("layoutready",e.ready),n.emit("layoutready"),n.one("layoutstop",e.stop),n.emit("layoutstop"),this},Ta.prototype.stop=function(){return this};var Ba={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Oa(e){this.options=R({},Ba,e)}Oa.prototype.run=function(){var e=this.options,t=e.eles.nodes(),n=x(e.positions);return t.layoutPositions(this,e,(function(t,r){var i=function(t){if(null==e.positions)return function(e){return{x:e.x,y:e.y}}(t.position());if(n)return e.positions(t);var r=e.positions[t._private.data.id];return null==r?null:r}(t);return!t.locked()&&null!=i&&i})),this};var Ma={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Na(e){this.options=R({},Ma,e)}Na.prototype.run=function(){var e=this.options,t=e.cy,n=e.eles,r=rt(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()});return n.nodes().layoutPositions(this,e,(function(e,t){return{x:r.x1+Math.round(Math.random()*r.w),y:r.y1+Math.round(Math.random()*r.h)}})),this};var Ia=[{name:"breadthfirst",impl:ea},{name:"circle",impl:na},{name:"concentric",impl:oa},{name:"cose",impl:sa},{name:"grid",impl:ja},{name:"null",impl:Ta},{name:"preset",impl:Oa},{name:"random",impl:Na}];function La(e){this.options=e,this.notifications=0}var Aa=function(){},za=function(){throw new Error("A headless instance can not render images")};La.prototype={recalculateRenderedStyle:Aa,notify:function(){this.notifications++},init:Aa,isHeadless:function(){return!0},png:za,jpg:za};var Ra={arrowShapeWidth:.3,registerArrowShapes:function(){var e=this.arrowShapes={},t=this,n=function(e,t,n,r,i,o,a){var s=i.x-n/2-a,u=i.x+n/2+a,l=i.y-n/2-a,c=i.y+n/2+a;return s<=e&&e<=u&&l<=t&&t<=c},r=function(e,t,n,r,i){var o=e*Math.cos(r)-t*Math.sin(r),a=(e*Math.sin(r)+t*Math.cos(r))*n;return{x:o*n+i.x,y:a+i.y}},i=function(e,t,n,i){for(var o=[],a=0;a<e.length;a+=2){var s=e[a],u=e[a+1];o.push(r(s,u,t,n,i))}return o},o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r.x,r.y)}return t},a=function(e){return e.pstyle("width").pfValue*e.pstyle("arrow-scale").pfValue*2},s=function(r,s){b(s)&&(s=e[s]),e[r]=R({name:r,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:function(e,t,n,r,a,s){var u=o(i(this.points,n+2*s,r,a));return gt(e,t,u)},roughCollide:n,draw:function(e,n,r,o){var a=i(this.points,n,r,o);t.arrowShapeImpl("polygon")(e,a)},spacing:function(e){return 0},gap:a},s)};s("none",{collide:de,roughCollide:de,draw:pe,spacing:he,gap:he}),s("triangle",{points:[-.15,-.3,0,0,.15,-.3]}),s("arrow","triangle"),s("triangle-backcurve",{points:e.triangle.points,controlPoint:[0,-.15],roughCollide:n,draw:function(e,n,o,a,s){var u=i(this.points,n,o,a),l=this.controlPoint,c=r(l[0],l[1],n,o,a);t.arrowShapeImpl(this.name)(e,u,c)},gap:function(e){return.8*a(e)}}),s("triangle-tee",{points:[0,0,.15,-.3,-.15,-.3,0,0],pointsTee:[-.15,-.4,-.15,-.5,.15,-.5,.15,-.4],collide:function(e,t,n,r,a,s,u){var l=o(i(this.points,n+2*u,r,a)),c=o(i(this.pointsTee,n+2*u,r,a));return gt(e,t,l)||gt(e,t,c)},draw:function(e,n,r,o,a){var s=i(this.points,n,r,o),u=i(this.pointsTee,n,r,o);t.arrowShapeImpl(this.name)(e,s,u)}}),s("circle-triangle",{radius:.15,pointsTr:[0,-.15,.15,-.45,-.15,-.45,0,-.15],collide:function(e,t,n,r,a,s,u){var l=a,c=Math.pow(l.x-e,2)+Math.pow(l.y-t,2)<=Math.pow((n+2*u)*this.radius,2),d=o(i(this.points,n+2*u,r,a));return gt(e,t,d)||c},draw:function(e,n,r,o,a){var s=i(this.pointsTr,n,r,o);t.arrowShapeImpl(this.name)(e,s,o.x,o.y,this.radius*n)},spacing:function(e){return t.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.radius}}),s("triangle-cross",{points:[0,0,.15,-.3,-.15,-.3,0,0],baseCrossLinePts:[-.15,-.4,-.15,-.4,.15,-.4,.15,-.4],crossLinePts:function(e,t){var n=this.baseCrossLinePts.slice(),r=t/e;return n[3]=n[3]-r,n[5]=n[5]-r,n},collide:function(e,t,n,r,a,s,u){var l=o(i(this.points,n+2*u,r,a)),c=o(i(this.crossLinePts(n,s),n+2*u,r,a));return gt(e,t,l)||gt(e,t,c)},draw:function(e,n,r,o,a){var s=i(this.points,n,r,o),u=i(this.crossLinePts(n,a),n,r,o);t.arrowShapeImpl(this.name)(e,s,u)}}),s("vee",{points:[-.15,-.3,0,0,.15,-.3,0,-.15],gap:function(e){return.525*a(e)}}),s("circle",{radius:.15,collide:function(e,t,n,r,i,o,a){var s=i;return Math.pow(s.x-e,2)+Math.pow(s.y-t,2)<=Math.pow((n+2*a)*this.radius,2)},draw:function(e,n,r,i,o){t.arrowShapeImpl(this.name)(e,i.x,i.y,this.radius*n)},spacing:function(e){return t.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.radius}}),s("tee",{points:[-.15,0,-.15,-.1,.15,-.1,.15,0],spacing:function(e){return 1},gap:function(e){return 1}}),s("square",{points:[-.15,0,.15,0,.15,-.3,-.15,-.3]}),s("diamond",{points:[-.15,-.15,0,-.3,.15,-.15,0,0],gap:function(e){return e.pstyle("width").pfValue*e.pstyle("arrow-scale").value}}),s("chevron",{points:[0,0,-.15,-.15,-.1,-.2,0,-.1,.1,-.2,.15,-.15],gap:function(e){return.95*e.pstyle("width").pfValue*e.pstyle("arrow-scale").value}})}},Fa={projectIntoViewport:function(e,t){var n=this.cy,r=this.findContainerClientCoords(),i=r[0],o=r[1],a=r[4],s=n.pan(),u=n.zoom();return[((e-i)/a-s.x)/u,((t-o)/a-s.y)/u]},findContainerClientCoords:function(){if(this.containerBB)return this.containerBB;var e=this.container,t=e.getBoundingClientRect(),n=h.getComputedStyle(e),r=function(e){return parseFloat(n.getPropertyValue(e))},i=r("padding-left"),o=r("padding-right"),a=r("padding-top"),s=r("padding-bottom"),u=r("border-left-width"),l=r("border-right-width"),c=r("border-top-width"),d=(r("border-bottom-width"),e.clientWidth),p=e.clientHeight,f=i+o,v=a+s,g=u+l,y=t.width/(d+g),m=d-f,b=p-v,x=t.left+i+u,w=t.top+a+c;return this.containerBB=[x,w,m,b,y]},invalidateContainerClientCoordsCache:function(){this.containerBB=null},findNearestElement:function(e,t,n,r){return this.findNearestElements(e,t,n,r)[0]},findNearestElements:function(e,t,n,r){var i,o,a=this,s=this,u=s.getCachedZSortedEles(),l=[],c=s.cy.zoom(),d=s.cy.hasCompoundNodes(),h=(r?24:8)/c,p=(r?8:2)/c,f=(r?8:2)/c,v=1/0;function g(e,t){if(e.isNode()){if(o)return;o=e,l.push(e)}if(e.isEdge()&&(null==t||t<v))if(i){if(i.pstyle("z-compound-depth").value===e.pstyle("z-compound-depth").value&&i.pstyle("z-compound-depth").value===e.pstyle("z-compound-depth").value)for(var n=0;n<l.length;n++)if(l[n].isEdge()){l[n]=e,i=e,v=null!=t?t:v;break}}else l.push(e),i=e,v=null!=t?t:v}function y(n){var r=n.outerWidth()+2*p,i=n.outerHeight()+2*p,o=r/2,u=i/2,l=n.position();if(l.x-o<=e&&e<=l.x+o&&l.y-u<=t&&t<=l.y+u&&s.nodeShapes[a.getNodeShape(n)].checkPoint(e,t,0,r,i,l.x,l.y))return g(n,0),!0}function m(n){var r,i=n._private,o=i.rscratch,u=n.pstyle("width").pfValue,c=n.pstyle("arrow-scale").value,p=u/2+h,f=p*p,v=2*p,m=i.source,b=i.target;if("segments"===o.edgeType||"straight"===o.edgeType||"haystack"===o.edgeType){for(var x=o.allpts,w=0;w+3<x.length;w+=2)if(ht(e,t,x[w],x[w+1],x[w+2],x[w+3],v)&&f>(r=vt(e,t,x[w],x[w+1],x[w+2],x[w+3])))return g(n,r),!0}else if("bezier"===o.edgeType||"multibezier"===o.edgeType||"self"===o.edgeType||"compound"===o.edgeType)for(x=o.allpts,w=0;w+5<o.allpts.length;w+=4)if(pt(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5],v)&&f>(r=ft(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return g(n,r),!0;m=m||i.source,b=b||i.target;var E=a.getArrowWidth(u,c),k=[{name:"source",x:o.arrowStartX,y:o.arrowStartY,angle:o.srcArrowAngle},{name:"target",x:o.arrowEndX,y:o.arrowEndY,angle:o.tgtArrowAngle},{name:"mid-source",x:o.midX,y:o.midY,angle:o.midsrcArrowAngle},{name:"mid-target",x:o.midX,y:o.midY,angle:o.midtgtArrowAngle}];for(w=0;w<k.length;w++){var P=k[w],S=s.arrowShapes[n.pstyle(P.name+"-arrow-shape").value],C=n.pstyle("width").pfValue;if(S.roughCollide(e,t,E,P.angle,{x:P.x,y:P.y},C,h)&&S.collide(e,t,E,P.angle,{x:P.x,y:P.y},C,h))return g(n),!0}d&&l.length>0&&(y(m),y(b))}function b(e,t,n){return Pe(e,t,n)}function x(n,r){var i,o=n._private,a=f;i=r?r+"-":"",n.boundingBox();var s=o.labelBounds[r||"main"],u=n.pstyle(i+"label").value;if("yes"===n.pstyle("text-events").strValue&&u){var l=b(o.rscratch,"labelX",r),c=b(o.rscratch,"labelY",r),d=b(o.rscratch,"labelAngle",r),h=n.pstyle(i+"text-margin-x").pfValue,p=n.pstyle(i+"text-margin-y").pfValue,v=s.x1-a-h,y=s.x2+a-h,m=s.y1-a-p,x=s.y2+a-p;if(d){var w=Math.cos(d),E=Math.sin(d),k=function(e,t){return{x:(e-=l)*w-(t-=c)*E+l,y:e*E+t*w+c}},P=k(v,m),S=k(v,x),C=k(y,m),_=k(y,x),j=[P.x+h,P.y+p,C.x+h,C.y+p,_.x+h,_.y+p,S.x+h,S.y+p];if(gt(e,t,j))return g(n),!0}else if(lt(s,e,t))return g(n),!0}}n&&(u=u.interactive);for(var w=u.length-1;w>=0;w--){var E=u[w];E.isNode()?y(E)||x(E):m(E)||x(E)||x(E,"source")||x(E,"target")}return l},getAllInBox:function(e,t,n,r){for(var i,o,a=this.getCachedZSortedEles().interactive,s=[],u=Math.min(e,n),l=Math.max(e,n),c=Math.min(t,r),d=Math.max(t,r),h=rt({x1:e=u,y1:t=c,x2:n=l,y2:r=d}),p=0;p<a.length;p++){var f=a[p];if(f.isNode()){var v=f,g=v.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:!1});ut(h,g)&&!ct(g,h)&&s.push(v)}else{var y=f,m=y._private,b=m.rscratch;if(null!=b.startX&&null!=b.startY&&!lt(h,b.startX,b.startY))continue;if(null!=b.endX&&null!=b.endY&&!lt(h,b.endX,b.endY))continue;if("bezier"===b.edgeType||"multibezier"===b.edgeType||"self"===b.edgeType||"compound"===b.edgeType||"segments"===b.edgeType||"haystack"===b.edgeType){for(var x=m.rstyle.bezierPts||m.rstyle.linePts||m.rstyle.haystackPts,w=!0,E=0;E<x.length;E++)if(i=h,o=x[E],!lt(i,o.x,o.y)){w=!1;break}w&&s.push(y)}else"haystack"!==b.edgeType&&"straight"!==b.edgeType||s.push(y)}}return s}},Va={calculateArrowAngles:function(e){var t,n,r,i,o,a,s=e._private.rscratch,u="haystack"===s.edgeType,l="bezier"===s.edgeType,c="multibezier"===s.edgeType,d="segments"===s.edgeType,h="compound"===s.edgeType,p="self"===s.edgeType;if(u?(r=s.haystackPts[0],i=s.haystackPts[1],o=s.haystackPts[2],a=s.haystackPts[3]):(r=s.arrowStartX,i=s.arrowStartY,o=s.arrowEndX,a=s.arrowEndY),v=s.midX,g=s.midY,d)t=r-s.segpts[0],n=i-s.segpts[1];else if(c||h||p||l){var f=s.allpts;t=r-et(f[0],f[2],f[4],.1),n=i-et(f[1],f[3],f[5],.1)}else t=r-v,n=i-g;s.srcArrowAngle=Ue(t,n);var v=s.midX,g=s.midY;if(u&&(v=(r+o)/2,g=(i+a)/2),t=o-r,n=a-i,d)if((f=s.allpts).length/2%2==0){var y=(m=f.length/2)-2;t=f[m]-f[y],n=f[m+1]-f[y+1]}else{y=(m=f.length/2-1)-2;var m,b=m+2;t=f[m]-f[y],n=f[m+1]-f[y+1]}else if(c||h||p){var x,w,E,k,f=s.allpts;if(s.ctrlpts.length/2%2==0){var P=(S=(C=f.length/2-1)+2)+2;x=et(f[C],f[S],f[P],0),w=et(f[C+1],f[S+1],f[P+1],0),E=et(f[C],f[S],f[P],1e-4),k=et(f[C+1],f[S+1],f[P+1],1e-4)}else{var S,C;P=(S=f.length/2-1)+2;x=et(f[C=S-2],f[S],f[P],.4999),w=et(f[C+1],f[S+1],f[P+1],.4999),E=et(f[C],f[S],f[P],.5),k=et(f[C+1],f[S+1],f[P+1],.5)}t=E-x,n=k-w}(s.midtgtArrowAngle=Ue(t,n),s.midDispX=t,s.midDispY=n,t*=-1,n*=-1,d)&&((f=s.allpts).length/2%2==0||(t=-(f[b=(m=f.length/2-1)+2]-f[m]),n=-(f[b+1]-f[m+1])));if(s.midsrcArrowAngle=Ue(t,n),d)t=o-s.segpts[s.segpts.length-2],n=a-s.segpts[s.segpts.length-1];else if(c||h||p||l){var _=(f=s.allpts).length;t=o-et(f[_-6],f[_-4],f[_-2],.9),n=a-et(f[_-5],f[_-3],f[_-1],.9)}else t=o-v,n=a-g;s.tgtArrowAngle=Ue(t,n)}};Va.getArrowWidth=Va.getArrowHeight=function(e,t){var n=this.arrowWidthCache=this.arrowWidthCache||{},r=n[e+", "+t];return r||(r=Math.max(Math.pow(13.37*e,.9),29)*t,n[e+", "+t]=r,r)};var qa={};function Ya(e){var t=[];if(null!=e){for(var n=0;n<e.length;n+=2){var r=e[n],i=e[n+1];t.push({x:r,y:i})}return t}}qa.findHaystackPoints=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=n._private,i=r.rscratch;if(!i.haystack){var o=2*Math.random()*Math.PI;i.source={x:Math.cos(o),y:Math.sin(o)},o=2*Math.random()*Math.PI,i.target={x:Math.cos(o),y:Math.sin(o)}}var a=r.source,s=r.target,u=a.position(),l=s.position(),c=a.width(),d=s.width(),h=a.height(),p=s.height(),f=n.pstyle("haystack-radius").value/2;i.haystackPts=i.allpts=[i.source.x*c*f+u.x,i.source.y*h*f+u.y,i.target.x*d*f+l.x,i.target.y*p*f+l.y],i.midX=(i.allpts[0]+i.allpts[2])/2,i.midY=(i.allpts[1]+i.allpts[3])/2,i.edgeType="haystack",i.haystack=!0,this.storeEdgeProjections(n),this.calculateArrowAngles(n),this.recalculateEdgeLabelProjections(n),this.calculateLabelAngles(n)}},qa.findSegmentsPoints=function(e,t){var n=e._private.rscratch,r=t.posPts,i=t.intersectionPts,o=t.vectorNormInverse,a=e.pstyle("edge-distances").value,s=e.pstyle("segment-weights"),u=e.pstyle("segment-distances"),l=Math.min(s.pfValue.length,u.pfValue.length);n.edgeType="segments",n.segpts=[];for(var c=0;c<l;c++){var d=s.pfValue[c],h=u.pfValue[c],p=1-d,f=d,v="node-position"===a?r:i,g={x:v.x1*p+v.x2*f,y:v.y1*p+v.y2*f};n.segpts.push(g.x+o.x*h,g.y+o.y*h)}},qa.findLoopPoints=function(e,t,n,r){var i=e._private.rscratch,o=t.dirCounts,a=t.srcPos,s=e.pstyle("control-point-distances"),u=s?s.pfValue[0]:void 0,l=e.pstyle("loop-direction").pfValue,c=e.pstyle("loop-sweep").pfValue,d=e.pstyle("control-point-step-size").pfValue;i.edgeType="self";var h=n,p=d;r&&(h=0,p=u);var f=l-Math.PI/2,v=f-c/2,g=f+c/2,y=String(l+"_"+c);h=void 0===o[y]?o[y]=0:++o[y],i.ctrlpts=[a.x+1.4*Math.cos(v)*p*(h/3+1),a.y+1.4*Math.sin(v)*p*(h/3+1),a.x+1.4*Math.cos(g)*p*(h/3+1),a.y+1.4*Math.sin(g)*p*(h/3+1)]},qa.findCompoundLoopPoints=function(e,t,n,r){var i=e._private.rscratch;i.edgeType="compound";var o=t.srcPos,a=t.tgtPos,s=t.srcW,u=t.srcH,l=t.tgtW,c=t.tgtH,d=e.pstyle("control-point-step-size").pfValue,h=e.pstyle("control-point-distances"),p=h?h.pfValue[0]:void 0,f=n,v=d;r&&(f=0,v=p);var g={x:o.x-s/2,y:o.y-u/2},y={x:a.x-l/2,y:a.y-c/2},m={x:Math.min(g.x,y.x),y:Math.min(g.y,y.y)},b=Math.max(.5,Math.log(.01*s)),x=Math.max(.5,Math.log(.01*l));i.ctrlpts=[m.x,m.y-(1+Math.pow(50,1.12)/100)*v*(f/3+1)*b,m.x-(1+Math.pow(50,1.12)/100)*v*(f/3+1)*x,m.y]},qa.findStraightEdgePoints=function(e){e._private.rscratch.edgeType="straight"},qa.findBezierPoints=function(e,t,n,r,i){var o=e._private.rscratch,a=t.vectorNormInverse,s=t.posPts,u=t.intersectionPts,l=e.pstyle("edge-distances").value,c=e.pstyle("control-point-step-size").pfValue,d=e.pstyle("control-point-distances"),h=e.pstyle("control-point-weights"),p=d&&h?Math.min(d.value.length,h.value.length):1,f=d?d.pfValue[0]:void 0,v=h.value[0],g=r;o.edgeType=g?"multibezier":"bezier",o.ctrlpts=[];for(var y=0;y<p;y++){var m=(.5-t.eles.length/2+n)*c*(i?-1:1),b=void 0,x=Qe(m);g&&(f=d?d.pfValue[y]:c,v=h.value[y]);var w=void 0!==(b=r?f:void 0!==f?x*f:void 0)?b:m,E=1-v,k=v,P="node-position"===l?s:u,S={x:P.x1*E+P.x2*k,y:P.y1*E+P.y2*k};o.ctrlpts.push(S.x+a.x*w,S.y+a.y*w)}},qa.findTaxiPoints=function(e,t){var n=e._private.rscratch;n.edgeType="segments";var r="vertical",i="horizontal",o="leftward",a="rightward",s="downward",u="upward",l=t.posPts,c=t.srcW,d=t.srcH,h=t.tgtW,p=t.tgtH,f="node-position"!==e.pstyle("edge-distances").value,v=e.pstyle("taxi-direction").value,g=v,y=e.pstyle("taxi-turn"),m="%"===y.units,b=y.pfValue,x=b<0,w=e.pstyle("taxi-turn-min-distance").pfValue,E=f?(c+h)/2:0,k=f?(d+p)/2:0,P=l.x2-l.x1,S=l.y2-l.y1,C=function(e,t){return e>0?Math.max(e-t,0):Math.min(e+t,0)},_=C(P,E),j=C(S,k),D=!1;"auto"===g?v=Math.abs(_)>Math.abs(j)?i:r:g===u||g===s?(v=r,D=!0):g!==o&&g!==a||(v=i,D=!0);var T,B=v===r,O=B?j:_,M=B?S:P,N=Qe(M),I=!1;(D&&(m||x)||!(g===s&&M<0||g===u&&M>0||g===o&&M>0||g===a&&M<0)||(O=(N*=-1)*Math.abs(O),I=!0),m)?T=(b<0?1+b:b)*O:T=(b<0?O:0)+b*N;var L=function(e){return Math.abs(e)<w||Math.abs(e)>=Math.abs(O)},A=L(T),z=L(Math.abs(O)-Math.abs(T));if((A||z)&&!I)if(B){var R=Math.abs(M)<=d/2,F=Math.abs(P)<=h/2;if(R){var V=(l.x1+l.x2)/2,q=l.y1,Y=l.y2;n.segpts=[V,q,V,Y]}else if(F){var X=(l.y1+l.y2)/2,H=l.x1,W=l.x2;n.segpts=[H,X,W,X]}else n.segpts=[l.x1,l.y2]}else{var G=Math.abs(M)<=c/2,U=Math.abs(S)<=p/2;if(G){var K=(l.y1+l.y2)/2,Q=l.x1,Z=l.x2;n.segpts=[Q,K,Z,K]}else if(U){var $=(l.x1+l.x2)/2,J=l.y1,ee=l.y2;n.segpts=[$,J,$,ee]}else n.segpts=[l.x2,l.y1]}else if(B){var te=l.y1+T+(f?d/2*N:0),ne=l.x1,re=l.x2;n.segpts=[ne,te,re,te]}else{var ie=l.x1+T+(f?c/2*N:0),oe=l.y1,ae=l.y2;n.segpts=[ie,oe,ie,ae]}},qa.tryToCorrectInvalidPoints=function(e,t){var n=e._private.rscratch;if("bezier"===n.edgeType){var r=t.srcPos,i=t.tgtPos,o=t.srcW,a=t.srcH,s=t.tgtW,u=t.tgtH,l=t.srcShape,c=t.tgtShape,d=!k(n.startX)||!k(n.startY),h=!k(n.arrowStartX)||!k(n.arrowStartY),p=!k(n.endX)||!k(n.endY),f=!k(n.arrowEndX)||!k(n.arrowEndY),v=3*(this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth),g=Ze({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),y=g<v,m=Ze({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.endX,y:n.endY}),b=m<v,x=!1;if(d||h||y){x=!0;var w={x:n.ctrlpts[0]-r.x,y:n.ctrlpts[1]-r.y},E=Math.sqrt(w.x*w.x+w.y*w.y),P={x:w.x/E,y:w.y/E},S=Math.max(o,a),C={x:n.ctrlpts[0]+2*P.x*S,y:n.ctrlpts[1]+2*P.y*S},_=l.intersectLine(r.x,r.y,o,a,C.x,C.y,0);y?(n.ctrlpts[0]=n.ctrlpts[0]+P.x*(v-g),n.ctrlpts[1]=n.ctrlpts[1]+P.y*(v-g)):(n.ctrlpts[0]=_[0]+P.x*v,n.ctrlpts[1]=_[1]+P.y*v)}if(p||f||b){x=!0;var j={x:n.ctrlpts[0]-i.x,y:n.ctrlpts[1]-i.y},D=Math.sqrt(j.x*j.x+j.y*j.y),T={x:j.x/D,y:j.y/D},B=Math.max(o,a),O={x:n.ctrlpts[0]+2*T.x*B,y:n.ctrlpts[1]+2*T.y*B},M=c.intersectLine(i.x,i.y,s,u,O.x,O.y,0);b?(n.ctrlpts[0]=n.ctrlpts[0]+T.x*(v-m),n.ctrlpts[1]=n.ctrlpts[1]+T.y*(v-m)):(n.ctrlpts[0]=M[0]+T.x*v,n.ctrlpts[1]=M[1]+T.y*v)}x&&this.findEndpoints(e)}},qa.storeAllpts=function(e){var t=e._private.rscratch;if("multibezier"===t.edgeType||"bezier"===t.edgeType||"self"===t.edgeType||"compound"===t.edgeType){t.allpts=[],t.allpts.push(t.startX,t.startY);for(var n=0;n+1<t.ctrlpts.length;n+=2)t.allpts.push(t.ctrlpts[n],t.ctrlpts[n+1]),n+3<t.ctrlpts.length&&t.allpts.push((t.ctrlpts[n]+t.ctrlpts[n+2])/2,(t.ctrlpts[n+1]+t.ctrlpts[n+3])/2);var r;t.allpts.push(t.endX,t.endY),t.ctrlpts.length/2%2==0?(r=t.allpts.length/2-1,t.midX=t.allpts[r],t.midY=t.allpts[r+1]):(r=t.allpts.length/2-3,.5,t.midX=et(t.allpts[r],t.allpts[r+2],t.allpts[r+4],.5),t.midY=et(t.allpts[r+1],t.allpts[r+3],t.allpts[r+5],.5))}else if("straight"===t.edgeType)t.allpts=[t.startX,t.startY,t.endX,t.endY],t.midX=(t.startX+t.endX+t.arrowStartX+t.arrowEndX)/4,t.midY=(t.startY+t.endY+t.arrowStartY+t.arrowEndY)/4;else if("segments"===t.edgeType)if(t.allpts=[],t.allpts.push(t.startX,t.startY),t.allpts.push.apply(t.allpts,t.segpts),t.allpts.push(t.endX,t.endY),t.segpts.length%4==0){var i=t.segpts.length/2,o=i-2;t.midX=(t.segpts[o]+t.segpts[i])/2,t.midY=(t.segpts[o+1]+t.segpts[i+1])/2}else{var a=t.segpts.length/2-1;t.midX=t.segpts[a],t.midY=t.segpts[a+1]}},qa.checkForInvalidEdgeWarning=function(e){var t=e[0]._private.rscratch;t.nodesOverlap||k(t.startX)&&k(t.startY)&&k(t.endX)&&k(t.endY)?t.loggedErr=!1:t.loggedErr||(t.loggedErr=!0,ge("Edge `"+e.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap."))},qa.findEdgeControlPoints=function(e){var t=this;if(e&&0!==e.length){for(var n=this,r=n.cy.hasCompoundNodes(),i={map:new Ce,get:function(e){var t=this.map.get(e[0]);return null!=t?t.get(e[1]):null},set:function(e,t){var n=this.map.get(e[0]);null==n&&(n=new Ce,this.map.set(e[0],n)),n.set(e[1],t)}},o=[],a=[],s=0;s<e.length;s++){var u=e[s],l=u._private,c=u.pstyle("curve-style").value;if(!u.removed()&&u.takesUpSpace())if("haystack"!==c){var d="unbundled-bezier"===c||"segments"===c||"straight"===c||"taxi"===c,h="unbundled-bezier"===c||"bezier"===c,p=l.source,f=l.target,v=[p.poolIndex(),f.poolIndex()].sort(),g=i.get(v);null==g&&(g={eles:[]},i.set(v,g),o.push(v)),g.eles.push(u),d&&(g.hasUnbundled=!0),h&&(g.hasBezier=!0)}else a.push(u)}for(var y=function(e){var a=o[e],s=i.get(a),u=void 0;if(!s.hasUnbundled){var l=s.eles[0].parallelEdges().filter((function(e){return e.isBundledBezier()}));ke(s.eles),l.forEach((function(e){return s.eles.push(e)})),s.eles.sort((function(e,t){return e.poolIndex()-t.poolIndex()}))}var c=s.eles[0],d=c.source(),h=c.target();if(d.poolIndex()>h.poolIndex()){var p=d;d=h,h=p}var f=s.srcPos=d.position(),v=s.tgtPos=h.position(),g=s.srcW=d.outerWidth(),y=s.srcH=d.outerHeight(),m=s.tgtW=h.outerWidth(),b=s.tgtH=h.outerHeight(),x=s.srcShape=n.nodeShapes[t.getNodeShape(d)],w=s.tgtShape=n.nodeShapes[t.getNodeShape(h)];s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var E=0;E<s.eles.length;E++){var P=s.eles[E],S=P[0]._private.rscratch,C=P.pstyle("curve-style").value,_="unbundled-bezier"===C||"segments"===C||"taxi"===C,j=!d.same(P.source());if(!s.calculatedIntersection&&d!==h&&(s.hasBezier||s.hasUnbundled)){s.calculatedIntersection=!0;var D=x.intersectLine(f.x,f.y,g,y,v.x,v.y,0),T=s.srcIntn=D,B=w.intersectLine(v.x,v.y,m,b,f.x,f.y,0),O=s.tgtIntn=B,M=s.intersectionPts={x1:D[0],x2:B[0],y1:D[1],y2:B[1]},N=s.posPts={x1:f.x,x2:v.x,y1:f.y,y2:v.y},I=B[1]-D[1],L=B[0]-D[0],A=Math.sqrt(L*L+I*I),z=s.vector={x:L,y:I},R=s.vectorNorm={x:z.x/A,y:z.y/A},F={x:-R.y,y:R.x};s.nodesOverlap=!k(A)||w.checkPoint(D[0],D[1],0,m,b,v.x,v.y)||x.checkPoint(B[0],B[1],0,g,y,f.x,f.y),s.vectorNormInverse=F,u={nodesOverlap:s.nodesOverlap,dirCounts:s.dirCounts,calculatedIntersection:!0,hasBezier:s.hasBezier,hasUnbundled:s.hasUnbundled,eles:s.eles,srcPos:v,tgtPos:f,srcW:m,srcH:b,tgtW:g,tgtH:y,srcIntn:O,tgtIntn:T,srcShape:w,tgtShape:x,posPts:{x1:N.x2,y1:N.y2,x2:N.x1,y2:N.y1},intersectionPts:{x1:M.x2,y1:M.y2,x2:M.x1,y2:M.y1},vector:{x:-z.x,y:-z.y},vectorNorm:{x:-R.x,y:-R.y},vectorNormInverse:{x:-F.x,y:-F.y}}}var V=j?u:s;S.nodesOverlap=V.nodesOverlap,S.srcIntn=V.srcIntn,S.tgtIntn=V.tgtIntn,r&&(d.isParent()||d.isChild()||h.isParent()||h.isChild())&&(d.parents().anySame(h)||h.parents().anySame(d)||d.same(h)&&d.isParent())?t.findCompoundLoopPoints(P,V,E,_):d===h?t.findLoopPoints(P,V,E,_):"segments"===C?t.findSegmentsPoints(P,V):"taxi"===C?t.findTaxiPoints(P,V):"straight"===C||!_&&s.eles.length%2==1&&E===Math.floor(s.eles.length/2)?t.findStraightEdgePoints(P):t.findBezierPoints(P,V,E,_,j),t.findEndpoints(P),t.tryToCorrectInvalidPoints(P,V),t.checkForInvalidEdgeWarning(P),t.storeAllpts(P),t.storeEdgeProjections(P),t.calculateArrowAngles(P),t.recalculateEdgeLabelProjections(P),t.calculateLabelAngles(P)}},m=0;m<o.length;m++)y(m);this.findHaystackPoints(a)}},qa.getSegmentPoints=function(e){var t=e[0]._private.rscratch;if("segments"===t.edgeType)return this.recalculateRenderedStyle(e),Ya(t.segpts)},qa.getControlPoints=function(e){var t=e[0]._private.rscratch,n=t.edgeType;if("bezier"===n||"multibezier"===n||"self"===n||"compound"===n)return this.recalculateRenderedStyle(e),Ya(t.ctrlpts)},qa.getEdgeMidpoint=function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),{x:t.midX,y:t.midY}};var Xa={manualEndptToPx:function(e,t){var n=e.position(),r=e.outerWidth(),i=e.outerHeight();if(2===t.value.length){var o=[t.pfValue[0],t.pfValue[1]];return"%"===t.units[0]&&(o[0]=o[0]*r),"%"===t.units[1]&&(o[1]=o[1]*i),o[0]+=n.x,o[1]+=n.y,o}var a=t.pfValue[0];a=-Math.PI/2+a;var s=2*Math.max(r,i),u=[n.x+Math.cos(a)*s,n.y+Math.sin(a)*s];return this.nodeShapes[this.getNodeShape(e)].intersectLine(n.x,n.y,r,i,u[0],u[1],0)},findEndpoints:function(e){var t,n,r,i,o,a=this,s=e.source()[0],u=e.target()[0],l=s.position(),c=u.position(),d=e.pstyle("target-arrow-shape").value,h=e.pstyle("source-arrow-shape").value,p=e.pstyle("target-distance-from-node").pfValue,f=e.pstyle("source-distance-from-node").pfValue,v=e.pstyle("curve-style").value,g=e._private.rscratch,y=g.edgeType,m="self"===y||"compound"===y,b="bezier"===y||"multibezier"===y||m,x="bezier"!==y,w="straight"===y||"segments"===y,E="segments"===y,P=b||x||w,S=m||"taxi"===v,C=e.pstyle("source-endpoint"),_=S?"outside-to-node":C.value,j=e.pstyle("target-endpoint"),D=S?"outside-to-node":j.value;if(g.srcManEndpt=C,g.tgtManEndpt=j,b){var T=[g.ctrlpts[0],g.ctrlpts[1]];n=x?[g.ctrlpts[g.ctrlpts.length-2],g.ctrlpts[g.ctrlpts.length-1]]:T,r=T}else if(w){var B=E?g.segpts.slice(0,2):[c.x,c.y];n=E?g.segpts.slice(g.segpts.length-2):[l.x,l.y],r=B}if("inside-to-node"===D)t=[c.x,c.y];else if(j.units)t=this.manualEndptToPx(u,j);else if("outside-to-line"===D)t=g.tgtIntn;else if("outside-to-node"===D||"outside-to-node-or-label"===D?i=n:"outside-to-line"!==D&&"outside-to-line-or-label"!==D||(i=[l.x,l.y]),t=a.nodeShapes[this.getNodeShape(u)].intersectLine(c.x,c.y,u.outerWidth(),u.outerHeight(),i[0],i[1],0),"outside-to-node-or-label"===D||"outside-to-line-or-label"===D){var O=u._private.rscratch,M=O.labelWidth,N=O.labelHeight,I=O.labelX,L=O.labelY,A=M/2,z=N/2,R=u.pstyle("text-valign").value;"top"===R?L-=z:"bottom"===R&&(L+=z);var F=u.pstyle("text-halign").value;"left"===F?I-=A:"right"===F&&(I+=A);var V=Pt(i[0],i[1],[I-A,L-z,I+A,L-z,I+A,L+z,I-A,L+z],c.x,c.y);if(V.length>0){var q=l,Y=$e(q,Ge(t)),X=$e(q,Ge(V)),H=Y;if(X<Y&&(t=V,H=X),V.length>2)$e(q,{x:V[2],y:V[3]})<H&&(t=[V[2],V[3]])}}var W=St(t,n,a.arrowShapes[d].spacing(e)+p),G=St(t,n,a.arrowShapes[d].gap(e)+p);if(g.endX=G[0],g.endY=G[1],g.arrowEndX=W[0],g.arrowEndY=W[1],"inside-to-node"===_)t=[l.x,l.y];else if(C.units)t=this.manualEndptToPx(s,C);else if("outside-to-line"===_)t=g.srcIntn;else if("outside-to-node"===_||"outside-to-node-or-label"===_?o=r:"outside-to-line"!==_&&"outside-to-line-or-label"!==_||(o=[c.x,c.y]),t=a.nodeShapes[this.getNodeShape(s)].intersectLine(l.x,l.y,s.outerWidth(),s.outerHeight(),o[0],o[1],0),"outside-to-node-or-label"===_||"outside-to-line-or-label"===_){var U=s._private.rscratch,K=U.labelWidth,Q=U.labelHeight,Z=U.labelX,$=U.labelY,J=K/2,ee=Q/2,te=s.pstyle("text-valign").value;"top"===te?$-=ee:"bottom"===te&&($+=ee);var ne=s.pstyle("text-halign").value;"left"===ne?Z-=J:"right"===ne&&(Z+=J);var re=Pt(o[0],o[1],[Z-J,$-ee,Z+J,$-ee,Z+J,$+ee,Z-J,$+ee],l.x,l.y);if(re.length>0){var ie=c,oe=$e(ie,Ge(t)),ae=$e(ie,Ge(re)),se=oe;if(ae<oe&&(t=[re[0],re[1]],se=ae),re.length>2)$e(ie,{x:re[2],y:re[3]})<se&&(t=[re[2],re[3]])}}var ue=St(t,r,a.arrowShapes[h].spacing(e)+f),le=St(t,r,a.arrowShapes[h].gap(e)+f);g.startX=le[0],g.startY=le[1],g.arrowStartX=ue[0],g.arrowStartY=ue[1],P&&(k(g.startX)&&k(g.startY)&&k(g.endX)&&k(g.endY)?g.badLine=!1:g.badLine=!0)},getSourceEndpoint:function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),"haystack"===t.edgeType?{x:t.haystackPts[0],y:t.haystackPts[1]}:{x:t.arrowStartX,y:t.arrowStartY}},getTargetEndpoint:function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),"haystack"===t.edgeType?{x:t.haystackPts[2],y:t.haystackPts[3]}:{x:t.arrowEndX,y:t.arrowEndY}}},Ha={};function Wa(e,t,n){for(var r=function(e,t,n,r){return et(e,t,n,r)},i=t._private.rstyle.bezierPts,o=0;o<e.bezierProjPcts.length;o++){var a=e.bezierProjPcts[o];i.push({x:r(n[0],n[2],n[4],a),y:r(n[1],n[3],n[5],a)})}}Ha.storeEdgeProjections=function(e){var t=e._private,n=t.rscratch,r=n.edgeType;if(t.rstyle.bezierPts=null,t.rstyle.linePts=null,t.rstyle.haystackPts=null,"multibezier"===r||"bezier"===r||"self"===r||"compound"===r){t.rstyle.bezierPts=[];for(var i=0;i+5<n.allpts.length;i+=4)Wa(this,e,n.allpts.slice(i,i+6))}else if("segments"===r){var o=t.rstyle.linePts=[];for(i=0;i+1<n.allpts.length;i+=2)o.push({x:n.allpts[i],y:n.allpts[i+1]})}else if("haystack"===r){var a=n.haystackPts;t.rstyle.haystackPts=[{x:a[0],y:a[1]},{x:a[2],y:a[3]}]}t.rstyle.arrowWidth=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth},Ha.recalculateEdgeProjections=function(e){this.findEdgeControlPoints(e)};var Ga={recalculateNodeLabelProjection:function(e){var t=e.pstyle("label").strValue;if(!T(t)){var n,r,i=e._private,o=e.width(),a=e.height(),s=e.padding(),u=e.position(),l=e.pstyle("text-halign").strValue,c=e.pstyle("text-valign").strValue,d=i.rscratch,h=i.rstyle;switch(l){case"left":n=u.x-o/2-s;break;case"right":n=u.x+o/2+s;break;default:n=u.x}switch(c){case"top":r=u.y-a/2-s;break;case"bottom":r=u.y+a/2+s;break;default:r=u.y}d.labelX=n,d.labelY=r,h.labelX=n,h.labelY=r,this.calculateLabelAngles(e),this.applyLabelDimensions(e)}}},Ua=function(e,t){var n=Math.atan(t/e);return 0===e&&n<0&&(n*=-1),n},Ka=function(e,t){var n=t.x-e.x,r=t.y-e.y;return Ua(n,r)};Ga.recalculateEdgeLabelProjections=function(e){var t,n=e._private,r=n.rscratch,i=this,o={mid:e.pstyle("label").strValue,source:e.pstyle("source-label").strValue,target:e.pstyle("target-label").strValue};if(o.mid||o.source||o.target){t={x:r.midX,y:r.midY};var a=function(e,t,r){Se(n.rscratch,e,t,r),Se(n.rstyle,e,t,r)};a("labelX",null,t.x),a("labelY",null,t.y);var s=Ua(r.midDispX,r.midDispY);a("labelAutoAngle",null,s);var u=function e(){if(e.cache)return e.cache;for(var t=[],o=0;o+5<r.allpts.length;o+=4){var a={x:r.allpts[o],y:r.allpts[o+1]},s={x:r.allpts[o+2],y:r.allpts[o+3]},u={x:r.allpts[o+4],y:r.allpts[o+5]};t.push({p0:a,p1:s,p2:u,startDist:0,length:0,segments:[]})}var l=n.rstyle.bezierPts,c=i.bezierProjPcts.length;function d(e,t,n,r,i){var o=Ze(t,n),a=e.segments[e.segments.length-1],s={p0:t,p1:n,t0:r,t1:i,startDist:a?a.startDist+a.length:0,length:o};e.segments.push(s),e.length+=o}for(var h=0;h<t.length;h++){var p=t[h],f=t[h-1];f&&(p.startDist=f.startDist+f.length),d(p,p.p0,l[h*c],0,i.bezierProjPcts[0]);for(var v=0;v<c-1;v++)d(p,l[h*c+v],l[h*c+v+1],i.bezierProjPcts[v],i.bezierProjPcts[v+1]);d(p,l[h*c+c-1],p.p2,i.bezierProjPcts[c-1],1)}return e.cache=t},l=function(n){var i,s="source"===n;if(o[n]){var l=e.pstyle(n+"-text-offset").pfValue;switch(r.edgeType){case"self":case"compound":case"bezier":case"multibezier":for(var c,d=u(),h=0,p=0,f=0;f<d.length;f++){for(var v=d[s?f:d.length-1-f],g=0;g<v.segments.length;g++){var y=v.segments[s?g:v.segments.length-1-g],m=f===d.length-1&&g===v.segments.length-1;if(h=p,(p+=y.length)>=l||m){c={cp:v,segment:y};break}}if(c)break}var b=c.cp,x=c.segment,w=(l-h)/x.length,E=x.t1-x.t0,k=s?x.t0+E*w:x.t1-E*w;k=nt(0,k,1),t=tt(b.p0,b.p1,b.p2,k),i=function(e,t,n,r){var i=nt(0,r-.001,1),o=nt(0,r+.001,1),a=tt(e,t,n,i),s=tt(e,t,n,o);return Ka(a,s)}(b.p0,b.p1,b.p2,k);break;case"straight":case"segments":case"haystack":for(var P,S,C,_,j=0,D=r.allpts.length,T=0;T+3<D&&(s?(C={x:r.allpts[T],y:r.allpts[T+1]},_={x:r.allpts[T+2],y:r.allpts[T+3]}):(C={x:r.allpts[D-2-T],y:r.allpts[D-1-T]},_={x:r.allpts[D-4-T],y:r.allpts[D-3-T]}),S=j,!((j+=P=Ze(C,_))>=l));T+=2);var B=(l-S)/P;B=nt(0,B,1),t=function(e,t,n,r){var i=t.x-e.x,o=t.y-e.y,a=Ze(e,t),s=i/a,u=o/a;return n=null==n?0:n,r=null!=r?r:n*a,{x:e.x+s*r,y:e.y+u*r}}(C,_,B),i=Ka(C,_)}a("labelX",n,t.x),a("labelY",n,t.y),a("labelAutoAngle",n,i)}};l("source"),l("target"),this.applyLabelDimensions(e)}},Ga.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))},Ga.applyPrefixedLabelDimensions=function(e,t){var n=e._private,r=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,r),o=e.pstyle("line-height").pfValue,a=e.pstyle("text-wrap").strValue,s=Pe(n.rscratch,"labelWrapCachedLines",t)||[],u="wrap"!==a?1:Math.max(s.length,1),l=i.height/u,c=l*o,d=i.width,h=i.height+(u-1)*(o-1)*l;Se(n.rstyle,"labelWidth",t,d),Se(n.rscratch,"labelWidth",t,d),Se(n.rstyle,"labelHeight",t,h),Se(n.rscratch,"labelHeight",t,h),Se(n.rscratch,"labelLineHeight",t,c)},Ga.getLabelText=function(e,t){var n=e._private,r=t?t+"-":"",i=e.pstyle(r+"label").strValue,o=e.pstyle("text-transform").value,a=function(e,r){return r?(Se(n.rscratch,e,t,r),r):Pe(n.rscratch,e,t)};if(!i)return"";"none"==o||("uppercase"==o?i=i.toUpperCase():"lowercase"==o&&(i=i.toLowerCase()));var s=e.pstyle("text-wrap").value;if("wrap"===s){var u=a("labelKey");if(null!=u&&a("labelWrapKey")===u)return a("labelWrapCachedText");for(var l=i.split("\n"),c=e.pstyle("text-max-width").pfValue,d="anywhere"===e.pstyle("text-overflow-wrap").value,h=[],p=/[\s\u200b]+/,f=d?"":" ",v=0;v<l.length;v++){var g=l[v],y=this.calculateLabelDimensions(e,g).width;if(d){var m=g.split("").join("\u200b");g=m}if(y>c){for(var b=g.split(p),x="",w=0;w<b.length;w++){var E=b[w],k=0===x.length?E:x+f+E;this.calculateLabelDimensions(e,k).width<=c?x+=E+f:(x&&h.push(x),x=E+f)}x.match(/^[\s\u200b]+$/)||h.push(x)}else h.push(g)}a("labelWrapCachedLines",h),i=a("labelWrapCachedText",h.join("\n")),a("labelWrapKey",u)}else if("ellipsis"===s){var P=e.pstyle("text-max-width").pfValue,S="",C=!1;if(this.calculateLabelDimensions(e,i).width<P)return i;for(var _=0;_<i.length;_++){if(this.calculateLabelDimensions(e,S+i[_]+"\u2026").width>P)break;S+=i[_],_===i.length-1&&(C=!0)}return C||(S+="\u2026"),S}return i},Ga.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,n=e.pstyle("text-halign").strValue;if("auto"!==t)return t;if(!e.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},Ga.calculateLabelDimensions=function(e,t){var n=re(t,e._private.labelDimsKey),r=this.labelDimCache||(this.labelDimCache=[]),i=r[n];if(null!=i)return i;var o=e.pstyle("font-style").strValue,a=e.pstyle("font-size").pfValue,s=e.pstyle("font-family").strValue,u=e.pstyle("font-weight").strValue,l=this.labelCalcCanvas,c=this.labelCalcCanvasContext;if(!l){l=this.labelCalcCanvas=document.createElement("canvas"),c=this.labelCalcCanvasContext=l.getContext("2d");var d=l.style;d.position="absolute",d.left="-9999px",d.top="-9999px",d.zIndex="-1",d.visibility="hidden",d.pointerEvents="none"}c.font="".concat(o," ").concat(u," ").concat(a,"px ").concat(s);for(var h=0,p=0,f=t.split("\n"),v=0;v<f.length;v++){var g=f[v],y=c.measureText(g),m=Math.ceil(y.width),b=a;h=Math.max(m,h),p+=b}return h+=0,p+=0,r[n]={width:h,height:p}},Ga.calculateLabelAngle=function(e,t){var n=e._private.rscratch,r=e.isEdge(),i=t?t+"-":"",o=e.pstyle(i+"text-rotation"),a=o.strValue;return"none"===a?0:r&&"autorotate"===a?n.labelAutoAngle:"autorotate"===a?0:o.pfValue},Ga.calculateLabelAngles=function(e){var t=this,n=e.isEdge(),r=e._private.rscratch;r.labelAngle=t.calculateLabelAngle(e),n&&(r.sourceLabelAngle=t.calculateLabelAngle(e,"source"),r.targetLabelAngle=t.calculateLabelAngle(e,"target"))};var Qa={},Za=!1;Qa.getNodeShape=function(e){var t=e.pstyle("shape").value;if("cutrectangle"===t&&(e.width()<28||e.height()<28))return Za||(ge("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),Za=!0),"rectangle";if(e.isParent())return"rectangle"===t||"roundrectangle"===t||"round-rectangle"===t||"cutrectangle"===t||"cut-rectangle"===t||"barrel"===t?t:"rectangle";if("polygon"===t){var n=e.pstyle("shape-polygon-points").value;return this.nodeShapes.makePolygon(n).name}return t};var $a={registerCalculationListeners:function(){var e=this.cy,t=e.collection(),n=this,r=function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(t.merge(e),n)for(var r=0;r<e.length;r++){var i=e[r],o=i._private,a=o.rstyle;a.clean=!1,a.cleanConnected=!1}};n.binder(e).on("bounds.* dirty.*",(function(e){var t=e.target;r(t)})).on("style.* background.*",(function(e){var t=e.target;r(t,!1)}));var i=function(i){if(i){var o=n.onUpdateEleCalcsFns;t.cleanStyle();for(var a=0;a<t.length;a++){var s=t[a],u=s._private.rstyle;s.isNode()&&!u.cleanConnected&&(r(s.connectedEdges()),u.cleanConnected=!0)}if(o)for(var l=0;l<o.length;l++){(0,o[l])(i,t)}n.recalculateRenderedStyle(t),t=e.collection()}};n.flushRenderedStyleQueue=function(){i(!0)},n.beforeRender(i,n.beforeRenderPriorities.eleCalcs)},onUpdateEleCalcs:function(e){(this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[]).push(e)},recalculateRenderedStyle:function(e,t){var n=function(e){return e._private.rstyle.cleanConnected},r=[],i=[];if(!this.destroyed){void 0===t&&(t=!0);for(var o=0;o<e.length;o++){var a=e[o],s=a._private,u=s.rstyle;!a.isEdge()||n(a.source())&&n(a.target())||(u.clean=!1),t&&u.clean||a.removed()||"none"!==a.pstyle("display").value&&("nodes"===s.group?i.push(a):r.push(a),u.clean=!0)}for(var l=0;l<i.length;l++){var c=i[l],d=c._private.rstyle,h=c.position();this.recalculateNodeLabelProjection(c),d.nodeX=h.x,d.nodeY=h.y,d.nodeW=c.pstyle("width").pfValue,d.nodeH=c.pstyle("height").pfValue}this.recalculateEdgeProjections(r);for(var p=0;p<r.length;p++){var f=r[p]._private,v=f.rstyle,g=f.rscratch;v.srcX=g.arrowStartX,v.srcY=g.arrowStartY,v.tgtX=g.arrowEndX,v.tgtY=g.arrowEndY,v.midX=g.midX,v.midY=g.midY,v.labelAngle=g.labelAngle,v.sourceLabelAngle=g.sourceLabelAngle,v.targetLabelAngle=g.targetLabelAngle}}}},Ja={updateCachedGrabbedEles:function(){var e=this.cachedZSortedEles;if(e){e.drag=[],e.nondrag=[];for(var t=[],n=0;n<e.length;n++){var r=(i=e[n])._private.rscratch;i.grabbed()&&!i.isParent()?t.push(i):r.inDragLayer?e.drag.push(i):e.nondrag.push(i)}for(n=0;n<t.length;n++){var i=t[n];e.drag.push(i)}}},invalidateCachedZSortedEles:function(){this.cachedZSortedEles=null},getCachedZSortedEles:function(e){if(e||!this.cachedZSortedEles){var t=this.cy.mutableElements().toArray();t.sort(Ri),t.interactive=t.filter((function(e){return e.interactive()})),this.cachedZSortedEles=t,this.updateCachedGrabbedEles()}else t=this.cachedZSortedEles;return t}},es={};[Fa,Va,qa,Xa,Ha,Ga,Qa,$a,Ja].forEach((function(e){R(es,e)}));var ts={getCachedImage:function(e,t,n){var r=this.imageCache=this.imageCache||{},i=r[e];if(i)return i.image.complete||i.image.addEventListener("load",n),i.image;var o=(i=r[e]=r[e]||{}).image=new Image;o.addEventListener("load",n),o.addEventListener("error",(function(){o.error=!0}));var a="data:";return e.substring(0,a.length).toLowerCase()===a||(o.crossOrigin=t),o.src=e,o}},ns={registerBinding:function(e,t,n,r){var i=Array.prototype.slice.apply(arguments,[1]),o=this.binder(e);return o.on.apply(o,i)}};ns.binder=function(e){var t,n=this,r=e===window||e===document||e===document.body||(t=e,"undefined"!=typeof HTMLElement&&t instanceof HTMLElement);if(null==n.supportsPassiveEvents){var i=!1;try{var o=Object.defineProperty({},"passive",{get:function(){return i=!0,!0}});window.addEventListener("test",null,o)}catch(s){}n.supportsPassiveEvents=i}var a=function(t,i,o){var a=Array.prototype.slice.call(arguments);return r&&n.supportsPassiveEvents&&(a[2]={capture:null!=o&&o,passive:!1,once:!1}),n.bindings.push({target:e,args:a}),(e.addEventListener||e.on).apply(e,a),this};return{on:a,addEventListener:a,addListener:a,bind:a}},ns.nodeIsDraggable=function(e){return e&&e.isNode()&&!e.locked()&&e.grabbable()},ns.nodeIsGrabbable=function(e){return this.nodeIsDraggable(e)&&e.interactive()},ns.load=function(){var e=this,t=function(e){return e.selected()},n=function(t,n,r,i){null==t&&(t=e.cy);for(var o=0;o<n.length;o++){var a=n[o];t.emit({originalEvent:r,type:a,position:i})}},r=function(e){return e.shiftKey||e.metaKey||e.ctrlKey},o=function(t,n){var r=!0;if(e.cy.hasCompoundNodes()&&t&&t.pannable())for(var i=0;n&&i<n.length;i++){if((t=n[i]).isNode()&&t.isParent()&&!t.pannable()){r=!1;break}}else r=!0;return r},a=function(e){e[0]._private.rscratch.inDragLayer=!0},s=function(e){e[0]._private.rscratch.isGrabTarget=!0},u=function(e,t){var n=t.addToList;n.has(e)||(n.merge(e),function(e){e[0]._private.grabbed=!0}(e))},l=function(t,n){n=n||{};var r=t.cy().hasCompoundNodes();n.inDragLayer&&(t.forEach(a),t.neighborhood().stdFilter((function(e){return!r||e.isEdge()})).forEach(a)),n.addToList&&t.forEach((function(e){u(e,n)})),function(e,t){if(e.cy().hasCompoundNodes()&&(null!=t.inDragLayer||null!=t.addToList)){var n=e.descendants();t.inDragLayer&&(n.forEach(a),n.connectedEdges().forEach(a)),t.addToList&&t.addToList.unmerge(n)}}(t,n),h(t,{inDragLayer:n.inDragLayer}),e.updateCachedGrabbedEles()},c=l,d=function(t){t&&(e.getCachedZSortedEles().forEach((function(e){!function(e){e[0]._private.grabbed=!1}(e),function(e){e[0]._private.rscratch.inDragLayer=!1}(e),function(e){e[0]._private.rscratch.isGrabTarget=!1}(e)})),e.updateCachedGrabbedEles())},h=function(e,t){if((null!=t.inDragLayer||null!=t.addToList)&&e.cy().hasCompoundNodes()){var n=e.ancestors().orphans();if(!n.same(e)){var r=n.descendants().spawnSelf().merge(n).unmerge(e).unmerge(e.descendants()),i=r.connectedEdges();t.inDragLayer&&(i.forEach(a),r.forEach(a)),t.addToList&&r.forEach((function(e){u(e,t)}))}}},p=function(){null!=document.activeElement&&null!=document.activeElement.blur&&document.activeElement.blur()},f="undefined"!=typeof MutationObserver,v="undefined"!=typeof ResizeObserver;f?(e.removeObserver=new MutationObserver((function(t){for(var n=0;n<t.length;n++){var r=t[n].removedNodes;if(r)for(var i=0;i<r.length;i++){if(r[i]===e.container){e.destroy();break}}}})),e.container.parentNode&&e.removeObserver.observe(e.container.parentNode,{childList:!0})):e.registerBinding(e.container,"DOMNodeRemoved",(function(t){e.destroy()}));var g=i((function(){e.cy.resize()}),100);f&&(e.styleObserver=new MutationObserver(g),e.styleObserver.observe(e.container,{attributes:!0})),e.registerBinding(window,"resize",g),v&&(e.resizeObserver=new ResizeObserver(g),e.resizeObserver.observe(e.container));var y=function(){e.invalidateContainerClientCoordsCache()};!function(e,t){for(;null!=e;)t(e),e=e.parentNode}(e.container,(function(t){e.registerBinding(t,"transitionend",y),e.registerBinding(t,"animationend",y),e.registerBinding(t,"scroll",y)})),e.registerBinding(e.container,"contextmenu",(function(e){e.preventDefault()}));var m=function(t){for(var n=e.findContainerClientCoords(),r=n[0],i=n[1],o=n[2],a=n[3],s=t.touches?t.touches:[t],u=!1,l=0;l<s.length;l++){var c=s[l];if(r<=c.clientX&&c.clientX<=r+o&&i<=c.clientY&&c.clientY<=i+a){u=!0;break}}if(!u)return!1;for(var d=e.container,h=t.target.parentNode,p=!1;h;){if(h===d){p=!0;break}h=h.parentNode}return!!p};e.registerBinding(e.container,"mousedown",(function(t){if(m(t)){t.preventDefault(),p(),e.hoverData.capture=!0,e.hoverData.which=t.which;var r=e.cy,i=[t.clientX,t.clientY],o=e.projectIntoViewport(i[0],i[1]),a=e.selection,u=e.findNearestElements(o[0],o[1],!0,!1),d=u[0],h=e.dragData.possibleDragElements;e.hoverData.mdownPos=o,e.hoverData.mdownGPos=i;if(3==t.which){e.hoverData.cxtStarted=!0;var f={originalEvent:t,type:"cxttapstart",position:{x:o[0],y:o[1]}};d?(d.activate(),d.emit(f),e.hoverData.down=d):r.emit(f),e.hoverData.downTime=(new Date).getTime(),e.hoverData.cxtDragged=!1}else if(1==t.which){if(d&&d.activate(),null!=d&&e.nodeIsGrabbable(d)){var v=function(e){return{originalEvent:t,type:e,position:{x:o[0],y:o[1]}}};if(s(d),d.selected()){h=e.dragData.possibleDragElements=r.collection();var g=r.$((function(t){return t.isNode()&&t.selected()&&e.nodeIsGrabbable(t)}));l(g,{addToList:h}),d.emit(v("grabon")),g.forEach((function(e){e.emit(v("grab"))}))}else h=e.dragData.possibleDragElements=r.collection(),c(d,{addToList:h}),d.emit(v("grabon")).emit(v("grab"));e.redrawHint("eles",!0),e.redrawHint("drag",!0)}e.hoverData.down=d,e.hoverData.downs=u,e.hoverData.downTime=(new Date).getTime(),n(d,["mousedown","tapstart","vmousedown"],t,{x:o[0],y:o[1]}),null==d?(a[4]=1,e.data.bgActivePosistion={x:o[0],y:o[1]},e.redrawHint("select",!0),e.redraw()):d.pannable()&&(a[4]=1),e.hoverData.tapholdCancelled=!1,clearTimeout(e.hoverData.tapholdTimeout),e.hoverData.tapholdTimeout=setTimeout((function(){if(!e.hoverData.tapholdCancelled){var n=e.hoverData.down;n?n.emit({originalEvent:t,type:"taphold",position:{x:o[0],y:o[1]}}):r.emit({originalEvent:t,type:"taphold",position:{x:o[0],y:o[1]}})}}),e.tapholdDuration)}a[0]=a[2]=o[0],a[1]=a[3]=o[1]}}),!1),e.registerBinding(window,"mousemove",(function(t){if(e.hoverData.capture||m(t)){var i=!1,a=e.cy,s=a.zoom(),u=[t.clientX,t.clientY],c=e.projectIntoViewport(u[0],u[1]),h=e.hoverData.mdownPos,p=e.hoverData.mdownGPos,f=e.selection,v=null;e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.selecting||(v=e.findNearestElement(c[0],c[1],!0,!1));var g,y=e.hoverData.last,b=e.hoverData.down,x=[c[0]-f[2],c[1]-f[3]],w=e.dragData.possibleDragElements;if(p){var E=u[0]-p[0],P=E*E,S=u[1]-p[1],C=P+S*S;e.hoverData.isOverThresholdDrag=g=C>=e.desktopTapThreshold2}var _=r(t);g&&(e.hoverData.tapholdCancelled=!0);i=!0,n(v,["mousemove","vmousemove","tapdrag"],t,{x:c[0],y:c[1]});var j=function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||a.emit({originalEvent:t,type:"boxstart",position:{x:c[0],y:c[1]}}),f[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()};if(3===e.hoverData.which){if(g){var D={originalEvent:t,type:"cxtdrag",position:{x:c[0],y:c[1]}};b?b.emit(D):a.emit(D),e.hoverData.cxtDragged=!0,e.hoverData.cxtOver&&v===e.hoverData.cxtOver||(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:c[0],y:c[1]}}),e.hoverData.cxtOver=v,v&&v.emit({originalEvent:t,type:"cxtdragover",position:{x:c[0],y:c[1]}}))}}else if(e.hoverData.dragging){if(i=!0,a.panningEnabled()&&a.userPanningEnabled()){var T;if(e.hoverData.justStartedPan){var B=e.hoverData.mdownPos;T={x:(c[0]-B[0])*s,y:(c[1]-B[1])*s},e.hoverData.justStartedPan=!1}else T={x:x[0]*s,y:x[1]*s};a.panBy(T),e.hoverData.dragged=!0}c=e.projectIntoViewport(t.clientX,t.clientY)}else if(1!=f[4]||null!=b&&!b.pannable()){if(b&&b.pannable()&&b.active()&&b.unactivate(),b&&b.grabbed()||v==y||(y&&n(y,["mouseout","tapdragout"],t,{x:c[0],y:c[1]}),v&&n(v,["mouseover","tapdragover"],t,{x:c[0],y:c[1]}),e.hoverData.last=v),b)if(g){if(a.boxSelectionEnabled()&&_)b&&b.grabbed()&&(d(w),b.emit("freeon"),w.emit("free"),e.dragData.didDrag&&(b.emit("dragfreeon"),w.emit("dragfree"))),j();else if(b&&b.grabbed()&&e.nodeIsDraggable(b)){var O=!e.dragData.didDrag;O&&e.redrawHint("eles",!0),e.dragData.didDrag=!0;var M=a.collection();e.hoverData.draggingEles||l(w,{inDragLayer:!0});var N={x:0,y:0};if(k(x[0])&&k(x[1])&&(N.x+=x[0],N.y+=x[1],O)){var I=e.hoverData.dragDelta;I&&k(I[0])&&k(I[1])&&(N.x+=I[0],N.y+=I[1])}for(var L=0;L<w.length;L++){var A=w[L];e.nodeIsDraggable(A)&&A.grabbed()&&M.push(A)}e.hoverData.draggingEles=!0,M.silentShift(N).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else!function(){var t=e.hoverData.dragDelta=e.hoverData.dragDelta||[];0===t.length?(t.push(x[0]),t.push(x[1])):(t[0]+=x[0],t[1]+=x[1])}();i=!0}else if(g){if(e.hoverData.dragging||!a.boxSelectionEnabled()||!_&&a.panningEnabled()&&a.userPanningEnabled()){if(!e.hoverData.selecting&&a.panningEnabled()&&a.userPanningEnabled()){o(b,e.hoverData.downs)&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,f[4]=0,e.data.bgActivePosistion=Ge(h),e.redrawHint("select",!0),e.redraw())}}else j();b&&b.pannable()&&b.active()&&b.unactivate()}return f[2]=c[0],f[3]=c[1],i?(t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),!1):void 0}}),!1),e.registerBinding(window,"mouseup",(function(i){if(e.hoverData.capture){e.hoverData.capture=!1;var o=e.cy,a=e.projectIntoViewport(i.clientX,i.clientY),s=e.selection,u=e.findNearestElement(a[0],a[1],!0,!1),l=e.dragData.possibleDragElements,c=e.hoverData.down,h=r(i);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,c&&c.unactivate(),3===e.hoverData.which){var p={originalEvent:i,type:"cxttapend",position:{x:a[0],y:a[1]}};if(c?c.emit(p):o.emit(p),!e.hoverData.cxtDragged){var f={originalEvent:i,type:"cxttap",position:{x:a[0],y:a[1]}};c?c.emit(f):o.emit(f)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(1===e.hoverData.which){if(n(u,["mouseup","tapend","vmouseup"],i,{x:a[0],y:a[1]}),e.dragData.didDrag||e.hoverData.dragged||e.hoverData.selecting||e.hoverData.isOverThresholdDrag||n(c,["click","tap","vclick"],i,{x:a[0],y:a[1]}),null!=c||e.dragData.didDrag||e.hoverData.selecting||e.hoverData.dragged||r(i)||(o.$(t).unselect(["tapunselect"]),l.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=l=o.collection()),u!=c||e.dragData.didDrag||e.hoverData.selecting||null!=u&&u._private.selectable&&(e.hoverData.dragging||("additive"===o.selectionType()||h?u.selected()?u.unselect(["tapunselect"]):u.select(["tapselect"]):h||(o.$(t).unmerge(u).unselect(["tapunselect"]),u.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var v=o.collection(e.getAllInBox(s[0],s[1],s[2],s[3]));e.redrawHint("select",!0),v.length>0&&e.redrawHint("eles",!0),o.emit({type:"boxend",originalEvent:i,position:{x:a[0],y:a[1]}});var g=function(e){return e.selectable()&&!e.selected()};"additive"===o.selectionType()||h||o.$(t).unmerge(v).unselect(),v.emit("box").stdFilter(g).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!s[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var y=c&&c.grabbed();d(l),y&&(c.emit("freeon"),l.emit("free"),e.dragData.didDrag&&(c.emit("dragfreeon"),l.emit("dragfree")))}}s[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null}}),!1);var b,x,w,E,P,S,C,_,j,D,T,B,O,M=function(t){if(!e.scrollingPage){var n=e.cy,r=n.zoom(),i=n.pan(),o=e.projectIntoViewport(t.clientX,t.clientY),a=[o[0]*r+i.x,o[1]*r+i.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||0!==e.selection[4])t.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;t.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout((function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()}),150),s=null!=t.deltaY?t.deltaY/-250:null!=t.wheelDeltaY?t.wheelDeltaY/1e3:t.wheelDelta/1e3,s*=e.wheelSensitivity,1===t.deltaMode&&(s*=33);var u=n.zoom()*Math.pow(10,s);"gesturechange"===t.type&&(u=e.gestureStartZoom*t.scale),n.zoom({level:u,renderedPosition:{x:a[0],y:a[1]}})}}};e.registerBinding(e.container,"wheel",M,!0),e.registerBinding(window,"scroll",(function(t){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout((function(){e.scrollingPage=!1}),250)}),!0),e.registerBinding(e.container,"gesturestart",(function(t){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||t.preventDefault()}),!0),e.registerBinding(e.container,"gesturechange",(function(t){e.hasTouchStarted||M(t)}),!0),e.registerBinding(e.container,"mouseout",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),e.registerBinding(e.container,"mouseover",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var N,I,L,A,z=function(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))},R=function(e,t,n,r){return(n-e)*(n-e)+(r-t)*(r-t)};if(e.registerBinding(e.container,"touchstart",N=function(t){if(e.hasTouchStarted=!0,m(t)){p(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var r=e.cy,i=e.touchData.now,o=e.touchData.earlier;if(t.touches[0]){var a=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);i[0]=a[0],i[1]=a[1]}if(t.touches[1]){a=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);i[2]=a[0],i[3]=a[1]}if(t.touches[2]){a=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);i[4]=a[0],i[5]=a[1]}if(t.touches[1]){e.touchData.singleTouchMoved=!0,d(e.dragData.touchDragEles);var u=e.findContainerClientCoords();j=u[0],D=u[1],T=u[2],B=u[3],b=t.touches[0].clientX-j,x=t.touches[0].clientY-D,w=t.touches[1].clientX-j,E=t.touches[1].clientY-D,O=0<=b&&b<=T&&0<=w&&w<=T&&0<=x&&x<=B&&0<=E&&E<=B;var h=r.pan(),f=r.zoom();P=z(b,x,w,E),S=R(b,x,w,E),_=[((C=[(b+w)/2,(x+E)/2])[0]-h.x)/f,(C[1]-h.y)/f];if(S<4e4&&!t.touches[2]){var v=e.findNearestElement(i[0],i[1],!0,!0),g=e.findNearestElement(i[2],i[3],!0,!0);return v&&v.isNode()?(v.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=v):g&&g.isNode()?(g.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=g):r.emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!0,e.touchData.cxtDragged=!1,e.data.bgActivePosistion=void 0,void e.redraw()}}if(t.touches[2])r.boxSelectionEnabled()&&t.preventDefault();else if(t.touches[1]);else if(t.touches[0]){var y=e.findNearestElements(i[0],i[1],!0,!0),k=y[0];if(null!=k&&(k.activate(),e.touchData.start=k,e.touchData.starts=y,e.nodeIsGrabbable(k))){var M=e.dragData.touchDragEles=r.collection(),N=null;e.redrawHint("eles",!0),e.redrawHint("drag",!0),k.selected()?(N=r.$((function(t){return t.selected()&&e.nodeIsGrabbable(t)})),l(N,{addToList:M})):c(k,{addToList:M}),s(k);var I=function(e){return{originalEvent:t,type:e,position:{x:i[0],y:i[1]}}};k.emit(I("grabon")),N?N.forEach((function(e){e.emit(I("grab"))})):k.emit(I("grab"))}n(k,["touchstart","tapstart","vmousedown"],t,{x:i[0],y:i[1]}),null==k&&(e.data.bgActivePosistion={x:a[0],y:a[1]},e.redrawHint("select",!0),e.redraw()),e.touchData.singleTouchMoved=!1,e.touchData.singleTouchStartTime=+new Date,clearTimeout(e.touchData.tapholdTimeout),e.touchData.tapholdTimeout=setTimeout((function(){!1!==e.touchData.singleTouchMoved||e.pinching||e.touchData.selecting||n(e.touchData.start,["taphold"],t,{x:i[0],y:i[1]})}),e.tapholdDuration)}if(t.touches.length>=1){for(var L=e.touchData.startPosition=[],A=0;A<i.length;A++)L[A]=o[A]=i[A];var F=t.touches[0];e.touchData.startGPosition=[F.clientX,F.clientY]}}},!1),e.registerBinding(window,"touchmove",I=function(t){var r=e.touchData.capture;if(r||m(t)){var i=e.selection,a=e.cy,s=e.touchData.now,u=e.touchData.earlier,c=a.zoom();if(t.touches[0]){var h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}if(t.touches[1]){h=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);s[2]=h[0],s[3]=h[1]}if(t.touches[2]){h=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);s[4]=h[0],s[5]=h[1]}var p,f=e.touchData.startGPosition;if(r&&t.touches[0]&&f){for(var v=[],g=0;g<s.length;g++)v[g]=s[g]-u[g];var y=t.touches[0].clientX-f[0],C=y*y,T=t.touches[0].clientY-f[1];p=C+T*T>=e.touchTapThreshold2}if(r&&e.touchData.cxt){t.preventDefault();var B=t.touches[0].clientX-j,M=t.touches[0].clientY-D,N=t.touches[1].clientX-j,I=t.touches[1].clientY-D,L=R(B,M,N,I);if(L/S>=2.25||L>=22500){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var A={originalEvent:t,type:"cxttapend",position:{x:s[0],y:s[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(A),e.touchData.start=null):a.emit(A)}}if(r&&e.touchData.cxt){A={originalEvent:t,type:"cxtdrag",position:{x:s[0],y:s[1]}};e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(A):a.emit(A),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var F=e.findNearestElement(s[0],s[1],!0,!0);e.touchData.cxtOver&&F===e.touchData.cxtOver||(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:s[0],y:s[1]}}),e.touchData.cxtOver=F,F&&F.emit({originalEvent:t,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(r&&t.touches[2]&&a.boxSelectionEnabled())t.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||a.emit({originalEvent:t,type:"boxstart",position:{x:s[0],y:s[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,i[4]=1,i&&0!==i.length&&void 0!==i[0]?(i[2]=(s[0]+s[2]+s[4])/3,i[3]=(s[1]+s[3]+s[5])/3):(i[0]=(s[0]+s[2]+s[4])/3,i[1]=(s[1]+s[3]+s[5])/3,i[2]=(s[0]+s[2]+s[4])/3+1,i[3]=(s[1]+s[3]+s[5])/3+1),e.redrawHint("select",!0),e.redraw();else if(r&&t.touches[1]&&!e.touchData.didSelect&&a.zoomingEnabled()&&a.panningEnabled()&&a.userZoomingEnabled()&&a.userPanningEnabled()){if(t.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),ee=e.dragData.touchDragEles){e.redrawHint("drag",!0);for(var V=0;V<ee.length;V++){var q=ee[V]._private;q.grabbed=!1,q.rscratch.inDragLayer=!1}}var Y=e.touchData.start,X=(B=t.touches[0].clientX-j,M=t.touches[0].clientY-D,N=t.touches[1].clientX-j,I=t.touches[1].clientY-D,z(B,M,N,I)),H=X/P;if(O){var W=(B-b+(N-w))/2,G=(M-x+(I-E))/2,U=a.zoom(),K=U*H,Q=a.pan(),Z=_[0]*U+Q.x,$=_[1]*U+Q.y,J={x:-K/U*(Z-Q.x-W)+Z,y:-K/U*($-Q.y-G)+$};if(Y&&Y.active()){var ee=e.dragData.touchDragEles;d(ee),e.redrawHint("drag",!0),e.redrawHint("eles",!0),Y.unactivate().emit("freeon"),ee.emit("free"),e.dragData.didDrag&&(Y.emit("dragfreeon"),ee.emit("dragfree"))}a.viewport({zoom:K,pan:J,cancelOnFailedZoom:!0}),P=X,b=B,x=M,w=N,E=I,e.pinching=!0}if(t.touches[0]){h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}if(t.touches[1]){h=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);s[2]=h[0],s[3]=h[1]}if(t.touches[2]){h=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);s[4]=h[0],s[5]=h[1]}}else if(t.touches[0]&&!e.touchData.didSelect){var te=e.touchData.start,ne=e.touchData.last;if(e.hoverData.draggingEles||e.swipePanning||(F=e.findNearestElement(s[0],s[1],!0,!0)),r&&null!=te&&t.preventDefault(),r&&null!=te&&e.nodeIsDraggable(te))if(p){ee=e.dragData.touchDragEles;var re=!e.dragData.didDrag;re&&l(ee,{inDragLayer:!0}),e.dragData.didDrag=!0;var ie={x:0,y:0};if(k(v[0])&&k(v[1]))if(ie.x+=v[0],ie.y+=v[1],re)e.redrawHint("eles",!0),(oe=e.touchData.dragDelta)&&k(oe[0])&&k(oe[1])&&(ie.x+=oe[0],ie.y+=oe[1]);e.hoverData.draggingEles=!0,ee.silentShift(ie).emit("position drag"),e.redrawHint("drag",!0),e.touchData.startPosition[0]==u[0]&&e.touchData.startPosition[1]==u[1]&&e.redrawHint("eles",!0),e.redraw()}else{var oe;0===(oe=e.touchData.dragDelta=e.touchData.dragDelta||[]).length?(oe.push(v[0]),oe.push(v[1])):(oe[0]+=v[0],oe[1]+=v[1])}if(n(te||F,["touchmove","tapdrag","vmousemove"],t,{x:s[0],y:s[1]}),te&&te.grabbed()||F==ne||(ne&&ne.emit({originalEvent:t,type:"tapdragout",position:{x:s[0],y:s[1]}}),F&&F.emit({originalEvent:t,type:"tapdragover",position:{x:s[0],y:s[1]}})),e.touchData.last=F,r)for(V=0;V<s.length;V++)s[V]&&e.touchData.startPosition[V]&&p&&(e.touchData.singleTouchMoved=!0);if(r&&(null==te||te.pannable())&&a.panningEnabled()&&a.userPanningEnabled()){o(te,e.touchData.starts)&&(t.preventDefault(),e.data.bgActivePosistion||(e.data.bgActivePosistion=Ge(e.touchData.startPosition)),e.swipePanning?a.panBy({x:v[0]*c,y:v[1]*c}):p&&(e.swipePanning=!0,a.panBy({x:y*c,y:T*c}),te&&(te.unactivate(),e.redrawHint("select",!0),e.touchData.start=null)));h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}}for(g=0;g<s.length;g++)u[g]=s[g];r&&t.touches.length>0&&!e.hoverData.draggingEles&&!e.swipePanning&&null!=e.data.bgActivePosistion&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},!1),e.registerBinding(window,"touchcancel",L=function(t){var n=e.touchData.start;e.touchData.capture=!1,n&&n.unactivate()}),e.registerBinding(window,"touchend",A=function(r){var i=e.touchData.start;if(e.touchData.capture){0===r.touches.length&&(e.touchData.capture=!1),r.preventDefault();var o=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var a,s=e.cy,u=s.zoom(),l=e.touchData.now,c=e.touchData.earlier;if(r.touches[0]){var h=e.projectIntoViewport(r.touches[0].clientX,r.touches[0].clientY);l[0]=h[0],l[1]=h[1]}if(r.touches[1]){h=e.projectIntoViewport(r.touches[1].clientX,r.touches[1].clientY);l[2]=h[0],l[3]=h[1]}if(r.touches[2]){h=e.projectIntoViewport(r.touches[2].clientX,r.touches[2].clientY);l[4]=h[0],l[5]=h[1]}if(i&&i.unactivate(),e.touchData.cxt){if(a={originalEvent:r,type:"cxttapend",position:{x:l[0],y:l[1]}},i?i.emit(a):s.emit(a),!e.touchData.cxtDragged){var p={originalEvent:r,type:"cxttap",position:{x:l[0],y:l[1]}};i?i.emit(p):s.emit(p)}return e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,void e.redraw()}if(!r.touches[2]&&s.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var f=s.collection(e.getAllInBox(o[0],o[1],o[2],o[3]));o[0]=void 0,o[1]=void 0,o[2]=void 0,o[3]=void 0,o[4]=0,e.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:r,position:{x:l[0],y:l[1]}});f.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),f.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(null!=i&&i.unactivate(),r.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(r.touches[1]);else if(r.touches[0]);else if(!r.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var v=e.dragData.touchDragEles;if(null!=i){var g=i._private.grabbed;d(v),e.redrawHint("drag",!0),e.redrawHint("eles",!0),g&&(i.emit("freeon"),v.emit("free"),e.dragData.didDrag&&(i.emit("dragfreeon"),v.emit("dragfree"))),n(i,["touchend","tapend","vmouseup","tapdragout"],r,{x:l[0],y:l[1]}),i.unactivate(),e.touchData.start=null}else{var y=e.findNearestElement(l[0],l[1],!0,!0);n(y,["touchend","tapend","vmouseup","tapdragout"],r,{x:l[0],y:l[1]})}var m=e.touchData.startPosition[0]-l[0],b=m*m,x=e.touchData.startPosition[1]-l[1],w=(b+x*x)*u*u;e.touchData.singleTouchMoved||(i||s.$(":selected").unselect(["tapunselect"]),n(i,["tap","vclick"],r,{x:l[0],y:l[1]})),null!=i&&!e.dragData.didDrag&&i._private.selectable&&w<e.touchTapThreshold2&&!e.pinching&&("single"===s.selectionType()?(s.$(t).unmerge(i).unselect(["tapunselect"]),i.select(["tapselect"])):i.selected()?i.unselect(["tapunselect"]):i.select(["tapselect"]),e.redrawHint("eles",!0)),e.touchData.singleTouchMoved=!0}for(var E=0;E<l.length;E++)c[E]=l[E];e.dragData.didDrag=!1,0===r.touches.length&&(e.touchData.dragDelta=[],e.touchData.startPosition=null,e.touchData.startGPosition=null,e.touchData.didSelect=!1),r.touches.length<2&&(1===r.touches.length&&(e.touchData.startGPosition=[r.touches[0].clientX,r.touches[0].clientY]),e.pinching=!1,e.redrawHint("eles",!0),e.redraw())}},!1),"undefined"==typeof TouchEvent){var F=[],V=function(e){return{clientX:e.clientX,clientY:e.clientY,force:1,identifier:e.pointerId,pageX:e.pageX,pageY:e.pageY,radiusX:e.width/2,radiusY:e.height/2,screenX:e.screenX,screenY:e.screenY,target:e.target}},q=function(e){F.push(function(e){return{event:e,touch:V(e)}}(e))},Y=function(e){for(var t=0;t<F.length;t++){if(F[t].event.pointerId===e.pointerId)return void F.splice(t,1)}},X=function(e){e.touches=F.map((function(e){return e.touch}))},H=function(e){return"mouse"===e.pointerType||4===e.pointerType};e.registerBinding(e.container,"pointerdown",(function(e){H(e)||(e.preventDefault(),q(e),X(e),N(e))})),e.registerBinding(e.container,"pointerup",(function(e){H(e)||(Y(e),X(e),A(e))})),e.registerBinding(e.container,"pointercancel",(function(e){H(e)||(Y(e),X(e),L())})),e.registerBinding(e.container,"pointermove",(function(e){H(e)||(e.preventDefault(),function(e){var t=F.filter((function(t){return t.event.pointerId===e.pointerId}))[0];t.event=e,t.touch=V(e)}(e),X(e),I(e))}))}};var rs={generatePolygon:function(e,t){return this.nodeShapes[e]={renderer:this,name:e,points:t,draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl("polygon",e,t,n,r,i,this.points)},intersectLine:function(e,t,n,r,i,o,a){return Pt(i,o,this.points,e,t,n/2,r/2,a)},checkPoint:function(e,t,n,r,i,o,a){return yt(e,t,this.points,o,a,r,i,[0,-1],n)}}}};rs.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o){var a=n-e,s=r-t;a/=i,s/=o;var u=Math.sqrt(a*a+s*s),l=u-1;if(l<0)return[];var c=l/u;return[(n-e)*c+e,(r-t)*c+t]}(i,o,e,t,n/2+a,r/2+a)},checkPoint:function(e,t,n,r,i,o,a){return xt(e,t,r,i,o,a,n)}}},rs.generateRoundPolygon=function(e,t){for(var n=new Array(2*t.length),r=0;r<t.length/2;r++){var i=2*r,o=void 0;o=r<t.length/2-1?2*(r+1):0,n[4*r]=t[i],n[4*r+1]=t[i+1];var a=t[o]-t[i],s=t[o+1]-t[i+1],u=Math.sqrt(a*a+s*s);n[4*r+2]=a/u,n[4*r+3]=s/u}return this.nodeShapes[e]={renderer:this,name:e,points:n,draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl("round-polygon",e,t,n,r,i,this.points)},intersectLine:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o,a,s){for(var u,l=[],c=new Array(n.length),d=o/2,h=a/2,p=Tt(o,a),f=0;f<n.length/4;f++){var v,g=void 0;g=0===f?n.length-2:4*f-2,v=4*f+2;var y=r+d*n[4*f],m=i+h*n[4*f+1],b=-n[g]*n[v]-n[g+1]*n[v+1],x=p/Math.tan(Math.acos(b)/2),w=y-x*n[g],E=m-x*n[g+1],k=y+x*n[v],P=m+x*n[v+1];0===f?(c[n.length-2]=w,c[n.length-1]=E):(c[4*f-2]=w,c[4*f-1]=E),c[4*f]=k,c[4*f+1]=P;var S=n[g+1],C=-n[g];S*n[v]+C*n[v+1]<0&&(S*=-1,C*=-1),0!==(u=wt(e,t,r,i,w+S*p,E+C*p,p)).length&&l.push(u[0],u[1])}for(var _=0;_<c.length/4;_++)0!==(u=kt(e,t,r,i,c[4*_],c[4*_+1],c[4*_+2],c[4*_+3],!1)).length&&l.push(u[0],u[1]);if(l.length>2){for(var j=[l[0],l[1]],D=Math.pow(j[0]-e,2)+Math.pow(j[1]-t,2),T=1;T<l.length/2;T++){var B=Math.pow(l[2*T]-e,2)+Math.pow(l[2*T+1]-t,2);B<=D&&(j[0]=l[2*T],j[1]=l[2*T+1],D=B)}return j}return l}(i,o,this.points,e,t,n,r)},checkPoint:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o,a){for(var s=new Array(n.length),u=o/2,l=a/2,c=Tt(o,a),d=c*c,h=0;h<n.length/4;h++){var p,f=void 0;f=0===h?n.length-2:4*h-2,p=4*h+2;var v=r+u*n[4*h],g=i+l*n[4*h+1],y=-n[f]*n[p]-n[f+1]*n[p+1],m=c/Math.tan(Math.acos(y)/2),b=v-m*n[f],x=g-m*n[f+1],w=v+m*n[p],E=g+m*n[p+1];s[4*h]=b,s[4*h+1]=x,s[4*h+2]=w,s[4*h+3]=E;var k=n[f+1],P=-n[f];k*n[p]+P*n[p+1]<0&&(k*=-1,P*=-1);var S=b+k*c,C=x+P*c;if(Math.pow(S-e,2)+Math.pow(C-t,2)<=d)return!0}return gt(e,t,s)}(e,t,this.points,o,a,r,i)}}},rs.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){return dt(i,o,e,t,n,r,a)},checkPoint:function(e,t,n,r,i,o,a){var s=Dt(r,i),u=2*s;return!!yt(e,t,this.points,o,a,r,i-u,[0,-1],n)||(!!yt(e,t,this.points,o,a,r-u,i,[0,-1],n)||(!!xt(e,t,u,u,o-r/2+s,a-i/2+s,n)||(!!xt(e,t,u,u,o+r/2-s,a-i/2+s,n)||(!!xt(e,t,u,u,o+r/2-s,a+i/2-s,n)||!!xt(e,t,u,u,o-r/2+s,a+i/2-s,n)))))}}},rs.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:8,points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},generateCutTrianglePts:function(e,t,n,r){var i=this.cornerLength,o=t/2,a=e/2,s=n-a,u=n+a,l=r-o,c=r+o;return{topLeft:[s,l+i,s+i,l,s+i,l+i],topRight:[u-i,l,u,l+i,u-i,l+i],bottomRight:[u,c-i,u-i,c,u-i,c-i],bottomLeft:[s+i,c,s,c-i,s+i,c-i]}},intersectLine:function(e,t,n,r,i,o,a){var s=this.generateCutTrianglePts(n+2*a,r+2*a,e,t),u=[].concat.apply([],[s.topLeft.splice(0,4),s.topRight.splice(0,4),s.bottomRight.splice(0,4),s.bottomLeft.splice(0,4)]);return Pt(i,o,u,e,t)},checkPoint:function(e,t,n,r,i,o,a){if(yt(e,t,this.points,o,a,r,i-2*this.cornerLength,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-2*this.cornerLength,i,[0,-1],n))return!0;var s=this.generateCutTrianglePts(r,i,o,a);return gt(e,t,s.topLeft)||gt(e,t,s.topRight)||gt(e,t,s.bottomRight)||gt(e,t,s.bottomLeft)}}},rs.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){var s=this.generateBarrelBezierPts(n+2*a,r+2*a,e,t),u=function(e){var t=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.15),n=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.5),r=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.85);return[e[0],e[1],t.x,t.y,n.x,n.y,r.x,r.y,e[4],e[5]]},l=[].concat(u(s.topLeft),u(s.topRight),u(s.bottomRight),u(s.bottomLeft));return Pt(i,o,l,e,t)},generateBarrelBezierPts:function(e,t,n,r){var i=t/2,o=e/2,a=n-o,s=n+o,u=r-i,l=r+i,c=Bt(e,t),d=c.heightOffset,h=c.widthOffset,p=c.ctrlPtOffsetPct*e,f={topLeft:[a,u+d,a+p,u,a+h,u],topRight:[s-h,u,s-p,u,s,u+d],bottomRight:[s,l-d,s-p,l,s-h,l],bottomLeft:[a+h,l,a+p,l,a,l-d]};return f.topLeft.isTop=!0,f.topRight.isTop=!0,f.bottomLeft.isBottom=!0,f.bottomRight.isBottom=!0,f},checkPoint:function(e,t,n,r,i,o,a){var s=Bt(r,i),u=s.heightOffset,l=s.widthOffset;if(yt(e,t,this.points,o,a,r,i-2*u,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-2*l,i,[0,-1],n))return!0;for(var c=this.generateBarrelBezierPts(r,i,o,a),d=function(e,t,n){var r,i,o=n[4],a=n[2],s=n[0],u=n[5],l=n[1],c=Math.min(o,s),d=Math.max(o,s),h=Math.min(u,l),p=Math.max(u,l);if(c<=e&&e<=d&&h<=t&&t<=p){var f=[(r=o)-2*(i=a)+s,2*(i-r),r],v=function(e,t,n,r){var i=t*t-4*e*(n-=r);if(i<0)return[];var o=Math.sqrt(i),a=2*e;return[(-t+o)/a,(-t-o)/a]}(f[0],f[1],f[2],e).filter((function(e){return 0<=e&&e<=1}));if(v.length>0)return v[0]}return null},h=Object.keys(c),p=0;p<h.length;p++){var f=c[h[p]],v=d(e,t,f);if(null!=v){var g=f[5],y=f[3],m=f[1],b=et(g,y,m,v);if(f.isTop&&b<=t)return!0;if(f.isBottom&&t<=b)return!0}}return!1}}},rs.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){var s=t-(r/2+a),u=kt(i,o,e,t,e-(n/2+a),s,e+(n/2+a),s,!1);return u.length>0?u:dt(i,o,e,t,n,r,a)},checkPoint:function(e,t,n,r,i,o,a){var s=Dt(r,i),u=2*s;if(yt(e,t,this.points,o,a,r,i-u,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-u,i,[0,-1],n))return!0;var l=r/2+2*n,c=i/2+2*n;return!!gt(e,t,[o-l,a-c,o-l,a,o+l,a,o+l,a-c])||(!!xt(e,t,u,u,o+r/2-s,a+i/2-s,n)||!!xt(e,t,u,u,o-r/2+s,a+i/2-s,n))}}},rs.registerNodeShapes=function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",Ct(3,0)),this.generateRoundPolygon("round-triangle",Ct(3,0)),this.generatePolygon("rectangle",Ct(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",Ct(5,0)),this.generateRoundPolygon("round-pentagon",Ct(5,0)),this.generatePolygon("hexagon",Ct(6,0)),this.generateRoundPolygon("round-hexagon",Ct(6,0)),this.generatePolygon("heptagon",Ct(7,0)),this.generateRoundPolygon("round-heptagon",Ct(7,0)),this.generatePolygon("octagon",Ct(8,0)),this.generateRoundPolygon("round-octagon",Ct(8,0));var r=new Array(20),i=jt(5,0),o=jt(5,Math.PI/5),a=.5*(3-Math.sqrt(5));a*=1.57;for(var s=0;s<o.length/2;s++)o[2*s]*=a,o[2*s+1]*=a;for(s=0;s<5;s++)r[4*s]=i[2*s],r[4*s+1]=i[2*s+1],r[4*s+2]=o[2*s],r[4*s+3]=o[2*s+1];r=_t(r),this.generatePolygon("star",r),this.generatePolygon("vee",[-1,-1,0,-.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,.333,-1,1,1,-.333,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-.95,-.75,0,-1,.95,1,.95,.75,0,1,-.95]);var u=[-1,-1,.25,-1,1,0,.25,1,-1,1];this.generatePolygon("tag",u),this.generateRoundPolygon("round-tag",u),e.makePolygon=function(e){var n,r="polygon-"+e.join("$");return(n=this[r])?n:t.generatePolygon(r,e)}};var is={timeToRender:function(){return this.redrawTotalTime/this.redrawCount},redraw:function(e){e=e||xe();var t=this;void 0===t.averageRedrawTime&&(t.averageRedrawTime=0),void 0===t.lastRedrawTime&&(t.lastRedrawTime=0),void 0===t.lastDrawTime&&(t.lastDrawTime=0),t.requestedFrame=!0,t.renderOptions=e},beforeRender:function(e,t){if(!this.destroyed){null==t&&fe("Priority is not optional for beforeRender");var n=this.beforeRenderCallbacks;n.push({fn:e,priority:t}),n.sort((function(e,t){return t.priority-e.priority}))}}},os=function(e,t,n){for(var r=e.beforeRenderCallbacks,i=0;i<r.length;i++)r[i].fn(t,n)};is.startRenderLoop=function(){var e=this,t=e.cy;if(!e.renderLoopStarted){e.renderLoopStarted=!0;G((function n(r){if(!e.destroyed){if(t.batching());else if(e.requestedFrame&&!e.skipFrame){os(e,!0,r);var i=U();e.render(e.renderOptions);var o=e.lastDrawTime=U();void 0===e.averageRedrawTime&&(e.averageRedrawTime=o-i),void 0===e.redrawCount&&(e.redrawCount=0),e.redrawCount++,void 0===e.redrawTotalTime&&(e.redrawTotalTime=0);var a=o-i;e.redrawTotalTime+=a,e.lastRedrawTime=a,e.averageRedrawTime=e.averageRedrawTime/2+a/2,e.requestedFrame=!1}else os(e,!1,r);e.skipFrame=!1,G(n)}}))}};var as=function(e){this.init(e)},ss=as.prototype;ss.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"],ss.init=function(e){var t=this;t.options=e,t.cy=e.cy;var n=t.container=e.cy.container();if(h){var r=h.document,i=r.head,o="__________cytoscape_stylesheet",a="__________cytoscape_container",s=null!=r.getElementById(o);if(n.className.indexOf(a)<0&&(n.className=(n.className||"")+" "+a),!s){var u=r.createElement("style");u.id=o,u.innerHTML="."+a+" { position: relative; }",i.insertBefore(u,i.children[0])}"static"===h.getComputedStyle(n).getPropertyValue("position")&&ge("A Cytoscape container has style position:static and so can not use UI extensions properly")}t.selection=[void 0,void 0,void 0,void 0,0],t.bezierProjPcts=[.05,.225,.4,.5,.6,.775,.95],t.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},t.dragData={possibleDragElements:[]},t.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},t.redraws=0,t.showFps=e.showFps,t.debug=e.debug,t.hideEdgesOnViewport=e.hideEdgesOnViewport,t.textureOnViewport=e.textureOnViewport,t.wheelSensitivity=e.wheelSensitivity,t.motionBlurEnabled=e.motionBlur,t.forcedPixelRatio=k(e.pixelRatio)?e.pixelRatio:null,t.motionBlur=e.motionBlur,t.motionBlurOpacity=e.motionBlurOpacity,t.motionBlurTransparency=1-t.motionBlurOpacity,t.motionBlurPxRatio=1,t.mbPxRBlurry=1,t.minMbLowQualFrames=4,t.fullQualityMb=!1,t.clearedForMotionBlur=[],t.desktopTapThreshold=e.desktopTapThreshold,t.desktopTapThreshold2=e.desktopTapThreshold*e.desktopTapThreshold,t.touchTapThreshold=e.touchTapThreshold,t.touchTapThreshold2=e.touchTapThreshold*e.touchTapThreshold,t.tapholdDuration=500,t.bindings=[],t.beforeRenderCallbacks=[],t.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},t.registerNodeShapes(),t.registerArrowShapes(),t.registerCalculationListeners()},ss.notify=function(e,t){var n=this,r=n.cy;this.destroyed||("init"!==e?"destroy"!==e?(("add"===e||"remove"===e||"move"===e&&r.hasCompoundNodes()||"load"===e||"zorder"===e||"mount"===e)&&n.invalidateCachedZSortedEles(),"viewport"===e&&n.redrawHint("select",!0),"load"!==e&&"resize"!==e&&"mount"!==e||(n.invalidateContainerClientCoordsCache(),n.matchCanvasSize(n.container)),n.redrawHint("eles",!0),n.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()):n.destroy():n.load())},ss.destroy=function(){var e=this;e.destroyed=!0,e.cy.stopAnimationLoop();for(var t=0;t<e.bindings.length;t++){var n=e.bindings[t],r=n.target;(r.off||r.removeEventListener).apply(r,n.args)}if(e.bindings=[],e.beforeRenderCallbacks=[],e.onUpdateEleCalcsFns=[],e.removeObserver&&e.removeObserver.disconnect(),e.styleObserver&&e.styleObserver.disconnect(),e.resizeObserver&&e.resizeObserver.disconnect(),e.labelCalcDiv)try{document.body.removeChild(e.labelCalcDiv)}catch(i){}},ss.isHeadless=function(){return!1},[Ra,es,ts,ns,rs,is].forEach((function(e){R(ss,e)}));var us=1e3/60,ls=function(e){return function(){var t=this,n=this.renderer;if(!t.dequeueingSetup){t.dequeueingSetup=!0;var r=i((function(){n.redrawHint("eles",!0),n.redrawHint("drag",!0),n.redraw()}),e.deqRedrawThreshold),o=e.priority||pe;n.beforeRender((function(i,o){var a=U(),s=n.averageRedrawTime,u=n.lastRedrawTime,l=[],c=n.cy.extent(),d=n.getPixelRatio();for(i||n.flushRenderedStyleQueue();;){var h=U(),p=h-a,f=h-o;if(u<us){var v=us-(i?s:0);if(f>=e.deqFastCost*v)break}else if(i){if(p>=e.deqCost*u||p>=e.deqAvgCost*s)break}else if(f>=e.deqNoDrawCost*us)break;var g=e.deq(t,d,c);if(!(g.length>0))break;for(var y=0;y<g.length;y++)l.push(g[y])}l.length>0&&(e.onDeqd(t,l),!i&&e.shouldRedraw(t,l,d,c)&&r())}),o(t))}}},cs=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:de;s(this,e),this.idsByKey=new Ce,this.keyForId=new Ce,this.cachesByLvl=new Ce,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=n}return l(e,[{key:"getIdsFor",value:function(e){null==e&&fe("Can not get id list for null key");var t=this.idsByKey,n=this.idsByKey.get(e);return n||(n=new je,t.set(e,n)),n}},{key:"addIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).add(t)}},{key:"deleteIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).delete(t)}},{key:"getNumberOfIdsForKey",value:function(e){return null==e?0:this.getIdsFor(e).size}},{key:"updateKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t),r=this.getKey(e);this.deleteIdForKey(n,t),this.addIdForKey(r,t),this.keyForId.set(t,r)}},{key:"deleteKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteIdForKey(n,t),this.keyForId.delete(t)}},{key:"keyHasChangedFor",value:function(e){var t=e.id();return this.keyForId.get(t)!==this.getKey(e)}},{key:"isInvalid",value:function(e){return this.keyHasChangedFor(e)||this.doesEleInvalidateKey(e)}},{key:"getCachesAt",value:function(e){var t=this.cachesByLvl,n=this.lvls,r=t.get(e);return r||(r=new Ce,t.set(e,r),n.push(e)),r}},{key:"getCache",value:function(e,t){return this.getCachesAt(t).get(e)}},{key:"get",value:function(e,t){var n=this.getKey(e),r=this.getCache(n,t);return null!=r&&this.updateKeyMappingFor(e),r}},{key:"getForCachedKey",value:function(e,t){var n=this.keyForId.get(e.id());return this.getCache(n,t)}},{key:"hasCache",value:function(e,t){return this.getCachesAt(t).has(e)}},{key:"has",value:function(e,t){var n=this.getKey(e);return this.hasCache(n,t)}},{key:"setCache",value:function(e,t,n){n.key=e,this.getCachesAt(t).set(e,n)}},{key:"set",value:function(e,t,n){var r=this.getKey(e);this.setCache(r,t,n),this.updateKeyMappingFor(e)}},{key:"deleteCache",value:function(e,t){this.getCachesAt(t).delete(e)}},{key:"delete",value:function(e,t){var n=this.getKey(e);this.deleteCache(n,t)}},{key:"invalidateKey",value:function(e){var t=this;this.lvls.forEach((function(n){return t.deleteCache(e,n)}))}},{key:"invalidate",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteKeyMappingFor(e);var r=this.doesEleInvalidateKey(e);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),e}(),ds={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},hs=we({getKey:null,doesEleInvalidateKey:de,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:ce,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),ps=function(e,t){var n=this;n.renderer=e,n.onDequeues=[];var r=hs(t);R(n,r),n.lookup=new cs(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},fs=ps.prototype;fs.reasons=ds,fs.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]},fs.getRetiredTextureQueue=function(e){var t=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return t[e]=t[e]||[]},fs.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new o((function(e,t){return t.reqs-e.reqs}))},fs.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},fs.getElement=function(e,t,n,r,i){var o=this,a=this.renderer,s=a.cy.zoom(),u=this.lookup;if(!t||0===t.w||0===t.h||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed())return null;if(!o.allowEdgeTxrCaching&&e.isEdge()||!o.allowParentTxrCaching&&e.isParent())return null;if(null==r&&(r=Math.ceil(Ke(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var l=Math.pow(2,r),c=t.h*l,d=t.w*l,h=a.eleTextBiggerThanMin(e,l);if(!this.isVisible(e,h))return null;var p,f=u.get(e,r);if(f&&f.invalidated&&(f.invalidated=!1,f.texture.invalidatedWidth-=f.width),f)return f;if(p=c<=25?25:c<=50?50:50*Math.ceil(c/50),c>1024||d>1024)return null;var v=o.getTextureQueue(p),g=v[v.length-2],y=function(){return o.recycleTexture(p,d)||o.addTexture(p,d)};g||(g=v[v.length-1]),g||(g=y()),g.width-g.usedWidth<d&&(g=y());for(var m,b=function(e){return e&&e.scaledLabelShown===h},x=i&&i===ds.dequeue,w=i&&i===ds.highQuality,E=i&&i===ds.downscale,k=r+1;k<=3;k++){var P=u.get(e,k);if(P){m=P;break}}var S=m&&m.level===r+1?m:null,C=function(){g.context.drawImage(S.texture.canvas,S.x,0,S.width,S.height,g.usedWidth,0,d,c)};if(g.context.setTransform(1,0,0,1,0,0),g.context.clearRect(g.usedWidth,0,d,p),b(S))C();else if(b(m)){if(!w)return o.queueElement(e,m.level-1),m;for(var _=m.level;_>r;_--)S=o.getElement(e,t,n,_,ds.downscale);C()}else{var j;if(!x&&!w&&!E)for(var D=r-1;D>=-4;D--){var T=u.get(e,D);if(T){j=T;break}}if(b(j))return o.queueElement(e,r),j;g.context.translate(g.usedWidth,0),g.context.scale(l,l),this.drawElement(g.context,e,t,h,!1),g.context.scale(1/l,1/l),g.context.translate(-g.usedWidth,0)}return f={x:g.usedWidth,texture:g,level:r,scale:l,width:d,height:c,scaledLabelShown:h},g.usedWidth+=Math.ceil(d+8),g.eleCaches.push(f),u.set(e,r,f),o.checkTextureFullness(g),f},fs.invalidateElements=function(e){for(var t=0;t<e.length;t++)this.invalidateElement(e[t])},fs.invalidateElement=function(e){var t=this,n=t.lookup,r=[];if(n.isInvalid(e)){for(var i=-4;i<=3;i++){var o=n.getForCachedKey(e,i);o&&r.push(o)}if(n.invalidate(e))for(var a=0;a<r.length;a++){var s=r[a],u=s.texture;u.invalidatedWidth+=s.width,s.invalidated=!0,t.checkTextureUtility(u)}t.removeFromQueue(e)}},fs.checkTextureUtility=function(e){e.invalidatedWidth>=.2*e.width&&this.retireTexture(e)},fs.checkTextureFullness=function(e){var t=this.getTextureQueue(e.height);e.usedWidth/e.width>.8&&e.fullnessChecks>=10?Ee(t,e):e.fullnessChecks++},fs.retireTexture=function(e){var t=e.height,n=this.getTextureQueue(t),r=this.lookup;Ee(n,e),e.retired=!0;for(var i=e.eleCaches,o=0;o<i.length;o++){var a=i[o];r.deleteCache(a.key,a.level)}ke(i),this.getRetiredTextureQueue(t).push(e)},fs.addTexture=function(e,t){var n={};return this.getTextureQueue(e).push(n),n.eleCaches=[],n.height=e,n.width=Math.max(1024,t),n.usedWidth=0,n.invalidatedWidth=0,n.fullnessChecks=0,n.canvas=this.renderer.makeOffscreenCanvas(n.width,n.height),n.context=n.canvas.getContext("2d"),n},fs.recycleTexture=function(e,t){for(var n=this.getTextureQueue(e),r=this.getRetiredTextureQueue(e),i=0;i<r.length;i++){var o=r[i];if(o.width>=t)return o.retired=!1,o.usedWidth=0,o.invalidatedWidth=0,o.fullnessChecks=0,ke(o.eleCaches),o.context.setTransform(1,0,0,1,0,0),o.context.clearRect(0,0,o.width,o.height),Ee(r,o),n.push(o),o}},fs.queueElement=function(e,t){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),i=this.getKey(e),o=r[i];if(o)o.level=Math.max(o.level,t),o.eles.merge(e),o.reqs++,n.updateItem(o);else{var a={eles:e.spawn().merge(e),level:t,reqs:1,key:i};n.push(a),r[i]=a}},fs.dequeue=function(e){for(var t=this,n=t.getElementQueue(),r=t.getElementKeyToQueue(),i=[],o=t.lookup,a=0;a<1&&n.size()>0;a++){var s=n.pop(),u=s.key,l=s.eles[0],c=o.hasCache(l,s.level);if(r[u]=null,!c){i.push(s);var d=t.getBoundingBox(l);t.getElement(l,d,e,s.level,ds.dequeue)}}return i},fs.removeFromQueue=function(e){var t=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(e),i=n[r];null!=i&&(1===i.eles.length?(i.reqs=le,t.updateItem(i),t.pop(),n[r]=null):i.eles.unmerge(e))},fs.onDequeue=function(e){this.onDequeues.push(e)},fs.offDequeue=function(e){Ee(this.onDequeues,e)},fs.setupDequeueing=ls({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t,n){return e.dequeue(t,n)},onDeqd:function(e,t){for(var n=0;n<e.onDequeues.length;n++){(0,e.onDequeues[n])(t)}},shouldRedraw:function(e,t,n,r){for(var i=0;i<t.length;i++)for(var o=t[i].eles,a=0;a<o.length;a++){var s=o[a].boundingBox();if(ut(s,r))return!0}return!1},priority:function(e){return e.renderer.beforeRenderPriorities.eleTxrDeq}});var vs=function(e){var t=this,n=t.renderer=e,r=n.cy;t.layersByLevel={},t.firstGet=!0,t.lastInvalidationTime=U()-500,t.skipping=!1,t.eleTxrDeqs=r.collection(),t.scheduleElementRefinement=i((function(){t.refineElementTextures(t.eleTxrDeqs),t.eleTxrDeqs.unmerge(t.eleTxrDeqs)}),50),n.beforeRender((function(e,n){n-t.lastInvalidationTime<=250?t.skipping=!0:t.skipping=!1}),n.beforeRenderPriorities.lyrTxrSkip);t.layersQueue=new o((function(e,t){return t.reqs-e.reqs})),t.setupDequeueing()},gs=vs.prototype,ys=0,ms=Math.pow(2,53)-1;gs.makeLayer=function(e,t){var n=Math.pow(2,t),r=Math.ceil(e.w*n),i=Math.ceil(e.h*n),o=this.renderer.makeOffscreenCanvas(r,i),a={id:ys=++ys%ms,bb:e,level:t,width:r,height:i,canvas:o,context:o.getContext("2d"),eles:[],elesQueue:[],reqs:0},s=a.context,u=-a.bb.x1,l=-a.bb.y1;return s.scale(n,n),s.translate(u,l),a},gs.getLayers=function(e,t,n){var r=this,i=r.renderer.cy.zoom(),o=r.firstGet;if(r.firstGet=!1,null==n)if((n=Math.ceil(Ke(i*t)))<-4)n=-4;else if(i>=3.99||n>2)return null;r.validateLayersElesOrdering(n,e);var a,s,u=r.layersByLevel,l=Math.pow(2,n),c=u[n]=u[n]||[];if(r.levelIsComplete(n,e))return c;!function(){var t=function(t){if(r.validateLayersElesOrdering(t,e),r.levelIsComplete(t,e))return s=u[t],!0},i=function(e){if(!s)for(var r=n+e;-4<=r&&r<=2&&!t(r);r+=e);};i(1),i(-1);for(var o=c.length-1;o>=0;o--){var a=c[o];a.invalid&&Ee(c,a)}}();var d=function(t){var i=(t=t||{}).after;if(function(){if(!a){a=rt();for(var t=0;t<e.length;t++)n=a,r=e[t].boundingBox(),n.x1=Math.min(n.x1,r.x1),n.x2=Math.max(n.x2,r.x2),n.w=n.x2-n.x1,n.y1=Math.min(n.y1,r.y1),n.y2=Math.max(n.y2,r.y2),n.h=n.y2-n.y1}var n,r}(),a.w*l*(a.h*l)>16e6)return null;var o=r.makeLayer(a,n);if(null!=i){var s=c.indexOf(i)+1;c.splice(s,0,o)}else(void 0===t.insert||t.insert)&&c.unshift(o);return o};if(r.skipping&&!o)return null;for(var h=null,p=e.length/1,f=!o,v=0;v<e.length;v++){var g=e[v],y=g._private.rscratch,m=y.imgLayerCaches=y.imgLayerCaches||{},b=m[n];if(b)h=b;else{if((!h||h.eles.length>=p||!ct(h.bb,g.boundingBox()))&&!(h=d({insert:!0,after:h})))return null;s||f?r.queueLayer(h,g):r.drawEleInLayer(h,g,n,t),h.eles.push(g),m[n]=h}}return s||(f?null:c)},gs.getEleLevelForLayerLevel=function(e,t){return e},gs.drawEleInLayer=function(e,t,n,r){var i=this.renderer,o=e.context,a=t.boundingBox();0!==a.w&&0!==a.h&&t.visible()&&(n=this.getEleLevelForLayerLevel(n,r),i.setImgSmoothing(o,!1),i.drawCachedElement(o,t,null,null,n,true),i.setImgSmoothing(o,!0))},gs.levelIsComplete=function(e,t){var n=this.layersByLevel[e];if(!n||0===n.length)return!1;for(var r=0,i=0;i<n.length;i++){var o=n[i];if(o.reqs>0)return!1;if(o.invalid)return!1;r+=o.eles.length}return r===t.length},gs.validateLayersElesOrdering=function(e,t){var n=this.layersByLevel[e];if(n)for(var r=0;r<n.length;r++){for(var i=n[r],o=-1,a=0;a<t.length;a++)if(i.eles[0]===t[a]){o=a;break}if(o<0)this.invalidateLayer(i);else{var s=o;for(a=0;a<i.eles.length;a++)if(i.eles[a]!==t[s+a]){this.invalidateLayer(i);break}}}},gs.updateElementsInLayers=function(e,t){for(var n=C(e[0]),r=0;r<e.length;r++)for(var i=n?null:e[r],o=n?e[r]:e[r].ele,a=o._private.rscratch,s=a.imgLayerCaches=a.imgLayerCaches||{},u=-4;u<=2;u++){var l=s[u];l&&(i&&this.getEleLevelForLayerLevel(l.level)!==i.level||t(l,o,i))}},gs.haveLayers=function(){for(var e=!1,t=-4;t<=2;t++){var n=this.layersByLevel[t];if(n&&n.length>0){e=!0;break}}return e},gs.invalidateElements=function(e){var t=this;0!==e.length&&(t.lastInvalidationTime=U(),0!==e.length&&t.haveLayers()&&t.updateElementsInLayers(e,(function(e,n,r){t.invalidateLayer(e)})))},gs.invalidateLayer=function(e){if(this.lastInvalidationTime=U(),!e.invalid){var t=e.level,n=e.eles,r=this.layersByLevel[t];Ee(r,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var i=0;i<n.length;i++){var o=n[i]._private.rscratch.imgLayerCaches;o&&(o[t]=null)}}},gs.refineElementTextures=function(e){var t=this;t.updateElementsInLayers(e,(function(e,n,r){var i=e.replacement;if(i||((i=e.replacement=t.makeLayer(e.bb,e.level)).replaces=e,i.eles=e.eles),!i.reqs)for(var o=0;o<i.eles.length;o++)t.queueLayer(i,i.eles[o])}))},gs.enqueueElementRefinement=function(e){this.eleTxrDeqs.merge(e),this.scheduleElementRefinement()},gs.queueLayer=function(e,t){var n=this.layersQueue,r=e.elesQueue,i=r.hasId=r.hasId||{};if(!e.replacement){if(t){if(i[t.id()])return;r.push(t),i[t.id()]=!0}e.reqs?(e.reqs++,n.updateItem(e)):(e.reqs=1,n.push(e))}},gs.dequeue=function(e){for(var t=this,n=t.layersQueue,r=[],i=0;i<1&&0!==n.size();){var o=n.peek();if(o.replacement)n.pop();else if(o.replaces&&o!==o.replaces.replacement)n.pop();else if(o.invalid)n.pop();else{var a=o.elesQueue.shift();a&&(t.drawEleInLayer(o,a,o.level,e),i++),0===r.length&&r.push(!0),0===o.elesQueue.length&&(n.pop(),o.reqs=0,o.replaces&&t.applyLayerReplacement(o),t.requestRedraw())}}return r},gs.applyLayerReplacement=function(e){var t=this.layersByLevel[e.level],n=e.replaces,r=t.indexOf(n);if(!(r<0||n.invalid)){t[r]=e;for(var i=0;i<e.eles.length;i++){var o=e.eles[i]._private,a=o.imgLayerCaches=o.imgLayerCaches||{};a&&(a[e.level]=e)}this.requestRedraw()}},gs.requestRedraw=i((function(){var e=this.renderer;e.redrawHint("eles",!0),e.redrawHint("drag",!0),e.redraw()}),100),gs.setupDequeueing=ls({deqRedrawThreshold:50,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t){return e.dequeue(t)},onDeqd:pe,shouldRedraw:ce,priority:function(e){return e.renderer.beforeRenderPriorities.lyrTxrDeq}});var bs,xs={};function ws(e,t){for(var n=0;n<t.length;n++){var r=t[n];e.lineTo(r.x,r.y)}}function Es(e,t,n){for(var r,i=0;i<t.length;i++){var o=t[i];0===i&&(r=o),e.lineTo(o.x,o.y)}e.quadraticCurveTo(n.x,n.y,r.x,r.y)}function ks(e,t,n){e.beginPath&&e.beginPath();for(var r=t,i=0;i<r.length;i++){var o=r[i];e.lineTo(o.x,o.y)}var a=n,s=n[0];e.moveTo(s.x,s.y);for(i=1;i<a.length;i++){o=a[i];e.lineTo(o.x,o.y)}e.closePath&&e.closePath()}function Ps(e,t,n,r,i){e.beginPath&&e.beginPath(),e.arc(n,r,i,0,2*Math.PI,!1);var o=t,a=o[0];e.moveTo(a.x,a.y);for(var s=0;s<o.length;s++){var u=o[s];e.lineTo(u.x,u.y)}e.closePath&&e.closePath()}function Ss(e,t,n,r){e.arc(t,n,r,0,2*Math.PI,!1)}xs.arrowShapeImpl=function(e){return(bs||(bs={polygon:ws,"triangle-backcurve":Es,"triangle-tee":ks,"circle-triangle":Ps,"triangle-cross":ks,circle:Ss}))[e]};var Cs={drawElement:function(e,t,n,r,i,o){t.isNode()?this.drawNode(e,t,n,r,i,o):this.drawEdge(e,t,n,r,i,o)},drawElementOverlay:function(e,t){t.isNode()?this.drawNodeOverlay(e,t):this.drawEdgeOverlay(e,t)},drawCachedElementPortion:function(e,t,n,r,i,o,a,s){var u=this,l=n.getBoundingBox(t);if(0!==l.w&&0!==l.h){var c=n.getElement(t,l,r,i,o);if(null!=c){var d=s(u,t);if(0===d)return;var h,p,f,v,g,y,m=a(u,t),b=l.x1,x=l.y1,w=l.w,E=l.h;if(0!==m){var k=n.getRotationPoint(t);f=k.x,v=k.y,e.translate(f,v),e.rotate(m),(g=u.getImgSmoothing(e))||u.setImgSmoothing(e,!0);var P=n.getRotationOffset(t);h=P.x,p=P.y}else h=b,p=x;1!==d&&(y=e.globalAlpha,e.globalAlpha=y*d),e.drawImage(c.texture.canvas,c.x,0,c.width,c.height,h,p,w,E),1!==d&&(e.globalAlpha=y),0!==m&&(e.rotate(-m),e.translate(-f,-v),g||u.setImgSmoothing(e,!1))}else n.drawElement(e,t)}}},_s=function(){return 0},js=function(e,t){return e.getTextAngle(t,null)},Ds=function(e,t){return e.getTextAngle(t,"source")},Ts=function(e,t){return e.getTextAngle(t,"target")},Bs=function(e,t){return t.effectiveOpacity()},Os=function(e,t){return t.pstyle("text-opacity").pfValue*t.effectiveOpacity()};Cs.drawCachedElement=function(e,t,n,r,i,o){var a=this,s=a.data,u=s.eleTxrCache,l=s.lblTxrCache,c=s.slbTxrCache,d=s.tlbTxrCache,h=t.boundingBox(),p=!0===o?u.reasons.highQuality:null;if(0!==h.w&&0!==h.h&&t.visible()&&(!r||ut(h,r))){var f=t.isEdge(),v=t.element()._private.rscratch.badLine;a.drawCachedElementPortion(e,t,u,n,i,p,_s,Bs),f&&v||a.drawCachedElementPortion(e,t,l,n,i,p,js,Os),f&&!v&&(a.drawCachedElementPortion(e,t,c,n,i,p,Ds,Os),a.drawCachedElementPortion(e,t,d,n,i,p,Ts,Os)),a.drawElementOverlay(e,t)}},Cs.drawElements=function(e,t){for(var n=0;n<t.length;n++){var r=t[n];this.drawElement(e,r)}},Cs.drawCachedElements=function(e,t,n,r){for(var i=0;i<t.length;i++){var o=t[i];this.drawCachedElement(e,o,n,r)}},Cs.drawCachedNodes=function(e,t,n,r){for(var i=0;i<t.length;i++){var o=t[i];o.isNode()&&this.drawCachedElement(e,o,n,r)}},Cs.drawLayeredElements=function(e,t,n,r){var i=this.data.lyrTxrCache.getLayers(t,n);if(i)for(var o=0;o<i.length;o++){var a=i[o],s=a.bb;0!==s.w&&0!==s.h&&e.drawImage(a.canvas,s.x1,s.y1,s.w,s.h)}else this.drawCachedElements(e,t,n,r)};var Ms={drawEdge:function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],a=this,s=t._private.rscratch;if((!o||t.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var u;n&&(u=n,e.translate(-u.x1,-u.y1));var l=o?t.pstyle("opacity").value:1,c=o?t.pstyle("line-opacity").value:1,d=t.pstyle("line-style").value,h=t.pstyle("width").pfValue,p=t.pstyle("line-cap").value,f=l*c,v=l*c,g=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f;e.lineWidth=h,e.lineCap=p,a.eleStrokeStyle(e,t,n),a.drawEdgePath(t,e,s.allpts,d),e.lineCap="butt"},y=function(){i&&a.drawEdgeOverlay(e,t)},m=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v;a.drawArrowheads(e,t,n)},b=function(){a.drawElementText(e,t,null,r)};e.lineJoin="round";var x="yes"===t.pstyle("ghost").value;if(x){var w=t.pstyle("ghost-offset-x").pfValue,E=t.pstyle("ghost-offset-y").pfValue,k=t.pstyle("ghost-opacity").value,P=f*k;e.translate(w,E),g(P),m(P),e.translate(-w,-E)}g(),m(),y(),b(),n&&e.translate(u.x1,u.y1)}},drawEdgeOverlay:function(e,t){if(t.visible()){var n=t.pstyle("overlay-opacity").value;if(0!==n){var r=this,i=r.usePaths(),o=t._private.rscratch,a=2*t.pstyle("overlay-padding").pfValue,s=t.pstyle("overlay-color").value;e.lineWidth=a,"self"!==o.edgeType||i?e.lineCap="round":e.lineCap="butt",r.colorStrokeStyle(e,s[0],s[1],s[2],n),r.drawEdgePath(t,e,o.allpts,"solid")}}},drawEdgePath:function(e,t,n,r){var i,o=e._private.rscratch,a=t,s=!1,u=this.usePaths(),l=e.pstyle("line-dash-pattern").pfValue,c=e.pstyle("line-dash-offset").pfValue;if(u){var d=n.join("$");o.pathCacheKey&&o.pathCacheKey===d?(i=t=o.pathCache,s=!0):(i=t=new Path2D,o.pathCacheKey=d,o.pathCache=i)}if(a.setLineDash)switch(r){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(l),a.lineDashOffset=c;break;case"solid":a.setLineDash([])}if(!s&&!o.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(n[0],n[1]),o.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var h=2;h+3<n.length;h+=4)t.quadraticCurveTo(n[h],n[h+1],n[h+2],n[h+3]);break;case"straight":case"segments":case"haystack":for(var p=2;p+1<n.length;p+=2)t.lineTo(n[p],n[p+1])}t=a,u?t.stroke(i):t.stroke(),t.setLineDash&&t.setLineDash([])},drawArrowheads:function(e,t,n){var r=t._private.rscratch,i="haystack"===r.edgeType;i||this.drawArrowhead(e,t,"source",r.arrowStartX,r.arrowStartY,r.srcArrowAngle,n),this.drawArrowhead(e,t,"mid-target",r.midX,r.midY,r.midtgtArrowAngle,n),this.drawArrowhead(e,t,"mid-source",r.midX,r.midY,r.midsrcArrowAngle,n),i||this.drawArrowhead(e,t,"target",r.arrowEndX,r.arrowEndY,r.tgtArrowAngle,n)},drawArrowhead:function(e,t,n,r,i,o,a){if(!(isNaN(r)||null==r||isNaN(i)||null==i||isNaN(o)||null==o)){var s=this,u=t.pstyle(n+"-arrow-shape").value;if("none"!==u){var l="hollow"===t.pstyle(n+"-arrow-fill").value?"both":"filled",c=t.pstyle(n+"-arrow-fill").value,d=t.pstyle("width").pfValue,h=t.pstyle("opacity").value;void 0===a&&(a=h);var p=e.globalCompositeOperation;1===a&&"hollow"!==c||(e.globalCompositeOperation="destination-out",s.colorFillStyle(e,255,255,255,1),s.colorStrokeStyle(e,255,255,255,1),s.drawArrowShape(t,e,l,d,u,r,i,o),e.globalCompositeOperation=p);var f=t.pstyle(n+"-arrow-color").value;s.colorFillStyle(e,f[0],f[1],f[2],a),s.colorStrokeStyle(e,f[0],f[1],f[2],a),s.drawArrowShape(t,e,c,d,u,r,i,o)}}},drawArrowShape:function(e,t,n,r,i,o,a,s){var u,l=this,c=this.usePaths()&&"triangle-cross"!==i,d=!1,h=t,p={x:o,y:a},f=e.pstyle("arrow-scale").value,v=this.getArrowWidth(r,f),g=l.arrowShapes[i];if(c){var y=l.arrowPathCache=l.arrowPathCache||[],m=re(i),b=y[m];null!=b?(u=t=b,d=!0):(u=t=new Path2D,y[m]=u)}d||(t.beginPath&&t.beginPath(),c?g.draw(t,1,0,{x:0,y:0},1):g.draw(t,v,s,p,r),t.closePath&&t.closePath()),t=h,c&&(t.translate(o,a),t.rotate(s),t.scale(v,v)),"filled"!==n&&"both"!==n||(c?t.fill(u):t.fill()),"hollow"!==n&&"both"!==n||(t.lineWidth=(g.matchEdgeWidth?r:1)/(c?v:1),t.lineJoin="miter",c?t.stroke(u):t.stroke()),c&&(t.scale(1/v,1/v),t.rotate(-s),t.translate(-o,-a))}},Ns={safeDrawImage:function(e,t,n,r,i,o,a,s,u,l){i<=0||o<=0||u<=0||l<=0||e.drawImage(t,n,r,i,o,a,s,u,l)},drawInscribedImage:function(e,t,n,r,i){var o=this,a=n.position(),s=a.x,u=a.y,l=n.cy().style(),c=l.getIndexedStyle.bind(l),d=c(n,"background-fit","value",r),h=c(n,"background-repeat","value",r),p=n.width(),f=n.height(),v=2*n.padding(),g=p+("inner"===c(n,"background-width-relative-to","value",r)?0:v),y=f+("inner"===c(n,"background-height-relative-to","value",r)?0:v),m=n._private.rscratch,b="node"===c(n,"background-clip","value",r),x=c(n,"background-image-opacity","value",r)*i,w=c(n,"background-image-smoothing","value",r),E=t.width||t.cachedW,k=t.height||t.cachedH;null!=E&&null!=k||(document.body.appendChild(t),E=t.cachedW=t.width||t.offsetWidth,k=t.cachedH=t.height||t.offsetHeight,document.body.removeChild(t));var P=E,S=k;if("auto"!==c(n,"background-width","value",r)&&(P="%"===c(n,"background-width","units",r)?c(n,"background-width","pfValue",r)*g:c(n,"background-width","pfValue",r)),"auto"!==c(n,"background-height","value",r)&&(S="%"===c(n,"background-height","units",r)?c(n,"background-height","pfValue",r)*y:c(n,"background-height","pfValue",r)),0!==P&&0!==S){if("contain"===d)P*=C=Math.min(g/P,y/S),S*=C;else if("cover"===d){var C;P*=C=Math.max(g/P,y/S),S*=C}var _=s-g/2,j=c(n,"background-position-x","units",r),D=c(n,"background-position-x","pfValue",r);_+="%"===j?(g-P)*D:D;var T=c(n,"background-offset-x","units",r),B=c(n,"background-offset-x","pfValue",r);_+="%"===T?(g-P)*B:B;var O=u-y/2,M=c(n,"background-position-y","units",r),N=c(n,"background-position-y","pfValue",r);O+="%"===M?(y-S)*N:N;var I=c(n,"background-offset-y","units",r),L=c(n,"background-offset-y","pfValue",r);O+="%"===I?(y-S)*L:L,m.pathCache&&(_-=s,O-=u,s=0,u=0);var A=e.globalAlpha;e.globalAlpha=x;var z=o.getImgSmoothing(e),R=!1;if("no"===w&&z?(o.setImgSmoothing(e,!1),R=!0):"yes"!==w||z||(o.setImgSmoothing(e,!0),R=!0),"no-repeat"===h)b&&(e.save(),m.pathCache?e.clip(m.pathCache):(o.nodeShapes[o.getNodeShape(n)].draw(e,s,u,g,y),e.clip())),o.safeDrawImage(e,t,0,0,E,k,_,O,P,S),b&&e.restore();else{var F=e.createPattern(t,h);e.fillStyle=F,o.nodeShapes[o.getNodeShape(n)].draw(e,s,u,g,y),e.translate(_,O),e.fill(),e.translate(-_,-O)}e.globalAlpha=A,R&&o.setImgSmoothing(e,z)}}},Is={};function Ls(e,t,n,r,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:5;e.beginPath(),e.moveTo(t+o,n),e.lineTo(t+r-o,n),e.quadraticCurveTo(t+r,n,t+r,n+o),e.lineTo(t+r,n+i-o),e.quadraticCurveTo(t+r,n+i,t+r-o,n+i),e.lineTo(t+o,n+i),e.quadraticCurveTo(t,n+i,t,n+i-o),e.lineTo(t,n+o),e.quadraticCurveTo(t,n,t+o,n),e.closePath(),e.fill()}Is.eleTextBiggerThanMin=function(e,t){if(!t){var n=e.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(Ke(n*r));t=Math.pow(2,i)}return!(e.pstyle("font-size").pfValue*t<e.pstyle("min-zoomed-font-size").pfValue)},Is.drawElementText=function(e,t,n,r,i){var o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],a=this;if(null==r){if(o&&!a.eleTextBiggerThanMin(t))return}else if(!1===r)return;if(t.isNode()){var s=t.pstyle("label");if(!s||!s.value)return;var u=a.getLabelJustification(t);e.textAlign=u,e.textBaseline="bottom"}else{var l=t.element()._private.rscratch.badLine,c=t.pstyle("label"),d=t.pstyle("source-label"),h=t.pstyle("target-label");if(l||(!c||!c.value)&&(!d||!d.value)&&(!h||!h.value))return;e.textAlign="center",e.textBaseline="bottom"}var p,f=!n;n&&(p=n,e.translate(-p.x1,-p.y1)),null==i?(a.drawText(e,t,null,f,o),t.isEdge()&&(a.drawText(e,t,"source",f,o),a.drawText(e,t,"target",f,o))):a.drawText(e,t,i,f,o),n&&e.translate(p.x1,p.y1)},Is.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var n=0;n<this.fontCaches.length;n++)if((t=this.fontCaches[n]).context===e)return t;return t={context:e},this.fontCaches.push(t),t},Is.setupTextStyle=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",o=t.pstyle("font-family").strValue,a=t.pstyle("font-weight").strValue,s=n?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,u=t.pstyle("text-outline-opacity").value*s,l=t.pstyle("color").value,c=t.pstyle("text-outline-color").value;e.font=r+" "+a+" "+i+" "+o,e.lineJoin="round",this.colorFillStyle(e,l[0],l[1],l[2],s),this.colorStrokeStyle(e,c[0],c[1],c[2],u)},Is.getTextAngle=function(e,t){var n=e._private.rscratch,r=t?t+"-":"",i=e.pstyle(r+"text-rotation"),o=Pe(n,"labelAngle",t);return"autorotate"===i.strValue?e.isEdge()?o:0:"none"===i.strValue?0:i.pfValue},Is.drawText=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=t._private,a=o.rscratch,s=i?t.effectiveOpacity():1;if(!i||0!==s&&0!==t.pstyle("text-opacity").value){"main"===n&&(n=null);var u,l,c=Pe(a,"labelX",n),d=Pe(a,"labelY",n),h=this.getLabelText(t,n);if(null!=h&&""!==h&&!isNaN(c)&&!isNaN(d)){this.setupTextStyle(e,t,i);var p,f=n?n+"-":"",v=Pe(a,"labelWidth",n),g=Pe(a,"labelHeight",n),y=t.pstyle(f+"text-margin-x").pfValue,m=t.pstyle(f+"text-margin-y").pfValue,b=t.isEdge(),x=t.pstyle("text-halign").value,w=t.pstyle("text-valign").value;switch(b&&(x="center",w="center"),c+=y,d+=m,0!==(p=r?this.getTextAngle(t,n):0)&&(u=c,l=d,e.translate(u,l),e.rotate(p),c=0,d=0),w){case"top":break;case"center":d+=g/2;break;case"bottom":d+=g}var E=t.pstyle("text-background-opacity").value,k=t.pstyle("text-border-opacity").value,P=t.pstyle("text-border-width").pfValue,S=t.pstyle("text-background-padding").pfValue;if(E>0||P>0&&k>0){var C=c-S;switch(x){case"left":C-=v;break;case"center":C-=v/2}var _=d-g-S,j=v+2*S,D=g+2*S;if(E>0){var T=e.fillStyle,B=t.pstyle("text-background-color").value;e.fillStyle="rgba("+B[0]+","+B[1]+","+B[2]+","+E*s+")";var O=t.pstyle("text-background-shape").strValue;0===O.indexOf("round")?Ls(e,C,_,j,D,2):e.fillRect(C,_,j,D),e.fillStyle=T}if(P>0&&k>0){var M=e.strokeStyle,N=e.lineWidth,I=t.pstyle("text-border-color").value,L=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+I[0]+","+I[1]+","+I[2]+","+k*s+")",e.lineWidth=P,e.setLineDash)switch(L){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=P/4,e.setLineDash([]);break;case"solid":e.setLineDash([])}if(e.strokeRect(C,_,j,D),"double"===L){var A=P/2;e.strokeRect(C+A,_+A,j-2*A,D-2*A)}e.setLineDash&&e.setLineDash([]),e.lineWidth=N,e.strokeStyle=M}}var z=2*t.pstyle("text-outline-width").pfValue;if(z>0&&(e.lineWidth=z),"wrap"===t.pstyle("text-wrap").value){var R=Pe(a,"labelWrapCachedLines",n),F=Pe(a,"labelLineHeight",n),V=v/2,q=this.getLabelJustification(t);switch("auto"===q||("left"===x?"left"===q?c+=-v:"center"===q&&(c+=-V):"center"===x?"left"===q?c+=-V:"right"===q&&(c+=V):"right"===x&&("center"===q?c+=V:"right"===q&&(c+=v))),w){case"top":case"center":case"bottom":d-=(R.length-1)*F}for(var Y=0;Y<R.length;Y++)z>0&&e.strokeText(R[Y],c,d),e.fillText(R[Y],c,d),d+=F}else z>0&&e.strokeText(h,c,d),e.fillText(h,c,d);0!==p&&(e.rotate(-p),e.translate(-u,-l))}}};var As={drawNode:function(e,t,n){var r,i,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],u=this,l=t._private,c=l.rscratch,d=t.position();if(k(d.x)&&k(d.y)&&(!s||t.visible())){var h,p,f=s?t.effectiveOpacity():1,v=u.usePaths(),g=!1,y=t.padding();r=t.width()+2*y,i=t.height()+2*y,n&&(p=n,e.translate(-p.x1,-p.y1));for(var m=t.pstyle("background-image"),b=m.value,x=new Array(b.length),w=new Array(b.length),E=0,P=0;P<b.length;P++){var S=b[P],C=x[P]=null!=S&&"none"!==S;if(C){var _=t.cy().style().getIndexedStyle(t,"background-image-crossorigin","value",P);E++,w[P]=u.getCachedImage(S,_,(function(){l.backgroundTimestamp=Date.now(),t.emitAndNotify("background")}))}}var j=t.pstyle("background-blacken").value,D=t.pstyle("border-width").pfValue,T=t.pstyle("background-opacity").value*f,B=t.pstyle("border-color").value,O=t.pstyle("border-style").value,M=t.pstyle("border-opacity").value*f;e.lineJoin="miter";var N=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:T;u.eleFillStyle(e,t,n)},I=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:M;u.colorStrokeStyle(e,B[0],B[1],B[2],t)},L=t.pstyle("shape").strValue,A=t.pstyle("shape-polygon-points").pfValue;if(v){e.translate(d.x,d.y);var z=u.nodePathCache=u.nodePathCache||[],R=ie("polygon"===L?L+","+A.join(","):L,""+i,""+r),F=z[R];null!=F?(h=F,g=!0,c.pathCache=h):(h=new Path2D,z[R]=c.pathCache=h)}var V=function(){if(!g){var n=d;v&&(n={x:0,y:0}),u.nodeShapes[u.getNodeShape(t)].draw(h||e,n.x,n.y,r,i)}v?e.fill(h):e.fill()},q=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=l.backgrounding,o=0,a=0;a<w.length;a++){var s=t.cy().style().getIndexedStyle(t,"background-image-containment","value",a);r&&"over"===s||!r&&"inside"===s?o++:x[a]&&w[a].complete&&!w[a].error&&(o++,u.drawInscribedImage(e,w[a],t,a,n))}l.backgrounding=!(o===E),i!==l.backgrounding&&t.updateStyle(!1)},Y=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f;u.hasPie(t)&&(u.drawPie(e,t,o),n&&(v||u.nodeShapes[u.getNodeShape(t)].draw(e,d.x,d.y,r,i)))},X=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,n=(j>0?j:-j)*t,r=j>0?0:255;0!==j&&(u.colorFillStyle(e,r,r,r,n),v?e.fill(h):e.fill())},H=function(){if(D>0){if(e.lineWidth=D,e.lineCap="butt",e.setLineDash)switch(O){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([])}if(v?e.stroke(h):e.stroke(),"double"===O){e.lineWidth=D/3;var t=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",v?e.stroke(h):e.stroke(),e.globalCompositeOperation=t}e.setLineDash&&e.setLineDash([])}},W=function(){a&&u.drawNodeOverlay(e,t,d,r,i)},G=function(){u.drawElementText(e,t,null,o)},U="yes"===t.pstyle("ghost").value;if(U){var K=t.pstyle("ghost-offset-x").pfValue,Q=t.pstyle("ghost-offset-y").pfValue,Z=t.pstyle("ghost-opacity").value,$=Z*f;e.translate(K,Q),N(Z*T),V(),q($,!0),I(Z*M),H(),Y(0!==j||0!==D),q($,!1),X($),e.translate(-K,-Q)}N(),V(),q(f,!0),I(),H(),Y(0!==j||0!==D),q(f,!1),X(),v&&e.translate(-d.x,-d.y),G(),W(),n&&e.translate(p.x1,p.y1)}},drawNodeOverlay:function(e,t,n,r,i){if(t.visible()){var o=t.pstyle("overlay-padding").pfValue,a=t.pstyle("overlay-opacity").value,s=t.pstyle("overlay-color").value;if(a>0){if(n=n||t.position(),null==r||null==i){var u=t.padding();r=t.width()+2*u,i=t.height()+2*u}this.colorFillStyle(e,s[0],s[1],s[2],a),this.nodeShapes.roundrectangle.draw(e,n.x,n.y,r+2*o,i+2*o),e.fill()}}},hasPie:function(e){return(e=e[0])._private.hasPie},drawPie:function(e,t,n,r){t=t[0],r=r||t.position();var i=t.cy().style(),o=t.pstyle("pie-size"),a=r.x,s=r.y,u=t.width(),l=t.height(),c=Math.min(u,l)/2,d=0;this.usePaths()&&(a=0,s=0),"%"===o.units?c*=o.pfValue:void 0!==o.pfValue&&(c=o.pfValue/2);for(var h=1;h<=i.pieBackgroundN;h++){var p=t.pstyle("pie-"+h+"-background-size").value,f=t.pstyle("pie-"+h+"-background-color").value,v=t.pstyle("pie-"+h+"-background-opacity").value*n,g=p/100;g+d>1&&(g=1-d);var y=1.5*Math.PI+2*Math.PI*d,m=y+2*Math.PI*g;0===p||d>=1||d+g>1||(e.beginPath(),e.moveTo(a,s),e.arc(a,s,c,y,m),e.closePath(),this.colorFillStyle(e,f[0],f[1],f[2],v),e.fill(),d+=g)}}},zs={};zs.getPixelRatio=function(){var e=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var t=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/t},zs.paintCache=function(e){for(var t,n=this.paintCaches=this.paintCaches||[],r=!0,i=0;i<n.length;i++)if((t=n[i]).context===e){r=!1;break}return r&&(t={context:e},n.push(t)),t},zs.createGradientStyleFor=function(e,t,n,r,i){var o,a=this.usePaths(),s=n.pstyle(t+"-gradient-stop-colors").value,u=n.pstyle(t+"-gradient-stop-positions").pfValue;if("radial-gradient"===r)if(n.isEdge()){var l=n.sourceEndpoint(),c=n.targetEndpoint(),d=n.midpoint(),h=Ze(l,d),p=Ze(c,d);o=e.createRadialGradient(d.x,d.y,0,d.x,d.y,Math.max(h,p))}else{var f=a?{x:0,y:0}:n.position(),v=n.paddedWidth(),g=n.paddedHeight();o=e.createRadialGradient(f.x,f.y,0,f.x,f.y,Math.max(v,g))}else if(n.isEdge()){var y=n.sourceEndpoint(),m=n.targetEndpoint();o=e.createLinearGradient(y.x,y.y,m.x,m.y)}else{var b=a?{x:0,y:0}:n.position(),x=n.paddedWidth()/2,w=n.paddedHeight()/2;switch(n.pstyle("background-gradient-direction").value){case"to-bottom":o=e.createLinearGradient(b.x,b.y-w,b.x,b.y+w);break;case"to-top":o=e.createLinearGradient(b.x,b.y+w,b.x,b.y-w);break;case"to-left":o=e.createLinearGradient(b.x+x,b.y,b.x-x,b.y);break;case"to-right":o=e.createLinearGradient(b.x-x,b.y,b.x+x,b.y);break;case"to-bottom-right":case"to-right-bottom":o=e.createLinearGradient(b.x-x,b.y-w,b.x+x,b.y+w);break;case"to-top-right":case"to-right-top":o=e.createLinearGradient(b.x-x,b.y+w,b.x+x,b.y-w);break;case"to-bottom-left":case"to-left-bottom":o=e.createLinearGradient(b.x+x,b.y-w,b.x-x,b.y+w);break;case"to-top-left":case"to-left-top":o=e.createLinearGradient(b.x+x,b.y+w,b.x-x,b.y-w)}}if(!o)return null;for(var E=u.length===s.length,k=s.length,P=0;P<k;P++)o.addColorStop(E?u[P]:P/(k-1),"rgba("+s[P][0]+","+s[P][1]+","+s[P][2]+","+i+")");return o},zs.gradientFillStyle=function(e,t,n,r){var i=this.createGradientStyleFor(e,"background",t,n,r);if(!i)return null;e.fillStyle=i},zs.colorFillStyle=function(e,t,n,r,i){e.fillStyle="rgba("+t+","+n+","+r+","+i+")"},zs.eleFillStyle=function(e,t,n){var r=t.pstyle("background-fill").value;if("linear-gradient"===r||"radial-gradient"===r)this.gradientFillStyle(e,t,r,n);else{var i=t.pstyle("background-color").value;this.colorFillStyle(e,i[0],i[1],i[2],n)}},zs.gradientStrokeStyle=function(e,t,n,r){var i=this.createGradientStyleFor(e,"line",t,n,r);if(!i)return null;e.strokeStyle=i},zs.colorStrokeStyle=function(e,t,n,r,i){e.strokeStyle="rgba("+t+","+n+","+r+","+i+")"},zs.eleStrokeStyle=function(e,t,n){var r=t.pstyle("line-fill").value;if("linear-gradient"===r||"radial-gradient"===r)this.gradientStrokeStyle(e,t,r,n);else{var i=t.pstyle("line-color").value;this.colorStrokeStyle(e,i[0],i[1],i[2],n)}},zs.matchCanvasSize=function(e){var t=this,n=t.data,r=t.findContainerClientCoords(),i=r[2],o=r[3],a=t.getPixelRatio(),s=t.motionBlurPxRatio;e!==t.data.bufferCanvases[t.MOTIONBLUR_BUFFER_NODE]&&e!==t.data.bufferCanvases[t.MOTIONBLUR_BUFFER_DRAG]||(a=s);var u,l=i*a,c=o*a;if(l!==t.canvasWidth||c!==t.canvasHeight){t.fontCaches=null;var d=n.canvasContainer;d.style.width=i+"px",d.style.height=o+"px";for(var h=0;h<t.CANVAS_LAYERS;h++)(u=n.canvases[h]).width=l,u.height=c,u.style.width=i+"px",u.style.height=o+"px";for(h=0;h<t.BUFFER_COUNT;h++)(u=n.bufferCanvases[h]).width=l,u.height=c,u.style.width=i+"px",u.style.height=o+"px";t.textureMult=1,a<=1&&(u=n.bufferCanvases[t.TEXTURE_BUFFER],t.textureMult=2,u.width=l*t.textureMult,u.height=c*t.textureMult),t.canvasWidth=l,t.canvasHeight=c}},zs.renderTo=function(e,t,n,r){this.render({forcedContext:e,forcedZoom:t,forcedPan:n,drawAllLayers:!0,forcedPxRatio:r})},zs.render=function(e){var t=(e=e||xe()).forcedContext,n=e.drawAllLayers,r=e.drawOnlyNodeLayer,i=e.forcedZoom,o=e.forcedPan,a=this,s=void 0===e.forcedPxRatio?this.getPixelRatio():e.forcedPxRatio,u=a.cy,l=a.data,c=l.canvasNeedsRedraw,d=a.textureOnViewport&&!t&&(a.pinching||a.hoverData.dragging||a.swipePanning||a.data.wheelZooming),h=void 0!==e.motionBlur?e.motionBlur:a.motionBlur,p=a.motionBlurPxRatio,f=u.hasCompoundNodes(),v=a.hoverData.draggingEles,g=!(!a.hoverData.selecting&&!a.touchData.selecting),y=h=h&&!t&&a.motionBlurEnabled&&!g;t||(a.prevPxRatio!==s&&(a.invalidateContainerClientCoordsCache(),a.matchCanvasSize(a.container),a.redrawHint("eles",!0),a.redrawHint("drag",!0)),a.prevPxRatio=s),!t&&a.motionBlurTimeout&&clearTimeout(a.motionBlurTimeout),h&&(null==a.mbFrames&&(a.mbFrames=0),a.mbFrames++,a.mbFrames<3&&(y=!1),a.mbFrames>a.minMbLowQualFrames&&(a.motionBlurPxRatio=a.mbPxRBlurry)),a.clearingMotionBlur&&(a.motionBlurPxRatio=1),a.textureDrawLastFrame&&!d&&(c[a.NODE]=!0,c[a.SELECT_BOX]=!0);var m=u.style(),b=u.zoom(),x=void 0!==i?i:b,w=u.pan(),E={x:w.x,y:w.y},k={zoom:b,pan:{x:w.x,y:w.y}},P=a.prevViewport;void 0===P||k.zoom!==P.zoom||k.pan.x!==P.pan.x||k.pan.y!==P.pan.y||v&&!f||(a.motionBlurPxRatio=1),o&&(E=o),x*=s,E.x*=s,E.y*=s;var S=a.getCachedZSortedEles();function C(e,t,n,r,i){var o=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",a.colorFillStyle(e,255,255,255,a.motionBlurTransparency),e.fillRect(t,n,r,i),e.globalCompositeOperation=o}function _(e,r){var s,u,c,d;a.clearingMotionBlur||e!==l.bufferContexts[a.MOTIONBLUR_BUFFER_NODE]&&e!==l.bufferContexts[a.MOTIONBLUR_BUFFER_DRAG]?(s=E,u=x,c=a.canvasWidth,d=a.canvasHeight):(s={x:w.x*p,y:w.y*p},u=b*p,c=a.canvasWidth*p,d=a.canvasHeight*p),e.setTransform(1,0,0,1,0,0),"motionBlur"===r?C(e,0,0,c,d):t||void 0!==r&&!r||e.clearRect(0,0,c,d),n||(e.translate(s.x,s.y),e.scale(u,u)),o&&e.translate(o.x,o.y),i&&e.scale(i,i)}if(d||(a.textureDrawLastFrame=!1),d){if(a.textureDrawLastFrame=!0,!a.textureCache){a.textureCache={},a.textureCache.bb=u.mutableElements().boundingBox(),a.textureCache.texture=a.data.bufferCanvases[a.TEXTURE_BUFFER];var j=a.data.bufferContexts[a.TEXTURE_BUFFER];j.setTransform(1,0,0,1,0,0),j.clearRect(0,0,a.canvasWidth*a.textureMult,a.canvasHeight*a.textureMult),a.render({forcedContext:j,drawOnlyNodeLayer:!0,forcedPxRatio:s*a.textureMult}),(k=a.textureCache.viewport={zoom:u.zoom(),pan:u.pan(),width:a.canvasWidth,height:a.canvasHeight}).mpan={x:(0-k.pan.x)/k.zoom,y:(0-k.pan.y)/k.zoom}}c[a.DRAG]=!1,c[a.NODE]=!1;var D=l.contexts[a.NODE],T=a.textureCache.texture;k=a.textureCache.viewport;D.setTransform(1,0,0,1,0,0),h?C(D,0,0,k.width,k.height):D.clearRect(0,0,k.width,k.height);var B=m.core("outside-texture-bg-color").value,O=m.core("outside-texture-bg-opacity").value;a.colorFillStyle(D,B[0],B[1],B[2],O),D.fillRect(0,0,k.width,k.height);b=u.zoom();_(D,!1),D.clearRect(k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s),D.drawImage(T,k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s)}else a.textureOnViewport&&!t&&(a.textureCache=null);var M=u.extent(),N=a.pinching||a.hoverData.dragging||a.swipePanning||a.data.wheelZooming||a.hoverData.draggingEles||a.cy.animated(),I=a.hideEdgesOnViewport&&N,L=[];if(L[a.NODE]=!c[a.NODE]&&h&&!a.clearedForMotionBlur[a.NODE]||a.clearingMotionBlur,L[a.NODE]&&(a.clearedForMotionBlur[a.NODE]=!0),L[a.DRAG]=!c[a.DRAG]&&h&&!a.clearedForMotionBlur[a.DRAG]||a.clearingMotionBlur,L[a.DRAG]&&(a.clearedForMotionBlur[a.DRAG]=!0),c[a.NODE]||n||r||L[a.NODE]){var A=h&&!L[a.NODE]&&1!==p;_(D=t||(A?a.data.bufferContexts[a.MOTIONBLUR_BUFFER_NODE]:l.contexts[a.NODE]),h&&!A?"motionBlur":void 0),I?a.drawCachedNodes(D,S.nondrag,s,M):a.drawLayeredElements(D,S.nondrag,s,M),a.debug&&a.drawDebugPoints(D,S.nondrag),n||h||(c[a.NODE]=!1)}if(!r&&(c[a.DRAG]||n||L[a.DRAG])){A=h&&!L[a.DRAG]&&1!==p;_(D=t||(A?a.data.bufferContexts[a.MOTIONBLUR_BUFFER_DRAG]:l.contexts[a.DRAG]),h&&!A?"motionBlur":void 0),I?a.drawCachedNodes(D,S.drag,s,M):a.drawCachedElements(D,S.drag,s,M),a.debug&&a.drawDebugPoints(D,S.drag),n||h||(c[a.DRAG]=!1)}if(a.showFps||!r&&c[a.SELECT_BOX]&&!n){if(_(D=t||l.contexts[a.SELECT_BOX]),1==a.selection[4]&&(a.hoverData.selecting||a.touchData.selecting)){b=a.cy.zoom();var z=m.core("selection-box-border-width").value/b;D.lineWidth=z,D.fillStyle="rgba("+m.core("selection-box-color").value[0]+","+m.core("selection-box-color").value[1]+","+m.core("selection-box-color").value[2]+","+m.core("selection-box-opacity").value+")",D.fillRect(a.selection[0],a.selection[1],a.selection[2]-a.selection[0],a.selection[3]-a.selection[1]),z>0&&(D.strokeStyle="rgba("+m.core("selection-box-border-color").value[0]+","+m.core("selection-box-border-color").value[1]+","+m.core("selection-box-border-color").value[2]+","+m.core("selection-box-opacity").value+")",D.strokeRect(a.selection[0],a.selection[1],a.selection[2]-a.selection[0],a.selection[3]-a.selection[1]))}if(l.bgActivePosistion&&!a.hoverData.selecting){b=a.cy.zoom();var R=l.bgActivePosistion;D.fillStyle="rgba("+m.core("active-bg-color").value[0]+","+m.core("active-bg-color").value[1]+","+m.core("active-bg-color").value[2]+","+m.core("active-bg-opacity").value+")",D.beginPath(),D.arc(R.x,R.y,m.core("active-bg-size").pfValue/b,0,2*Math.PI),D.fill()}var F=a.lastRedrawTime;if(a.showFps&&F){F=Math.round(F);var V=Math.round(1e3/F);D.setTransform(1,0,0,1,0,0),D.fillStyle="rgba(255, 0, 0, 0.75)",D.strokeStyle="rgba(255, 0, 0, 0.75)",D.lineWidth=1,D.fillText("1 frame = "+F+" ms = "+V+" fps",0,20);D.strokeRect(0,30,250,20),D.fillRect(0,30,250*Math.min(V/60,1),20)}n||(c[a.SELECT_BOX]=!1)}if(h&&1!==p){var q=l.contexts[a.NODE],Y=a.data.bufferCanvases[a.MOTIONBLUR_BUFFER_NODE],X=l.contexts[a.DRAG],H=a.data.bufferCanvases[a.MOTIONBLUR_BUFFER_DRAG],W=function(e,t,n){e.setTransform(1,0,0,1,0,0),n||!y?e.clearRect(0,0,a.canvasWidth,a.canvasHeight):C(e,0,0,a.canvasWidth,a.canvasHeight);var r=p;e.drawImage(t,0,0,a.canvasWidth*r,a.canvasHeight*r,0,0,a.canvasWidth,a.canvasHeight)};(c[a.NODE]||L[a.NODE])&&(W(q,Y,L[a.NODE]),c[a.NODE]=!1),(c[a.DRAG]||L[a.DRAG])&&(W(X,H,L[a.DRAG]),c[a.DRAG]=!1)}a.prevViewport=k,a.clearingMotionBlur&&(a.clearingMotionBlur=!1,a.motionBlurCleared=!0,a.motionBlur=!0),h&&(a.motionBlurTimeout=setTimeout((function(){a.motionBlurTimeout=null,a.clearedForMotionBlur[a.NODE]=!1,a.clearedForMotionBlur[a.DRAG]=!1,a.motionBlur=!1,a.clearingMotionBlur=!d,a.mbFrames=0,c[a.NODE]=!0,c[a.DRAG]=!0,a.redraw()}),100)),t||u.emit("render")};for(var Rs={drawPolygonPath:function(e,t,n,r,i,o){var a=r/2,s=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+a*o[0],n+s*o[1]);for(var u=1;u<o.length/2;u++)e.lineTo(t+a*o[2*u],n+s*o[2*u+1]);e.closePath()},drawRoundPolygonPath:function(e,t,n,r,i,o){var a=r/2,s=i/2,u=Tt(r,i);e.beginPath&&e.beginPath();for(var l=0;l<o.length/4;l++){var c,d=void 0;d=0===l?o.length-2:4*l-2,c=4*l+2;var h=t+a*o[4*l],p=n+s*o[4*l+1],f=-o[d]*o[c]-o[d+1]*o[c+1],v=u/Math.tan(Math.acos(f)/2),g=h-v*o[d],y=p-v*o[d+1],m=h+v*o[c],b=p+v*o[c+1];0===l?e.moveTo(g,y):e.lineTo(g,y),e.arcTo(h,p,m,b,u)}e.closePath()},drawRoundRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2,s=Dt(r,i);e.beginPath&&e.beginPath(),e.moveTo(t,n-a),e.arcTo(t+o,n-a,t+o,n,s),e.arcTo(t+o,n+a,t,n+a,s),e.arcTo(t-o,n+a,t-o,n,s),e.arcTo(t-o,n-a,t,n-a,s),e.lineTo(t,n-a),e.closePath()},drawBottomRoundRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2,s=Dt(r,i);e.beginPath&&e.beginPath(),e.moveTo(t,n-a),e.lineTo(t+o,n-a),e.lineTo(t+o,n),e.arcTo(t+o,n+a,t,n+a,s),e.arcTo(t-o,n+a,t-o,n,s),e.lineTo(t-o,n-a),e.lineTo(t,n-a),e.closePath()},drawCutRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2;e.beginPath&&e.beginPath(),e.moveTo(t-o+8,n-a),e.lineTo(t+o-8,n-a),e.lineTo(t+o,n-a+8),e.lineTo(t+o,n+a-8),e.lineTo(t+o-8,n+a),e.lineTo(t-o+8,n+a),e.lineTo(t-o,n+a-8),e.lineTo(t-o,n-a+8),e.closePath()},drawBarrelPath:function(e,t,n,r,i){var o=r/2,a=i/2,s=t-o,u=t+o,l=n-a,c=n+a,d=Bt(r,i),h=d.widthOffset,p=d.heightOffset,f=d.ctrlPtOffsetPct*h;e.beginPath&&e.beginPath(),e.moveTo(s,l+p),e.lineTo(s,c-p),e.quadraticCurveTo(s+f,c,s+h,c),e.lineTo(u-h,c),e.quadraticCurveTo(u-f,c,u,c-p),e.lineTo(u,l+p),e.quadraticCurveTo(u-f,l,u-h,l),e.lineTo(s+h,l),e.quadraticCurveTo(s+f,l,s,l+p),e.closePath()}},Fs=Math.sin(0),Vs=Math.cos(0),qs={},Ys={},Xs=Math.PI/40,Hs=0*Math.PI;Hs<2*Math.PI;Hs+=Xs)qs[Hs]=Math.sin(Hs),Ys[Hs]=Math.cos(Hs);Rs.drawEllipsePath=function(e,t,n,r,i){if(e.beginPath&&e.beginPath(),e.ellipse)e.ellipse(t,n,r/2,i/2,0,0,2*Math.PI);else for(var o,a,s=r/2,u=i/2,l=0*Math.PI;l<2*Math.PI;l+=Xs)o=t-s*qs[l]*Fs+s*Ys[l]*Vs,a=n+u*Ys[l]*Fs+u*qs[l]*Vs,0===l?e.moveTo(o,a):e.lineTo(o,a);e.closePath()};var Ws={};function Gs(e){var t=e.indexOf(",");return e.substr(t+1)}function Us(e,t,n){var r=function(){return t.toDataURL(n,e.quality)};switch(e.output){case"blob-promise":return new Xn((function(r,i){try{t.toBlob((function(e){null!=e?r(e):i(new Error("`canvas.toBlob()` sent a null value in its callback"))}),n,e.quality)}catch(o){i(o)}}));case"blob":return function(e,t){for(var n=atob(e),r=new ArrayBuffer(n.length),i=new Uint8Array(r),o=0;o<n.length;o++)i[o]=n.charCodeAt(o);return new Blob([r],{type:t})}(Gs(r()),n);case"base64":return Gs(r());default:return r()}}Ws.createBuffer=function(e,t){var n=document.createElement("canvas");return n.width=e,n.height=t,[n,n.getContext("2d")]},Ws.bufferCanvasImage=function(e){var t=this.cy,n=t.mutableElements().boundingBox(),r=this.findContainerClientCoords(),i=e.full?Math.ceil(n.w):r[2],o=e.full?Math.ceil(n.h):r[3],a=k(e.maxWidth)||k(e.maxHeight),s=this.getPixelRatio(),u=1;if(void 0!==e.scale)i*=e.scale,o*=e.scale,u=e.scale;else if(a){var l=1/0,c=1/0;k(e.maxWidth)&&(l=u*e.maxWidth/i),k(e.maxHeight)&&(c=u*e.maxHeight/o),i*=u=Math.min(l,c),o*=u}a||(i*=s,o*=s,u*=s);var d=document.createElement("canvas");d.width=i,d.height=o,d.style.width=i+"px",d.style.height=o+"px";var h=d.getContext("2d");if(i>0&&o>0){h.clearRect(0,0,i,o),h.globalCompositeOperation="source-over";var p=this.getCachedZSortedEles();if(e.full)h.translate(-n.x1*u,-n.y1*u),h.scale(u,u),this.drawElements(h,p),h.scale(1/u,1/u),h.translate(n.x1*u,n.y1*u);else{var f=t.pan(),v={x:f.x*u,y:f.y*u};u*=t.zoom(),h.translate(v.x,v.y),h.scale(u,u),this.drawElements(h,p),h.scale(1/u,1/u),h.translate(-v.x,-v.y)}e.bg&&(h.globalCompositeOperation="destination-over",h.fillStyle=e.bg,h.rect(0,0,i,o),h.fill())}return d},Ws.png=function(e){return Us(e,this.bufferCanvasImage(e),"image/png")},Ws.jpg=function(e){return Us(e,this.bufferCanvasImage(e),"image/jpeg")};var Ks={nodeShapeImpl:function(e,t,n,r,i,o,a){switch(e){case"ellipse":return this.drawEllipsePath(t,n,r,i,o);case"polygon":return this.drawPolygonPath(t,n,r,i,o,a);case"round-polygon":return this.drawRoundPolygonPath(t,n,r,i,o,a);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(t,n,r,i,o);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(t,n,r,i,o);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(t,n,r,i,o);case"barrel":return this.drawBarrelPath(t,n,r,i,o)}}},Qs=$s,Zs=$s.prototype;function $s(e){var t=this;t.data={canvases:new Array(Zs.CANVAS_LAYERS),contexts:new Array(Zs.CANVAS_LAYERS),canvasNeedsRedraw:new Array(Zs.CANVAS_LAYERS),bufferCanvases:new Array(Zs.BUFFER_COUNT),bufferContexts:new Array(Zs.CANVAS_LAYERS)};var n="-webkit-tap-highlight-color",r="rgba(0,0,0,0)";t.data.canvasContainer=document.createElement("div");var i=t.data.canvasContainer.style;t.data.canvasContainer.style[n]=r,i.position="relative",i.zIndex="0",i.overflow="hidden";var o=e.cy.container();o.appendChild(t.data.canvasContainer),o.style[n]=r;var a={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};p&&p.userAgent.match(/msie|trident|edge/i)&&(a["-ms-touch-action"]="none",a["touch-action"]="none");for(var s=0;s<Zs.CANVAS_LAYERS;s++){var u=t.data.canvases[s]=document.createElement("canvas");t.data.contexts[s]=u.getContext("2d"),Object.keys(a).forEach((function(e){u.style[e]=a[e]})),u.style.position="absolute",u.setAttribute("data-id","layer"+s),u.style.zIndex=String(Zs.CANVAS_LAYERS-s),t.data.canvasContainer.appendChild(u),t.data.canvasNeedsRedraw[s]=!1}t.data.topCanvas=t.data.canvases[0],t.data.canvases[Zs.NODE].setAttribute("data-id","layer"+Zs.NODE+"-node"),t.data.canvases[Zs.SELECT_BOX].setAttribute("data-id","layer"+Zs.SELECT_BOX+"-selectbox"),t.data.canvases[Zs.DRAG].setAttribute("data-id","layer"+Zs.DRAG+"-drag");for(s=0;s<Zs.BUFFER_COUNT;s++)t.data.bufferCanvases[s]=document.createElement("canvas"),t.data.bufferContexts[s]=t.data.bufferCanvases[s].getContext("2d"),t.data.bufferCanvases[s].style.position="absolute",t.data.bufferCanvases[s].setAttribute("data-id","buffer"+s),t.data.bufferCanvases[s].style.zIndex=String(-s-1),t.data.bufferCanvases[s].style.visibility="hidden";t.pathsEnabled=!0;var l=rt(),c=function(e){return{x:-e.w/2,y:-e.h/2}},d=function(e){return e.boundingBox(),e[0]._private.bodyBounds},h=function(e){return e.boundingBox(),e[0]._private.labelBounds.main||l},f=function(e){return e.boundingBox(),e[0]._private.labelBounds.source||l},v=function(e){return e.boundingBox(),e[0]._private.labelBounds.target||l},g=function(e,t){return t},y=function(e,t,n){var r=e?e+"-":"";return{x:t.x+n.pstyle(r+"text-margin-x").pfValue,y:t.y+n.pstyle(r+"text-margin-y").pfValue}},m=function(e,t,n){var r=e[0]._private.rscratch;return{x:r[t],y:r[n]}},b=t.data.eleTxrCache=new ps(t,{getKey:function(e){return e[0]._private.nodeKey},doesEleInvalidateKey:function(e){var t=e[0]._private;return!(t.oldBackgroundTimestamp===t.backgroundTimestamp)},drawElement:function(e,n,r,i,o){return t.drawElement(e,n,r,!1,!1,o)},getBoundingBox:d,getRotationPoint:function(e){return{x:((t=d(e)).x1+t.x2)/2,y:(t.y1+t.y2)/2};var t},getRotationOffset:function(e){return c(d(e))},allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),x=t.data.lblTxrCache=new ps(t,{getKey:function(e){return e[0]._private.labelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"main",o)},getBoundingBox:h,getRotationPoint:function(e){return y("",m(e,"labelX","labelY"),e)},getRotationOffset:function(e){var t=h(e),n=c(h(e));if(e.isNode()){switch(e.pstyle("text-halign").value){case"left":n.x=-t.w;break;case"right":n.x=0}switch(e.pstyle("text-valign").value){case"top":n.y=-t.h;break;case"bottom":n.y=0}}return n},isVisible:g}),w=t.data.slbTxrCache=new ps(t,{getKey:function(e){return e[0]._private.sourceLabelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"source",o)},getBoundingBox:f,getRotationPoint:function(e){return y("source",m(e,"sourceLabelX","sourceLabelY"),e)},getRotationOffset:function(e){return c(f(e))},isVisible:g}),E=t.data.tlbTxrCache=new ps(t,{getKey:function(e){return e[0]._private.targetLabelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"target",o)},getBoundingBox:v,getRotationPoint:function(e){return y("target",m(e,"targetLabelX","targetLabelY"),e)},getRotationOffset:function(e){return c(v(e))},isVisible:g}),k=t.data.lyrTxrCache=new vs(t);t.onUpdateEleCalcs((function(e,t){b.invalidateElements(t),x.invalidateElements(t),w.invalidateElements(t),E.invalidateElements(t),k.invalidateElements(t);for(var n=0;n<t.length;n++){var r=t[n]._private;r.oldBackgroundTimestamp=r.backgroundTimestamp}}));var P=function(e){for(var t=0;t<e.length;t++)k.enqueueElementRefinement(e[t].ele)};b.onDequeue(P),x.onDequeue(P),w.onDequeue(P),E.onDequeue(P)}Zs.CANVAS_LAYERS=3,Zs.SELECT_BOX=0,Zs.DRAG=1,Zs.NODE=2,Zs.BUFFER_COUNT=3,Zs.TEXTURE_BUFFER=0,Zs.MOTIONBLUR_BUFFER_NODE=1,Zs.MOTIONBLUR_BUFFER_DRAG=2,Zs.redrawHint=function(e,t){var n=this;switch(e){case"eles":n.data.canvasNeedsRedraw[Zs.NODE]=t;break;case"drag":n.data.canvasNeedsRedraw[Zs.DRAG]=t;break;case"select":n.data.canvasNeedsRedraw[Zs.SELECT_BOX]=t}};var Js="undefined"!=typeof Path2D;Zs.path2dEnabled=function(e){if(void 0===e)return this.pathsEnabled;this.pathsEnabled=!!e},Zs.usePaths=function(){return Js&&this.pathsEnabled},Zs.setImgSmoothing=function(e,t){null!=e.imageSmoothingEnabled?e.imageSmoothingEnabled=t:(e.webkitImageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t)},Zs.getImgSmoothing=function(e){return null!=e.imageSmoothingEnabled?e.imageSmoothingEnabled:e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled},Zs.makeOffscreenCanvas=function(e,t){var n;return"undefined"!==("undefined"==typeof OffscreenCanvas?"undefined":a(OffscreenCanvas))?n=new OffscreenCanvas(e,t):((n=document.createElement("canvas")).width=e,n.height=t),n},[xs,Cs,Ms,Ns,Is,As,zs,Rs,Ws,Ks].forEach((function(e){R(Zs,e)}));var eu=[{type:"layout",extensions:Ia},{type:"renderer",extensions:[{name:"null",impl:La},{name:"base",impl:as},{name:"canvas",impl:Qs}]}],tu={},nu={};function ru(e,t,n){var r=n,i=function(n){fe("Can not register `"+t+"` for `"+e+"` since `"+n+"` already exists in the prototype and can not be overridden")};if("core"===e){if(Ko.prototype[t])return i(t);Ko.prototype[t]=n}else if("collection"===e){if(ho.prototype[t])return i(t);ho.prototype[t]=n}else if("layout"===e){for(var o=function(e){this.options=e,n.call(this,e),E(this._private)||(this._private={}),this._private.cy=e.cy,this._private.listeners=[],this.createEmitter()},a=o.prototype=Object.create(n.prototype),s=[],u=0;u<s.length;u++){var l=s[u];a[l]=a[l]||function(){return this}}a.start&&!a.run?a.run=function(){return this.start(),this}:!a.start&&a.run&&(a.start=function(){return this.run(),this});var c=n.prototype.stop;a.stop=function(){var e=this.options;if(e&&e.animate){var t=this.animations;if(t)for(var n=0;n<t.length;n++)t[n].stop()}return c?c.call(this):this.emit("layoutstop"),this},a.destroy||(a.destroy=function(){return this}),a.cy=function(){return this._private.cy};var d=function(e){return e._private.cy},h={addEventFields:function(e,t){t.layout=e,t.cy=d(e),t.target=e},bubble:function(){return!0},parent:function(e){return d(e)}};R(a,{createEmitter:function(){return this._private.emitter=new Di(h,this),this},emitter:function(){return this._private.emitter},on:function(e,t){return this.emitter().on(e,t),this},one:function(e,t){return this.emitter().one(e,t),this},once:function(e,t){return this.emitter().one(e,t),this},removeListener:function(e,t){return this.emitter().removeListener(e,t),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(e,t){return this.emitter().emit(e,t),this}}),Qn.eventAliasesOn(a),r=o}else if("renderer"===e&&"null"!==t&&"base"!==t){var p=iu("renderer","base"),f=p.prototype,v=n,g=n.prototype,y=function(){p.apply(this,arguments),v.apply(this,arguments)},m=y.prototype;for(var b in f){var x=f[b];if(null!=g[b])return i(b);m[b]=x}for(var w in g)m[w]=g[w];f.clientFunctions.forEach((function(e){m[e]=m[e]||function(){fe("Renderer does not implement `renderer."+e+"()` on its prototype")}})),r=y}return q({map:tu,keys:[e,t],value:r})}function iu(e,t){return Y({map:tu,keys:[e,t]})}function ou(e,t,n,r,i){return q({map:nu,keys:[e,t,n,r],value:i})}function au(e,t,n,r){return Y({map:nu,keys:[e,t,n,r]})}var su=function(){return 2===arguments.length?iu.apply(null,arguments):3===arguments.length?ru.apply(null,arguments):4===arguments.length?au.apply(null,arguments):5===arguments.length?ou.apply(null,arguments):void fe("Invalid extension access syntax")};Ko.prototype.extension=su,eu.forEach((function(e){e.extensions.forEach((function(t){ru(e.type,t.name,t.impl)}))}));var uu=function e(){if(!(this instanceof e))return new e;this.length=0},lu=uu.prototype;lu.instanceString=function(){return"stylesheet"},lu.selector=function(e){return this[this.length++]={selector:e,properties:[]},this},lu.css=function(e,t){var n=this.length-1;if(b(e))this[n].properties.push({name:e,value:t});else if(E(e))for(var r=e,i=Object.keys(r),o=0;o<i.length;o++){var a=i[o],s=r[a];if(null!=s){var u=Xo.properties[a]||Xo.properties[N(a)];if(null!=u){var l=u.name,c=s;this[n].properties.push({name:l,value:c})}}}return this},lu.style=lu.css,lu.generateStyle=function(e){var t=new Xo(e);return this.appendToStyle(t)},lu.appendToStyle=function(e){for(var t=0;t<this.length;t++){var n=this[t],r=n.selector,i=n.properties;e.selector(r);for(var o=0;o<i.length;o++){var a=i[o];e.css(a.name,a.value)}}return e};var cu=function(e){return void 0===e&&(e={}),E(e)?new Ko(e):b(e)?su.apply(su,arguments):void 0};cu.use=function(e){var t=Array.prototype.slice.call(arguments,1);return t.unshift(cu),e.apply(null,t),this},cu.warnings=function(e){return ve(e)},cu.version="3.18.2",cu.stylesheet=cu.Stylesheet=uu,e.exports=cu},"4e6e":(e,t,n)=>{e.exports={graphlib:n("vC4J"),layout:n("Pivv"),debug:n("zmx7"),util:{time:n("xxjf").time,notime:n("xxjf").notime},version:n("VQMV")}},"1yUy":(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("fd5j");e.exports={run:function(e){var t="greedy"===e.graph().acyclicer?i(e,function(e){return function(t){return e.edge(t).weight}}(e)):function(e){var t=[],n={},i={};function o(a){r.has(i,a)||(i[a]=!0,n[a]=!0,r.forEach(e.outEdges(a),(function(e){r.has(n,e.w)?t.push(e):o(e.w)})),delete n[a])}return r.forEach(e.nodes(),o),t}(e);r.forEach(t,(function(t){var n=e.edge(t);e.removeEdge(t),n.forwardName=t.name,n.reversed=!0,e.setEdge(t.w,t.v,n,r.uniqueId("rev"))}))},undo:function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.reversed){e.removeEdge(t);var r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}}))}}},"0gKz":(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n,r,o,a){var s={width:0,height:0,rank:a,borderType:t},u=o[t][a-1],l=i.addDummyNode(e,"border",s,n);o[t][a]=l,e.setParent(l,r),u&&e.setEdge(u,l,{weight:1})}e.exports=function(e){r.forEach(e.children(),(function t(n){var i=e.children(n),a=e.node(n);if(i.length&&r.forEach(i,t),r.has(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(var s=a.minRank,u=a.maxRank+1;s<u;++s)o(e,"borderLeft","_bl",n,a,s),o(e,"borderRight","_br",n,a,s)}}))}},"+jFT":(e,t,n)=>{"use strict";var r=n("gjtd");function i(e){r.forEach(e.nodes(),(function(t){o(e.node(t))})),r.forEach(e.edges(),(function(t){o(e.edge(t))}))}function o(e){var t=e.width;e.width=e.height,e.height=t}function a(e){e.y=-e.y}function s(e){var t=e.x;e.x=e.y,e.y=t}e.exports={adjust:function(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||i(e)},undo:function(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||function(e){r.forEach(e.nodes(),(function(t){a(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,a),r.has(n,"y")&&a(n)}))}(e);"lr"!==t&&"rl"!==t||(!function(e){r.forEach(e.nodes(),(function(t){s(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,s),r.has(n,"x")&&s(n)}))}(e),i(e))}}},"ge/d":e=>{function t(){var e={};e._next=e._prev=e,this._sentinel=e}function n(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function r(e,t){if("_next"!==e&&"_prev"!==e)return t}e.exports=t,t.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return n(t),t},t.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t},t.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,r)),n=n._prev;return"["+e.join(", ")+"]"}},zmx7:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf"),o=n("vC4J").Graph;e.exports={debugOrdering:function(e){var t=i.buildLayerMatrix(e),n=new o({compound:!0,multigraph:!0}).setGraph({});return r.forEach(e.nodes(),(function(t){n.setNode(t,{label:t}),n.setParent(t,"layer"+e.node(t).rank)})),r.forEach(e.edges(),(function(e){n.setEdge(e.v,e.w,{},e.name)})),r.forEach(t,(function(e,t){var i="layer"+t;n.setNode(i,{rank:"same"}),r.reduce(e,(function(e,t){return n.setEdge(e,t,{style:"invis"}),t}))})),n}}},vC4J:(e,t,n)=>{var r;try{r=n("YlUH")}catch(i){}r||(r=window.graphlib),e.exports=r},fd5j:(e,t,n)=>{var r=n("gjtd"),i=n("vC4J").Graph,o=n("ge/d");e.exports=function(e,t){if(e.nodeCount()<=1)return[];var n=function(e,t){var n=new i,a=0,s=0;r.forEach(e.nodes(),(function(e){n.setNode(e,{v:e,in:0,out:0})})),r.forEach(e.edges(),(function(e){var r=n.edge(e.v,e.w)||0,i=t(e),o=r+i;n.setEdge(e.v,e.w,o),s=Math.max(s,n.node(e.v).out+=i),a=Math.max(a,n.node(e.w).in+=i)}));var l=r.range(s+a+3).map((function(){return new o})),c=a+1;return r.forEach(n.nodes(),(function(e){u(l,c,n.node(e))})),{graph:n,buckets:l,zeroIdx:c}}(e,t||a),l=function(e,t,n){var r,i=[],o=t[t.length-1],a=t[0];for(;e.nodeCount();){for(;r=a.dequeue();)s(e,t,n,r);for(;r=o.dequeue();)s(e,t,n,r);if(e.nodeCount())for(var u=t.length-2;u>0;--u)if(r=t[u].dequeue()){i=i.concat(s(e,t,n,r,!0));break}}return i}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(l,(function(t){return e.outEdges(t.v,t.w)})),!0)};var a=r.constant(1);function s(e,t,n,i,o){var a=o?[]:void 0;return r.forEach(e.inEdges(i.v),(function(r){var i=e.edge(r),s=e.node(r.v);o&&a.push({v:r.v,w:r.w}),s.out-=i,u(t,n,s)})),r.forEach(e.outEdges(i.v),(function(r){var i=e.edge(r),o=r.w,a=e.node(o);a.in-=i,u(t,n,a)})),e.removeNode(i.v),a}function u(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}},Pivv:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("1yUy"),o=n("RmLA"),a=n("4DVH"),s=n("xxjf").normalizeRanks,u=n("JUZX"),l=n("xxjf").removeEmptyRanks,c=n("wHMW"),d=n("0gKz"),h=n("+jFT"),p=n("erCh"),f=n("Nebv"),v=n("xxjf"),g=n("vC4J").Graph;e.exports=function(e,t){var n=t&&t.debugTiming?v.time:v.notime;n("layout",(function(){var t=n(" buildLayoutGraph",(function(){return function(e){var t=new g({multigraph:!0,compound:!0}),n=C(e.graph());return t.setGraph(r.merge({},m,S(n,y),r.pick(n,b))),r.forEach(e.nodes(),(function(n){var i=C(e.node(n));t.setNode(n,r.defaults(S(i,x),w)),t.setParent(n,e.parent(n))})),r.forEach(e.edges(),(function(n){var i=C(e.edge(n));t.setEdge(n,r.merge({},k,S(i,E),r.pick(i,P)))})),t}(e)}));n(" runLayout",(function(){!function(e,t){t(" makeSpaceForEdgeLabels",(function(){!function(e){var t=e.graph();t.ranksep/=2,r.forEach(e.edges(),(function(n){var r=e.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===t.rankdir||"BT"===t.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(e)})),t(" removeSelfEdges",(function(){!function(e){r.forEach(e.edges(),(function(t){if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}}))}(e)})),t(" acyclic",(function(){i.run(e)})),t(" nestingGraph.run",(function(){c.run(e)})),t(" rank",(function(){a(v.asNonCompoundGraph(e))})),t(" injectEdgeLabelProxies",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.width&&n.height){var r=e.node(t.v),i={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};v.addDummyNode(e,"edge-proxy",i,"_ep")}}))}(e)})),t(" removeEmptyRanks",(function(){l(e)})),t(" nestingGraph.cleanup",(function(){c.cleanup(e)})),t(" normalizeRanks",(function(){s(e)})),t(" assignRankMinMax",(function(){!function(e){var t=0;r.forEach(e.nodes(),(function(n){var i=e.node(n);i.borderTop&&(i.minRank=e.node(i.borderTop).rank,i.maxRank=e.node(i.borderBottom).rank,t=r.max(t,i.maxRank))})),e.graph().maxRank=t}(e)})),t(" removeEdgeLabelProxies",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);"edge-proxy"===n.dummy&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))}))}(e)})),t(" normalize.run",(function(){o.run(e)})),t(" parentDummyChains",(function(){u(e)})),t(" addBorderSegments",(function(){d(e)})),t(" order",(function(){p(e)})),t(" insertSelfEdges",(function(){!function(e){var t=v.buildLayerMatrix(e);r.forEach(t,(function(t){var n=0;r.forEach(t,(function(t,i){var o=e.node(t);o.order=i+n,r.forEach(o.selfEdges,(function(t){v.addDummyNode(e,"selfedge",{width:t.label.width,height:t.label.height,rank:o.rank,order:i+ ++n,e:t.e,label:t.label},"_se")})),delete o.selfEdges}))}))}(e)})),t(" adjustCoordinateSystem",(function(){h.adjust(e)})),t(" position",(function(){f(e)})),t(" positionSelfEdges",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);if("selfedge"===n.dummy){var r=e.node(n.e.v),i=r.x+r.width/2,o=r.y,a=n.x-i,s=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:i+2*a/3,y:o-s},{x:i+5*a/6,y:o-s},{x:i+a,y:o},{x:i+5*a/6,y:o+s},{x:i+2*a/3,y:o+s}],n.label.x=n.x,n.label.y=n.y}}))}(e)})),t(" removeBorderNodes",(function(){!function(e){r.forEach(e.nodes(),(function(t){if(e.children(t).length){var n=e.node(t),i=e.node(n.borderTop),o=e.node(n.borderBottom),a=e.node(r.last(n.borderLeft)),s=e.node(r.last(n.borderRight));n.width=Math.abs(s.x-a.x),n.height=Math.abs(o.y-i.y),n.x=a.x+n.width/2,n.y=i.y+n.height/2}})),r.forEach(e.nodes(),(function(t){"border"===e.node(t).dummy&&e.removeNode(t)}))}(e)})),t(" normalize.undo",(function(){o.undo(e)})),t(" fixupEdgeLabelCoords",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(e)})),t(" undoCoordinateSystem",(function(){h.undo(e)})),t(" translateGraph",(function(){!function(e){var t=Number.POSITIVE_INFINITY,n=0,i=Number.POSITIVE_INFINITY,o=0,a=e.graph(),s=a.marginx||0,u=a.marginy||0;function l(e){var r=e.x,a=e.y,s=e.width,u=e.height;t=Math.min(t,r-s/2),n=Math.max(n,r+s/2),i=Math.min(i,a-u/2),o=Math.max(o,a+u/2)}r.forEach(e.nodes(),(function(t){l(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.has(n,"x")&&l(n)})),t-=s,i-=u,r.forEach(e.nodes(),(function(n){var r=e.node(n);r.x-=t,r.y-=i})),r.forEach(e.edges(),(function(n){var o=e.edge(n);r.forEach(o.points,(function(e){e.x-=t,e.y-=i})),r.has(o,"x")&&(o.x-=t),r.has(o,"y")&&(o.y-=i)})),a.width=n-t+s,a.height=o-i+u}(e)})),t(" assignNodeIntersects",(function(){!function(e){r.forEach(e.edges(),(function(t){var n,r,i=e.edge(t),o=e.node(t.v),a=e.node(t.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=a,r=o),i.points.unshift(v.intersectRect(o,n)),i.points.push(v.intersectRect(a,r))}))}(e)})),t(" reversePoints",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);n.reversed&&n.points.reverse()}))}(e)})),t(" acyclic.undo",(function(){i.undo(e)}))}(t,n)})),n(" updateInputGraph",(function(){!function(e,t){r.forEach(e.nodes(),(function(n){var r=e.node(n),i=t.node(n);r&&(r.x=i.x,r.y=i.y,t.children(n).length&&(r.width=i.width,r.height=i.height))})),r.forEach(e.edges(),(function(n){var i=e.edge(n),o=t.edge(n);i.points=o.points,r.has(o,"x")&&(i.x=o.x,i.y=o.y)})),e.graph().width=t.graph().width,e.graph().height=t.graph().height}(e,t)}))}))};var y=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},b=["acyclicer","ranker","rankdir","align"],x=["width","height"],w={width:0,height:0},E=["minlen","weight","width","height","labeloffset"],k={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},P=["labelpos"];function S(e,t){return r.mapValues(r.pick(e,t),Number)}function C(e){var t={};return r.forEach(e,(function(e,n){t[n.toLowerCase()]=e})),t}},gjtd:(e,t,n)=>{var r;try{r={cloneDeep:n("c2re"),constant:n("eN33"),defaults:n("WHWN"),each:n("h4um"),filter:n("+DnP"),find:n("6R5o"),flatten:n("1xil"),forEach:n("9SCj"),forIn:n("ZVKf"),has:n("1mr4"),isUndefined:n("CZlo"),last:n("p1C/"),map:n("mbB6"),mapValues:n("y2Ah"),max:n("LPC+"),merge:n("H8sf"),min:n("Z3AG"),minBy:n("PKEM"),now:n("ENE1"),pick:n("//nZ"),range:n("Cmkl"),reduce:n("veKZ"),sortBy:n("u6DZ"),uniqueId:n("w0mW"),values:n("0iyY"),zipObject:n("OUo6")}}catch(i){}r||(r=window._),e.exports=r},wHMW:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n,a,s,u,l){var c=e.children(l);if(c.length){var d=i.addBorderNode(e,"_bt"),h=i.addBorderNode(e,"_bb"),p=e.node(l);e.setParent(d,l),p.borderTop=d,e.setParent(h,l),p.borderBottom=h,r.forEach(c,(function(r){o(e,t,n,a,s,u,r);var i=e.node(r),c=i.borderTop?i.borderTop:r,p=i.borderBottom?i.borderBottom:r,f=i.borderTop?a:2*a,v=c!==p?1:s-u[l]+1;e.setEdge(d,c,{weight:f,minlen:v,nestingEdge:!0}),e.setEdge(p,h,{weight:f,minlen:v,nestingEdge:!0})})),e.parent(l)||e.setEdge(t,d,{weight:0,minlen:s+u[l]})}else l!==t&&e.setEdge(t,l,{weight:0,minlen:n})}e.exports={run:function(e){var t=i.addDummyNode(e,"root",{},"_root"),n=function(e){var t={};function n(i,o){var a=e.children(i);a&&a.length&&r.forEach(a,(function(e){n(e,o+1)})),t[i]=o}return r.forEach(e.children(),(function(e){n(e,1)})),t}(e),a=r.max(r.values(n))-1,s=2*a+1;e.graph().nestingRoot=t,r.forEach(e.edges(),(function(t){e.edge(t).minlen*=s}));var u=function(e){return r.reduce(e.edges(),(function(t,n){return t+e.edge(n).weight}),0)}(e)+1;r.forEach(e.children(),(function(r){o(e,t,s,u,a,n,r)})),e.graph().nodeRankFactor=s},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,r.forEach(e.edges(),(function(t){e.edge(t).nestingEdge&&e.removeEdge(t)}))}}},RmLA:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("xxjf");e.exports={run:function(e){e.graph().dummyChains=[],r.forEach(e.edges(),(function(t){!function(e,t){var n,r,o,a=t.v,s=e.node(a).rank,u=t.w,l=e.node(u).rank,c=t.name,d=e.edge(t),h=d.labelRank;if(l===s+1)return;for(e.removeEdge(t),o=0,++s;s<l;++o,++s)d.points=[],r={width:0,height:0,edgeLabel:d,edgeObj:t,rank:s},n=i.addDummyNode(e,"edge",r,"_d"),s===h&&(r.width=d.width,r.height=d.height,r.dummy="edge-label",r.labelpos=d.labelpos),e.setEdge(a,n,{weight:d.weight},c),0===o&&e.graph().dummyChains.push(n),a=n;e.setEdge(a,u,{weight:d.weight},c)}(e,t)}))},undo:function(e){r.forEach(e.graph().dummyChains,(function(t){var n,r=e.node(t),i=r.edgeLabel;for(e.setEdge(r.edgeObj,i);r.dummy;)n=e.successors(t)[0],e.removeNode(t),i.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(i.x=r.x,i.y=r.y,i.width=r.width,i.height=r.height),t=n,r=e.node(t)}))}}},DzXQ:(e,t,n)=>{var r=n("gjtd");e.exports=function(e,t,n){var i,o={};r.forEach(n,(function(n){for(var r,a,s=e.parent(n);s;){if((r=e.parent(s))?(a=o[r],o[r]=s):(a=i,i=s),a&&a!==s)return void t.setEdge(a,s);s=r}}))}},gP9q:(e,t,n)=>{var r=n("gjtd");e.exports=function(e,t){return r.map(t,(function(t){var n=e.inEdges(t);if(n.length){var i=r.reduce(n,(function(t,n){var r=e.edge(n),i=e.node(n.v);return{sum:t.sum+r.weight*i.order,weight:t.weight+r.weight}}),{sum:0,weight:0});return{v:t,barycenter:i.sum/i.weight,weight:i.weight}}return{v:t}}))}},D5rW:(e,t,n)=>{var r=n("gjtd"),i=n("vC4J").Graph;e.exports=function(e,t,n){var o=function(e){var t;for(;e.hasNode(t=r.uniqueId("_root")););return t}(e),a=new i({compound:!0}).setGraph({root:o}).setDefaultNodeLabel((function(t){return e.node(t)}));return r.forEach(e.nodes(),(function(i){var s=e.node(i),u=e.parent(i);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(a.setNode(i),a.setParent(i,u||o),r.forEach(e[n](i),(function(t){var n=t.v===i?t.w:t.v,o=a.edge(n,i),s=r.isUndefined(o)?0:o.weight;a.setEdge(n,i,{weight:e.edge(t).weight+s})})),r.has(s,"minRank")&&a.setNode(i,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))})),a}},YZb2:(e,t,n)=>{"use strict";var r=n("gjtd");function i(e,t,n){for(var i=r.zipObject(n,r.map(n,(function(e,t){return t}))),o=r.flatten(r.map(t,(function(t){return r.sortBy(r.map(e.outEdges(t),(function(t){return{pos:i[t.w],weight:e.edge(t).weight}})),"pos")})),!0),a=1;a<n.length;)a<<=1;var s=2*a-1;a-=1;var u=r.map(new Array(s),(function(){return 0})),l=0;return r.forEach(o.forEach((function(e){var t=e.pos+a;u[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=u[t+1]),u[t=t-1>>1]+=e.weight;l+=e.weight*n}))),l}e.exports=function(e,t){for(var n=0,r=1;r<t.length;++r)n+=i(e,t[r-1],t[r]);return n}},erCh:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("NI55"),o=n("YZb2"),a=n("Qsja"),s=n("D5rW"),u=n("DzXQ"),l=n("vC4J").Graph,c=n("xxjf");function d(e,t,n){return r.map(t,(function(t){return s(e,t,n)}))}function h(e,t){var n=new l;r.forEach(e,(function(e){var i=e.graph().root,o=a(e,i,n,t);r.forEach(o.vs,(function(t,n){e.node(t).order=n})),u(e,n,o.vs)}))}function p(e,t){r.forEach(t,(function(t){r.forEach(t,(function(t,n){e.node(t).order=n}))}))}e.exports=function(e){var t=c.maxRank(e),n=d(e,r.range(1,t+1),"inEdges"),a=d(e,r.range(t-1,-1,-1),"outEdges"),s=i(e);p(e,s);for(var u,l=Number.POSITIVE_INFINITY,f=0,v=0;v<4;++f,++v){h(f%2?n:a,f%4>=2),s=c.buildLayerMatrix(e);var g=o(e,s);g<l&&(v=0,u=r.cloneDeep(s),l=g)}p(e,u)}},NI55:(e,t,n)=>{"use strict";var r=n("gjtd");e.exports=function(e){var t={},n=r.filter(e.nodes(),(function(t){return!e.children(t).length})),i=r.max(r.map(n,(function(t){return e.node(t).rank}))),o=r.map(r.range(i+1),(function(){return[]}));var a=r.sortBy(n,(function(t){return e.node(t).rank}));return r.forEach(a,(function n(i){if(r.has(t,i))return;t[i]=!0;var a=e.node(i);o[a.rank].push(i),r.forEach(e.successors(i),n)})),o}},Hp3j:(e,t,n)=>{"use strict";var r=n("gjtd");e.exports=function(e,t){var n={};return r.forEach(e,(function(e,t){var i=n[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};r.isUndefined(e.barycenter)||(i.barycenter=e.barycenter,i.weight=e.weight)})),r.forEach(t.edges(),(function(e){var t=n[e.v],i=n[e.w];r.isUndefined(t)||r.isUndefined(i)||(i.indegree++,t.out.push(n[e.w]))})),function(e){var t=[];function n(e){return function(t){t.merged||(r.isUndefined(t.barycenter)||r.isUndefined(e.barycenter)||t.barycenter>=e.barycenter)&&function(e,t){var n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight);t.weight&&(n+=t.barycenter*t.weight,r+=t.weight);e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}(e,t)}}function i(t){return function(n){n.in.push(t),0==--n.indegree&&e.push(n)}}for(;e.length;){var o=e.pop();t.push(o),r.forEach(o.in.reverse(),n(o)),r.forEach(o.out,i(o))}return r.map(r.filter(t,(function(e){return!e.merged})),(function(e){return r.pick(e,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(e){return!e.indegree})))}},Qsja:(e,t,n)=>{var r=n("gjtd"),i=n("gP9q"),o=n("Hp3j"),a=n("zBPj");e.exports=function e(t,n,s,u){var l=t.children(n),c=t.node(n),d=c?c.borderLeft:void 0,h=c?c.borderRight:void 0,p={};d&&(l=r.filter(l,(function(e){return e!==d&&e!==h})));var f=i(t,l);r.forEach(f,(function(n){if(t.children(n.v).length){var i=e(t,n.v,s,u);p[n.v]=i,r.has(i,"barycenter")&&(o=n,a=i,r.isUndefined(o.barycenter)?(o.barycenter=a.barycenter,o.weight=a.weight):(o.barycenter=(o.barycenter*o.weight+a.barycenter*a.weight)/(o.weight+a.weight),o.weight+=a.weight))}var o,a}));var v=o(f,s);!function(e,t){r.forEach(e,(function(e){e.vs=r.flatten(e.vs.map((function(e){return t[e]?t[e].vs:e})),!0)}))}(v,p);var g=a(v,u);if(d&&(g.vs=r.flatten([d,g.vs,h],!0),t.predecessors(d).length)){var y=t.node(t.predecessors(d)[0]),m=t.node(t.predecessors(h)[0]);r.has(g,"barycenter")||(g.barycenter=0,g.weight=0),g.barycenter=(g.barycenter*g.weight+y.order+m.order)/(g.weight+2),g.weight+=2}return g}},zBPj:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n){for(var i;t.length&&(i=r.last(t)).i<=n;)t.pop(),e.push(i.vs),n++;return n}e.exports=function(e,t){var n=i.partition(e,(function(e){return r.has(e,"barycenter")})),a=n.lhs,s=r.sortBy(n.rhs,(function(e){return-e.i})),u=[],l=0,c=0,d=0;a.sort((h=!!t,function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:h?t.i-e.i:e.i-t.i})),d=o(u,s,d),r.forEach(a,(function(e){d+=e.vs.length,u.push(e.vs),l+=e.barycenter*e.weight,c+=e.weight,d=o(u,s,d)}));var h;var p={vs:r.flatten(u,!0)};c&&(p.barycenter=l/c,p.weight=c);return p}},JUZX:(e,t,n)=>{var r=n("gjtd");e.exports=function(e){var t=function(e){var t={},n=0;function i(o){var a=n;r.forEach(e.children(o),i),t[o]={low:a,lim:n++}}return r.forEach(e.children(),i),t}(e);r.forEach(e.graph().dummyChains,(function(n){for(var r=e.node(n),i=r.edgeObj,o=function(e,t,n,r){var i,o,a=[],s=[],u=Math.min(t[n].low,t[r].low),l=Math.max(t[n].lim,t[r].lim);i=n;do{i=e.parent(i),a.push(i)}while(i&&(t[i].low>u||l>t[i].lim));o=i,i=r;for(;(i=e.parent(i))!==o;)s.push(i);return{path:a.concat(s.reverse()),lca:o}}(e,t,i.v,i.w),a=o.path,s=o.lca,u=0,l=a[u],c=!0;n!==i.w;){if(r=e.node(n),c){for(;(l=a[u])!==s&&e.node(l).maxRank<r.rank;)u++;l===s&&(c=!1)}if(!c){for(;u<a.length-1&&e.node(l=a[u+1]).minRank<=r.rank;)u++;l=a[u]}e.setParent(n,l),n=e.successors(n)[0]}}))}},xaOS:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph,o=n("xxjf");function a(e,t){var n={};return r.reduce(t,(function(t,i){var o=0,a=0,s=t.length,l=r.last(i);return r.forEach(i,(function(t,c){var d=function(e,t){if(e.node(t).dummy)return r.find(e.predecessors(t),(function(t){return e.node(t).dummy}))}(e,t),h=d?e.node(d).order:s;(d||t===l)&&(r.forEach(i.slice(a,c+1),(function(t){r.forEach(e.predecessors(t),(function(r){var i=e.node(r),a=i.order;!(a<o||h<a)||i.dummy&&e.node(t).dummy||u(n,r,t)}))})),a=c+1,o=h)})),i})),n}function s(e,t){var n={};function i(t,i,o,a,s){var l;r.forEach(r.range(i,o),(function(i){l=t[i],e.node(l).dummy&&r.forEach(e.predecessors(l),(function(t){var r=e.node(t);r.dummy&&(r.order<a||r.order>s)&&u(n,t,l)}))}))}return r.reduce(t,(function(t,n){var o,a=-1,s=0;return r.forEach(n,(function(r,u){if("border"===e.node(r).dummy){var l=e.predecessors(r);l.length&&(o=e.node(l[0]).order,i(n,s,u,a,o),s=u,a=o)}i(n,s,n.length,o,t.length)})),n})),n}function u(e,t,n){if(t>n){var r=t;t=n,n=r}var i=e[t];i||(e[t]=i={}),i[n]=!0}function l(e,t,n){if(t>n){var i=t;t=n,n=i}return r.has(e[t],n)}function c(e,t,n,i){var o={},a={},s={};return r.forEach(t,(function(e){r.forEach(e,(function(e,t){o[e]=e,a[e]=e,s[e]=t}))})),r.forEach(t,(function(e){var t=-1;r.forEach(e,(function(e){var u=i(e);if(u.length){u=r.sortBy(u,(function(e){return s[e]}));for(var c=(u.length-1)/2,d=Math.floor(c),h=Math.ceil(c);d<=h;++d){var p=u[d];a[e]===e&&t<s[p]&&!l(n,e,p)&&(a[p]=e,a[e]=o[e]=o[p],t=s[p])}}}))})),{root:o,align:a}}function d(e,t,n,o,a){var s={},u=function(e,t,n,o){var a=new i,s=e.graph(),u=function(e,t,n){return function(i,o,a){var s,u=i.node(o),l=i.node(a),c=0;if(c+=u.width/2,r.has(u,"labelpos"))switch(u.labelpos.toLowerCase()){case"l":s=-u.width/2;break;case"r":s=u.width/2}if(s&&(c+=n?s:-s),s=0,c+=(u.dummy?t:e)/2,c+=(l.dummy?t:e)/2,c+=l.width/2,r.has(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":s=l.width/2;break;case"r":s=-l.width/2}return s&&(c+=n?s:-s),s=0,c}}(s.nodesep,s.edgesep,o);return r.forEach(t,(function(t){var i;r.forEach(t,(function(t){var r=n[t];if(a.setNode(r),i){var o=n[i],s=a.edge(o,r);a.setEdge(o,r,Math.max(u(e,t,i),s||0))}i=t}))})),a}(e,t,n,a),l=a?"borderLeft":"borderRight";function c(e,t){for(var n=u.nodes(),r=n.pop(),i={};r;)i[r]?e(r):(i[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}return c((function(e){s[e]=u.inEdges(e).reduce((function(e,t){return Math.max(e,s[t.v]+u.edge(t))}),0)}),u.predecessors.bind(u)),c((function(t){var n=u.outEdges(t).reduce((function(e,t){return Math.min(e,s[t.w]-u.edge(t))}),Number.POSITIVE_INFINITY),r=e.node(t);n!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(s[t]=Math.max(s[t],n))}),u.successors.bind(u)),r.forEach(o,(function(e){s[e]=s[n[e]]})),s}function h(e,t){return r.minBy(r.values(t),(function(t){var n=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY;return r.forIn(t,(function(t,r){var o=function(e,t){return e.node(t).width}(e,r)/2;n=Math.max(t+o,n),i=Math.min(t-o,i)})),n-i}))}function p(e,t){var n=r.values(t),i=r.min(n),o=r.max(n);r.forEach(["u","d"],(function(n){r.forEach(["l","r"],(function(a){var s,u=n+a,l=e[u];if(l!==t){var c=r.values(l);(s="l"===a?i-r.min(c):o-r.max(c))&&(e[u]=r.mapValues(l,(function(e){return e+s})))}}))}))}function f(e,t){return r.mapValues(e.ul,(function(n,i){if(t)return e[t.toLowerCase()][i];var o=r.sortBy(r.map(e,i));return(o[1]+o[2])/2}))}e.exports={positionX:function(e){var t,n=o.buildLayerMatrix(e),i=r.merge(a(e,n),s(e,n)),u={};r.forEach(["u","d"],(function(o){t="u"===o?n:r.values(n).reverse(),r.forEach(["l","r"],(function(n){"r"===n&&(t=r.map(t,(function(e){return r.values(e).reverse()})));var a=("u"===o?e.predecessors:e.successors).bind(e),s=c(e,t,i,a),l=d(e,t,s.root,s.align,"r"===n);"r"===n&&(l=r.mapValues(l,(function(e){return-e}))),u[o+n]=l}))}));var l=h(e,u);return p(u,l),f(u,e.graph().align)},findType1Conflicts:a,findType2Conflicts:s,addConflict:u,hasConflict:l,verticalAlignment:c,horizontalCompaction:d,alignCoordinates:p,findSmallestWidthAlignment:h,balance:f}},Nebv:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("xxjf"),o=n("xaOS").positionX;e.exports=function(e){(function(e){var t=i.buildLayerMatrix(e),n=e.graph().ranksep,o=0;r.forEach(t,(function(t){var i=r.max(r.map(t,(function(t){return e.node(t).height})));r.forEach(t,(function(t){e.node(t).y=o+i/2})),o+=i+n}))})(e=i.asNonCompoundGraph(e)),r.forEach(o(e),(function(t,n){e.node(n).x=t}))}},"58Ui":(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph,o=n("K8/D").slack;function a(e,t){return r.forEach(e.nodes(),(function n(i){r.forEach(t.nodeEdges(i),(function(r){var a=r.v,s=i===a?r.w:a;e.hasNode(s)||o(t,r)||(e.setNode(s,{}),e.setEdge(i,s,{}),n(s))}))})),e.nodeCount()}function s(e,t){return r.minBy(t.edges(),(function(n){if(e.hasNode(n.v)!==e.hasNode(n.w))return o(t,n)}))}function u(e,t,n){r.forEach(e.nodes(),(function(e){t.node(e).rank+=n}))}e.exports=function(e){var t,n,r=new i({directed:!1}),l=e.nodes()[0],c=e.nodeCount();r.setNode(l,{});for(;a(r,e)<c;)t=s(r,e),n=r.hasNode(t.v)?o(e,t):-o(e,t),u(r,e,n);return r}},"4DVH":(e,t,n)=>{"use strict";var r=n("K8/D").longestPath,i=n("58Ui"),o=n("EMSI");e.exports=function(e){switch(e.graph().ranker){default:s(e);break;case"tight-tree":!function(e){r(e),i(e)}(e);break;case"longest-path":a(e)}};var a=r;function s(e){o(e)}},EMSI:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("58Ui"),o=n("K8/D").slack,a=n("K8/D").longestPath,s=n("vC4J").alg.preorder,u=n("vC4J").alg.postorder,l=n("xxjf").simplify;function c(e){e=l(e),a(e);var t,n=i(e);for(p(n),d(n,e);t=v(n);)y(n,e,t,g(n,e,t))}function d(e,t){var n=u(e,e.nodes());n=n.slice(0,n.length-1),r.forEach(n,(function(n){!function(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=h(e,t,n)}(e,t,n)}))}function h(e,t,n){var i=e.node(n).parent,o=!0,a=t.edge(n,i),s=0;return a||(o=!1,a=t.edge(i,n)),s=a.weight,r.forEach(t.nodeEdges(n),(function(r){var a,u,l=r.v===n,c=l?r.w:r.v;if(c!==i){var d=l===o,h=t.edge(r).weight;if(s+=d?h:-h,a=n,u=c,e.hasEdge(a,u)){var p=e.edge(n,c).cutvalue;s+=d?-p:p}}})),s}function p(e,t){arguments.length<2&&(t=e.nodes()[0]),f(e,{},1,t)}function f(e,t,n,i,o){var a=n,s=e.node(i);return t[i]=!0,r.forEach(e.neighbors(i),(function(o){r.has(t,o)||(n=f(e,t,n,o,i))})),s.low=a,s.lim=n++,o?s.parent=o:delete s.parent,n}function v(e){return r.find(e.edges(),(function(t){return e.edge(t).cutvalue<0}))}function g(e,t,n){var i=n.v,a=n.w;t.hasEdge(i,a)||(i=n.w,a=n.v);var s=e.node(i),u=e.node(a),l=s,c=!1;s.lim>u.lim&&(l=u,c=!0);var d=r.filter(t.edges(),(function(t){return c===m(e,e.node(t.v),l)&&c!==m(e,e.node(t.w),l)}));return r.minBy(d,(function(e){return o(t,e)}))}function y(e,t,n,i){var o=n.v,a=n.w;e.removeEdge(o,a),e.setEdge(i.v,i.w,{}),p(e),d(e,t),function(e,t){var n=r.find(e.nodes(),(function(e){return!t.node(e).parent})),i=s(e,n);i=i.slice(1),r.forEach(i,(function(n){var r=e.node(n).parent,i=t.edge(n,r),o=!1;i||(i=t.edge(r,n),o=!0),t.node(n).rank=t.node(r).rank+(o?i.minlen:-i.minlen)}))}(e,t)}function m(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}e.exports=c,c.initLowLimValues=p,c.initCutValues=d,c.calcCutValue=h,c.leaveEdge=v,c.enterEdge=g,c.exchangeEdges=y},"K8/D":(e,t,n)=>{"use strict";var r=n("gjtd");e.exports={longestPath:function(e){var t={};r.forEach(e.sources(),(function n(i){var o=e.node(i);if(r.has(t,i))return o.rank;t[i]=!0;var a=r.min(r.map(e.outEdges(i),(function(t){return n(t.w)-e.edge(t).minlen})));return a!==Number.POSITIVE_INFINITY&&null!=a||(a=0),o.rank=a}))},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}},xxjf:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph;function o(e,t,n,i){var o;do{o=r.uniqueId(i)}while(e.hasNode(o));return n.dummy=t,e.setNode(o,n),o}function a(e){return r.max(r.map(e.nodes(),(function(t){var n=e.node(t).rank;if(!r.isUndefined(n))return n})))}e.exports={addDummyNode:o,simplify:function(e){var t=(new i).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){var r=t.edge(n.v,n.w)||{weight:0,minlen:1},i=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})})),t},asNonCompoundGraph:function(e){var t=new i({multigraph:e.isMultigraph()}).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){e.children(n).length||t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){t.setEdge(n,e.edge(n))})),t},successorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.outEdges(t),(function(t){n[t.w]=(n[t.w]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},predecessorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.inEdges(t),(function(t){n[t.v]=(n[t.v]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},intersectRect:function(e,t){var n,r,i=e.x,o=e.y,a=t.x-i,s=t.y-o,u=e.width/2,l=e.height/2;if(!a&&!s)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(s)*u>Math.abs(a)*l?(s<0&&(l=-l),n=l*a/s,r=l):(a<0&&(u=-u),n=u,r=u*s/a);return{x:i+n,y:o+r}},buildLayerMatrix:function(e){var t=r.map(r.range(a(e)+1),(function(){return[]}));return r.forEach(e.nodes(),(function(n){var i=e.node(n),o=i.rank;r.isUndefined(o)||(t[o][i.order]=n)})),t},normalizeRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank})));r.forEach(e.nodes(),(function(n){var i=e.node(n);r.has(i,"rank")&&(i.rank-=t)}))},removeEmptyRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank}))),n=[];r.forEach(e.nodes(),(function(r){var i=e.node(r).rank-t;n[i]||(n[i]=[]),n[i].push(r)}));var i=0,o=e.graph().nodeRankFactor;r.forEach(n,(function(t,n){r.isUndefined(t)&&n%o!=0?--i:i&&r.forEach(t,(function(t){e.node(t).rank+=i}))}))},addBorderNode:function(e,t,n,r){var i={width:0,height:0};arguments.length>=4&&(i.rank=n,i.order=r);return o(e,"border",i,t)},maxRank:a,partition:function(e,t){var n={lhs:[],rhs:[]};return r.forEach(e,(function(e){t(e)?n.lhs.push(e):n.rhs.push(e)})),n},time:function(e,t){var n=r.now();try{return t()}finally{console.log(e+" time: "+(r.now()-n)+"ms")}},notime:function(e,t){return t()}}},VQMV:e=>{e.exports="0.8.5"},YlUH:(e,t,n)=>{var r=n("1qSF");e.exports={Graph:r.Graph,json:n("M2c1"),alg:n("ZCKZ"),version:r.version}},qC43:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e){var t,n={},i=[];function o(i){r.has(n,i)||(n[i]=!0,t.push(i),r.each(e.successors(i),o),r.each(e.predecessors(i),o))}return r.each(e.nodes(),(function(e){t=[],o(e),t.length&&i.push(t)})),i}},"5Ck4":(e,t,n)=>{var r=n("Jl0P");function i(e,t,n,o,a,s){r.has(o,t)||(o[t]=!0,n||s.push(t),r.each(a(t),(function(t){i(e,t,n,o,a,s)})),n&&s.push(t))}e.exports=function(e,t,n){r.isArray(t)||(t=[t]);var o=(e.isDirected()?e.successors:e.neighbors).bind(e),a=[],s={};return r.each(t,(function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);i(e,t,"post"===n,s,o,a)})),a}},a271:(e,t,n)=>{var r=n("V9bN"),i=n("Jl0P");e.exports=function(e,t,n){return i.transform(e.nodes(),(function(i,o){i[o]=r(e,o,t,n)}),{})}},V9bN:(e,t,n)=>{var r=n("Jl0P"),i=n("c9kG");e.exports=function(e,t,n,r){return function(e,t,n,r){var o,a,s={},u=new i,l=function(e){var t=e.v!==o?e.v:e.w,r=s[t],i=n(e),l=a.distance+i;if(i<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+i);l<r.distance&&(r.distance=l,r.predecessor=o,u.decrease(t,l))};e.nodes().forEach((function(e){var n=e===t?0:Number.POSITIVE_INFINITY;s[e]={distance:n},u.add(e,n)}));for(;u.size()>0&&(o=u.removeMin(),(a=s[o]).distance!==Number.POSITIVE_INFINITY);)r(o).forEach(l);return s}(e,String(t),n||o,r||function(t){return e.outEdges(t)})};var o=r.constant(1)},W8B9:(e,t,n)=>{var r=n("Jl0P"),i=n("Pa7R");e.exports=function(e){return r.filter(i(e),(function(t){return t.length>1||1===t.length&&e.hasEdge(t[0],t[0])}))}},hq5n:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e,t,n){return function(e,t,n){var r={},i=e.nodes();return i.forEach((function(e){r[e]={},r[e][e]={distance:0},i.forEach((function(t){e!==t&&(r[e][t]={distance:Number.POSITIVE_INFINITY})})),n(e).forEach((function(n){var i=n.v===e?n.w:n.v,o=t(n);r[e][i]={distance:o,predecessor:e}}))})),i.forEach((function(e){var t=r[e];i.forEach((function(n){var o=r[n];i.forEach((function(n){var r=o[e],i=t[n],a=o[n],s=r.distance+i.distance;s<a.distance&&(a.distance=s,a.predecessor=i.predecessor)}))}))})),r}(e,t||i,n||function(t){return e.outEdges(t)})};var i=r.constant(1)},ZCKZ:(e,t,n)=>{e.exports={components:n("qC43"),dijkstra:n("V9bN"),dijkstraAll:n("a271"),findCycles:n("W8B9"),floydWarshall:n("hq5n"),isAcyclic:n("+WAL"),postorder:n("21zJ"),preorder:n("j+bJ"),prim:n("xGdc"),tarjan:n("Pa7R"),topsort:n("0Jj1")}},"+WAL":(e,t,n)=>{var r=n("0Jj1");e.exports=function(e){try{r(e)}catch(t){if(t instanceof r.CycleException)return!1;throw t}return!0}},"21zJ":(e,t,n)=>{var r=n("5Ck4");e.exports=function(e,t){return r(e,t,"post")}},"j+bJ":(e,t,n)=>{var r=n("5Ck4");e.exports=function(e,t){return r(e,t,"pre")}},xGdc:(e,t,n)=>{var r=n("Jl0P"),i=n("buMw"),o=n("c9kG");e.exports=function(e,t){var n,a=new i,s={},u=new o;function l(e){var r=e.v===n?e.w:e.v,i=u.priority(r);if(void 0!==i){var o=t(e);o<i&&(s[r]=n,u.decrease(r,o))}}if(0===e.nodeCount())return a;r.each(e.nodes(),(function(e){u.add(e,Number.POSITIVE_INFINITY),a.setNode(e)})),u.decrease(e.nodes()[0],0);var c=!1;for(;u.size()>0;){if(n=u.removeMin(),r.has(s,n))a.setEdge(n,s[n]);else{if(c)throw new Error("Input graph is not connected: "+e);c=!0}e.nodeEdges(n).forEach(l)}return a}},Pa7R:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e){var t=0,n=[],i={},o=[];function a(s){var u=i[s]={onStack:!0,lowlink:t,index:t++};if(n.push(s),e.successors(s).forEach((function(e){r.has(i,e)?i[e].onStack&&(u.lowlink=Math.min(u.lowlink,i[e].index)):(a(e),u.lowlink=Math.min(u.lowlink,i[e].lowlink))})),u.lowlink===u.index){var l,c=[];do{l=n.pop(),i[l].onStack=!1,c.push(l)}while(s!==l);o.push(c)}}return e.nodes().forEach((function(e){r.has(i,e)||a(e)})),o}},"0Jj1":(e,t,n)=>{var r=n("Jl0P");function i(e){var t={},n={},i=[];if(r.each(e.sinks(),(function a(s){if(r.has(n,s))throw new o;r.has(t,s)||(n[s]=!0,t[s]=!0,r.each(e.predecessors(s),a),delete n[s],i.push(s))})),r.size(t)!==e.nodeCount())throw new o;return i}function o(){}e.exports=i,i.CycleException=o,o.prototype=new Error},c9kG:(e,t,n)=>{var r=n("Jl0P");function i(){this._arr=[],this._keyIndices={}}e.exports=i,i.prototype.size=function(){return this._arr.length},i.prototype.keys=function(){return this._arr.map((function(e){return e.key}))},i.prototype.has=function(e){return r.has(this._keyIndices,e)},i.prototype.priority=function(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority},i.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},i.prototype.add=function(e,t){var n=this._keyIndices;if(e=String(e),!r.has(n,e)){var i=this._arr,o=i.length;return n[e]=o,i.push({key:e,priority:t}),this._decrease(o),!0}return!1},i.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},i.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},i.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,i=e;n<t.length&&(i=t[n].priority<t[i].priority?n:i,r<t.length&&(i=t[r].priority<t[i].priority?r:i),i!==e&&(this._swap(e,i),this._heapify(i)))},i.prototype._decrease=function(e){for(var t,n=this._arr,r=n[e].priority;0!==e&&!(n[t=e>>1].priority<r);)this._swap(e,t),e=t},i.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,i=n[e],o=n[t];n[e]=o,n[t]=i,r[o.key]=e,r[i.key]=t}},buMw:(e,t,n)=>{"use strict";var r=n("Jl0P");e.exports=o;var i="\0";function o(e){this._isDirected=!r.has(e,"directed")||e.directed,this._isMultigraph=!!r.has(e,"multigraph")&&e.multigraph,this._isCompound=!!r.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children["\0"]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function a(e,t){e[t]?e[t]++:e[t]=1}function s(e,t){--e[t]||delete e[t]}function u(e,t,n,i){var o=""+t,a=""+n;if(!e&&o>a){var s=o;o=a,a=s}return o+"\x01"+a+"\x01"+(r.isUndefined(i)?"\0":i)}function l(e,t,n,r){var i=""+t,o=""+n;if(!e&&i>o){var a=i;i=o,o=a}var s={v:i,w:o};return r&&(s.name=r),s}function c(e,t){return u(e,t.v,t.w,t.name)}o.prototype._nodeCount=0,o.prototype._edgeCount=0,o.prototype.isDirected=function(){return this._isDirected},o.prototype.isMultigraph=function(){return this._isMultigraph},o.prototype.isCompound=function(){return this._isCompound},o.prototype.setGraph=function(e){return this._label=e,this},o.prototype.graph=function(){return this._label},o.prototype.setDefaultNodeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultNodeLabelFn=e,this},o.prototype.nodeCount=function(){return this._nodeCount},o.prototype.nodes=function(){return r.keys(this._nodes)},o.prototype.sources=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._in[t])}))},o.prototype.sinks=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._out[t])}))},o.prototype.setNodes=function(e,t){var n=arguments,i=this;return r.each(e,(function(e){n.length>1?i.setNode(e,t):i.setNode(e)})),this},o.prototype.setNode=function(e,t){return r.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=i,this._children[e]={},this._children["\0"][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},o.prototype.node=function(e){return this._nodes[e]},o.prototype.hasNode=function(e){return r.has(this._nodes,e)},o.prototype.removeNode=function(e){var t=this;if(r.has(this._nodes,e)){var n=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],r.each(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),r.each(r.keys(this._in[e]),n),delete this._in[e],delete this._preds[e],r.each(r.keys(this._out[e]),n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},o.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(t))t=i;else{for(var n=t+="";!r.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},o.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},o.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==i)return t}},o.prototype.children=function(e){if(r.isUndefined(e)&&(e=i),this._isCompound){var t=this._children[e];if(t)return r.keys(t)}else{if(e===i)return this.nodes();if(this.hasNode(e))return[]}},o.prototype.predecessors=function(e){var t=this._preds[e];if(t)return r.keys(t)},o.prototype.successors=function(e){var t=this._sucs[e];if(t)return r.keys(t)},o.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return r.union(t,this.successors(e))},o.prototype.isLeaf=function(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length},o.prototype.filterNodes=function(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){e(r)&&t.setNode(r,n)})),r.each(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,n.edge(e))}));var i={};function o(e){var r=n.parent(e);return void 0===r||t.hasNode(r)?(i[e]=r,r):r in i?i[r]:o(r)}return this._isCompound&&r.each(t.nodes(),(function(e){t.setParent(e,o(e))})),t},o.prototype.setDefaultEdgeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultEdgeLabelFn=e,this},o.prototype.edgeCount=function(){return this._edgeCount},o.prototype.edges=function(){return r.values(this._edgeObjs)},o.prototype.setPath=function(e,t){var n=this,i=arguments;return r.reduce(e,(function(e,r){return i.length>1?n.setEdge(e,r,t):n.setEdge(e,r),r})),this},o.prototype.setEdge=function(){var e,t,n,i,o=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(e=s.v,t=s.w,n=s.name,2===arguments.length&&(i=arguments[1],o=!0)):(e=s,t=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),e=""+e,t=""+t,r.isUndefined(n)||(n=""+n);var c=u(this._isDirected,e,t,n);if(r.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=i),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?i:this._defaultEdgeLabelFn(e,t,n);var d=l(this._isDirected,e,t,n);return e=d.v,t=d.w,Object.freeze(d),this._edgeObjs[c]=d,a(this._preds[t],e),a(this._sucs[e],t),this._in[t][c]=d,this._out[e][c]=d,this._edgeCount++,this},o.prototype.edge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n);return this._edgeLabels[r]},o.prototype.hasEdge=function(e,t,n){var i=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n);return r.has(this._edgeLabels,i)},o.prototype.removeEdge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n),i=this._edgeObjs[r];return i&&(e=i.v,t=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],s(this._preds[t],e),s(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},o.prototype.inEdges=function(e,t){var n=this._in[e];if(n){var i=r.values(n);return t?r.filter(i,(function(e){return e.v===t})):i}},o.prototype.outEdges=function(e,t){var n=this._out[e];if(n){var i=r.values(n);return t?r.filter(i,(function(e){return e.w===t})):i}},o.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))}},"1qSF":(e,t,n)=>{e.exports={Graph:n("buMw"),version:n("5AdH")}},M2c1:(e,t,n)=>{var r=n("Jl0P"),i=n("buMw");function o(e){return r.map(e.nodes(),(function(t){var n=e.node(t),i=e.parent(t),o={v:t};return r.isUndefined(n)||(o.value=n),r.isUndefined(i)||(o.parent=i),o}))}function a(e){return r.map(e.edges(),(function(t){var n=e.edge(t),i={v:t.v,w:t.w};return r.isUndefined(t.name)||(i.name=t.name),r.isUndefined(n)||(i.value=n),i}))}e.exports={write:function(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:o(e),edges:a(e)};r.isUndefined(e.graph())||(t.value=r.clone(e.graph()));return t},read:function(e){var t=new i(e.options).setGraph(e.value);return r.each(e.nodes,(function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)})),r.each(e.edges,(function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)})),t}}},Jl0P:(e,t,n)=>{var r;try{r={clone:n("zr3P"),constant:n("eN33"),each:n("h4um"),filter:n("+DnP"),has:n("1mr4"),isArray:n("wxYD"),isEmpty:n("MwrP"),isFunction:n("2q8g"),isUndefined:n("CZlo"),keys:n("BlJA"),map:n("mbB6"),reduce:n("veKZ"),size:n("7seP"),transform:n("cZX/"),union:n("aGtI"),values:n("0iyY")}}catch(i){}r||(r=window._),e.exports=r},"5AdH":e=>{e.exports="2.1.8"},"3Ssf":(e,t,n)=>{e.exports=n("pvAv")},pvAv:function(e,t){var n,r,i;(function(){var o,a,s,u,l,c,d,h,p,f,v,g,y,m,b;s=Math.floor,f=Math.min,a=function(e,t){return e<t?-1:e>t?1:0},p=function(e,t,n,r,i){var o;if(null==n&&(n=0),null==i&&(i=a),n<0)throw new Error("lo must be non-negative");for(null==r&&(r=e.length);n<r;)i(t,e[o=s((n+r)/2)])<0?r=o:n=o+1;return[].splice.apply(e,[n,n-n].concat(t)),t},c=function(e,t,n){return null==n&&(n=a),e.push(t),m(e,0,e.length-1,n)},l=function(e,t){var n,r;return null==t&&(t=a),n=e.pop(),e.length?(r=e[0],e[0]=n,b(e,0,t)):r=n,r},h=function(e,t,n){var r;return null==n&&(n=a),r=e[0],e[0]=t,b(e,0,n),r},d=function(e,t,n){var r;return null==n&&(n=a),e.length&&n(e[0],t)<0&&(t=(r=[e[0],t])[0],e[0]=r[1],b(e,0,n)),t},u=function(e,t){var n,r,i,o,u,l;for(null==t&&(t=a),o=(function(){l=[];for(var t=0,n=s(e.length/2);0<=n?t<n:t>n;0<=n?t++:t--)l.push(t);return l}).apply(this).reverse(),u=[],r=0,i=o.length;r<i;r++)n=o[r],u.push(b(e,n,t));return u},y=function(e,t,n){var r;if(null==n&&(n=a),-1!==(r=e.indexOf(t)))return m(e,0,r,n),b(e,r,n)},v=function(e,t,n){var r,i,o,s,l;if(null==n&&(n=a),!(i=e.slice(0,t)).length)return i;for(u(i,n),o=0,s=(l=e.slice(t)).length;o<s;o++)r=l[o],d(i,r,n);return i.sort(n).reverse()},g=function(e,t,n){var r,i,o,s,c,d,h,v,g;if(null==n&&(n=a),10*t<=e.length){if(!(o=e.slice(0,t).sort(n)).length)return o;for(i=o[o.length-1],s=0,d=(h=e.slice(t)).length;s<d;s++)n(r=h[s],i)<0&&(p(o,r,0,null,n),o.pop(),i=o[o.length-1]);return o}for(u(e,n),g=[],c=0,v=f(t,e.length);0<=v?c<v:c>v;0<=v?++c:--c)g.push(l(e,n));return g},m=function(e,t,n,r){var i,o,s;for(null==r&&(r=a),i=e[n];n>t&&r(i,o=e[s=n-1>>1])<0;)e[n]=o,n=s;return e[n]=i},b=function(e,t,n){var r,i,o,s,u;for(null==n&&(n=a),i=e.length,u=t,o=e[t],r=2*t+1;r<i;)(s=r+1)<i&&!(n(e[r],e[s])<0)&&(r=s),e[t]=e[r],r=2*(t=r)+1;return e[t]=o,m(e,u,t,n)},o=function(){function e(e){this.cmp=null!=e?e:a,this.nodes=[]}return e.push=c,e.pop=l,e.replace=h,e.pushpop=d,e.heapify=u,e.updateItem=y,e.nlargest=v,e.nsmallest=g,e.prototype.push=function(e){return c(this.nodes,e,this.cmp)},e.prototype.pop=function(){return l(this.nodes,this.cmp)},e.prototype.peek=function(){return this.nodes[0]},e.prototype.contains=function(e){return-1!==this.nodes.indexOf(e)},e.prototype.replace=function(e){return h(this.nodes,e,this.cmp)},e.prototype.pushpop=function(e){return d(this.nodes,e,this.cmp)},e.prototype.heapify=function(){return u(this.nodes,this.cmp)},e.prototype.updateItem=function(e){return y(this.nodes,e,this.cmp)},e.prototype.clear=function(){return this.nodes=[]},e.prototype.empty=function(){return 0===this.nodes.length},e.prototype.size=function(){return this.nodes.length},e.prototype.clone=function(){var t;return(t=new e).nodes=this.nodes.slice(0),t},e.prototype.toArray=function(){return this.nodes.slice(0)},e.prototype.insert=e.prototype.push,e.prototype.top=e.prototype.peek,e.prototype.front=e.prototype.peek,e.prototype.has=e.prototype.contains,e.prototype.copy=e.prototype.clone,e}(),r=[],void 0===(i="function"==typeof(n=function(){return o})?n.apply(t,r):n)||(e.exports=i)}).call(this)},"E/ZA":e=>{var t=/^\s+|\s+$/g,n=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,o=parseInt,a="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self,u=a||s||Function("return this")(),l=Object.prototype.toString,c=Math.max,d=Math.min,h=function(){return u.Date.now()};function p(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function f(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==l.call(e)}(e))return NaN;if(p(e)){var a="function"==typeof e.valueOf?e.valueOf():e;e=p(a)?a+"":a}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(t,"");var s=r.test(e);return s||i.test(e)?o(e.slice(2),s?2:8):n.test(e)?NaN:+e}e.exports=function(e,t,n){var r,i,o,a,s,u,l=0,v=!1,g=!1,y=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(t){var n=r,o=i;return r=i=void 0,l=t,a=e.apply(o,n)}function b(e){return l=e,s=setTimeout(w,t),v?m(e):a}function x(e){var n=e-u;return void 0===u||n>=t||n<0||g&&e-l>=o}function w(){var e=h();if(x(e))return E(e);s=setTimeout(w,function(e){var n=t-(e-u);return g?d(n,o-(e-l)):n}(e))}function E(e){return s=void 0,y&&r?m(e):(r=i=void 0,a)}function k(){var e=h(),n=x(e);if(r=arguments,i=this,u=e,n){if(void 0===s)return b(u);if(g)return s=setTimeout(w,t),m(u)}return void 0===s&&(s=setTimeout(w,t)),a}return t=f(t)||0,p(n)&&(v=!!n.leading,o=(g="maxWait"in n)?c(f(n.maxWait)||0,t):o,y="trailing"in n?!!n.trailing:y),k.cancel=function(){void 0!==s&&clearTimeout(s),l=0,r=u=i=s=void 0},k.flush=function(){return void 0===s?a:E(h())},k}},QF3D:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"DataView");e.exports=r},Tv3l:(e,t,n)=>{var r=n("2Fbm"),i=n("VPai"),o=n("+fUG"),a=n("QMz8"),s=n("mUsV");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},"+ooz":(e,t,n)=>{var r=n("8Zrg"),i=n("kwr2"),o=n("5VYK"),a=n("Coc+"),s=n("LzM7");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},qeCs:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Map");e.exports=r},hyzI:(e,t,n)=>{var r=n("m5o6"),i=n("d0UJ"),o=n("eask"),a=n("9SKQ"),s=n("e63W");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},IS0S:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Promise");e.exports=r},OBn4:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Set");e.exports=r},"JBn+":(e,t,n)=>{var r=n("hyzI"),i=n("qjF7"),o=n("cEmw");function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=i,a.prototype.has=o,e.exports=a},HsnV:(e,t,n)=>{var r=n("+ooz"),i=n("RNlM"),o=n("E4ao"),a=n("BSqe"),s=n("L6um"),u=n("4/ik");function l(e){var t=this.__data__=new r(e);this.size=t.size}l.prototype.clear=i,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=s,l.prototype.set=u,e.exports=l},Syyo:(e,t,n)=>{var r=n("IBsm").Symbol;e.exports=r},mGzy:(e,t,n)=>{var r=n("IBsm").Uint8Array;e.exports=r},"4+Vk":(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"WeakMap");e.exports=r},zaNA:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},LmOH:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},W0vE:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[i++]=a)}return o}},OfKG:(e,t,n)=>{var r=n("c7Qd");e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},"sCL+":e=>{e.exports=function(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}},rmhs:(e,t,n)=>{var r=n("2ZvR"),i=n("bvyN"),o=n("wxYD"),a=n("3ajY"),s=n("pnw1"),u=n("Qd2C"),l=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),c=!n&&i(e),d=!n&&!c&&a(e),h=!n&&!c&&!d&&u(e),p=n||c||d||h,f=p?r(e.length,String):[],v=f.length;for(var g in e)!t&&!l.call(e,g)||p&&("length"==g||d&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,v))||f.push(g);return f}},H87J:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}},"y/9h":e=>{e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}},cPMt:e=>{e.exports=function(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}},myUI:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},"2wsP":(e,t,n)=>{var r=n("EI7Z")("length");e.exports=r},amiU:(e,t,n)=>{var r=n("wC3K"),i=n("pPzx");e.exports=function(e,t,n){(void 0!==n&&!i(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},c72w:(e,t,n)=>{var r=n("wC3K"),i=n("pPzx"),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];o.call(e,t)&&i(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},"6QIk":(e,t,n)=>{var r=n("pPzx");e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},tPQG:(e,t,n)=>{var r=n("LtXa"),i=n("BlJA");e.exports=function(e,t){return e&&r(t,i(t),e)}},QrYh:(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e,t){return e&&r(t,i(t),e)}},wC3K:(e,t,n)=>{var r=n("Pz+s");e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},kn3Q:(e,t,n)=>{var r=n("HsnV"),i=n("LmOH"),o=n("c72w"),a=n("tPQG"),s=n("QrYh"),u=n("Grae"),l=n("QT01"),c=n("AjPR"),d=n("BjSP"),h=n("tlBq"),p=n("zF5n"),f=n("kkM+"),v=n("3Qlq"),g=n("7No3"),y=n("sD1O"),m=n("wxYD"),b=n("3ajY"),x=n("NbvU"),w=n("tQYX"),E=n("/iLo"),k=n("BlJA"),P=n("zH+d"),S="[object Arguments]",C="[object Function]",_="[object Object]",j={};j[S]=j["[object Array]"]=j["[object ArrayBuffer]"]=j["[object DataView]"]=j["[object Boolean]"]=j["[object Date]"]=j["[object Float32Array]"]=j["[object Float64Array]"]=j["[object Int8Array]"]=j["[object Int16Array]"]=j["[object Int32Array]"]=j["[object Map]"]=j["[object Number]"]=j[_]=j["[object RegExp]"]=j["[object Set]"]=j["[object String]"]=j["[object Symbol]"]=j["[object Uint8Array]"]=j["[object Uint8ClampedArray]"]=j["[object Uint16Array]"]=j["[object Uint32Array]"]=!0,j["[object Error]"]=j[C]=j["[object WeakMap]"]=!1,e.exports=function e(t,n,D,T,B,O){var M,N=1&n,I=2&n,L=4&n;if(D&&(M=B?D(t,T,B,O):D(t)),void 0!==M)return M;if(!w(t))return t;var A=m(t);if(A){if(M=v(t),!N)return l(t,M)}else{var z=f(t),R=z==C||"[object GeneratorFunction]"==z;if(b(t))return u(t,N);if(z==_||z==S||R&&!B){if(M=I||R?{}:y(t),!N)return I?d(t,s(M,t)):c(t,a(M,t))}else{if(!j[z])return B?t:{};M=g(t,z,N)}}O||(O=new r);var F=O.get(t);if(F)return F;O.set(t,M),E(t)?t.forEach((function(r){M.add(e(r,n,D,r,t,O))})):x(t)&&t.forEach((function(r,i){M.set(i,e(r,n,D,i,t,O))}));var V=A?void 0:(L?I?p:h:I?P:k)(t);return i(V||t,(function(r,i){V&&(r=t[i=r]),o(M,i,e(r,n,D,i,t,O))})),M}},vGGS:(e,t,n)=>{var r=n("tQYX"),i=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(i)return i(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},Q4oW:(e,t,n)=>{var r=n("zKkv"),i=n("bz5b")(r);e.exports=i},JElN:(e,t,n)=>{var r=n("a88S");e.exports=function(e,t,n){for(var i=-1,o=e.length;++i<o;){var a=e[i],s=t(a);if(null!=s&&(void 0===u?s==s&&!r(s):n(s,u)))var u=s,l=a}return l}},sjzV:(e,t,n)=>{var r=n("Q4oW");e.exports=function(e,t){var n=[];return r(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}},DuXo:e=>{e.exports=function(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}},YpBQ:(e,t,n)=>{var r=n("y/9h"),i=n("oCTG");e.exports=function e(t,n,o,a,s){var u=-1,l=t.length;for(o||(o=i),s||(s=[]);++u<l;){var c=t[u];n>0&&o(c)?n>1?e(c,n-1,o,a,s):r(s,c):a||(s[s.length]=c)}return s}},UdtX:(e,t,n)=>{var r=n("RFxK")();e.exports=r},zKkv:(e,t,n)=>{var r=n("UdtX"),i=n("BlJA");e.exports=function(e,t){return e&&r(e,t,i)}},w2Tz:(e,t,n)=>{var r=n("xoyU"),i=n("Ypsa");e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n<o;)e=e[i(t[n++])];return n&&n==o?e:void 0}},pIod:(e,t,n)=>{var r=n("y/9h"),i=n("wxYD");e.exports=function(e,t,n){var o=t(e);return i(e)?o:r(o,n(e))}},Dhk8:(e,t,n)=>{var r=n("Syyo"),i=n("KCLV"),o=n("kHoZ"),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?i(e):o(e)}},FaiA:e=>{e.exports=function(e,t){return e>t}},SJov:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e,n){return null!=e&&t.call(e,n)}},JYmt:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},c7Qd:(e,t,n)=>{var r=n("DuXo"),i=n("z9Jh"),o=n("n1QJ");e.exports=function(e,t,n){return t==t?o(e,t,n):r(e,i,n)}},"/30y":(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Arguments]"==r(e)}},NYSw:(e,t,n)=>{var r=n("BqUW"),i=n("tLQN");e.exports=function e(t,n,o,a,s){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!=t&&n!=n:r(t,n,o,a,e,s))}},BqUW:(e,t,n)=>{var r=n("HsnV"),i=n("ZZ+W"),o=n("R3gn"),a=n("yZHP"),s=n("kkM+"),u=n("wxYD"),l=n("3ajY"),c=n("Qd2C"),d="[object Arguments]",h="[object Array]",p="[object Object]",f=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,v,g,y){var m=u(e),b=u(t),x=m?h:s(e),w=b?h:s(t),E=(x=x==d?p:x)==p,k=(w=w==d?p:w)==p,P=x==w;if(P&&l(e)){if(!l(t))return!1;m=!0,E=!1}if(P&&!E)return y||(y=new r),m||c(e)?i(e,t,n,v,g,y):o(e,t,x,n,v,g,y);if(!(1&n)){var S=E&&f.call(e,"__wrapped__"),C=k&&f.call(t,"__wrapped__");if(S||C){var _=S?e.value():e,j=C?t.value():t;return y||(y=new r),g(_,j,n,v,y)}}return!!P&&(y||(y=new r),a(e,t,n,v,g,y))}},gEWz:(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Map]"==r(e)}},ZjRn:(e,t,n)=>{var r=n("HsnV"),i=n("NYSw");e.exports=function(e,t,n,o){var a=n.length,s=a,u=!o;if(null==e)return!s;for(e=Object(e);a--;){var l=n[a];if(u&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<s;){var c=(l=n[a])[0],d=e[c],h=l[1];if(u&&l[2]){if(void 0===d&&!(c in e))return!1}else{var p=new r;if(o)var f=o(d,h,c,e,t,p);if(!(void 0===f?i(h,d,3,o,p):f))return!1}}return!0}},z9Jh:e=>{e.exports=function(e){return e!=e}},"5nKN":(e,t,n)=>{var r=n("2q8g"),i=n("9vbJ"),o=n("tQYX"),a=n("c18h"),s=/^\[object .+?Constructor\]$/,u=Function.prototype,l=Object.prototype,c=u.toString,d=l.hasOwnProperty,h=RegExp("^"+c.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||i(e))&&(r(e)?h:s).test(a(e))}},"6I2w":(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Set]"==r(e)}},"7/jS":(e,t,n)=>{var r=n("Dhk8"),i=n("t0L4"),o=n("tLQN"),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&i(e.length)&&!!a[r(e)]}},S3pA:(e,t,n)=>{var r=n("7/we"),i=n("KAo/"),o=n("zWgn"),a=n("wxYD"),s=n("1EDM");e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?a(e)?i(e[0],e[1]):r(e):s(e)}},"4uJK":(e,t,n)=>{var r=n("CbIe"),i=n("OtNC"),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},p2lg:(e,t,n)=>{var r=n("tQYX"),i=n("CbIe"),o=n("/UTG"),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=i(e),n=[];for(var s in e)("constructor"!=s||!t&&a.call(e,s))&&n.push(s);return n}},"n+p3":e=>{e.exports=function(e,t){return e<t}},bFjY:(e,t,n)=>{var r=n("Q4oW"),i=n("9y2L");e.exports=function(e,t){var n=-1,o=i(e)?Array(e.length):[];return r(e,(function(e,r,i){o[++n]=t(e,r,i)})),o}},"7/we":(e,t,n)=>{var r=n("ZjRn"),i=n("hMsr"),o=n("0Ss3");e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},"KAo/":(e,t,n)=>{var r=n("NYSw"),i=n("2srY"),o=n("NW/2"),a=n("i7nn"),s=n("+tCn"),u=n("0Ss3"),l=n("Ypsa");e.exports=function(e,t){return a(e)&&s(t)?u(l(e),t):function(n){var a=i(n,e);return void 0===a&&a===t?o(n,e):r(t,a,3)}}},MzY2:(e,t,n)=>{var r=n("HsnV"),i=n("amiU"),o=n("UdtX"),a=n("cb1R"),s=n("tQYX"),u=n("zH+d"),l=n("LL3N");e.exports=function e(t,n,c,d,h){t!==n&&o(n,(function(o,u){if(h||(h=new r),s(o))a(t,n,u,c,e,d,h);else{var p=d?d(l(t,u),o,u+"",t,n,h):void 0;void 0===p&&(p=o),i(t,u,p)}}),u)}},cb1R:(e,t,n)=>{var r=n("amiU"),i=n("Grae"),o=n("6Rtw"),a=n("QT01"),s=n("sD1O"),u=n("bvyN"),l=n("wxYD"),c=n("Ndl3"),d=n("3ajY"),h=n("2q8g"),p=n("tQYX"),f=n("Kkar"),v=n("Qd2C"),g=n("LL3N"),y=n("4ScB");e.exports=function(e,t,n,m,b,x,w){var E=g(e,n),k=g(t,n),P=w.get(k);if(P)r(e,n,P);else{var S=x?x(E,k,n+"",e,t,w):void 0,C=void 0===S;if(C){var _=l(k),j=!_&&d(k),D=!_&&!j&&v(k);S=k,_||j||D?l(E)?S=E:c(E)?S=a(E):j?(C=!1,S=i(k,!0)):D?(C=!1,S=o(k,!0)):S=[]:f(k)||u(k)?(S=E,u(E)?S=y(E):p(E)&&!h(E)||(S=s(k))):C=!1}C&&(w.set(k,S),b(S,k,m,x,w),w.delete(k)),r(e,n,S)}}},eHpp:(e,t,n)=>{var r=n("H87J"),i=n("w2Tz"),o=n("S3pA"),a=n("bFjY"),s=n("4jPf"),u=n("SU8Q"),l=n("5WP5"),c=n("zWgn"),d=n("wxYD");e.exports=function(e,t,n){t=t.length?r(t,(function(e){return d(e)?function(t){return i(t,1===e.length?e[0]:e)}:e})):[c];var h=-1;t=r(t,u(o));var p=a(e,(function(e,n,i){return{criteria:r(t,(function(t){return t(e)})),index:++h,value:e}}));return s(p,(function(e,t){return l(e,t,n)}))}},QwI6:(e,t,n)=>{var r=n("O1Sc"),i=n("NW/2");e.exports=function(e,t){return r(e,t,(function(t,n){return i(e,n)}))}},O1Sc:(e,t,n)=>{var r=n("w2Tz"),i=n("y4bl"),o=n("xoyU");e.exports=function(e,t,n){for(var a=-1,s=t.length,u={};++a<s;){var l=t[a],c=r(e,l);n(c,l)&&i(u,o(l,e),c)}return u}},EI7Z:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},CEyS:(e,t,n)=>{var r=n("w2Tz");e.exports=function(e){return function(t){return r(t,e)}}},"9au6":e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,i,o){for(var a=-1,s=n(t((r-e)/(i||1)),0),u=Array(s);s--;)u[o?s:++a]=e,e+=i;return u}},"5q8j":e=>{e.exports=function(e,t,n,r,i){return i(e,(function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)})),n}},R3TX:(e,t,n)=>{var r=n("zWgn"),i=n("UAs9"),o=n("7Pat");e.exports=function(e,t){return o(i(e,t,r),e+"")}},y4bl:(e,t,n)=>{var r=n("c72w"),i=n("xoyU"),o=n("pnw1"),a=n("tQYX"),s=n("Ypsa");e.exports=function(e,t,n,u){if(!a(e))return e;for(var l=-1,c=(t=i(t,e)).length,d=c-1,h=e;null!=h&&++l<c;){var p=s(t[l]),f=n;if("__proto__"===p||"constructor"===p||"prototype"===p)return e;if(l!=d){var v=h[p];void 0===(f=u?u(v,p,h):void 0)&&(f=a(v)?v:o(t[l+1])?[]:{})}r(h,p,f),h=h[p]}return e}},"+7q0":(e,t,n)=>{var r=n("eN33"),i=n("Pz+s"),o=n("zWgn"),a=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=a},"4jPf":e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},"2ZvR":e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},JcJ6:(e,t,n)=>{var r=n("Syyo"),i=n("H87J"),o=n("wxYD"),a=n("a88S"),s=r?r.prototype:void 0,u=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return i(t,e)+"";if(a(t))return u?u.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n}},I1fX:(e,t,n)=>{var r=n("6XIJ"),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},SU8Q:e=>{e.exports=function(e){return function(t){return e(t)}}},"s+R0":(e,t,n)=>{var r=n("JBn+"),i=n("OfKG"),o=n("sCL+"),a=n("S0iI"),s=n("9TP6"),u=n("XlL0");e.exports=function(e,t,n){var l=-1,c=i,d=e.length,h=!0,p=[],f=p;if(n)h=!1,c=o;else if(d>=200){var v=t?null:s(e);if(v)return u(v);h=!1,c=a,f=new r}else f=t?[]:p;e:for(;++l<d;){var g=e[l],y=t?t(g):g;if(g=n||0!==g?g:0,h&&y==y){for(var m=f.length;m--;)if(f[m]===y)continue e;t&&f.push(y),p.push(g)}else c(f,y,n)||(f!==p&&f.push(y),p.push(g))}return p}},SJvO:(e,t,n)=>{var r=n("H87J");e.exports=function(e,t){return r(t,(function(t){return e[t]}))}},WvmI:e=>{e.exports=function(e,t,n){for(var r=-1,i=e.length,o=t.length,a={};++r<i;){var s=r<o?t[r]:void 0;n(a,e[r],s)}return a}},S0iI:e=>{e.exports=function(e,t){return e.has(t)}},D49j:(e,t,n)=>{var r=n("zWgn");e.exports=function(e){return"function"==typeof e?e:r}},xoyU:(e,t,n)=>{var r=n("wxYD"),i=n("i7nn"),o=n("SoOq"),a=n("dw5g");e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:o(a(e))}},EAGB:(e,t,n)=>{var r=n("mGzy");e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},Grae:(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},lN3w:(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},Bstx:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},bVbG:(e,t,n)=>{var r=n("Syyo"),i=r?r.prototype:void 0,o=i?i.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},"6Rtw":(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},"dnX/":(e,t,n)=>{var r=n("a88S");e.exports=function(e,t){if(e!==t){var n=void 0!==e,i=null===e,o=e==e,a=r(e),s=void 0!==t,u=null===t,l=t==t,c=r(t);if(!u&&!c&&!a&&e>t||a&&s&&l&&!u&&!c||i&&s&&l||!n&&l||!o)return 1;if(!i&&!a&&!c&&e<t||c&&n&&o&&!i&&!a||u&&n&&o||!s&&o||!l)return-1}return 0}},"5WP5":(e,t,n)=>{var r=n("dnX/");e.exports=function(e,t,n){for(var i=-1,o=e.criteria,a=t.criteria,s=o.length,u=n.length;++i<s;){var l=r(o[i],a[i]);if(l)return i>=u?l:l*("desc"==n[i]?-1:1)}return e.index-t.index}},QT01:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},LtXa:(e,t,n)=>{var r=n("c72w"),i=n("wC3K");e.exports=function(e,t,n,o){var a=!n;n||(n={});for(var s=-1,u=t.length;++s<u;){var l=t[s],c=o?o(n[l],e[l],l,n,e):void 0;void 0===c&&(c=e[l]),a?i(n,l,c):r(n,l,c)}return n}},AjPR:(e,t,n)=>{var r=n("LtXa"),i=n("70Le");e.exports=function(e,t){return r(e,i(e),t)}},BjSP:(e,t,n)=>{var r=n("LtXa"),i=n("Xidw");e.exports=function(e,t){return r(e,i(e),t)}},"3KBa":(e,t,n)=>{var r=n("IBsm")["__core-js_shared__"];e.exports=r},wpQC:(e,t,n)=>{var r=n("R3TX"),i=n("R5u7");e.exports=function(e){return r((function(t,n){var r=-1,o=n.length,a=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(o--,a):void 0,s&&i(n[0],n[1],s)&&(a=o<3?void 0:a,o=1),t=Object(t);++r<o;){var u=n[r];u&&e(t,u,r,a)}return t}))}},bz5b:(e,t,n)=>{var r=n("9y2L");e.exports=function(e,t){return function(n,i){if(null==n)return n;if(!r(n))return e(n,i);for(var o=n.length,a=t?o:-1,s=Object(n);(t?a--:++a<o)&&!1!==i(s[a],a,s););return n}}},RFxK:e=>{e.exports=function(e){return function(t,n,r){for(var i=-1,o=Object(t),a=r(t),s=a.length;s--;){var u=a[e?s:++i];if(!1===n(o[u],u,o))break}return t}}},"1aYn":(e,t,n)=>{var r=n("S3pA"),i=n("9y2L"),o=n("BlJA");e.exports=function(e){return function(t,n,a){var s=Object(t);if(!i(t)){var u=r(n,3);t=o(t),n=function(e){return u(s[e],e,s)}}var l=e(t,n,a);return l>-1?s[u?t[l]:l]:void 0}}},"2M3I":(e,t,n)=>{var r=n("9au6"),i=n("R5u7"),o=n("fWyh");e.exports=function(e){return function(t,n,a){return a&&"number"!=typeof a&&i(t,n,a)&&(n=a=void 0),t=o(t),void 0===n?(n=t,t=0):n=o(n),a=void 0===a?t<n?1:-1:o(a),r(t,n,a,e)}}},"9TP6":(e,t,n)=>{var r=n("OBn4"),i=n("nnm9"),o=n("XlL0"),a=r&&1/o(new r([,-0]))[1]==1/0?function(e){return new r(e)}:i;e.exports=a},"Pz+s":(e,t,n)=>{var r=n("vxC8"),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=i},"ZZ+W":(e,t,n)=>{var r=n("JBn+"),i=n("myUI"),o=n("S0iI");e.exports=function(e,t,n,a,s,u){var l=1&n,c=e.length,d=t.length;if(c!=d&&!(l&&d>c))return!1;var h=u.get(e),p=u.get(t);if(h&&p)return h==t&&p==e;var f=-1,v=!0,g=2&n?new r:void 0;for(u.set(e,t),u.set(t,e);++f<c;){var y=e[f],m=t[f];if(a)var b=l?a(m,y,f,t,e,u):a(y,m,f,e,t,u);if(void 0!==b){if(b)continue;v=!1;break}if(g){if(!i(t,(function(e,t){if(!o(g,t)&&(y===e||s(y,e,n,a,u)))return g.push(t)}))){v=!1;break}}else if(y!==m&&!s(y,m,n,a,u)){v=!1;break}}return u.delete(e),u.delete(t),v}},R3gn:(e,t,n)=>{var r=n("Syyo"),i=n("mGzy"),o=n("pPzx"),a=n("ZZ+W"),s=n("aURW"),u=n("XlL0"),l=r?r.prototype:void 0,c=l?l.valueOf:void 0;e.exports=function(e,t,n,r,l,d,h){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new i(e),new i(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var p=s;case"[object Set]":var f=1&r;if(p||(p=u),e.size!=t.size&&!f)return!1;var v=h.get(e);if(v)return v==t;r|=2,h.set(e,t);var g=a(p(e),p(t),r,l,d,h);return h.delete(e),g;case"[object Symbol]":if(c)return c.call(e)==c.call(t)}return!1}},yZHP:(e,t,n)=>{var r=n("tlBq"),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,a,s){var u=1&n,l=r(e),c=l.length;if(c!=r(t).length&&!u)return!1;for(var d=c;d--;){var h=l[d];if(!(u?h in t:i.call(t,h)))return!1}var p=s.get(e),f=s.get(t);if(p&&f)return p==t&&f==e;var v=!0;s.set(e,t),s.set(t,e);for(var g=u;++d<c;){var y=e[h=l[d]],m=t[h];if(o)var b=u?o(m,y,h,t,e,s):o(y,m,h,e,t,s);if(!(void 0===b?y===m||a(y,m,n,o,s):b)){v=!1;break}g||(g="constructor"==h)}if(v&&!g){var x=e.constructor,w=t.constructor;x==w||!("constructor"in e)||!("constructor"in t)||"function"==typeof x&&x instanceof x&&"function"==typeof w&&w instanceof w||(v=!1)}return s.delete(e),s.delete(t),v}},cH1A:(e,t,n)=>{var r=n("1xil"),i=n("UAs9"),o=n("7Pat");e.exports=function(e){return o(i(e,void 0,r),e+"")}},e93E:e=>{var t="object"==typeof global&&global&&global.Object===Object&&global;e.exports=t},tlBq:(e,t,n)=>{var r=n("pIod"),i=n("70Le"),o=n("BlJA");e.exports=function(e){return r(e,o,i)}},zF5n:(e,t,n)=>{var r=n("pIod"),i=n("Xidw"),o=n("zH+d");e.exports=function(e){return r(e,o,i)}},JNqh:(e,t,n)=>{var r=n("6UKJ");e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},hMsr:(e,t,n)=>{var r=n("+tCn"),i=n("BlJA");e.exports=function(e){for(var t=i(e),n=t.length;n--;){var o=t[n],a=e[o];t[n]=[o,a,r(a)]}return t}},vxC8:(e,t,n)=>{var r=n("5nKN"),i=n("4p/L");e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},"/wCD":(e,t,n)=>{var r=n("TAtK")(Object.getPrototypeOf,Object);e.exports=r},KCLV:(e,t,n)=>{var r=n("Syyo"),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(u){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}},"70Le":(e,t,n)=>{var r=n("W0vE"),i=n("X4R2"),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(e){return null==e?[]:(e=Object(e),r(a(e),(function(t){return o.call(e,t)})))}:i;e.exports=s},Xidw:(e,t,n)=>{var r=n("y/9h"),i=n("/wCD"),o=n("70Le"),a=n("X4R2"),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=i(e);return t}:a;e.exports=s},"kkM+":(e,t,n)=>{var r=n("QF3D"),i=n("qeCs"),o=n("IS0S"),a=n("OBn4"),s=n("4+Vk"),u=n("Dhk8"),l=n("c18h"),c="[object Map]",d="[object Promise]",h="[object Set]",p="[object WeakMap]",f="[object DataView]",v=l(r),g=l(i),y=l(o),m=l(a),b=l(s),x=u;(r&&x(new r(new ArrayBuffer(1)))!=f||i&&x(new i)!=c||o&&x(o.resolve())!=d||a&&x(new a)!=h||s&&x(new s)!=p)&&(x=function(e){var t=u(e),n="[object Object]"==t?e.constructor:void 0,r=n?l(n):"";if(r)switch(r){case v:return f;case g:return c;case y:return d;case m:return h;case b:return p}return t}),e.exports=x},"4p/L":e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},"z+TE":(e,t,n)=>{var r=n("xoyU"),i=n("bvyN"),o=n("wxYD"),a=n("pnw1"),s=n("t0L4"),u=n("Ypsa");e.exports=function(e,t,n){for(var l=-1,c=(t=r(t,e)).length,d=!1;++l<c;){var h=u(t[l]);if(!(d=null!=e&&n(e,h)))break;e=e[h]}return d||++l!=c?d:!!(c=null==e?0:e.length)&&s(c)&&a(h,c)&&(o(e)||i(e))}},GZgP:e=>{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},"2Fbm":(e,t,n)=>{var r=n("5pfJ");e.exports=function(){this.__data__=r?r(null):{},this.size=0}},VPai:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},"+fUG":(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(t,e)?t[e]:void 0}},QMz8:(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},mUsV:(e,t,n)=>{var r=n("5pfJ");e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},"3Qlq":e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},"7No3":(e,t,n)=>{var r=n("EAGB"),i=n("lN3w"),o=n("Bstx"),a=n("bVbG"),s=n("6Rtw");e.exports=function(e,t,n){var u=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new u(+e);case"[object DataView]":return i(e,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(e,n);case"[object Map]":case"[object Set]":return new u;case"[object Number]":case"[object String]":return new u(e);case"[object RegExp]":return o(e);case"[object Symbol]":return a(e)}}},sD1O:(e,t,n)=>{var r=n("vGGS"),i=n("/wCD"),o=n("CbIe");e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(i(e))}},oCTG:(e,t,n)=>{var r=n("Syyo"),i=n("bvyN"),o=n("wxYD"),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||i(e)||!!(a&&e&&e[a])}},pnw1:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},R5u7:(e,t,n)=>{var r=n("pPzx"),i=n("9y2L"),o=n("pnw1"),a=n("tQYX");e.exports=function(e,t,n){if(!a(n))return!1;var s=typeof t;return!!("number"==s?i(n)&&o(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},i7nn:(e,t,n)=>{var r=n("wxYD"),i=n("a88S"),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!i(e))||(a.test(e)||!o.test(e)||null!=t&&e in Object(t))}},"6UKJ":e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},"9vbJ":(e,t,n)=>{var r,i=n("3KBa"),o=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!o&&o in e}},CbIe:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},"+tCn":(e,t,n)=>{var r=n("tQYX");e.exports=function(e){return e==e&&!r(e)}},"8Zrg":e=>{e.exports=function(){this.__data__=[],this.size=0}},kwr2:(e,t,n)=>{var r=n("6QIk"),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():i.call(t,n,1),--this.size,!0)}},"5VYK":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},"Coc+":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){return r(this.__data__,e)>-1}},LzM7:(e,t,n)=>{var r=n("6QIk");e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},m5o6:(e,t,n)=>{var r=n("Tv3l"),i=n("+ooz"),o=n("qeCs");e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||i),string:new r}}},d0UJ:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},eask:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).get(e)}},"9SKQ":(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).has(e)}},e63W:(e,t,n)=>{var r=n("JNqh");e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},aURW:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},"0Ss3":e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},"0+aC":(e,t,n)=>{var r=n("pFSi");e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},"5pfJ":(e,t,n)=>{var r=n("vxC8")(Object,"create");e.exports=r},OtNC:(e,t,n)=>{var r=n("TAtK")(Object.keys,Object);e.exports=r},"/UTG":e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},T6vp:(e,t,n)=>{e=n.nmd(e);var r=n("e93E"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i&&r.process,s=function(){try{var e=o&&o.require&&o.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(t){}}();e.exports=s},kHoZ:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},TAtK:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},UAs9:(e,t,n)=>{var r=n("zaNA"),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var o=arguments,a=-1,s=i(o.length-t,0),u=Array(s);++a<s;)u[a]=o[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=o[a];return l[t]=n(u),r(e,this,l)}}},IBsm:(e,t,n)=>{var r=n("e93E"),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},LL3N:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},qjF7:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},cEmw:e=>{e.exports=function(e){return this.__data__.has(e)}},XlL0:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},"7Pat":(e,t,n)=>{var r=n("+7q0"),i=n("kG2z")(r);e.exports=i},kG2z:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var i=t(),o=16-(i-r);if(r=i,o>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},RNlM:(e,t,n)=>{var r=n("+ooz");e.exports=function(){this.__data__=new r,this.size=0}},E4ao:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},BSqe:e=>{e.exports=function(e){return this.__data__.get(e)}},L6um:e=>{e.exports=function(e){return this.__data__.has(e)}},"4/ik":(e,t,n)=>{var r=n("+ooz"),i=n("qeCs"),o=n("hyzI");e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!i||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(a)}return n.set(e,t),this.size=n.size,this}},n1QJ:e=>{e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}},GVul:(e,t,n)=>{var r=n("2wsP"),i=n("GZgP"),o=n("QZ90");e.exports=function(e){return i(e)?o(e):r(e)}},SoOq:(e,t,n)=>{var r=n("0+aC"),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,a=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(o,"$1"):n||e)})),t}));e.exports=a},Ypsa:(e,t,n)=>{var r=n("a88S");e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},c18h:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},"6XIJ":e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},QZ90:e=>{var t="[\\ud800-\\udfff]",n="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",r="\\ud83c[\\udffb-\\udfff]",i="[^\\ud800-\\udfff]",o="(?:\\ud83c[\\udde6-\\uddff]){2}",a="[\\ud800-\\udbff][\\udc00-\\udfff]",s="(?:"+n+"|"+r+")"+"?",u="[\\ufe0e\\ufe0f]?",l=u+s+("(?:\\u200d(?:"+[i,o,a].join("|")+")"+u+s+")*"),c="(?:"+[i+n+"?",n,o,a,t].join("|")+")",d=RegExp(r+"(?="+r+")|"+c+l,"g");e.exports=function(e){for(var t=d.lastIndex=0;d.test(e);)++t;return t}},zr3P:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,4)}},c2re:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,5)}},eN33:e=>{e.exports=function(e){return function(){return e}}},WHWN:(e,t,n)=>{var r=n("R3TX"),i=n("pPzx"),o=n("R5u7"),a=n("zH+d"),s=Object.prototype,u=s.hasOwnProperty,l=r((function(e,t){e=Object(e);var n=-1,r=t.length,l=r>2?t[2]:void 0;for(l&&o(t[0],t[1],l)&&(r=1);++n<r;)for(var c=t[n],d=a(c),h=-1,p=d.length;++h<p;){var f=d[h],v=e[f];(void 0===v||i(v,s[f])&&!u.call(e,f))&&(e[f]=c[f])}return e}));e.exports=l},h4um:(e,t,n)=>{e.exports=n("9SCj")},pPzx:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},"+DnP":(e,t,n)=>{var r=n("W0vE"),i=n("sjzV"),o=n("S3pA"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:i)(e,o(t,3))}},"6R5o":(e,t,n)=>{var r=n("1aYn")(n("FllU"));e.exports=r},FllU:(e,t,n)=>{var r=n("DuXo"),i=n("S3pA"),o=n("m2YG"),a=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var u=null==n?0:o(n);return u<0&&(u=a(s+u,0)),r(e,i(t,3),u)}},"1xil":(e,t,n)=>{var r=n("YpBQ");e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},"9SCj":(e,t,n)=>{var r=n("LmOH"),i=n("Q4oW"),o=n("D49j"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:i)(e,o(t))}},ZVKf:(e,t,n)=>{var r=n("UdtX"),i=n("D49j"),o=n("zH+d");e.exports=function(e,t){return null==e?e:r(e,i(t),o)}},"2srY":(e,t,n)=>{var r=n("w2Tz");e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},"1mr4":(e,t,n)=>{var r=n("SJov"),i=n("z+TE");e.exports=function(e,t){return null!=e&&i(e,t,r)}},"NW/2":(e,t,n)=>{var r=n("JYmt"),i=n("z+TE");e.exports=function(e,t){return null!=e&&i(e,t,r)}},zWgn:e=>{e.exports=function(e){return e}},bvyN:(e,t,n)=>{var r=n("/30y"),i=n("tLQN"),o=Object.prototype,a=o.hasOwnProperty,s=o.propertyIsEnumerable,u=r(function(){return arguments}())?r:function(e){return i(e)&&a.call(e,"callee")&&!s.call(e,"callee")};e.exports=u},wxYD:e=>{var t=Array.isArray;e.exports=t},"9y2L":(e,t,n)=>{var r=n("2q8g"),i=n("t0L4");e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},Ndl3:(e,t,n)=>{var r=n("9y2L"),i=n("tLQN");e.exports=function(e){return i(e)&&r(e)}},"3ajY":(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=n("DjCF"),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,s=a&&a.exports===o?r.Buffer:void 0,u=(s?s.isBuffer:void 0)||i;e.exports=u},MwrP:(e,t,n)=>{var r=n("4uJK"),i=n("kkM+"),o=n("bvyN"),a=n("wxYD"),s=n("9y2L"),u=n("3ajY"),l=n("CbIe"),c=n("Qd2C"),d=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(a(e)||"string"==typeof e||"function"==typeof e.splice||u(e)||c(e)||o(e)))return!e.length;var t=i(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(l(e))return!r(e).length;for(var n in e)if(d.call(e,n))return!1;return!0}},"2q8g":(e,t,n)=>{var r=n("Dhk8"),i=n("tQYX");e.exports=function(e){if(!i(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},t0L4:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},NbvU:(e,t,n)=>{var r=n("gEWz"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isMap,s=a?i(a):r;e.exports=s},tQYX:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},tLQN:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},Kkar:(e,t,n)=>{var r=n("Dhk8"),i=n("/wCD"),o=n("tLQN"),a=Function.prototype,s=Object.prototype,u=a.toString,l=s.hasOwnProperty,c=u.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=i(e);if(null===t)return!0;var n=l.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&u.call(n)==c}},"/iLo":(e,t,n)=>{var r=n("6I2w"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isSet,s=a?i(a):r;e.exports=s},nDih:(e,t,n)=>{var r=n("Dhk8"),i=n("wxYD"),o=n("tLQN");e.exports=function(e){return"string"==typeof e||!i(e)&&o(e)&&"[object String]"==r(e)}},a88S:(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},Qd2C:(e,t,n)=>{var r=n("7/jS"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isTypedArray,s=a?i(a):r;e.exports=s},CZlo:e=>{e.exports=function(e){return void 0===e}},BlJA:(e,t,n)=>{var r=n("rmhs"),i=n("4uJK"),o=n("9y2L");e.exports=function(e){return o(e)?r(e):i(e)}},"zH+d":(e,t,n)=>{var r=n("rmhs"),i=n("p2lg"),o=n("9y2L");e.exports=function(e){return o(e)?r(e,!0):i(e)}},"p1C/":e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},mbB6:(e,t,n)=>{var r=n("H87J"),i=n("S3pA"),o=n("bFjY"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:o)(e,i(t,3))}},y2Ah:(e,t,n)=>{var r=n("wC3K"),i=n("zKkv"),o=n("S3pA");e.exports=function(e,t){var n={};return t=o(t,3),i(e,(function(e,i,o){r(n,i,t(e,i,o))})),n}},"LPC+":(e,t,n)=>{var r=n("JElN"),i=n("FaiA"),o=n("zWgn");e.exports=function(e){return e&&e.length?r(e,o,i):void 0}},pFSi:(e,t,n)=>{var r=n("hyzI");function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=e.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},H8sf:(e,t,n)=>{var r=n("MzY2"),i=n("wpQC")((function(e,t,n){r(e,t,n)}));e.exports=i},Z3AG:(e,t,n)=>{var r=n("JElN"),i=n("n+p3"),o=n("zWgn");e.exports=function(e){return e&&e.length?r(e,o,i):void 0}},PKEM:(e,t,n)=>{var r=n("JElN"),i=n("S3pA"),o=n("n+p3");e.exports=function(e,t){return e&&e.length?r(e,i(t,2),o):void 0}},nnm9:e=>{e.exports=function(){}},ENE1:(e,t,n)=>{var r=n("IBsm");e.exports=function(){return r.Date.now()}},"//nZ":(e,t,n)=>{var r=n("QwI6"),i=n("cH1A")((function(e,t){return null==e?{}:r(e,t)}));e.exports=i},"1EDM":(e,t,n)=>{var r=n("EI7Z"),i=n("CEyS"),o=n("i7nn"),a=n("Ypsa");e.exports=function(e){return o(e)?r(a(e)):i(e)}},Cmkl:(e,t,n)=>{var r=n("2M3I")();e.exports=r},veKZ:(e,t,n)=>{var r=n("cPMt"),i=n("Q4oW"),o=n("S3pA"),a=n("5q8j"),s=n("wxYD");e.exports=function(e,t,n){var u=s(e)?r:a,l=arguments.length<3;return u(e,o(t,4),n,l,i)}},"7seP":(e,t,n)=>{var r=n("4uJK"),i=n("kkM+"),o=n("9y2L"),a=n("nDih"),s=n("GVul");e.exports=function(e){if(null==e)return 0;if(o(e))return a(e)?s(e):e.length;var t=i(e);return"[object Map]"==t||"[object Set]"==t?e.size:r(e).length}},u6DZ:(e,t,n)=>{var r=n("YpBQ"),i=n("eHpp"),o=n("R3TX"),a=n("R5u7"),s=o((function(e,t){if(null==e)return[];var n=t.length;return n>1&&a(e,t[0],t[1])?t=[]:n>2&&a(t[0],t[1],t[2])&&(t=[t[0]]),i(e,r(t,1),[])}));e.exports=s},X4R2:e=>{e.exports=function(){return[]}},DjCF:e=>{e.exports=function(){return!1}},fWyh:(e,t,n)=>{var r=n("nvU9"),i=1/0;e.exports=function(e){return e?(e=r(e))===i||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},m2YG:(e,t,n)=>{var r=n("fWyh");e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},nvU9:(e,t,n)=>{var r=n("I1fX"),i=n("tQYX"),o=n("a88S"),a=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||u.test(e)?l(e.slice(2),n?2:8):a.test(e)?NaN:+e}},"4ScB":(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e){return r(e,i(e))}},dw5g:(e,t,n)=>{var r=n("JcJ6");e.exports=function(e){return null==e?"":r(e)}},"cZX/":(e,t,n)=>{var r=n("LmOH"),i=n("vGGS"),o=n("zKkv"),a=n("S3pA"),s=n("/wCD"),u=n("wxYD"),l=n("3ajY"),c=n("2q8g"),d=n("tQYX"),h=n("Qd2C");e.exports=function(e,t,n){var p=u(e),f=p||l(e)||h(e);if(t=a(t,4),null==n){var v=e&&e.constructor;n=f?p?new v:[]:d(e)&&c(v)?i(s(e)):{}}return(f?r:o)(e,(function(e,r,i){return t(n,e,r,i)})),n}},aGtI:(e,t,n)=>{var r=n("YpBQ"),i=n("R3TX"),o=n("s+R0"),a=n("Ndl3"),s=i((function(e){return o(r(e,1,a,!0))}));e.exports=s},w0mW:(e,t,n)=>{var r=n("dw5g"),i=0;e.exports=function(e){var t=++i;return r(e)+t}},"0iyY":(e,t,n)=>{var r=n("SJvO"),i=n("BlJA");e.exports=function(e){return null==e?[]:r(e,i(e))}},OUo6:(e,t,n)=>{var r=n("c72w"),i=n("WvmI");e.exports=function(e,t){return i(e||[],t||[],r)}}},e=>{var t;t="Ue+I",e(e.s=t)}]);
2
+ (self.webpackChunk=self.webpackChunk||[]).push([[179],{"Ue+I":(e,t,n)=>{"use strict";var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},r(e,t)};function i(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function o(e){return"function"==typeof e}var a=!1,s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){e&&(new Error).stack;a=e},get useDeprecatedSynchronousErrorHandling(){return a}};function u(e){setTimeout((function(){throw e}),0)}var l={closed:!0,next:function(e){},error:function(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;u(e)},complete:function(){}},c=function(){return Array.isArray||function(e){return e&&"number"==typeof e.length}}();function d(e){return null!==e&&"object"==typeof e}var h=function(){function e(e){return Error.call(this),this.message=e?e.length+" errors occurred during unsubscription:\n"+e.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}(),p=function(){function e(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._ctorUnsubscribe=!0,this._unsubscribe=e)}return e.prototype.unsubscribe=function(){var t;if(!this.closed){var n=this,r=n._parentOrParents,i=n._ctorUnsubscribe,a=n._unsubscribe,s=n._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,r instanceof e)r.remove(this);else if(null!==r)for(var u=0;u<r.length;++u){r[u].remove(this)}if(o(a)){i&&(this._unsubscribe=void 0);try{a.call(this)}catch(v){t=v instanceof h?f(v.errors):[v]}}if(c(s)){u=-1;for(var l=s.length;++u<l;){var p=s[u];if(d(p))try{p.unsubscribe()}catch(v){t=t||[],v instanceof h?t=t.concat(f(v.errors)):t.push(v)}}}if(t)throw new h(t)}},e.prototype.add=function(t){var n=t;if(!t)return e.EMPTY;switch(typeof t){case"function":n=new e(t);case"object":if(n===this||n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if(!(n instanceof e)){var r=n;(n=new e)._subscriptions=[r]}break;default:throw new Error("unrecognized teardown "+t+" added to Subscription.")}var i=n._parentOrParents;if(null===i)n._parentOrParents=this;else if(i instanceof e){if(i===this)return n;n._parentOrParents=[i,this]}else{if(-1!==i.indexOf(this))return n;i.push(this)}var o=this._subscriptions;return null===o?this._subscriptions=[n]:o.push(n),n},e.prototype.remove=function(e){var t=this._subscriptions;if(t){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},e.EMPTY=function(e){return e.closed=!0,e}(new e),e}();function f(e){return e.reduce((function(e,t){return e.concat(t instanceof h?t.errors:t)}),[])}var v=function(){return"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random()}(),g=function(e){function t(n,r,i){var o=e.call(this)||this;switch(o.syncErrorValue=null,o.syncErrorThrown=!1,o.syncErrorThrowable=!1,o.isStopped=!1,arguments.length){case 0:o.destination=l;break;case 1:if(!n){o.destination=l;break}if("object"==typeof n){n instanceof t?(o.syncErrorThrowable=n.syncErrorThrowable,o.destination=n,n.add(o)):(o.syncErrorThrowable=!0,o.destination=new y(o,n));break}default:o.syncErrorThrowable=!0,o.destination=new y(o,n,r,i)}return o}return i(t,e),t.prototype[v]=function(){return this},t.create=function(e,n,r){var i=new t(e,n,r);return i.syncErrorThrowable=!1,i},t.prototype.next=function(e){this.isStopped||this._next(e)},t.prototype.error=function(e){this.isStopped||(this.isStopped=!0,this._error(e))},t.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this))},t.prototype._next=function(e){this.destination.next(e)},t.prototype._error=function(e){this.destination.error(e),this.unsubscribe()},t.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},t.prototype._unsubscribeAndRecycle=function(){var e=this._parentOrParents;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this},t}(p),y=function(e){function t(t,n,r,i){var a,s=e.call(this)||this;s._parentSubscriber=t;var u=s;return o(n)?a=n:n&&(a=n.next,r=n.error,i=n.complete,n!==l&&(o((u=Object.create(n)).unsubscribe)&&s.add(u.unsubscribe.bind(u)),u.unsubscribe=s.unsubscribe.bind(s))),s._context=u,s._next=a,s._error=r,s._complete=i,s}return i(t,e),t.prototype.next=function(e){if(!this.isStopped&&this._next){var t=this._parentSubscriber;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}},t.prototype.error=function(e){if(!this.isStopped){var t=this._parentSubscriber,n=s.useDeprecatedSynchronousErrorHandling;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):u(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;u(e)}}},t.prototype.complete=function(){var e=this;if(!this.isStopped){var t=this._parentSubscriber;if(this._complete){var n=function(){return e._complete.call(e._context)};s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,n),this.unsubscribe()):(this.__tryOrUnsub(n),this.unsubscribe())}else this.unsubscribe()}},t.prototype.__tryOrUnsub=function(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;u(n)}},t.prototype.__tryOrSetError=function(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(u(r),!0)}return!1},t.prototype._unsubscribe=function(){var e=this._parentSubscriber;this._context=null,this._parentSubscriber=null,e.unsubscribe()},t}(g);var m=function(){return"function"==typeof Symbol&&Symbol.observable||"@@observable"}();function b(e){return e}function x(e){return 0===e.length?b:1===e.length?e[0]:function(t){return e.reduce((function(e,t){return t(e)}),t)}}var w=function(){function e(e){this._isScalar=!1,e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,t,n){var r=this.operator,i=function(e,t,n){if(e){if(e instanceof g)return e;if(e[v])return e[v]()}return e||t||n?new g(e,t,n):new g(l)}(e,t,n);if(r?i.add(r.call(i,this.source)):i.add(this.source||s.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),s.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),!function(e){for(;e;){var t=e,n=t.closed,r=t.destination,i=t.isStopped;if(n||i)return!1;e=r&&r instanceof g?r:null}return!0}(e)?console.warn(t):e.error(t)}},e.prototype.forEach=function(e,t){var n=this;return new(t=E(t))((function(t,r){var i;i=n.subscribe((function(t){try{e(t)}catch(n){r(n),i&&i.unsubscribe()}}),r,t)}))},e.prototype._subscribe=function(e){var t=this.source;return t&&t.subscribe(e)},e.prototype[m]=function(){return this},e.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return 0===e.length?this:x(e)(this)},e.prototype.toPromise=function(e){var t=this;return new(e=E(e))((function(e,n){var r;t.subscribe((function(e){return r=e}),(function(e){return n(e)}),(function(){return e(r)}))}))},e.create=function(t){return new e(t)},e}();function E(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}var k=function(){function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e}(),P=function(e){function t(t,n){var r=e.call(this)||this;return r.subject=t,r.subscriber=n,r.closed=!1,r}return i(t,e),t.prototype.unsubscribe=function(){if(!this.closed){this.closed=!0;var e=this.subject,t=e.observers;if(this.subject=null,t&&0!==t.length&&!e.isStopped&&!e.closed){var n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}},t}(p),S=function(e){function t(t){var n=e.call(this,t)||this;return n.destination=t,n}return i(t,e),t}(g),C=function(e){function t(){var t=e.call(this)||this;return t.observers=[],t.closed=!1,t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return i(t,e),t.prototype[v]=function(){return new S(this)},t.prototype.lift=function(e){var t=new _(this,this);return t.operator=e,t},t.prototype.next=function(e){if(this.closed)throw new k;if(!this.isStopped)for(var t=this.observers,n=t.length,r=t.slice(),i=0;i<n;i++)r[i].next(e)},t.prototype.error=function(e){if(this.closed)throw new k;this.hasError=!0,this.thrownError=e,this.isStopped=!0;for(var t=this.observers,n=t.length,r=t.slice(),i=0;i<n;i++)r[i].error(e);this.observers.length=0},t.prototype.complete=function(){if(this.closed)throw new k;this.isStopped=!0;for(var e=this.observers,t=e.length,n=e.slice(),r=0;r<t;r++)n[r].complete();this.observers.length=0},t.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},t.prototype._trySubscribe=function(t){if(this.closed)throw new k;return e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){if(this.closed)throw new k;return this.hasError?(e.error(this.thrownError),p.EMPTY):this.isStopped?(e.complete(),p.EMPTY):(this.observers.push(e),new P(this,e))},t.prototype.asObservable=function(){var e=new w;return e.source=this,e},t.create=function(e,t){return new _(e,t)},t}(w),_=function(e){function t(t,n){var r=e.call(this)||this;return r.destination=t,r.source=n,r}return i(t,e),t.prototype.next=function(e){var t=this.destination;t&&t.next&&t.next(e)},t.prototype.error=function(e){var t=this.destination;t&&t.error&&this.destination.error(e)},t.prototype.complete=function(){var e=this.destination;e&&e.complete&&this.destination.complete()},t.prototype._subscribe=function(e){return this.source?this.source.subscribe(e):p.EMPTY},t}(C);var j=function(e){function t(t){var n=e.call(this)||this;return n._value=t,n}return i(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),t.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return n&&!n.closed&&t.next(this._value),n},t.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new k;return this._value},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(C),D=function(e){function t(t,n){return e.call(this)||this}return i(t,e),t.prototype.schedule=function(e,t){return void 0===t&&(t=0),this},t}(p),T=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r.pending=!1,r}return i(t,e),t.prototype.schedule=function(e,t){if(void 0===t&&(t=0),this.closed)return this;this.state=e;var n=this.id,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(r,this.id,t),this},t.prototype.requestAsyncId=function(e,t,n){return void 0===n&&(n=0),setInterval(e.flush.bind(e,this),n)},t.prototype.recycleAsyncId=function(e,t,n){if(void 0===n&&(n=0),null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)},t.prototype.execute=function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(e,t){var n=!1,r=void 0;try{this.work(e)}catch(i){n=!0,r=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),r},t.prototype._unsubscribe=function(){var e=this.id,t=this.scheduler,n=t.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null},t}(D),B=function(){function e(t,n){void 0===n&&(n=e.now),this.SchedulerAction=t,this.now=n}return e.prototype.schedule=function(e,t,n){return void 0===t&&(t=0),new this.SchedulerAction(this,e).schedule(n,t)},e.now=function(){return Date.now()},e}(),O=function(e){function t(n,r){void 0===r&&(r=B.now);var i=e.call(this,n,(function(){return t.delegate&&t.delegate!==i?t.delegate.now():r()}))||this;return i.actions=[],i.active=!1,i.scheduled=void 0,i}return i(t,e),t.prototype.schedule=function(n,r,i){return void 0===r&&(r=0),t.delegate&&t.delegate!==this?t.delegate.schedule(n,r,i):e.prototype.schedule.call(this,n,r,i)},t.prototype.flush=function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}},t}(B);function M(e){return e&&"function"==typeof e.schedule}var N,I=function(e){return function(t){for(var n=0,r=e.length;n<r&&!t.closed;n++)t.next(e[n]);t.complete()}};function L(e,t){return new w((function(n){var r=new p,i=0;return r.add(t.schedule((function(){i!==e.length?(n.next(e[i++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}function A(e,t){return t?L(e,t):new w(I(e))}function z(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=e[e.length-1];return M(n)?(e.pop(),L(e,n)):A(e)}N||(N={});var R=new O(T);function F(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new V(e,t))}}var V=function(){function e(e,t){this.project=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new q(e,this.project,this.thisArg))},e}(),q=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.project=n,i.count=0,i.thisArg=r||i,i}return i(t,e),t.prototype._next=function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(g);var Y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.notifyNext=function(e,t,n,r,i){this.destination.next(t)},t.prototype.notifyError=function(e,t){this.destination.error(e)},t.prototype.notifyComplete=function(e){this.destination.complete()},t}(g),X=function(e){function t(t,n,r){var i=e.call(this)||this;return i.parent=t,i.outerValue=n,i.outerIndex=r,i.index=0,i}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)},t.prototype._error=function(e){this.parent.notifyError(e,this),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},t}(g);function H(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}var W=H(),G=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e};function U(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}var K=function(e){if(e&&"function"==typeof e[m])return r=e,function(e){var t=r[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if(G(e))return I(e);if(U(e))return n=e,function(e){return n.then((function(t){e.closed||(e.next(t),e.complete())}),(function(t){return e.error(t)})).then(null,u),e};if(e&&"function"==typeof e[W])return t=e,function(e){for(var n=t[W]();;){var r=void 0;try{r=n.next()}catch(i){return e.error(i),e}if(r.done){e.complete();break}if(e.next(r.value),e.closed)break}return"function"==typeof n.return&&e.add((function(){n.return&&n.return()})),e};var t,n,r,i=d(e)?"an invalid object":"'"+e+"'";throw new TypeError("You provided "+i+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.")};function Z(e,t,n,r,i){if(void 0===i&&(i=new X(e,n,r)),!i.closed)return t instanceof w?t.subscribe(i):K(t)(i)}var Q={};function $(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=void 0,r=void 0;return M(e[e.length-1])&&(r=e.pop()),"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&c(e[0])&&(e=e[0]),A(e,r).lift(new J(n))}var J=function(){function e(e){this.resultSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new ee(e,this.resultSelector))},e}(),ee=function(e){function t(t,n){var r=e.call(this,t)||this;return r.resultSelector=n,r.active=0,r.values=[],r.observables=[],r}return i(t,e),t.prototype._next=function(e){this.values.push(Q),this.observables.push(e)},t.prototype._complete=function(){var e=this.observables,t=e.length;if(0===t)this.destination.complete();else{this.active=t,this.toRespond=t;for(var n=0;n<t;n++){var r=e[n];this.add(Z(this,r,void 0,n))}}},t.prototype.notifyComplete=function(e){0==(this.active-=1)&&this.destination.complete()},t.prototype.notifyNext=function(e,t,n){var r=this.values,i=r[n],o=this.toRespond?i===Q?--this.toRespond:this.toRespond:0;r[n]=t,0===o&&(this.resultSelector?this._tryResultSelector(r):this.destination.next(r.slice()))},t.prototype._tryResultSelector=function(e){var t;try{t=this.resultSelector.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(Y);function te(e,t){if(null!=e){if(function(e){return e&&"function"==typeof e[m]}(e))return function(e,t){return new w((function(n){var r=new p;return r.add(t.schedule((function(){var i=e[m]();r.add(i.subscribe({next:function(e){r.add(t.schedule((function(){return n.next(e)})))},error:function(e){r.add(t.schedule((function(){return n.error(e)})))},complete:function(){r.add(t.schedule((function(){return n.complete()})))}}))}))),r}))}(e,t);if(U(e))return function(e,t){return new w((function(n){var r=new p;return r.add(t.schedule((function(){return e.then((function(e){r.add(t.schedule((function(){n.next(e),r.add(t.schedule((function(){return n.complete()})))})))}),(function(e){r.add(t.schedule((function(){return n.error(e)})))}))}))),r}))}(e,t);if(G(e))return L(e,t);if(function(e){return e&&"function"==typeof e[W]}(e)||"string"==typeof e)return function(e,t){if(!e)throw new Error("Iterable cannot be null");return new w((function(n){var r,i=new p;return i.add((function(){r&&"function"==typeof r.return&&r.return()})),i.add(t.schedule((function(){r=e[W](),i.add(t.schedule((function(){if(!n.closed){var e,t;try{var i=r.next();e=i.value,t=i.done}catch(o){return void n.error(o)}t?n.complete():(n.next(e),this.schedule())}})))}))),i}))}(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}var ne=function(e){function t(t){var n=e.call(this)||this;return n.parent=t,n}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(e)},t.prototype._error=function(e){this.parent.notifyError(e),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(),this.unsubscribe()},t}(g),re=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.notifyNext=function(e){this.destination.next(e)},t.prototype.notifyError=function(e){this.destination.error(e)},t.prototype.notifyComplete=function(){this.destination.complete()},t}(g);function ie(e,t){if(!t.closed){if(e instanceof w)return e.subscribe(t);var n;try{n=K(e)(t)}catch(r){t.error(r)}return n}}function oe(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"function"==typeof t?function(r){return r.pipe(oe((function(n,r){return(i=e(n,r),o?te(i,o):i instanceof w?i:new w(K(i))).pipe(F((function(e,i){return t(n,e,r,i)})));var i,o}),n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new ae(e,n))})}var ae=function(){function e(e,t){void 0===t&&(t=Number.POSITIVE_INFINITY),this.project=e,this.concurrent=t}return e.prototype.call=function(e,t){return t.subscribe(new se(e,this.project,this.concurrent))},e}(),se=function(e){function t(t,n,r){void 0===r&&(r=Number.POSITIVE_INFINITY);var i=e.call(this,t)||this;return i.project=n,i.concurrent=r,i.hasCompleted=!1,i.buffer=[],i.active=0,i.index=0,i}return i(t,e),t.prototype._next=function(e){this.active<this.concurrent?this._tryNext(e):this.buffer.push(e)},t.prototype._tryNext=function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(r){return void this.destination.error(r)}this.active++,this._innerSub(t)},t.prototype._innerSub=function(e){var t=new ne(this),n=this.destination;n.add(t);var r=ie(e,t);r!==t&&n.add(r)},t.prototype._complete=function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()},t.prototype.notifyNext=function(e){this.destination.next(e)},t.prototype.notifyComplete=function(){var e=this.buffer;this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(re);function ue(){return void 0===(e=1)&&(e=Number.POSITIVE_INFINITY),oe(b,e);var e}function le(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return ue()(z.apply(void 0,e))}function ce(e,t,n,r){return o(n)&&(r=n,n=void 0),r?ce(e,t,n).pipe(F((function(e){return c(e)?r.apply(void 0,e):r(e)}))):new w((function(r){de(e,t,(function(e){arguments.length>1?r.next(Array.prototype.slice.call(arguments)):r.next(e)}),r,n)}))}function de(e,t,n,r,i){var o;if(function(e){return e&&"function"==typeof e.addEventListener&&"function"==typeof e.removeEventListener}(e)){var a=e;e.addEventListener(t,n,i),o=function(){return a.removeEventListener(t,n,i)}}else if(function(e){return e&&"function"==typeof e.on&&"function"==typeof e.off}(e)){var s=e;e.on(t,n),o=function(){return s.off(t,n)}}else if(function(e){return e&&"function"==typeof e.addListener&&"function"==typeof e.removeListener}(e)){var u=e;e.addListener(t,n),o=function(){return u.removeListener(t,n)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var l=0,c=e.length;l<c;l++)de(e[l],t,n,r,i)}r.add(o)}var he=function(){function e(e,t){this.predicate=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new pe(e,this.predicate,this.thisArg))},e}(),pe=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.predicate=n,i.thisArg=r,i.count=0,i}return i(t,e),t.prototype._next=function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)},t}(g);var fe=function(){function e(e,t){this.dueTime=e,this.scheduler=t}return e.prototype.call=function(e,t){return t.subscribe(new ve(e,this.dueTime,this.scheduler))},e}(),ve=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.dueTime=n,i.scheduler=r,i.debouncedSubscription=null,i.lastValue=null,i.hasValue=!1,i}return i(t,e),t.prototype._next=function(e){this.clearDebounce(),this.lastValue=e,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(ge,this.dueTime,this))},t.prototype._complete=function(){this.debouncedNext(),this.destination.complete()},t.prototype.debouncedNext=function(){if(this.clearDebounce(),this.hasValue){var e=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(e)}},t.prototype.clearDebounce=function(){var e=this.debouncedSubscription;null!==e&&(this.remove(e),e.unsubscribe(),this.debouncedSubscription=null)},t}(g);function ge(e){e.debouncedNext()}var ye=function(){function e(e,t){this.compare=e,this.keySelector=t}return e.prototype.call=function(e,t){return t.subscribe(new me(e,this.compare,this.keySelector))},e}(),me=function(e){function t(t,n,r){var i=e.call(this,t)||this;return i.keySelector=r,i.hasKey=!1,"function"==typeof n&&(i.compare=n),i}return i(t,e),t.prototype.compare=function(e,t){return e===t},t.prototype._next=function(e){var t;try{var n=this.keySelector;t=n?n(e):e}catch(i){return this.destination.error(i)}var r=!1;if(this.hasKey)try{r=(0,this.compare)(this.key,t)}catch(i){return this.destination.error(i)}else this.hasKey=!0;r||(this.key=t,this.destination.next(e))},t}(g);function be(e){return function(t){return t.lift(new xe(e))}}var xe=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){var n=new we(e),r=ie(this.notifier,new ne(n));return r&&!n.seenValue?(n.add(r),t.subscribe(n)):n},e}(),we=function(e){function t(t){var n=e.call(this,t)||this;return n.seenValue=!1,n}return i(t,e),t.prototype.notifyNext=function(){this.seenValue=!0,this.complete()},t.prototype.notifyComplete=function(){},t}(re);var Ee=function(){function e(e,t){this.observables=e,this.project=t}return e.prototype.call=function(e,t){return t.subscribe(new ke(e,this.observables,this.project))},e}(),ke=function(e){function t(t,n,r){var i=e.call(this,t)||this;i.observables=n,i.project=r,i.toRespond=[];var o=n.length;i.values=new Array(o);for(var a=0;a<o;a++)i.toRespond.push(a);for(a=0;a<o;a++){var s=n[a];i.add(Z(i,s,void 0,a))}return i}return i(t,e),t.prototype.notifyNext=function(e,t,n){this.values[n]=t;var r=this.toRespond;if(r.length>0){var i=r.indexOf(n);-1!==i&&r.splice(i,1)}},t.prototype.notifyComplete=function(){},t.prototype._next=function(e){if(0===this.toRespond.length){var t=[e].concat(this.values);this.project?this._tryProject(t):this.destination.next(t)}},t.prototype._tryProject=function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(Y);function Pe(e){Array.from(e.children).forEach((t=>e.removeChild(t)))}function Se(e){return e.replace(/\/$/,"")}function Ce(e,t){const n=Se(e).split("/");return n[0]===Se(t)&&n.shift(),n.pop(),n}class _e{set renderTime(e){this.renderReportElement.innerHTML=`Last render took ${e.renderTime}ms: <b class="font-mono text-medium">${e.numNodes} nodes</b> | <b class="font-mono text-medium">${e.numEdges} edges</b>.`}constructor(e,t){this.container=e,this.projectGraphs=t,this.selectProjectSubject=new C,this.selectProject$=this.selectProjectSubject.asObservable(),this.renderReportElement=void 0,this.render()}render(){Pe(this.container);const e=document.createElement("h4");e.className="text-lg font-bold mr-4",e.innerText="Debugger";const t=document.createElement("select");t.className="w-auto flex items-center px-4 py-2 border border-gray-300 rounded-md text-sm font-medium text-gray-700 bg-white",this.projectGraphs.forEach((e=>{const n=document.createElement("option");n.value=e.id,n.innerText=e.label,t.appendChild(n)})),t.value=window.selectedProjectGraph,t.dataset.cy="project-select",t.onchange=e=>this.selectProjectSubject.next(e.currentTarget.value),this.renderReportElement=document.createElement("p"),this.renderReportElement.className="text-sm",this.container.appendChild(e),this.container.appendChild(t),this.container.appendChild(this.renderReportElement)}}var je=n("rFOX"),De=n("Ded0"),Te=n.n(De),Be=n("CQyY"),Oe=n.n(Be);class Me{constructor(e){this.node=e}render(){const e=document.createElement("div"),t=this.createHeader(),n=this.createTags(),r=this.createButtons();return e.appendChild(t),e.appendChild(n),e.appendChild(r),e}createHeader(){const e=document.createElement("h4"),t=document.createElement("span"),n=document.createTextNode(this.node.attr("id"));return t.classList.add("tag"),t.innerText=this.node.attr("type"),e.appendChild(t),e.appendChild(n),e}createTags(){var e,t;const n=document.createElement("p"),r=document.createElement("strong"),i=document.createTextNode(null!=(e=null==(t=this.node.attr("tags"))?void 0:t.join(", "))?e:"");return r.innerText="tags",n.appendChild(r),n.appendChild(document.createElement("br")),n.appendChild(i),n}createButtons(){const e=document.createElement("div"),t=document.createElement("button"),n=document.createElement("button");return e.classList.add("flex"),t.addEventListener("click",(()=>window.focusProject(this.node.attr("id")))),t.innerText="Focus",n.addEventListener("click",(()=>{window.excludeProject(this.node.attr("id"))})),n.innerText="Exclude",e.appendChild(t),e.appendChild(n),e}}let Ne;!function(e){e.blue="hsla(214, 62%, 21%, 1)",e.green="hsla(162, 47%, 50%, 1)",e.lightBlue="hsla(192, 75%, 59%, 1)",e.gray="hsla(0, 0%, 92%, 1)",e.darkGray="hsla(0, 0%, 72%, 1)",e.black="hsla(220, 9%, 46%, 1)",e.red="hsla(347, 92%, 65%, 1)",e.white="#fff"}(Ne||(Ne={}));const Ie=[{selector:"edge",style:{width:"1px","line-color":Ne.black,"curve-style":"unbundled-bezier","target-arrow-shape":"triangle","target-arrow-fill":"filled","target-arrow-color":Ne.black}},{selector:"edge.affected",style:{"line-color":Ne.red,"target-arrow-color":Ne.red,"curve-style":"unbundled-bezier"}},{selector:"edge.implicit",style:{label:"implicit","font-size":"16px","edge-text-rotation":"autorotate","curve-style":"unbundled-bezier"}},{selector:"edge.dynamic",style:{"line-dash-pattern":[5,5],"line-style":"dashed","curve-style":"unbundled-bezier"}}],Le=[{selector:"node",style:{"font-size":"32px","font-family":'system-ui, "Helvetica Neue", sans-serif',"border-style":"solid","border-color":Ne.darkGray,"border-width":"1px","text-halign":"center","text-valign":"center","padding-left":"16px",color:Ne.black,label:"data(id)",width:"label",backgroundColor:Ne.white,"transition-property":"background-color, border-color, line-color, target-arrow-color","transition-duration":250,"transition-timing-function":"ease-out"}},{selector:'node[type="app"]',style:{shape:"round-rectangle"}},{selector:'node[type="lib"]',style:{shape:"round-rectangle"}},{selector:'node[type="e2e"]',style:{shape:"round-rectangle"}},{selector:"node.focused",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.green}},{selector:"node.affected",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.red}},{selector:":parent",style:{"background-opacity":.5,"background-color":Ne.gray,"border-color":Ne.darkGray,label:"data(label)","text-halign":"center","text-valign":"top","font-weight":"bold","font-size":"48px"}},{selector:"node.highlight",style:{color:Ne.white,"border-color":Ne.gray,backgroundColor:Ne.blue}},{selector:"node.transparent:childless",style:{opacity:.5}},{selector:"node.transparent:parent",style:{"text-opacity":.5,"background-opacity":.25,"border-opacity":.5}},{selector:"edge.highlight",style:{"mid-target-arrow-color":Ne.blue}},{selector:"edge.transparent",style:{opacity:.2}}];class Ae{constructor(e){this.dep=e,this.affected=!1}getCytosacpeNodeDef(){var e;let t;return t={group:"edges",data:{id:`${this.dep.source}|${this.dep.target}`,source:this.dep.source,target:this.dep.target}},t.classes=null!=(e=this.dep.type)?e:"",this.affected&&(t.classes+=" affected"),t}}class ze{constructor(e){this.config=e}getCytoscapeNodeDef(){return{group:"nodes",data:{id:this.config.id,parent:this.config.parentId,label:this.config.label},selectable:!1,grabbable:!1,pannable:!0}}}class Re{constructor(e,t){this.project=e,this.workspaceRoot=t,this.affected=!1,this.focused=!1}getCytoscapeNodeDef(e){return{group:"nodes",data:this.getData(e),classes:this.getClasses(),selectable:!1,grabbable:!1,pannable:!0}}getData(e){return{id:this.project.name,type:this.project.type,tags:this.project.data.tags,parent:e&&this.project.data.hasOwnProperty("root")?this.getParentId():null}}getClasses(){var e;let t=null!=(e=this.project.type)?e:"";return this.focused&&(t+=" focused"),this.affected&&(t+=" affected"),t}getParentId(){const e=this.getAncestors();return e.length>0?e[e.length-1].id:null}getAncestors(){if(!this.project.data.root)return[];return Ce(this.project.data.root,this.workspaceRoot).map(((e,t,n)=>{const r=[...n].slice(0,t+1).join("/");return{label:r,id:`dir-${r}`,parentId:t>0?`dir-${[...n].slice(0,t).join("/")}`:null}}))}}class Fe{constructor(e){this.tooltipService=e,this.graph=void 0,this.openTooltip=null,this.affectedProjects=void 0,this.projectGraph=void 0,this.renderTimesSubject=new C,this.renderTimes$=this.renderTimesSubject.asObservable(),je.use(Te()),je.use(Oe())}render(e,t){const n=Date.now();this.tooltipService.hideAll(),this.generateCytoscapeLayout(e,t),this.listenForProjectNodeClicks(),this.listenForProjectNodeHovers();const r={renderTime:Date.now()-n,numNodes:this.graph.nodes().length,numEdges:this.graph.edges().length};this.renderTimesSubject.next(r)}generateCytoscapeLayout(e,t){const n=this.createElements(e,t);this.graph=je({container:document.getElementById("graph-container"),elements:[...n],layout:{name:"dagre",nodeDimensionsIncludeLabels:!0,rankSep:75,edgeSep:50,ranker:"network-simplex"},boxSelectionEnabled:!1,style:[...Le,...Ie]}),this.graph.on("zoom",(()=>{this.openTooltip&&(this.openTooltip.hide(),this.openTooltip=null)}))}createElements(e,t){let n=[];const r=e.map((e=>e.name)),i=[],o=[],a={};e.forEach((e=>{const n="app"===e.type||"e2e"===e.type?window.workspaceLayout.appsDir:window.workspaceLayout.libsDir,s=new Re(e,n);if(s.focused=e.name===window.focusedProject,s.affected=this.affectedProjects.includes(e.name),i.push(s),this.projectGraph.dependencies[e.name].forEach((e=>{if(r.includes(e.target)){const t=new Ae(e);t.affected=this.affectedProjects.includes(e.source)&&this.affectedProjects.includes(e.target),o.push(t)}})),t){s.getAncestors().forEach((e=>a[e.id]=e))}}));const s=i.map((e=>e.getCytoscapeNodeDef(t))),u=o.map((e=>e.getCytosacpeNodeDef()));if(n=s.concat(u),t){n=Object.keys(a).map((e=>new ze(a[e]).getCytoscapeNodeDef())).concat(n)}return n}listenForProjectNodeClicks(){this.graph.$("node:childless").on("click",(e=>{const t=e.target;let n=t.popperRef();const r=new Me(t).render();this.openTooltip=this.tooltipService.open(n,r)}))}listenForProjectNodeHovers(){this.graph.on("mouseover",(e=>{const t=e.target;t.isNode&&t.isNode()&&!t.isParent()&&(this.graph.elements().difference(t.outgoers().union(t.incomers())).not(t).addClass("transparent"),t.addClass("highlight").outgoers().union(t.incomers()).addClass("highlight"))})),this.graph.on("mouseout",(e=>{const t=e.target;t.isNode&&t.isNode()&&!t.isParent()&&(this.graph.elements().removeClass("transparent"),t.removeClass("highlight").outgoers().union(t.incomers()).removeClass("highlight"))}))}}const Ve={showDebugger:!1,projectGraphs:[],defaultProjectGraph:null,projectGraphService:null};var qe=n("1ajG"),Ye="tippy-content",Xe="tippy-backdrop",He="tippy-arrow",We="tippy-svg-arrow",Ge={passive:!0,capture:!0},Ue=function(){return document.body};function Ke(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function Ze(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function Qe(e,t){return"function"==typeof e?e.apply(void 0,t):e}function $e(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function Je(e){return[].concat(e)}function et(e,t){-1===e.indexOf(t)&&e.push(t)}function tt(e){return e.split("-")[0]}function nt(e){return[].slice.call(e)}function rt(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function it(){return document.createElement("div")}function ot(e){return["Element","Fragment"].some((function(t){return Ze(e,t)}))}function at(e){return Ze(e,"MouseEvent")}function st(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function ut(e){return ot(e)?[e]:function(e){return Ze(e,"NodeList")}(e)?nt(e):Array.isArray(e)?e:nt(document.querySelectorAll(e))}function lt(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function ct(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function dt(e){var t,n=Je(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function ht(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}var pt={isTouch:!1},ft=0;function vt(){pt.isTouch||(pt.isTouch=!0,window.performance&&document.addEventListener("mousemove",gt))}function gt(){var e=performance.now();e-ft<20&&(pt.isTouch=!1,document.removeEventListener("mousemove",gt)),ft=e}function yt(){var e=document.activeElement;if(st(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var mt=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto;var bt={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},xt=Object.assign({appendTo:Ue,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},bt,{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),wt=Object.keys(xt);function Et(e){var t=(e.plugins||[]).reduce((function(t,n){var r,i=n.name,o=n.defaultValue;i&&(t[i]=void 0!==e[i]?e[i]:null!=(r=xt[i])?r:o);return t}),{});return Object.assign({},e,t)}function kt(e,t){var n=Object.assign({},t,{content:Qe(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(Et(Object.assign({},xt,{plugins:t}))):wt).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(i){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},xt.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function Pt(e,t){e.innerHTML=t}function St(e){var t=it();return!0===e?t.className=He:(t.className=We,ot(e)?t.appendChild(e):Pt(t,e)),t}function Ct(e,t){ot(t.content)?(Pt(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?Pt(e,t.content):e.textContent=t.content)}function _t(e){var t=e.firstElementChild,n=nt(t.children);return{box:t,content:n.find((function(e){return e.classList.contains(Ye)})),arrow:n.find((function(e){return e.classList.contains(He)||e.classList.contains(We)})),backdrop:n.find((function(e){return e.classList.contains(Xe)}))}}function jt(e){var t=it(),n=it();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=it();function i(n,r){var i=_t(t),o=i.box,a=i.content,s=i.arrow;r.theme?o.setAttribute("data-theme",r.theme):o.removeAttribute("data-theme"),"string"==typeof r.animation?o.setAttribute("data-animation",r.animation):o.removeAttribute("data-animation"),r.inertia?o.setAttribute("data-inertia",""):o.removeAttribute("data-inertia"),o.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?o.setAttribute("role",r.role):o.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||Ct(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(o.removeChild(s),o.appendChild(St(r.arrow))):o.appendChild(St(r.arrow)):s&&o.removeChild(s)}return r.className=Ye,r.setAttribute("data-state","hidden"),Ct(r,e.props),t.appendChild(n),n.appendChild(r),i(e.props,e.props),{popper:t,onUpdate:i}}jt.$$tippy=!0;var Dt=1,Tt=[],Bt=[];function Ot(e,t){var n,r,i,o,a,s,u,l,c=kt(e,Object.assign({},xt,Et(rt(t)))),d=!1,h=!1,p=!1,f=!1,v=[],g=$e(G,c.interactiveDebounce),y=Dt++,m=(l=c.plugins).filter((function(e,t){return l.indexOf(e)===t})),b={id:y,reference:e,popper:it(),popperInstance:null,props:c,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:m,clearDelayTimeouts:function(){clearTimeout(n),clearTimeout(r),cancelAnimationFrame(i)},setProps:function(t){0;if(b.state.isDestroyed)return;M("onBeforeUpdate",[b,t]),H();var n=b.props,r=kt(e,Object.assign({},n,rt(t),{ignoreAttributes:!0}));b.props=r,X(),n.interactiveDebounce!==r.interactiveDebounce&&(L(),g=$e(G,r.interactiveDebounce));n.triggerTarget&&!r.triggerTarget?Je(n.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):r.triggerTarget&&e.removeAttribute("aria-expanded");I(),O(),E&&E(n,r);b.popperInstance&&(Q(),J().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));M("onAfterUpdate",[b,t])},setContent:function(e){b.setProps({content:e})},show:function(){0;var e=b.state.isVisible,t=b.state.isDestroyed,n=!b.state.isEnabled,r=pt.isTouch&&!b.props.touch,i=Ke(b.props.duration,0,xt.duration);if(e||t||n||r)return;if(j().hasAttribute("disabled"))return;if(M("onShow",[b],!1),!1===b.props.onShow(b))return;b.state.isVisible=!0,_()&&(w.style.visibility="visible");O(),F(),b.state.isMounted||(w.style.transition="none");if(_()){var o=T(),a=o.box,u=o.content;lt([a,u],0)}s=function(){var e;if(b.state.isVisible&&!f){if(f=!0,w.offsetHeight,w.style.transition=b.props.moveTransition,_()&&b.props.animation){var t=T(),n=t.box,r=t.content;lt([n,r],i),ct([n,r],"visible")}N(),I(),et(Bt,b),null==(e=b.popperInstance)||e.forceUpdate(),b.state.isMounted=!0,M("onMount",[b]),b.props.animation&&_()&&function(e,t){q(e,t)}(i,(function(){b.state.isShown=!0,M("onShown",[b])}))}},function(){var e,t=b.props.appendTo,n=j();e=b.props.interactive&&t===Ue||"parent"===t?n.parentNode:Qe(t,[n]);e.contains(w)||e.appendChild(w);Q(),!1}()},hide:function(){0;var e=!b.state.isVisible,t=b.state.isDestroyed,n=!b.state.isEnabled,r=Ke(b.props.duration,1,xt.duration);if(e||t||n)return;if(M("onHide",[b],!1),!1===b.props.onHide(b))return;b.state.isVisible=!1,b.state.isShown=!1,f=!1,d=!1,_()&&(w.style.visibility="hidden");if(L(),V(),O(),_()){var i=T(),o=i.box,a=i.content;b.props.animation&&(lt([o,a],r),ct([o,a],"hidden"))}N(),I(),b.props.animation?_()&&function(e,t){q(e,(function(){!b.state.isVisible&&w.parentNode&&w.parentNode.contains(w)&&t()}))}(r,b.unmount):b.unmount()},hideWithInteractivity:function(e){0;D().addEventListener("mousemove",g),et(Tt,g),g(e)},enable:function(){b.state.isEnabled=!0},disable:function(){b.hide(),b.state.isEnabled=!1},unmount:function(){0;b.state.isVisible&&b.hide();if(!b.state.isMounted)return;$(),J().forEach((function(e){e._tippy.unmount()})),w.parentNode&&w.parentNode.removeChild(w);Bt=Bt.filter((function(e){return e!==b})),b.state.isMounted=!1,M("onHidden",[b])},destroy:function(){0;if(b.state.isDestroyed)return;b.clearDelayTimeouts(),b.unmount(),H(),delete e._tippy,b.state.isDestroyed=!0,M("onDestroy",[b])}};if(!c.render)return b;var x=c.render(b),w=x.popper,E=x.onUpdate;w.setAttribute("data-tippy-root",""),w.id="tippy-"+b.id,b.popper=w,e._tippy=b,w._tippy=b;var k=m.map((function(e){return e.fn(b)})),P=e.hasAttribute("aria-expanded");return X(),I(),O(),M("onCreate",[b]),c.showOnCreate&&ee(),w.addEventListener("mouseenter",(function(){b.props.interactive&&b.state.isVisible&&b.clearDelayTimeouts()})),w.addEventListener("mouseleave",(function(){b.props.interactive&&b.props.trigger.indexOf("mouseenter")>=0&&D().addEventListener("mousemove",g)})),b;function S(){var e=b.props.touch;return Array.isArray(e)?e:[e,0]}function C(){return"hold"===S()[0]}function _(){var e;return!(null==(e=b.props.render)||!e.$$tippy)}function j(){return u||e}function D(){var e=j().parentNode;return e?dt(e):document}function T(){return _t(w)}function B(e){return b.state.isMounted&&!b.state.isVisible||pt.isTouch||o&&"focus"===o.type?0:Ke(b.props.delay,e?0:1,xt.delay)}function O(){w.style.pointerEvents=b.props.interactive&&b.state.isVisible?"":"none",w.style.zIndex=""+b.props.zIndex}function M(e,t,n){var r;(void 0===n&&(n=!0),k.forEach((function(n){n[e]&&n[e].apply(n,t)})),n)&&(r=b.props)[e].apply(r,t)}function N(){var t=b.props.aria;if(t.content){var n="aria-"+t.content,r=w.id;Je(b.props.triggerTarget||e).forEach((function(e){var t=e.getAttribute(n);if(b.state.isVisible)e.setAttribute(n,t?t+" "+r:r);else{var i=t&&t.replace(r,"").trim();i?e.setAttribute(n,i):e.removeAttribute(n)}}))}}function I(){!P&&b.props.aria.expanded&&Je(b.props.triggerTarget||e).forEach((function(e){b.props.interactive?e.setAttribute("aria-expanded",b.state.isVisible&&e===j()?"true":"false"):e.removeAttribute("aria-expanded")}))}function L(){D().removeEventListener("mousemove",g),Tt=Tt.filter((function(e){return e!==g}))}function A(t){if(!pt.isTouch||!p&&"mousedown"!==t.type){var n=t.composedPath&&t.composedPath()[0]||t.target;if(!b.props.interactive||!function(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}(w,n)){if(-1!==Je(b.props.triggerTarget||e).indexOf(n)){if(pt.isTouch)return;if(b.state.isVisible&&b.props.trigger.indexOf("click")>=0)return}else M("onClickOutside",[b,t]);!0===b.props.hideOnClick&&(b.clearDelayTimeouts(),b.hide(),h=!0,setTimeout((function(){h=!1})),b.state.isMounted||V())}}}function z(){p=!0}function R(){p=!1}function F(){var e=D();e.addEventListener("mousedown",A,!0),e.addEventListener("touchend",A,Ge),e.addEventListener("touchstart",R,Ge),e.addEventListener("touchmove",z,Ge)}function V(){var e=D();e.removeEventListener("mousedown",A,!0),e.removeEventListener("touchend",A,Ge),e.removeEventListener("touchstart",R,Ge),e.removeEventListener("touchmove",z,Ge)}function q(e,t){var n=T().box;function r(e){e.target===n&&(ht(n,"remove",r),t())}if(0===e)return t();ht(n,"remove",a),ht(n,"add",r),a=r}function Y(t,n,r){void 0===r&&(r=!1),Je(b.props.triggerTarget||e).forEach((function(e){e.addEventListener(t,n,r),v.push({node:e,eventType:t,handler:n,options:r})}))}function X(){var e;C()&&(Y("touchstart",W,{passive:!0}),Y("touchend",U,{passive:!0})),(e=b.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(Y(e,W),e){case"mouseenter":Y("mouseleave",U);break;case"focus":Y(mt?"focusout":"blur",K);break;case"focusin":Y("focusout",K)}}))}function H(){v.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,i=e.options;t.removeEventListener(n,r,i)})),v=[]}function W(e){var t,n=!1;if(b.state.isEnabled&&!Z(e)&&!h){var r="focus"===(null==(t=o)?void 0:t.type);o=e,u=e.currentTarget,I(),!b.state.isVisible&&at(e)&&Tt.forEach((function(t){return t(e)})),"click"===e.type&&(b.props.trigger.indexOf("mouseenter")<0||d)&&!1!==b.props.hideOnClick&&b.state.isVisible?n=!0:ee(e),"click"===e.type&&(d=!n),n&&!r&&te(e)}}function G(e){var t=e.target,n=j().contains(t)||w.contains(t);if("mousemove"!==e.type||!n){var r=J().concat(w).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:c}:null})).filter(Boolean);(function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,i=e.popperState,o=e.props.interactiveBorder,a=tt(i.placement),s=i.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,l="top"===a?s.bottom.y:0,c="right"===a?s.left.x:0,d="left"===a?s.right.x:0,h=t.top-r+u>o,p=r-t.bottom-l>o,f=t.left-n+c>o,v=n-t.right-d>o;return h||p||f||v}))})(r,e)&&(L(),te(e))}}function U(e){Z(e)||b.props.trigger.indexOf("click")>=0&&d||(b.props.interactive?b.hideWithInteractivity(e):te(e))}function K(e){b.props.trigger.indexOf("focusin")<0&&e.target!==j()||b.props.interactive&&e.relatedTarget&&w.contains(e.relatedTarget)||te(e)}function Z(e){return!!pt.isTouch&&C()!==e.type.indexOf("touch")>=0}function Q(){$();var t=b.props,n=t.popperOptions,r=t.placement,i=t.offset,o=t.getReferenceClientRect,a=t.moveTransition,u=_()?_t(w).arrow:null,l=o?{getBoundingClientRect:o,contextElement:o.contextElement||j()}:e,c={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(_()){var n=T().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}},d=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!a}},c];_()&&u&&d.push({name:"arrow",options:{element:u,padding:3}}),d.push.apply(d,(null==n?void 0:n.modifiers)||[]),b.popperInstance=(0,qe.createPopper)(l,w,Object.assign({},n,{placement:r,onFirstUpdate:s,modifiers:d}))}function $(){b.popperInstance&&(b.popperInstance.destroy(),b.popperInstance=null)}function J(){return nt(w.querySelectorAll("[data-tippy-root]"))}function ee(e){b.clearDelayTimeouts(),e&&M("onTrigger",[b,e]),F();var t=B(!0),r=S(),i=r[0],o=r[1];pt.isTouch&&"hold"===i&&o&&(t=o),t?n=setTimeout((function(){b.show()}),t):b.show()}function te(e){if(b.clearDelayTimeouts(),M("onUntrigger",[b,e]),b.state.isVisible){if(!(b.props.trigger.indexOf("mouseenter")>=0&&b.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&d)){var t=B(!1);t?r=setTimeout((function(){b.state.isVisible&&b.hide()}),t):i=requestAnimationFrame((function(){b.hide()}))}}else V()}}function Mt(e,t){void 0===t&&(t={});var n=xt.plugins.concat(t.plugins||[]);document.addEventListener("touchstart",vt,Ge),window.addEventListener("blur",yt);var r=Object.assign({},t,{plugins:n}),i=ut(e).reduce((function(e,t){var n=t&&Ot(t,r);return n&&e.push(n),e}),[]);return ot(e)?i[0]:i}Mt.defaultProps=xt,Mt.setDefaultProps=function(e){Object.keys(e).forEach((function(t){xt[t]=e[t]}))},Mt.currentInput=pt;Object.assign({},qe.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}});Mt.setDefaultProps({render:jt});const Nt=Mt;class It{open(e,t){let n=Nt(document.createElement("div"),{trigger:"manual",theme:"nx",interactive:!0,appendTo:document.body,content:t,getReferenceClientRect:e.getBoundingClientRect});return n.show(),n}hideAll(){var e,t,n,r;n=(t=void 0===e?{}:e).exclude,r=t.duration,Bt.forEach((function(e){var t=!1;if(n&&(t=st(n)?e.reference===n:e.popper===n.popper),!t){var i=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:i})}}))}}class Lt{constructor(e=!1,t=!1){var n,r;this.showAffected=!1,this.groupByFolder=!1,this.selectAffectedSubject=new C,this.selectAllSubject=new C,this.deselectAllSubject=new C,this.groupByFolderSubject=new C,this.searchByDepthSubject=new j(1),this.searchByDepthEnabledSubject=new j(!1),this.searchDepthChangesSubject=new C,this.selectAffected$=this.selectAffectedSubject.asObservable(),this.selectAll$=this.selectAllSubject.asObservable(),this.deselectAll$=this.deselectAllSubject.asObservable(),this.groupByFolder$=this.groupByFolderSubject.asObservable(),this.searchDepth$=$([this.searchByDepthSubject,this.searchByDepthEnabledSubject]).pipe(F((([e,t])=>t?e:-1)),(function(e){return e.lift(new ye(n,r))})),this.searchDepthDisplay=void 0,this.showAffected=e,this.groupByFolder=t,this.searchDepthChangesSubject.pipe(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){var n;"function"==typeof e[e.length-1]&&(n=e.pop());var r=e;return t.lift(new Ee(r,n))}}(this.searchByDepthSubject)).subscribe((([e,t])=>{"decrement"===e&&t>1?this.searchByDepthSubject.next(t-1):"increment"===e&&this.searchByDepthSubject.next(t+1)})),this.searchByDepthSubject.subscribe((e=>{this.searchDepthDisplay&&(this.searchDepthDisplay.innerText=e.toString())}))}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div>\n <div class="mt-8 px-4">\n <button type="button" class="w-full flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50" data-cy="selectAllButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-gray-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" />\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z" />\n </svg>\n Show all projects\n </button>\n <button type="button" class="mt-3 w-full flex items-center px-4 py-2 border border-red-300 rounded-md shadow-sm text-sm font-medium text-red-500 bg-white hover:bg-red-50 hidden" data-cy="affectedButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-red-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z" />\n </svg>\n Show affected projects\n </button>\n <button type="button" class="mt-3 w-full flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50" data-cy="deselectAllButton">\n <svg xmlns="http://www.w3.org/2000/svg" class="-ml-1 mr-2 h-5 w-5 text-gray-500" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l3.59 3.59m0 0A9.953 9.953 0 0112 5c4.478 0 8.268 2.943 9.543 7a10.025 10.025 0 01-4.132 5.411m0 0L21 21" />\n </svg>\n Hide all projects\n </button>\n </div>\n \n <div class="mt-8 px-4">\n <div class="flex items-start">\n <div class="flex items-center h-5">\n <input id="displayOptions" name="displayOptions" value="groupByFolder" type="checkbox" class="h-4 w-4 border-gray-300 rounded">\n </div>\n <div class="ml-3 text-sm">\n <label for="displayOptions" class="cursor-pointer font-medium text-gray-700">Group by folder</label>\n <p class="text-gray-500">Visually arrange libraries by folders with different colors.</p>\n </div>\n </div>\n </div>\n \n <div class="mt-4 px-4">\n <div class="mt-4 flex items-start">\n <div class="flex items-center h-5">\n <input id="depthFilter" name="depthFilter" value="groupByFolder" type="checkbox" class="h-4 w-4 border-gray-300 rounded">\n </div>\n <div class="ml-3 text-sm">\n <label for="depthFilter" class="cursor-pointer font-medium text-gray-700">Activate proximity</label>\n <p class="text-gray-500">Explore connected libraries step by step.</p>\n </div>\n </div>\n <div class="mt-3 px-10">\n <div class="flex rounded-md shadow-sm text-gray-500">\n <button id="depthFilterDecrement" title="Remove ancestor level" class="inline-flex items-center py-2 px-4 rounded-l-md border border-gray-300 bg-gray-50 text-gray-500 hover:bg-gray-100">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20 12H4" />\n </svg>\n </button>\n <span id="depthFilterValue" class="p-1.5 bg-white flex-1 block w-full rounded-none border-t border-b border-gray-300 text-center font-mono">1</span>\n <button id="depthFilterIncrement" title="Add ancestor level" class="inline-flex items-center py-2 px-4 rounded-r-md border border-gray-300 bg-gray-50 text-gray-500 hover:bg-gray-100">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 6v6m0 0v6m0-6h6m-6 0H6" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}render(e){Pe(e);const t=Lt.renderHtmlTemplate(),n=t.querySelector('[data-cy="affectedButton"]');this.showAffected&&(n.classList.remove("hidden"),n.addEventListener("click",(()=>this.selectAffectedSubject.next())));t.querySelector('[data-cy="selectAllButton"]').addEventListener("click",(()=>{this.selectAllSubject.next()}));t.querySelector('[data-cy="deselectAllButton"]').addEventListener("click",(()=>{this.deselectAllSubject.next()}));const r=t.querySelector("#displayOptions");r.checked=this.groupByFolder,r.addEventListener("change",(e=>this.groupByFolderSubject.next(e.target.checked))),this.searchDepthDisplay=t.querySelector("#depthFilterValue");const i=t.querySelector("#depthFilterIncrement"),o=t.querySelector("#depthFilterDecrement"),a=t.querySelector("#depthFilter");i.addEventListener("click",(()=>{this.searchDepthChangesSubject.next("increment")})),o.addEventListener("click",(()=>{this.searchDepthChangesSubject.next("decrement")})),a.addEventListener("change",(e=>this.searchByDepthEnabledSubject.next(e.target.checked))),e.appendChild(t)}}class At{set projectName(e){this.render(e)}constructor(e){this.container=e,this.unfocusSubject=new C,this.unfocus$=this.unfocusSubject.asObservable(),this.render()}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div class="mt-10 px-4">\n <div class="p-2 shadow-sm bg-green-nx-base text-gray-50 border border-gray-200 rounded-md flex items-center group relative cursor-pointer overflow-hidden" data-cy="unfocusButton">\n <p class="truncate transition duration-200 ease-in-out group-hover:opacity-60">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 inline -mt-1 mr-1" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 9l3 3m0 0l-3 3m3-3H8m13 0a9 9 0 11-18 0 9 9 0 0118 0z" />\n </svg>\n <span id="focused-project-name">e2e-some-other-very-long-project-name</span>\n </p>\n <div class="absolute right-2 flex transition-all translate-x-32 transition duration-200 ease-in-out group-hover:translate-x-0 pl-2 rounded-md text-gray-700 items-center text-sm font-medium bg-white shadow-sm ring-1 ring-gray-500">\n Reset\n <span class="p-1 rounded-md">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" />\n </svg>\n </span>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}unfocusProject(){this.render()}render(e){Pe(this.container);const t=At.renderHtmlTemplate(),n=t.querySelector("#focused-project-name"),r=t.querySelector('[data-cy="unfocusButton"]');e&&""!==e?(n.innerText=`Focused on ${e}`,this.container.hidden=!1):this.container.hidden=!0,r.addEventListener("click",(()=>this.unfocusSubject.next())),this.container.appendChild(t)}}class zt{set projects(e){this._projects=e;const t=Object.values(this.selectedItems).filter((e=>"true"===e.dataset.active)).map((e=>e.dataset.project));this.render(),this.selectProjects(t)}get projects(){return this._projects}constructor(e){this.container=e,this.focusProjectSubject=new C,this.checkedProjectsChangeSubject=new C,this.selectedItems={},this.checkedProjectsChange$=this.checkedProjectsChangeSubject.asObservable(),this.focusProject$=this.focusProjectSubject.asObservable(),this._projects=[],this.render()}static renderHtmlItemTemplate(){const e=document.createElement("template");return e.innerHTML='\n <li class="text-xs text-gray-600 block cursor-default select-none relative py-1 pl-3 pr-9">\n <div class="flex items-center">\n <button type="button" class="flex rounded-md" title="Focus on this library">\n <span class="p-1 rounded-md flex items-center font-medium bg-white transition hover:bg-gray-50 shadow-sm ring-1 ring-gray-200">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" viewBox="0 0 20 20" fill="currentColor">\n <path d="M4 4a2 2 0 012-2h4.586A2 2 0 0112 2.586L15.414 6A2 2 0 0116 7.414V16a2 2 0 01-2 2h-1.528A6 6 0 004 9.528V4z" />\n <path fill-rule="evenodd" d="M8 10a4 4 0 00-3.446 6.032l-1.261 1.26a1 1 0 101.414 1.415l1.261-1.261A4 4 0 108 10zm-2 4a2 2 0 114 0 2 2 0 01-4 0z" clip-rule="evenodd" />\n </svg>\n </span>\n </button>\n <label class="font-mono font-normal ml-3 p-2 transition hover:bg-gray-50 cursor-pointer block rounded-md truncate w-full" data-project="project-name" data-active="false">\n project-name\n </label>\n </div>\n <span role="selection-icon" title="This library is visible" class="text-green-nx-base absolute inset-y-0 right-0 flex items-center cursor-pointer">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" />\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z" />\n </svg>\n </span>\n </li>\n '.trim(),e.content.firstChild}selectProjects(e){e.forEach((e=>{this.selectedItems[e]&&(this.selectedItems[e].dataset.active="true",this.selectedItems[e].dispatchEvent(new CustomEvent("change")))})),this.emitChanges()}setCheckedProjects(e){Object.keys(this.selectedItems).forEach((t=>{this.selectedItems[t].dataset.active=e.includes(t).toString(),this.selectedItems[t].dispatchEvent(new CustomEvent("change"))}))}checkAllProjects(){Object.values(this.selectedItems).forEach((e=>{e.dataset.active="true",e.dispatchEvent(new CustomEvent("change"))}))}uncheckAllProjects(){Object.values(this.selectedItems).forEach((e=>{e.dataset.active="false",e.dispatchEvent(new CustomEvent("change"))}))}uncheckProject(e){this.selectedItems[e].dataset.active="false",this.selectedItems[e].dispatchEvent(new CustomEvent("change"))}emitChanges(){const e=Object.values(this.selectedItems).filter((e=>"true"===e.dataset.active)).map((e=>e.dataset.project));this.checkedProjectsChangeSubject.next(e)}render(){Pe(this.container);const e=this.getProjectsByType("app"),t=this.getProjectsByType("lib"),n=this.getProjectsByType("e2e"),r=this.groupProjectsByDirectory(e),i=this.groupProjectsByDirectory(t),o=this.groupProjectsByDirectory(n),a=Object.keys(r).sort(),s=Object.keys(i).sort(),u=Object.keys(o).sort(),l=document.createElement("h2");l.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",l.textContent="App projects",this.container.append(l),a.forEach((e=>{this.createProjectList(e,r[e])}));const c=document.createElement("h2");c.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",c.textContent="E2E projects",this.container.append(c),u.forEach((e=>{this.createProjectList(e,o[e])}));const d=document.createElement("h2");d.className="mt-8 text-lg font-bold border-b border-gray-50 border-solid",d.textContent="Lib projects",this.container.append(d),s.forEach((e=>{this.createProjectList(e,i[e])}))}getProjectsByType(e){return this.projects.filter((t=>t.type===e)).sort(((e,t)=>e.name.localeCompare(t.name)))}groupProjectsByDirectory(e){let t={};return e.forEach((e=>{const n="app"===e.type||"e2e"===e.type?window.workspaceLayout.appsDir:window.workspaceLayout.libsDir,r=Ce(e.data.root,n).join("/");t.hasOwnProperty(r)||(t[r]=[]),t[r].push(e)})),t}createProjectList(e,t){const n=document.createElement("h3");n.className="mt-4 py-2 uppercase tracking-wide font-semibold text-sm lg:text-xs text-gray-900 cursor-text",n.textContent=e;const r=document.createElement("ul");r.className="mt-2 -ml-3",[...t].sort(((e,t)=>e.name.localeCompare(t.name))),t.forEach((e=>{const t=zt.renderHtmlItemTemplate(),n=t.querySelector('span[role="selection-icon"]');t.querySelector("button").addEventListener("click",(()=>this.focusProjectSubject.next(e.name)));const i=t.querySelector("label");i.innerText=e.name,i.dataset.project=e.name,i.dataset.active="false",n.classList.add("hidden"),i.addEventListener("click",(e=>{const t=e.target;t.dataset.active="false"===t.dataset.active?"true":"false",t.dispatchEvent(new CustomEvent("change")),this.emitChanges()})),i.addEventListener("change",(e=>{"false"===e.target.dataset.active?n.classList.add("hidden"):n.classList.remove("hidden")})),n.addEventListener("click",(()=>{i.dispatchEvent(new Event("click"))})),this.selectedItems[e.name]=i,r.append(t)})),this.container.append(n),this.container.append(r)}}class Rt{constructor(e){this.container=e,this.textInput=void 0,this.includeInPathCheckbox=void 0,this.changesSubject=new C,this.subscriptions=[],this.changes$=this.changesSubject.asObservable(),this.subscriptions.map((e=>e.unsubscribe())),this.render()}static renderHtmlTemplate(){const e=document.createElement("template");return e.innerHTML='\n <div>\n <div class="mt-10 px-4">\n <form class="flex rounded-md shadow-sm relative" onSubmit="return false">\n <span class="inline-flex items-center p-2 rounded-l-md border border-r-0 border-gray-300 bg-gray-50 text-gray-500">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z" />\n </svg>\n </span>\n <input type="text" class="p-1.5 bg-white text-gray-600 flex-1 block w-full rounded-none rounded-r-md border border-gray-300" placeholder="lib name, other lib name" data-cy="textFilterInput" name="filter">\n <button id="textFilterReset" type="reset" class="p-1 top-1 right-1 absolute bg-white inline-block rounded-md text-gray-500">\n <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">\n <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2M3 12l6.414 6.414a2 2 0 001.414.586H19a2 2 0 002-2V7a2 2 0 00-2-2h-8.172a2 2 0 00-1.414.586L3 12z" />\n </svg>\n </button>\n </form>\n </div>\n <div class="mt-4 px-4">\n <div class="flex items-start">\n <div class="flex items-center h-5">\n <input id="includeInPath" name="textFilterCheckbox" type="checkbox" value="includeInPath" class="h-4 w-4 border-gray-300 rounded" disabled>\n </div>\n <div class="ml-3 text-sm">\n <label for="includeInPath" class="font-medium text-gray-700 cursor-pointer">Include related libraries</label>\n <p class="text-gray-500">Show libraries that are related to your search.</p>\n </div>\n </div>\n </div>\n </div>\n '.trim(),e.content.firstChild}emitChanges(){this.changesSubject.next({text:this.textInput.value.toLowerCase(),includeInPath:this.includeInPathCheckbox.checked})}render(){Pe(this.container);const e=Rt.renderHtmlTemplate(),t=e.querySelector("#textFilterReset");var n,r,i,o;t.classList.add("hidden"),this.textInput=e.querySelector('input[type="text"]'),this.textInput.addEventListener("keyup",(e=>{"Enter"===e.key&&this.emitChanges(),this.textInput.value.length?(t.classList.remove("hidden"),this.includeInPathCheckbox.disabled=!1):(t.classList.add("hidden"),this.includeInPathCheckbox.disabled=!0)})),this.subscriptions.push(ce(this.textInput,"keyup").pipe((i=e=>"Enter"!==e.key,function(e){return e.lift(new he(i,o))}),(n=500,void 0===r&&(r=R),function(e){return e.lift(new fe(n,r))}),F((()=>this.emitChanges()))).subscribe()),this.includeInPathCheckbox=e.querySelector("#includeInPath"),this.includeInPathCheckbox.addEventListener("change",(()=>this.emitChanges())),t.addEventListener("click",(()=>{this.textInput.value="",this.includeInPathCheckbox.checked=!1,this.includeInPathCheckbox.disabled=!0,t.classList.add("hidden"),this.emitChanges()})),this.container.appendChild(e)}}class Ft{set projects(e){this.projectList.projects=e,this.focusedProjectPanel.unfocusProject()}constructor(e){this.affectedProjects=e,this.selectedProjectsChangedSubject=new j([]),this.groupByFolderChangedSubject=new j(window.groupByFolder),this.focusProjectSubject=new C,this.filterByTextSubject=new C,this.selectedProjectsChanged$=this.selectedProjectsChangedSubject.asObservable(),this.groupByFolderChanged$=this.groupByFolderChangedSubject.asObservable(),this.displayOptionsPanel=void 0,this.focusedProjectPanel=void 0,this.textFilterPanel=void 0,this.projectList=void 0,this.groupByFolder=window.groupByFolder,this.selectedProjects=[];const t=this.affectedProjects.length>0,n=document.getElementById("display-options-panel");this.displayOptionsPanel=new Lt(t,this.groupByFolder),this.displayOptionsPanel.render(n);const r=document.getElementById("focused-project");this.focusedProjectPanel=new At(r);const i=document.getElementById("text-filter-panel");this.textFilterPanel=new Rt(i);const o=document.getElementById("project-lists");this.projectList=new zt(o),this.projectList.projects=window.projects,t&&this.selectAffectedProjects(),window.focusProject=e=>{this.focusProjectSubject.next(e)},window.excludeProject=e=>{this.excludeProject(e)},this.listenForDOMEvents(),null!==window.focusedProject&&this.focusProject(window.focusedProject),window.exclude.length>0&&window.exclude.forEach((e=>this.excludeProject(e)))}selectProjects(e){this.projectList.selectProjects(e)}resetSidebarVisibility(){const e=document.getElementById("sidebar");e.classList.contains("hidden")&&(e.classList.remove("hidden"),e.style.marginLeft="0px")}listenForDOMEvents(){this.displayOptionsPanel.selectAll$.subscribe((()=>{this.selectAllProjects()})),this.displayOptionsPanel.deselectAll$.subscribe((()=>{this.deselectAllProjects()})),this.displayOptionsPanel.selectAffected$.subscribe((()=>{this.selectAffectedProjects()})),this.displayOptionsPanel.groupByFolder$.subscribe((e=>{this.groupByFolderChangedSubject.next(e)})),this.focusedProjectPanel.unfocus$.subscribe((()=>{this.unfocusProject()})),this.textFilterPanel.changes$.subscribe((e=>{this.filterByTextSubject.next(e)})),$([this.filterByTextSubject,this.displayOptionsPanel.searchDepth$]).subscribe((([e,t])=>{e.text&&e.text.length?this.filterProjectsByText(e.text,e.includeInPath,t):this.deselectAllProjects()})),this.projectList.checkedProjectsChange$.subscribe((e=>{this.emitSelectedProjects(e)})),this.projectList.focusProject$.subscribe((e=>{this.focusProjectSubject.next(e)})),$([this.focusProjectSubject,this.displayOptionsPanel.searchDepth$]).subscribe((([e,t])=>{e&&this.focusProject(e,t)}))}setFocusedProject(e=null){window.focusedProject=e,this.focusedProjectPanel.projectName=e?window.graph.nodes[e].name:null}selectAffectedProjects(){this.setFocusedProject(null),this.projectList.setCheckedProjects(this.affectedProjects),this.emitSelectedProjects(this.affectedProjects)}selectAllProjects(){this.setFocusedProject(null),this.projectList.checkAllProjects(),this.emitSelectedProjects(window.projects.map((e=>e.name)))}deselectAllProjects(){this.setFocusedProject(null),this.projectList.uncheckAllProjects(),this.emitSelectedProjects([])}focusProject(e,t=-1){this.filterByTextSubject.next({text:null,includeInPath:!1}),this.setFocusedProject(e);const n=window.projects.map((e=>e.name)).filter((n=>this.hasPath(e,n,[],1,t)||this.hasPath(n,e,[],1,t)));this.projectList.setCheckedProjects(n),this.emitSelectedProjects(n)}unfocusProject(){this.focusProjectSubject.next(null),this.setFocusedProject(null),this.projectList.uncheckAllProjects(),this.emitSelectedProjects([])}excludeProject(e){const t=[...this.selectedProjects];t.splice(this.selectedProjects.indexOf(e),1),this.projectList.uncheckProject(e),this.emitSelectedProjects(t)}emitSelectedProjects(e){this.selectedProjects=e,this.selectedProjectsChangedSubject.next(e)}filterProjectsByText(e,t,n){this.focusProjectSubject.next(null),this.setFocusedProject(null),this.projectList.uncheckAllProjects();const r=e.split(",").map((e=>e.trim())),i=new Set;window.projects.map((e=>e.name)).forEach((e=>{r.findIndex((t=>e.includes(t)))>-1&&(i.add(e),t&&window.projects.map((e=>e.name)).forEach((t=>{(this.hasPath(e,t,[],1,n)||this.hasPath(t,e,[],1,n))&&i.add(t)})))}));const o=Array.from(i);this.projectList.setCheckedProjects(o),this.emitSelectedProjects(o)}hasPath(e,t,n,r,i=-1){if(e===t)return!0;if(-1===i||r<=i)for(let o of window.graph.dependencies[t]||[])if(!(n.indexOf(o.target)>-1)&&(n.push(o.target),this.hasPath(e,o.target,n,r+1,i)))return!0;return!1}}class Vt{constructor(e=Ve){this.config=e,this.sidebar=void 0,this.tooltipService=new It,this.graph=new Fe(this.tooltipService),this.debuggerPanel=void 0,this.windowResize$=ce(window,"resize").pipe(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=e[e.length-1];return M(n)?(e.pop(),function(t){return le(e,t,n)}):function(t){return le(e,t)}}({})),this.render$=new C,this.render$.subscribe((e=>this.render(e))),this.loadProjectGraph(e.defaultProjectGraph),!0===window.watch&&setInterval((()=>this.loadProjectGraph(e.defaultProjectGraph)),5e3)}async loadProjectGraph(e){const t=this.config.projectGraphs.find((t=>t.id===e)),n=await this.config.projectGraphService.getProjectGraph(t.url),r=null==n?void 0:n.layout,i=Object.values(n.projects).reduce(((e,t)=>(e[t.name]=t,e)),{}),o=window.graph?n.changes.added.filter((e=>!window.graph.nodes[e])):n.changes.added;window.projects=n.projects,window.graph={dependencies:n.dependencies,nodes:i},window.focusedProject=null,window.projectGraphList=this.config.projectGraphs,window.selectedProjectGraph=e,window.workspaceLayout=r,this.sidebar?this.render$.next({newProjects:o}):this.render$.next()}render(e){const t=document.getElementById("debugger-panel");this.config.showDebugger&&(t.hidden=!1,t.style.display="flex",this.debuggerPanel=new _e(t,window.projectGraphList),this.debuggerPanel.selectProject$.subscribe((e=>{this.loadProjectGraph(e),this.sidebar.resetSidebarVisibility()}))),this.graph.projectGraph=window.graph;const n=window.affected;this.graph.affectedProjects=n,this.sidebar?(this.sidebar.projects=window.projects,(null==e?void 0:e.newProjects.length)>0&&this.sidebar.selectProjects(e.newProjects)):this.sidebar=new Ft(n),$([this.sidebar.selectedProjectsChanged$,this.sidebar.groupByFolderChanged$,this.windowResize$]).pipe(be(this.render$)).subscribe((([e,t])=>{const n=[];e.forEach((e=>{window.graph.nodes[e]&&n.push(window.graph.nodes[e])})),0===n.length?document.getElementById("no-projects-chosen").style.display="flex":(document.getElementById("no-projects-chosen").style.display="none",this.graph.render(n,t))})),this.debuggerPanel&&this.graph.renderTimes$.pipe(be(this.render$)).subscribe((e=>this.debuggerPanel.renderTime=e))}}class qt{async getHash(){return new Promise((e=>e("some-hash")))}async getProjectGraph(e){return new Promise((e=>e(window.projectGraphResponse)))}}const Yt={environment:"release",appConfig:{showDebugger:!1,projectGraphs:[{id:"local",label:"local",url:"projectGraph.json"}],defaultProjectGraph:"local",projectGraphService:new class{async getHash(){const e=new Request("currentHash",{mode:"no-cors"});return(await fetch(e)).json()}async getProjectGraph(e){const t=new Request(e,{mode:"no-cors"});return(await fetch(t)).json()}}}};"dev-watch"===Yt.environment&&(window.watch=!0),"release"===Yt.environment&&"build"===window.localMode&&(Yt.appConfig.projectGraphService=new qt),setTimeout((()=>new Vt(Yt.appConfig)))},"1ajG":(e,t,n)=>{"use strict";n.r(t),n.d(t,{afterMain:()=>E,afterRead:()=>b,afterWrite:()=>S,applyStyles:()=>O,arrow:()=>Z,auto:()=>s,basePlacements:()=>u,beforeMain:()=>x,beforeRead:()=>y,beforeWrite:()=>k,bottom:()=>i,clippingParents:()=>d,computeStyles:()=>ee,createPopper:()=>Be,createPopperBase:()=>De,createPopperLite:()=>Te,detectOverflow:()=>ge,end:()=>c,eventListeners:()=>ne,flip:()=>ye,hide:()=>xe,left:()=>a,main:()=>w,modifierPhases:()=>C,offset:()=>we,placements:()=>g,popper:()=>p,popperGenerator:()=>je,popperOffsets:()=>Ee,preventOverflow:()=>ke,read:()=>m,reference:()=>f,right:()=>o,start:()=>l,top:()=>r,variationPlacements:()=>v,viewport:()=>h,write:()=>P});var r="top",i="bottom",o="right",a="left",s="auto",u=[r,i,o,a],l="start",c="end",d="clippingParents",h="viewport",p="popper",f="reference",v=u.reduce((function(e,t){return e.concat([t+"-"+l,t+"-"+c])}),[]),g=[].concat(u,[s]).reduce((function(e,t){return e.concat([t,t+"-"+l,t+"-"+c])}),[]),y="beforeRead",m="read",b="afterRead",x="beforeMain",w="main",E="afterMain",k="beforeWrite",P="write",S="afterWrite",C=[y,m,b,x,w,E,k,P,S];function _(e){return e?(e.nodeName||"").toLowerCase():null}function j(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function D(e){return e instanceof j(e).Element||e instanceof Element}function T(e){return e instanceof j(e).HTMLElement||e instanceof HTMLElement}function B(e){return"undefined"!=typeof ShadowRoot&&(e instanceof j(e).ShadowRoot||e instanceof ShadowRoot)}const O={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];T(i)&&_(i)&&(Object.assign(i.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});T(r)&&_(r)&&(Object.assign(r.style,o),Object.keys(i).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};function M(e){return e.split("-")[0]}function N(e,t){void 0===t&&(t=!1);var n=e.getBoundingClientRect();return{width:n.width/1,height:n.height/1,top:n.top/1,right:n.right/1,bottom:n.bottom/1,left:n.left/1,x:n.left/1,y:n.top/1}}function I(e){var t=N(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function L(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&B(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function A(e){return j(e).getComputedStyle(e)}function z(e){return["table","td","th"].indexOf(_(e))>=0}function R(e){return((D(e)?e.ownerDocument:e.document)||window.document).documentElement}function F(e){return"html"===_(e)?e:e.assignedSlot||e.parentNode||(B(e)?e.host:null)||R(e)}function V(e){return T(e)&&"fixed"!==A(e).position?e.offsetParent:null}function q(e){for(var t=j(e),n=V(e);n&&z(n)&&"static"===A(n).position;)n=V(n);return n&&("html"===_(n)||"body"===_(n)&&"static"===A(n).position)?t:n||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&T(e)&&"fixed"===A(e).position)return null;for(var n=F(e);T(n)&&["html","body"].indexOf(_(n))<0;){var r=A(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}function Y(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var X=Math.max,H=Math.min,W=Math.round;function G(e,t,n){return X(e,H(t,n))}function U(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function K(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}const Z={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,s=e.name,l=e.options,c=n.elements.arrow,d=n.modifiersData.popperOffsets,h=M(n.placement),p=Y(h),f=[a,o].indexOf(h)>=0?"height":"width";if(c&&d){var v=function(e,t){return U("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:K(e,u))}(l.padding,n),g=I(c),y="y"===p?r:a,m="y"===p?i:o,b=n.rects.reference[f]+n.rects.reference[p]-d[p]-n.rects.popper[f],x=d[p]-n.rects.reference[p],w=q(c),E=w?"y"===p?w.clientHeight||0:w.clientWidth||0:0,k=b/2-x/2,P=v[y],S=E-g[f]-v[m],C=E/2-g[f]/2+k,_=G(P,C,S),j=p;n.modifiersData[s]=((t={})[j]=_,t.centerOffset=_-C,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&L(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Q(e){return e.split("-")[1]}var $={top:"auto",right:"auto",bottom:"auto",left:"auto"};function J(e){var t,n=e.popper,s=e.popperRect,u=e.placement,l=e.variation,d=e.offsets,h=e.position,p=e.gpuAcceleration,f=e.adaptive,v=e.roundOffsets,g=!0===v?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:W(W(t*r)/r)||0,y:W(W(n*r)/r)||0}}(d):"function"==typeof v?v(d):d,y=g.x,m=void 0===y?0:y,b=g.y,x=void 0===b?0:b,w=d.hasOwnProperty("x"),E=d.hasOwnProperty("y"),k=a,P=r,S=window;if(f){var C=q(n),_="clientHeight",D="clientWidth";C===j(n)&&"static"!==A(C=R(n)).position&&"absolute"===h&&(_="scrollHeight",D="scrollWidth"),C=C,u!==r&&(u!==a&&u!==o||l!==c)||(P=i,x-=C[_]-s.height,x*=p?1:-1),u!==a&&(u!==r&&u!==i||l!==c)||(k=o,m-=C[D]-s.width,m*=p?1:-1)}var T,B=Object.assign({position:h},f&&$);return p?Object.assign({},B,((T={})[P]=E?"0":"",T[k]=w?"0":"",T.transform=(S.devicePixelRatio||1)<=1?"translate("+m+"px, "+x+"px)":"translate3d("+m+"px, "+x+"px, 0)",T)):Object.assign({},B,((t={})[P]=E?x+"px":"",t[k]=w?m+"px":"",t.transform="",t))}const ee={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=void 0===r||r,o=n.adaptive,a=void 0===o||o,s=n.roundOffsets,u=void 0===s||s,l={placement:M(t.placement),variation:Q(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,J(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:u})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,J(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var te={passive:!0};const ne={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,o=void 0===i||i,a=r.resize,s=void 0===a||a,u=j(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&l.forEach((function(e){e.addEventListener("scroll",n.update,te)})),s&&u.addEventListener("resize",n.update,te),function(){o&&l.forEach((function(e){e.removeEventListener("scroll",n.update,te)})),s&&u.removeEventListener("resize",n.update,te)}},data:{}};var re={left:"right",right:"left",bottom:"top",top:"bottom"};function ie(e){return e.replace(/left|right|bottom|top/g,(function(e){return re[e]}))}var oe={start:"end",end:"start"};function ae(e){return e.replace(/start|end/g,(function(e){return oe[e]}))}function se(e){var t=j(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function ue(e){return N(R(e)).left+se(e).scrollLeft}function le(e){var t=A(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function ce(e){return["html","body","#document"].indexOf(_(e))>=0?e.ownerDocument.body:T(e)&&le(e)?e:ce(F(e))}function de(e,t){var n;void 0===t&&(t=[]);var r=ce(e),i=r===(null==(n=e.ownerDocument)?void 0:n.body),o=j(r),a=i?[o].concat(o.visualViewport||[],le(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(de(F(a)))}function he(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function pe(e,t){return t===h?he(function(e){var t=j(e),n=R(e),r=t.visualViewport,i=n.clientWidth,o=n.clientHeight,a=0,s=0;return r&&(i=r.width,o=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(a=r.offsetLeft,s=r.offsetTop)),{width:i,height:o,x:a+ue(e),y:s}}(e)):T(t)?function(e){var t=N(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(t):he(function(e){var t,n=R(e),r=se(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=X(n.scrollWidth,n.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=X(n.scrollHeight,n.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-r.scrollLeft+ue(e),u=-r.scrollTop;return"rtl"===A(i||n).direction&&(s+=X(n.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:u}}(R(e)))}function fe(e,t,n){var r="clippingParents"===t?function(e){var t=de(F(e)),n=["absolute","fixed"].indexOf(A(e).position)>=0&&T(e)?q(e):e;return D(n)?t.filter((function(e){return D(e)&&L(e,n)&&"body"!==_(e)})):[]}(e):[].concat(t),i=[].concat(r,[n]),o=i[0],a=i.reduce((function(t,n){var r=pe(e,n);return t.top=X(r.top,t.top),t.right=H(r.right,t.right),t.bottom=H(r.bottom,t.bottom),t.left=X(r.left,t.left),t}),pe(e,o));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function ve(e){var t,n=e.reference,s=e.element,u=e.placement,d=u?M(u):null,h=u?Q(u):null,p=n.x+n.width/2-s.width/2,f=n.y+n.height/2-s.height/2;switch(d){case r:t={x:p,y:n.y-s.height};break;case i:t={x:p,y:n.y+n.height};break;case o:t={x:n.x+n.width,y:f};break;case a:t={x:n.x-s.width,y:f};break;default:t={x:n.x,y:n.y}}var v=d?Y(d):null;if(null!=v){var g="y"===v?"height":"width";switch(h){case l:t[v]=t[v]-(n[g]/2-s[g]/2);break;case c:t[v]=t[v]+(n[g]/2-s[g]/2)}}return t}function ge(e,t){void 0===t&&(t={});var n=t,a=n.placement,s=void 0===a?e.placement:a,l=n.boundary,c=void 0===l?d:l,v=n.rootBoundary,g=void 0===v?h:v,y=n.elementContext,m=void 0===y?p:y,b=n.altBoundary,x=void 0!==b&&b,w=n.padding,E=void 0===w?0:w,k=U("number"!=typeof E?E:K(E,u)),P=m===p?f:p,S=e.rects.popper,C=e.elements[x?P:m],_=fe(D(C)?C:C.contextElement||R(e.elements.popper),c,g),j=N(e.elements.reference),T=ve({reference:j,element:S,strategy:"absolute",placement:s}),B=he(Object.assign({},S,T)),O=m===p?B:j,M={top:_.top-O.top+k.top,bottom:O.bottom-_.bottom+k.bottom,left:_.left-O.left+k.left,right:O.right-_.right+k.right},I=e.modifiersData.offset;if(m===p&&I){var L=I[s];Object.keys(M).forEach((function(e){var t=[o,i].indexOf(e)>=0?1:-1,n=[r,i].indexOf(e)>=0?"y":"x";M[e]+=L[n]*t}))}return M}const ye={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,c=e.name;if(!t.modifiersData[c]._skip){for(var d=n.mainAxis,h=void 0===d||d,p=n.altAxis,f=void 0===p||p,y=n.fallbackPlacements,m=n.padding,b=n.boundary,x=n.rootBoundary,w=n.altBoundary,E=n.flipVariations,k=void 0===E||E,P=n.allowedAutoPlacements,S=t.options.placement,C=M(S),_=y||(C===S||!k?[ie(S)]:function(e){if(M(e)===s)return[];var t=ie(e);return[ae(e),t,ae(t)]}(S)),j=[S].concat(_).reduce((function(e,n){return e.concat(M(n)===s?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,i=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?g:l,d=Q(r),h=d?s?v:v.filter((function(e){return Q(e)===d})):u,p=h.filter((function(e){return c.indexOf(e)>=0}));0===p.length&&(p=h);var f=p.reduce((function(t,n){return t[n]=ge(e,{placement:n,boundary:i,rootBoundary:o,padding:a})[M(n)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:n,boundary:b,rootBoundary:x,padding:m,flipVariations:k,allowedAutoPlacements:P}):n)}),[]),D=t.rects.reference,T=t.rects.popper,B=new Map,O=!0,N=j[0],I=0;I<j.length;I++){var L=j[I],A=M(L),z=Q(L)===l,R=[r,i].indexOf(A)>=0,F=R?"width":"height",V=ge(t,{placement:L,boundary:b,rootBoundary:x,altBoundary:w,padding:m}),q=R?z?o:a:z?i:r;D[F]>T[F]&&(q=ie(q));var Y=ie(q),X=[];if(h&&X.push(V[A]<=0),f&&X.push(V[q]<=0,V[Y]<=0),X.every((function(e){return e}))){N=L,O=!1;break}B.set(L,X)}if(O)for(var H=function(e){var t=j.find((function(t){var n=B.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return N=t,"break"},W=k?3:1;W>0;W--){if("break"===H(W))break}t.placement!==N&&(t.modifiersData[c]._skip=!0,t.placement=N,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function me(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function be(e){return[r,o,i,a].some((function(t){return e[t]>=0}))}const xe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=ge(t,{elementContext:"reference"}),s=ge(t,{altBoundary:!0}),u=me(a,r),l=me(s,i,o),c=be(u),d=be(l);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:l,isReferenceHidden:c,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":d})}};const we={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,i=e.name,s=n.offset,u=void 0===s?[0,0]:s,l=g.reduce((function(e,n){return e[n]=function(e,t,n){var i=M(e),s=[a,r].indexOf(i)>=0?-1:1,u="function"==typeof n?n(Object.assign({},t,{placement:e})):n,l=u[0],c=u[1];return l=l||0,c=(c||0)*s,[a,o].indexOf(i)>=0?{x:c,y:l}:{x:l,y:c}}(n,t.rects,u),e}),{}),c=l[t.placement],d=c.x,h=c.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=h),t.modifiersData[i]=l}};const Ee={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=ve({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};const ke={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,s=e.name,u=n.mainAxis,c=void 0===u||u,d=n.altAxis,h=void 0!==d&&d,p=n.boundary,f=n.rootBoundary,v=n.altBoundary,g=n.padding,y=n.tether,m=void 0===y||y,b=n.tetherOffset,x=void 0===b?0:b,w=ge(t,{boundary:p,rootBoundary:f,padding:g,altBoundary:v}),E=M(t.placement),k=Q(t.placement),P=!k,S=Y(E),C="x"===S?"y":"x",_=t.modifiersData.popperOffsets,j=t.rects.reference,D=t.rects.popper,T="function"==typeof x?x(Object.assign({},t.rects,{placement:t.placement})):x,B={x:0,y:0};if(_){if(c||h){var O="y"===S?r:a,N="y"===S?i:o,L="y"===S?"height":"width",A=_[S],z=_[S]+w[O],R=_[S]-w[N],F=m?-D[L]/2:0,V=k===l?j[L]:D[L],W=k===l?-D[L]:-j[L],U=t.elements.arrow,K=m&&U?I(U):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},$=Z[O],J=Z[N],ee=G(0,j[L],K[L]),te=P?j[L]/2-F-ee-$-T:V-ee-$-T,ne=P?-j[L]/2+F+ee+J+T:W+ee+J+T,re=t.elements.arrow&&q(t.elements.arrow),ie=re?"y"===S?re.clientTop||0:re.clientLeft||0:0,oe=t.modifiersData.offset?t.modifiersData.offset[t.placement][S]:0,ae=_[S]+te-oe-ie,se=_[S]+ne-oe;if(c){var ue=G(m?H(z,ae):z,A,m?X(R,se):R);_[S]=ue,B[S]=ue-A}if(h){var le="x"===S?r:a,ce="x"===S?i:o,de=_[C],he=de+w[le],pe=de-w[ce],fe=G(m?H(he,ae):he,de,m?X(pe,se):pe);_[C]=fe,B[C]=fe-de}}t.modifiersData[s]=B}},requiresIfExists:["offset"]};function Pe(e,t,n){void 0===n&&(n=!1);var r,i,o=T(t),a=T(t)&&function(e){var t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return 1!==n||1!==r}(t),s=R(t),u=N(e,a),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(o||!o&&!n)&&(("body"!==_(t)||le(s))&&(l=(r=t)!==j(r)&&T(r)?{scrollLeft:(i=r).scrollLeft,scrollTop:i.scrollTop}:se(r)),T(t)?((c=N(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):s&&(c.x=ue(s))),{x:u.left+l.scrollLeft-c.x,y:u.top+l.scrollTop-c.y,width:u.width,height:u.height}}function Se(e){var t=new Map,n=new Set,r=[];function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||i(e)})),r}var Ce={placement:"bottom",modifiers:[],strategy:"absolute"};function _e(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function je(e){void 0===e&&(e={});var t=e,n=t.defaultModifiers,r=void 0===n?[]:n,i=t.defaultOptions,o=void 0===i?Ce:i;return function(e,t,n){void 0===n&&(n=o);var i,a,s={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ce,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},u=[],l=!1,c={state:s,setOptions:function(n){var i="function"==typeof n?n(s.options):n;d(),s.options=Object.assign({},o,s.options,i),s.scrollParents={reference:D(e)?de(e):e.contextElement?de(e.contextElement):[],popper:de(t)};var a=function(e){var t=Se(e);return C.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}(function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}([].concat(r,s.options.modifiers)));return s.orderedModifiers=a.filter((function(e){return e.enabled})),s.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,i=e.effect;if("function"==typeof i){var o=i({state:s,name:t,instance:c,options:r}),a=function(){};u.push(o||a)}})),c.update()},forceUpdate:function(){if(!l){var e=s.elements,t=e.reference,n=e.popper;if(_e(t,n)){s.rects={reference:Pe(t,q(n),"fixed"===s.options.strategy),popper:I(n)},s.reset=!1,s.placement=s.options.placement,s.orderedModifiers.forEach((function(e){return s.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<s.orderedModifiers.length;r++)if(!0!==s.reset){var i=s.orderedModifiers[r],o=i.fn,a=i.options,u=void 0===a?{}:a,d=i.name;"function"==typeof o&&(s=o({state:s,options:u,name:d,instance:c})||s)}else s.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){c.forceUpdate(),e(s)}))},function(){return a||(a=new Promise((function(e){Promise.resolve().then((function(){a=void 0,e(i())}))}))),a}),destroy:function(){d(),l=!0}};if(!_e(e,t))return c;function d(){u.forEach((function(e){return e()})),u=[]}return c.setOptions(n).then((function(e){!l&&n.onFirstUpdate&&n.onFirstUpdate(e)})),c}}var De=je(),Te=je({defaultModifiers:[ne,Ee,ee,O]}),Be=je({defaultModifiers:[ne,Ee,ee,O,we,ye,ke,Z,xe]})},Ded0:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,(function(t){return e[t]}).bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){var r=n(1),i=function(e){e&&e("layout","dagre",r)};"undefined"!=typeof cytoscape&&i(cytoscape),e.exports=i},function(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}var i=n(2),o=n(3),a=n(4);function s(e){this.options=o({},i,e)}s.prototype.run=function(){var e=this.options,t=e.cy,n=e.eles,i=function(e,t){return"function"==typeof t?t.apply(e,[e]):t},o=e.boundingBox||{x1:0,y1:0,w:t.width(),h:t.height()};void 0===o.x2&&(o.x2=o.x1+o.w),void 0===o.w&&(o.w=o.x2-o.x1),void 0===o.y2&&(o.y2=o.y1+o.h),void 0===o.h&&(o.h=o.y2-o.y1);var s=new a.graphlib.Graph({multigraph:!0,compound:!0}),u={},l=function(e,t){null!=t&&(u[e]=t)};l("nodesep",e.nodeSep),l("edgesep",e.edgeSep),l("ranksep",e.rankSep),l("rankdir",e.rankDir),l("ranker",e.ranker),s.setGraph(u),s.setDefaultEdgeLabel((function(){return{}})),s.setDefaultNodeLabel((function(){return{}}));for(var c=n.nodes(),d=0;d<c.length;d++){var h=c[d],p=h.layoutDimensions(e);s.setNode(h.id(),{width:p.w,height:p.h,name:h.id()})}for(var f=0;f<c.length;f++){var v=c[f];v.isChild()&&s.setParent(v.id(),v.parent().id())}for(var g=n.edges().stdFilter((function(e){return!e.source().isParent()&&!e.target().isParent()})),y=0;y<g.length;y++){var m=g[y];s.setEdge(m.source().id(),m.target().id(),{minlen:i(m,e.minLen),weight:i(m,e.edgeWeight),name:m.id()},m.id())}a.layout(s);for(var b,x=s.nodes(),w=0;w<x.length;w++){var E=x[w],k=s.node(E);t.getElementById(E).scratch().dagre=k}return e.boundingBox?(b={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0},c.forEach((function(e){var t=e.scratch().dagre;b.x1=Math.min(b.x1,t.x),b.x2=Math.max(b.x2,t.x),b.y1=Math.min(b.y1,t.y),b.y2=Math.max(b.y2,t.y)})),b.w=b.x2-b.x1,b.h=b.y2-b.y1):b=o,c.layoutPositions(this,e,(function(t){var n=(t="object"===r(t)?t:this).scratch().dagre;return function(t){if(e.boundingBox){var n=0===b.w?0:(t.x-b.x1)/b.w,r=0===b.h?0:(t.y-b.y1)/b.h;return{x:o.x1+n*o.w,y:o.y1+r*o.h}}return t}({x:n.x,y:n.y})})),this},e.exports=s},function(e,t){var n={nodeSep:void 0,edgeSep:void 0,rankSep:void 0,rankDir:void 0,ranker:void 0,minLen:function(e){return 1},edgeWeight:function(e){return 1},fit:!0,padding:30,spacingFactor:void 0,nodeDimensionsIncludeLabels:!1,animate:!1,animateFilter:function(e,t){return!0},animationDuration:500,animationEasing:void 0,boundingBox:void 0,transform:function(e,t){return t},ready:function(){},stop:function(){}};e.exports=n},function(e,t){e.exports=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.forEach((function(t){Object.keys(t).forEach((function(n){return e[n]=t[n]}))})),e}},function(t,n){t.exports=e}])},e.exports=r(n("4e6e"))},CQyY:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(e,t,n){"use strict";e.exports=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.forEach((function(t){null!=t&&Object.keys(t).forEach((function(n){return e[n]=t[n]}))})),e}},function(e,t,n){"use strict";var r=n(5).getBoundingBox;e.exports={getRef:function(e,t){return{getBoundingClientRect:function(){return r(e,t)}}}}},function(e,t,n){"use strict";var r=n(0),i=n(1).getRef,o=n(6).getContent,a={},s=n(8).createPopper;e.exports={getPopper:function(e,t){var n=i(e,t),u=o(e,t.content),l=r({},a,t.popper);return s(n,u,l)}}},function(e,t,n){"use strict";var r=n(0),i=n(2).getPopper,o=n(1).getRef;function a(e,t){var n=function(e){return e.isNode()?{w:e.renderedWidth(),h:e.renderedHeight()}:{w:3,h:3}},i=e.cy(),o={renderedDimensions:n,renderedPosition:function(e){return e.isNode()?function(e,t){var n=e.renderedPosition(),r=t(e),i=r.w/2,o=r.h/2;return{x:n.x-i,y:n.y-o}}(e,n):function(e){var t=e.midpoint(),n=e.cy().pan(),r=e.cy().zoom();return{x:t.x*r+n.x,y:t.y*r+n.y}}(e)},popper:{},cy:i};return r({},o,t)}function s(e){e.length>1&&(console.warn("Popper.js Extension should only be used on one element."),console.warn("Ignoring all subsequent elements"))}e.exports={popper:function(e){return s(this),i(this[0],a(this[0],e))},popperRef:function(e){return s(this),o(this[0],a(this[0],e))}}},function(e,t,n){"use strict";var r=n(0),i=n(2).getPopper,o=n(1).getRef;function a(e,t){return r({},{boundingBox:{top:0,left:0,right:0,bottom:0,w:3,h:3},renderedDimensions:function(){return{w:3,h:3}},renderedPosition:function(){return{x:0,y:0}},popper:{},cy:e},t)}e.exports={popper:function(e){return i(this,a(this,e))},popperRef:function(e){return o(this,a(this,e))}}},function(e,t,n){"use strict";e.exports={getBoundingBox:function(e,t){var n=t.renderedPosition,r=t.cy,i=t.renderedDimensions,o=r.container().getBoundingClientRect(),a=i(e),s=n(e);return{top:s.y+o.top,left:s.x+o.left,right:s.x+a.w+o.left,bottom:s.y+a.h+o.top,width:a.w,height:a.h}}}},function(e,t,n){"use strict";e.exports={getContent:function(e,t){var n=null;if("function"!=typeof t){if(t instanceof HTMLElement)return t;throw new Error("Can not create popper from 'target' with unknown type")}if(null===(n=t(e)))throw new Error("No 'target' specified to create popper");return n}}},function(e,t,n){"use strict";var r=n(4),i=n(3),o=function(e){e&&(e("core","popper",r.popper),e("collection","popper",i.popper),e("core","popperRef",r.popperRef),e("collection","popperRef",i.popperRef))};"undefined"!=typeof cytoscape&&o(cytoscape),e.exports=o},function(t,n){t.exports=e}])},e.exports=r(n("1ajG"))},rFOX:(e,t,n)=>{"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var i=r(n("E/ZA")),o=r(n("3Ssf"));function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),e}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(u){i=!0,o=u}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var h="undefined"==typeof window?null:window,p=h?h.navigator:null,f=(h&&h.document,a("")),v=a({}),g=a((function(){})),y="undefined"==typeof HTMLElement?"undefined":a(HTMLElement),m=function(e){return e&&e.instanceString&&x(e.instanceString)?e.instanceString():null},b=function(e){return null!=e&&a(e)==f},x=function(e){return null!=e&&a(e)===g},w=function(e){return!S(e)&&(Array.isArray?Array.isArray(e):null!=e&&e instanceof Array)},E=function(e){return null!=e&&a(e)===v&&!w(e)&&e.constructor===Object},k=function(e){return null!=e&&a(e)===a(1)&&!isNaN(e)},P=function(e){return"undefined"===y?void 0:null!=e&&e instanceof HTMLElement},S=function(e){return C(e)||_(e)},C=function(e){return"collection"===m(e)&&e._private.single},_=function(e){return"collection"===m(e)&&!e._private.single},j=function(e){return"core"===m(e)},D=function(e){return"stylesheet"===m(e)},T=function(e){return null==e||!(""!==e&&!e.match(/^\s+$/))},B=function(e){return function(e){return null!=e&&a(e)===v}(e)&&x(e.then)},O=function(e,t){t||(t=function(){if(1===arguments.length)return arguments[0];if(0===arguments.length)return"undefined";for(var e=[],t=0;t<arguments.length;t++)e.push(arguments[t]);return e.join("$")});var n=function n(){var r,i=this,o=arguments,a=t.apply(i,o),s=n.cache;return(r=s[a])||(r=s[a]=e.apply(i,o)),r};return n.cache={},n},M=O((function(e){return e.replace(/([A-Z])/g,(function(e){return"-"+e.toLowerCase()}))})),N=O((function(e){return e.replace(/(-\w)/g,(function(e){return e[1].toUpperCase()}))})),I=O((function(e,t){return e+t[0].toUpperCase()+t.substring(1)}),(function(e,t){return e+"$"+t})),L=function(e){return T(e)?e:e.charAt(0).toUpperCase()+e.substring(1)},A="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",z=function(e,t){return e<t?-1:e>t?1:0},R=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments,n=1;n<t.length;n++){var r=t[n];if(null!=r)for(var i=Object.keys(r),o=0;o<i.length;o++){var a=i[o];e[a]=r[a]}}return e},F=function(e){return(w(e)?e:null)||function(e){return V[e.toLowerCase()]}(e)||function(e){if((4===e.length||7===e.length)&&"#"===e[0]){var t,n,r,i=16;return 4===e.length?(t=parseInt(e[1]+e[1],i),n=parseInt(e[2]+e[2],i),r=parseInt(e[3]+e[3],i)):(t=parseInt(e[1]+e[2],i),n=parseInt(e[3]+e[4],i),r=parseInt(e[5]+e[6],i)),[t,n,r]}}(e)||function(e){var t,n=new RegExp("^rgb[a]?\\(((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)(?:\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)$").exec(e);if(n){t=[];for(var r=[],i=1;i<=3;i++){var o=n[i];if("%"===o[o.length-1]&&(r[i]=!0),o=parseFloat(o),r[i]&&(o=o/100*255),o<0||o>255)return;t.push(Math.floor(o))}var a=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(a&&!s)return;var u=n[4];if(void 0!==u){if((u=parseFloat(u))<0||u>1)return;t.push(u)}}return t}(e)||function(e){var t,n,r,i,o,a,s,u;function l(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var c=new RegExp("^hsl[a]?\\(((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?)))\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])(?:\\s*,\\s*((?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)$").exec(e);if(c){if((n=parseInt(c[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(c[2]))<0||r>100)return;if(r/=100,(i=parseFloat(c[3]))<0||i>100)return;if(i/=100,void 0!==(o=c[4])&&((o=parseFloat(o))<0||o>1))return;if(0===r)a=s=u=Math.round(255*i);else{var d=i<.5?i*(1+r):i+r-i*r,h=2*i-d;a=Math.round(255*l(h,d,n+1/3)),s=Math.round(255*l(h,d,n)),u=Math.round(255*l(h,d,n-1/3))}t=[a,s,u,o]}return t}(e)},V={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},q=function(e){for(var t=e.map,n=e.keys,r=n.length,i=0;i<r;i++){var o=n[i];if(E(o))throw Error("Tried to set map with object key");i<n.length-1?(null==t[o]&&(t[o]={}),t=t[o]):t[o]=e.value}},Y=function(e){for(var t=e.map,n=e.keys,r=n.length,i=0;i<r;i++){var o=n[i];if(E(o))throw Error("Tried to get map with object key");if(null==(t=t[o]))return t}return t},X=h?h.performance:null,H=X&&X.now?function(){return X.now()}:function(){return Date.now()},W=function(){if(h){if(h.requestAnimationFrame)return function(e){h.requestAnimationFrame(e)};if(h.mozRequestAnimationFrame)return function(e){h.mozRequestAnimationFrame(e)};if(h.webkitRequestAnimationFrame)return function(e){h.webkitRequestAnimationFrame(e)};if(h.msRequestAnimationFrame)return function(e){h.msRequestAnimationFrame(e)}}return function(e){e&&setTimeout((function(){e(H())}),1e3/60)}}(),G=function(e){return W(e)},U=H,K=9261,Z=65599,Q=5381,$=function(e){for(var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K,r=n;!(t=e.next()).done;)r=r*Z+t.value|0;return r},J=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K;return t*Z+e|0},ee=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Q;return(t<<5)+t+e|0},te=function(e){return 2097152*e[0]+e[1]},ne=function(e,t){return[J(e[0],t[0]),ee(e[1],t[1])]},re=function(e,t){var n={value:0,done:!1},r=0,i=e.length;return $({next:function(){return r<i?n.value=e.charCodeAt(r++):n.done=!0,n}},t)},ie=function(){return oe(arguments)},oe=function(e){for(var t,n=0;n<e.length;n++){var r=e[n];t=0===n?re(r):re(r,t)}return t},ae=!0,se=null!=console.warn,ue=null!=console.trace,le=Number.MAX_SAFE_INTEGER||9007199254740991,ce=function(){return!0},de=function(){return!1},he=function(){return 0},pe=function(){},fe=function(e){throw new Error(e)},ve=function(e){if(void 0===e)return ae;ae=!!e},ge=function(e){ve()&&(se?console.warn(e):(console.log(e),ue&&console.trace()))},ye=function(e){return null==e?e:w(e)?e.slice():E(e)?function(e){return R({},e)}(e):e},me=function(e,t){for(t=e="";e++<36;t+=51*e&52?(15^e?8^Math.random()*(20^e?16:4):4).toString(16):"-");return t},be={},xe=function(){return be},we=function(e){var t=Object.keys(e);return function(n){for(var r={},i=0;i<t.length;i++){var o=t[i],a=null==n?void 0:n[o];r[o]=void 0===a?e[o]:a}return r}},Ee=function(e,t,n){for(var r=e.length-1;r>=0&&(e[r]!==t||(e.splice(r,1),!n));r--);},ke=function(e){e.splice(0,e.length)},Pe=function(e,t,n){return n&&(t=I(n,t)),e[t]},Se=function(e,t,n,r){n&&(t=I(n,t)),e[t]=r},Ce="undefined"!=typeof Map?Map:function(){function e(){s(this,e),this._obj={}}return l(e,[{key:"set",value:function(e,t){return this._obj[e]=t,this}},{key:"delete",value:function(e){return this._obj[e]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(e){return void 0!==this._obj[e]}},{key:"get",value:function(e){return this._obj[e]}}]),e}(),_e=function(){function e(t){if(s(this,e),this._obj=Object.create(null),this.size=0,null!=t){var n;n=null!=t.instanceString&&t.instanceString()===this.instanceString()?t.toArray():t;for(var r=0;r<n.length;r++)this.add(n[r])}}return l(e,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(e){var t=this._obj;1!==t[e]&&(t[e]=1,this.size++)}},{key:"delete",value:function(e){var t=this._obj;1===t[e]&&(t[e]=0,this.size--)}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(e){return 1===this._obj[e]}},{key:"toArray",value:function(){var e=this;return Object.keys(this._obj).filter((function(t){return e.has(t)}))}},{key:"forEach",value:function(e,t){return this.toArray().forEach(e,t)}}]),e}(),je="undefined"!==("undefined"==typeof Set?"undefined":a(Set))?Set:_e,De=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0!==e&&void 0!==t&&j(e)){var r=t.group;if(null==r&&(r=t.data&&null!=t.data.source&&null!=t.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!t.selected,selectable:void 0===t.selectable||!!t.selectable,locked:!!t.locked,grabbed:!1,grabbable:void 0===t.grabbable||!!t.grabbable,pannable:void 0===t.pannable?"edges"===r:!!t.pannable,active:!1,classes:new je,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==i.position.x&&(i.position.x=0),null==i.position.y&&(i.position.y=0),t.renderedPosition){var o=t.renderedPosition,a=e.pan(),s=e.zoom();i.position={x:(o.x-a.x)/s,y:(o.y-a.y)/s}}var u=[];w(t.classes)?u=t.classes:b(t.classes)&&(u=t.classes.split(/\s+/));for(var l=0,c=u.length;l<c;l++){var d=u[l];d&&""!==d&&i.classes.add(d)}this.createEmitter();var h=t.style||t.css;h&&(ge("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(h)),(void 0===n||n)&&this.restore()}else fe("An element must be of type `nodes` or `edges`; you specified `"+r+"`")}else fe("An element must have a core reference and parameters set")},Te=function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},function(t,n,r){var i;E(t)&&!S(t)&&(t=(i=t).roots||i.root,n=i.visit,r=i.directed),r=2!==arguments.length||x(n)?r:n,n=x(n)?n:function(){};for(var o,a=this._private.cy,s=t=b(t)?this.filter(t):t,u=[],l=[],c={},d={},h={},p=0,f=this.byGroup(),v=f.nodes,g=f.edges,y=0;y<s.length;y++){var m=s[y],w=m.id();m.isNode()&&(u.unshift(m),e.bfs&&(h[w]=!0,l.push(m)),d[w]=0)}var k=function(){var t=e.bfs?u.shift():u.pop(),i=t.id();if(e.dfs){if(h[i])return"continue";h[i]=!0,l.push(t)}var a,s=d[i],f=c[i],y=null!=f?f.source():null,m=null!=f?f.target():null,b=null==f?void 0:t.same(y)?m[0]:y[0];if(!0===(a=n(t,f,b,p++,s)))return o=t,"break";if(!1===a)return"break";for(var x=t.connectedEdges().filter((function(e){return(!r||e.source().same(t))&&g.has(e)})),w=0;w<x.length;w++){var E=x[w],k=E.connectedNodes().filter((function(e){return!e.same(t)&&v.has(e)})),P=k.id();0===k.length||h[P]||(k=k[0],u.push(k),e.bfs&&(h[P]=!0,l.push(k)),c[P]=E,d[P]=d[i]+1)}};e:for(;0!==u.length;){var P=k();switch(P){case"continue":continue;case"break":break e}}for(var C=a.collection(),_=0;_<l.length;_++){var j=l[_],D=c[j.id()];null!=D&&C.push(D),C.push(j)}return{path:a.collection(C),found:a.collection(o)}}},Be={breadthFirstSearch:Te({bfs:!0}),depthFirstSearch:Te({dfs:!0})};Be.bfs=Be.breadthFirstSearch,Be.dfs=Be.depthFirstSearch;var Oe=we({root:null,weight:function(e){return 1},directed:!1}),Me={dijkstra:function(e){if(!E(e)){var t=arguments;e={root:t[0],weight:t[1],directed:t[2]}}var n=Oe(e),r=n.root,i=n.weight,a=n.directed,s=this,u=i,l=b(r)?this.filter(r)[0]:r[0],c={},d={},h={},p=this.byGroup(),f=p.nodes,v=p.edges;v.unmergeBy((function(e){return e.isLoop()}));for(var g=function(e){return c[e.id()]},y=function(e,t){c[e.id()]=t,m.updateItem(e)},m=new o((function(e,t){return g(e)-g(t)})),x=0;x<f.length;x++){var w=f[x];c[w.id()]=w.same(l)?0:1/0,m.push(w)}for(var k=function(e,t){for(var n,r=(a?e.edgesTo(t):e.edgesWith(t)).intersect(v),i=1/0,o=0;o<r.length;o++){var s=r[o],l=u(s);(l<i||!n)&&(i=l,n=s)}return{edge:n,dist:i}};m.size()>0;){var P=m.pop(),S=g(P),C=P.id();if(h[C]=S,S!==1/0)for(var _=P.neighborhood().intersect(f),j=0;j<_.length;j++){var D=_[j],T=D.id(),B=k(P,D),O=S+B.dist;O<g(D)&&(y(D,O),d[T]={node:P,edge:B.edge})}}return{distanceTo:function(e){var t=b(e)?f.filter(e)[0]:e[0];return h[t.id()]},pathTo:function(e){var t=b(e)?f.filter(e)[0]:e[0],n=[],r=t,i=r.id();if(t.length>0)for(n.unshift(t);d[i];){var o=d[i];n.unshift(o.edge),n.unshift(o.node),i=(r=o.node).id()}return s.spawn(n)}}}},Ne={kruskal:function(e){e=e||function(e){return 1};for(var t=this.byGroup(),n=t.nodes,r=t.edges,i=n.length,o=new Array(i),a=n,s=function(e){for(var t=0;t<o.length;t++){if(o[t].has(e))return t}},u=0;u<i;u++)o[u]=this.spawn(n[u]);for(var l=r.sort((function(t,n){return e(t)-e(n)})),c=0;c<l.length;c++){var d=l[c],h=d.source()[0],p=d.target()[0],f=s(h),v=s(p),g=o[f],y=o[v];f!==v&&(a.merge(d),g.merge(y),o.splice(v,1))}return a}},Ie=we({root:null,goal:null,weight:function(e){return 1},heuristic:function(e){return 0},directed:!1}),Le={aStar:function(e){var t=this.cy(),n=Ie(e),r=n.root,i=n.goal,a=n.heuristic,s=n.directed,u=n.weight;r=t.collection(r)[0],i=t.collection(i)[0];var l,c,d=r.id(),h=i.id(),p={},f={},v={},g=new o((function(e,t){return f[e.id()]-f[t.id()]})),y=new je,m={},b={},x=function(e,t){g.push(e),y.add(t)};x(r,d),p[d]=0,f[d]=a(r);for(var w,E=0;g.size()>0;){if(l=g.pop(),c=l.id(),y.delete(c),E++,c===h){for(var k=[],P=i,S=h,C=b[S];k.unshift(P),null!=C&&k.unshift(C),null!=(P=m[S]);)C=b[S=P.id()];return{found:!0,distance:p[c],path:this.spawn(k),steps:E}}v[c]=!0;for(var _=l._private.edges,j=0;j<_.length;j++){var D=_[j];if(this.hasElementWithId(D.id())&&(!s||D.data("source")===c)){var T=D.source(),B=D.target(),O=T.id()!==c?T:B,M=O.id();if(this.hasElementWithId(M)&&!v[M]){var N=p[c]+u(D);w=M,y.has(w)?N<p[M]&&(p[M]=N,f[M]=N+a(O),m[M]=l,b[M]=D):(p[M]=N,f[M]=N+a(O),x(O,M),m[M]=l,b[M]=D)}}}}return{found:!1,distance:void 0,path:void 0,steps:E}}},Ae=we({weight:function(e){return 1},directed:!1}),ze={floydWarshall:function(e){for(var t=this.cy(),n=Ae(e),r=n.weight,i=n.directed,o=r,a=this.byGroup(),s=a.nodes,u=a.edges,l=s.length,c=l*l,d=function(e){return s.indexOf(e)},h=function(e){return s[e]},p=new Array(c),f=0;f<c;f++){var v=f%l,g=(f-v)/l;p[f]=g===v?0:1/0}for(var y=new Array(c),m=new Array(c),x=0;x<u.length;x++){var w=u[x],E=w.source()[0],k=w.target()[0];if(E!==k){var P=d(E),S=d(k),C=P*l+S,_=o(w);if(p[C]>_&&(p[C]=_,y[C]=S,m[C]=w),!i){var j=S*l+P;!i&&p[j]>_&&(p[j]=_,y[j]=P,m[j]=w)}}}for(var D=0;D<l;D++)for(var T=0;T<l;T++)for(var B=T*l+D,O=0;O<l;O++){var M=T*l+O,N=D*l+O;p[B]+p[N]<p[M]&&(p[M]=p[B]+p[N],y[M]=y[B])}var I=function(e){return d(function(e){return(b(e)?t.filter(e):e)[0]}(e))},L={distance:function(e,t){var n=I(e),r=I(t);return p[n*l+r]},path:function(e,n){var r=I(e),i=I(n),o=h(r);if(r===i)return o.collection();if(null==y[r*l+i])return t.collection();var a,s=t.collection(),u=r;for(s.merge(o);r!==i;)u=r,r=y[r*l+i],a=m[u*l+r],s.merge(a),s.merge(h(r));return s}};return L}},Re=we({weight:function(e){return 1},directed:!1,root:null}),Fe={bellmanFord:function(e){var t=this,n=Re(e),r=n.weight,i=n.directed,o=n.root,a=r,s=this,u=this.cy(),l=this.byGroup(),c=l.edges,d=l.nodes,h=d.length,p=new Ce,f=!1;o=u.collection(o)[0],c.unmergeBy((function(e){return e.isLoop()}));for(var v=c.length,g=function(e){var t=p.get(e.id());return t||(t={},p.set(e.id(),t)),t},y=function(e){return(b(e)?u.$(e):e)[0]},m=0;m<h;m++){var x=d[m],w=g(x);x.same(o)?w.dist=0:w.dist=1/0,w.pred=null,w.edge=null}for(var E=!1,k=function(e,t,n,r,i,o){var a=r.dist+o;a<i.dist&&!n.same(r.edge)&&(i.dist=a,i.pred=e,i.edge=n,E=!0)},P=1;P<h;P++){E=!1;for(var S=0;S<v;S++){var C=c[S],_=C.source(),j=C.target(),D=a(C),T=g(_),B=g(j);k(_,0,C,T,B,D),i||k(j,0,C,B,T,D)}if(!E)break}if(E)for(var O=0;O<v;O++){var M=c[O],N=M.source(),I=M.target(),L=a(M),A=g(N).dist,z=g(I).dist;if(A+L<z||!i&&z+L<A){ge("Graph contains a negative weight cycle for Bellman-Ford"),f=!0;break}}return{distanceTo:function(e){return g(y(e)).dist},pathTo:function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o,r=y(e),i=[],a=r;;){if(null==a)return t.spawn();var u=g(a),l=u.edge,c=u.pred;if(i.unshift(a[0]),a.same(n)&&i.length>0)break;null!=l&&i.unshift(l),a=c}return s.spawn(i)},hasNegativeWeightCycle:f,negativeWeightCycles:[]}}},Ve=Math.sqrt(2),qe=function(e,t,n){0===n.length&&fe("Karger-Stein must be run on a connected (sub)graph");for(var r=n[e],i=r[1],o=r[2],a=t[i],s=t[o],u=n,l=u.length-1;l>=0;l--){var c=u[l],d=c[1],h=c[2];(t[d]===a&&t[h]===s||t[d]===s&&t[h]===a)&&u.splice(l,1)}for(var p=0;p<u.length;p++){var f=u[p];f[1]===s?(u[p]=f.slice(),u[p][1]=a):f[2]===s&&(u[p]=f.slice(),u[p][2]=a)}for(var v=0;v<t.length;v++)t[v]===s&&(t[v]=a);return u},Ye=function(e,t,n,r){for(;n>r;){var i=Math.floor(Math.random()*t.length);t=qe(i,e,t),n--}return t},Xe={kargerStein:function(){var e=this,t=this.byGroup(),n=t.nodes,r=t.edges;r.unmergeBy((function(e){return e.isLoop()}));var i=n.length,o=r.length,a=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),s=Math.floor(i/Ve);if(!(i<2)){for(var u=[],l=0;l<o;l++){var c=r[l];u.push([l,n.indexOf(c.source()),n.indexOf(c.target())])}for(var d=1/0,h=[],p=new Array(i),f=new Array(i),v=new Array(i),g=function(e,t){for(var n=0;n<i;n++)t[n]=e[n]},y=0;y<=a;y++){for(var m=0;m<i;m++)f[m]=m;var b=Ye(f,u.slice(),i,s),x=b.slice();g(f,v);var w=Ye(f,b,s,2),E=Ye(v,x,s,2);w.length<=E.length&&w.length<d?(d=w.length,h=w,g(f,p)):E.length<=w.length&&E.length<d&&(d=E.length,h=E,g(v,p))}for(var k=this.spawn(h.map((function(e){return r[e[0]]}))),P=this.spawn(),S=this.spawn(),C=p[0],_=0;_<p.length;_++){var j=p[_],D=n[_];j===C?P.merge(D):S.merge(D)}var T=function(t){var n=e.spawn();return t.forEach((function(t){n.merge(t),t.connectedEdges().forEach((function(t){e.contains(t)&&!k.contains(t)&&n.merge(t)}))})),n},B=[T(P),T(S)];return{cut:k,components:B,partition1:P,partition2:S}}fe("At least 2 nodes are required for Karger-Stein algorithm")}},He=function(e,t,n){return{x:e.x*t+n.x,y:e.y*t+n.y}},We=function(e,t,n){return{x:(e.x-n.x)/t,y:(e.y-n.y)/t}},Ge=function(e){return{x:e[0],y:e[1]}},Ue=function(e,t){return Math.atan2(t,e)-Math.PI/2},Ke=Math.log2||function(e){return Math.log(e)/Math.log(2)},Ze=function(e){return e>0?1:e<0?-1:0},Qe=function(e,t){return Math.sqrt($e(e,t))},$e=function(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r},Je=function(e){for(var t=e.length,n=0,r=0;r<t;r++)n+=e[r];for(var i=0;i<t;i++)e[i]=e[i]/n;return e},et=function(e,t,n,r){return(1-r)*(1-r)*e+2*(1-r)*r*t+r*r*n},tt=function(e,t,n,r){return{x:et(e.x,t.x,n.x,r),y:et(e.y,t.y,n.y,r)}},nt=function(e,t,n){return Math.max(e,Math.min(n,t))},rt=function(e){if(null==e)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(null!=e.x1&&null!=e.y1){if(null!=e.x2&&null!=e.y2&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(null!=e.w&&null!=e.h&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},it=function(e,t,n){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},ot=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},at=function(e){var t,n,r,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===o.length)t=n=r=i=o[0];else if(2===o.length)t=r=o[0],i=n=o[1];else if(4===o.length){var a=d(o,4);t=a[0],n=a[1],r=a[2],i=a[3]}return e.x1-=i,e.x2+=n,e.y1-=t,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},st=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},ut=function(e,t){return!(e.x1>t.x2)&&(!(t.x1>e.x2)&&(!(e.x2<t.x1)&&(!(t.x2<e.x1)&&(!(e.y2<t.y1)&&(!(t.y2<e.y1)&&(!(e.y1>t.y2)&&!(t.y1>e.y2)))))))},lt=function(e,t,n){return e.x1<=t&&t<=e.x2&&e.y1<=n&&n<=e.y2},ct=function(e,t){return lt(e,t.x1,t.y1)&&lt(e,t.x2,t.y2)},dt=function(e,t,n,r,i,o,a){var s,u=Dt(i,o),l=i/2,c=o/2,d=r-c-a;if((s=kt(e,t,n,r,n-l+u-a,d,n+l-u+a,d,!1)).length>0)return s;var h=n+l+a;if((s=kt(e,t,n,r,h,r-c+u-a,h,r+c-u+a,!1)).length>0)return s;var p=r+c+a;if((s=kt(e,t,n,r,n-l+u-a,p,n+l-u+a,p,!1)).length>0)return s;var f,v=n-l-a;if((s=kt(e,t,n,r,v,r-c+u-a,v,r+c-u+a,!1)).length>0)return s;var g=n-l+u,y=r-c+u;if((f=wt(e,t,n,r,g,y,u+a)).length>0&&f[0]<=g&&f[1]<=y)return[f[0],f[1]];var m=n+l-u,b=r-c+u;if((f=wt(e,t,n,r,m,b,u+a)).length>0&&f[0]>=m&&f[1]<=b)return[f[0],f[1]];var x=n+l-u,w=r+c-u;if((f=wt(e,t,n,r,x,w,u+a)).length>0&&f[0]>=x&&f[1]>=w)return[f[0],f[1]];var E=n-l+u,k=r+c-u;return(f=wt(e,t,n,r,E,k,u+a)).length>0&&f[0]<=E&&f[1]>=k?[f[0],f[1]]:[]},ht=function(e,t,n,r,i,o,a){var s=a,u=Math.min(n,i),l=Math.max(n,i),c=Math.min(r,o),d=Math.max(r,o);return u-s<=e&&e<=l+s&&c-s<=t&&t<=d+s},pt=function(e,t,n,r,i,o,a,s,u){var l=Math.min(n,a,i)-u,c=Math.max(n,a,i)+u,d=Math.min(r,s,o)-u,h=Math.max(r,s,o)+u;return!(e<l||e>c||t<d||t>h)},ft=function(e,t,n,r,i,o,a,s){var u=[];!function(e,t,n,r,i){var o,a,s,u,l,c,d,h;0===e&&(e=1e-5),s=-27*(r/=e)+(t/=e)*(9*(n/=e)-t*t*2),o=(a=(3*n-t*t)/9)*a*a+(s/=54)*s,i[1]=0,d=t/3,o>0?(l=(l=s+Math.sqrt(o))<0?-Math.pow(-l,1/3):Math.pow(l,1/3),c=(c=s-Math.sqrt(o))<0?-Math.pow(-c,1/3):Math.pow(c,1/3),i[0]=-d+l+c,d+=(l+c)/2,i[4]=i[2]=-d,d=Math.sqrt(3)*(-c+l)/2,i[3]=d,i[5]=-d):(i[5]=i[3]=0,0===o?(h=s<0?-Math.pow(-s,1/3):Math.pow(s,1/3),i[0]=2*h-d,i[4]=i[2]=-(h+d)):(u=(a=-a)*a*a,u=Math.acos(s/Math.sqrt(u)),h=2*Math.sqrt(a),i[0]=-d+h*Math.cos(u/3),i[2]=-d+h*Math.cos((u+2*Math.PI)/3),i[4]=-d+h*Math.cos((u+4*Math.PI)/3)))}(1*n*n-4*n*i+2*n*a+4*i*i-4*i*a+a*a+r*r-4*r*o+2*r*s+4*o*o-4*o*s+s*s,9*n*i-3*n*n-3*n*a-6*i*i+3*i*a+9*r*o-3*r*r-3*r*s-6*o*o+3*o*s,3*n*n-6*n*i+n*a-n*e+2*i*i+2*i*e-a*e+3*r*r-6*r*o+r*s-r*t+2*o*o+2*o*t-s*t,1*n*i-n*n+n*e-i*e+r*o-r*r+r*t-o*t,u);for(var l=[],c=0;c<6;c+=2)Math.abs(u[c+1])<1e-7&&u[c]>=0&&u[c]<=1&&l.push(u[c]);l.push(1),l.push(0);for(var d,h,p,f=-1,v=0;v<l.length;v++)d=Math.pow(1-l[v],2)*n+2*(1-l[v])*l[v]*i+l[v]*l[v]*a,h=Math.pow(1-l[v],2)*r+2*(1-l[v])*l[v]*o+l[v]*l[v]*s,p=Math.pow(d-e,2)+Math.pow(h-t,2),f>=0?p<f&&(f=p):f=p;return f},vt=function(e,t,n,r,i,o){var a=[e-n,t-r],s=[i-n,o-r],u=s[0]*s[0]+s[1]*s[1],l=a[0]*a[0]+a[1]*a[1],c=a[0]*s[0]+a[1]*s[1],d=c*c/u;return c<0?l:d>u?(e-i)*(e-i)+(t-o)*(t-o):l-d},gt=function(e,t,n){for(var r,i,o,a,s=0,u=0;u<n.length/2;u++)if(r=n[2*u],i=n[2*u+1],u+1<n.length/2?(o=n[2*(u+1)],a=n[2*(u+1)+1]):(o=n[2*(u+1-n.length/2)],a=n[2*(u+1-n.length/2)+1]),r==e&&o==e);else{if(!(r>=e&&e>=o||r<=e&&e<=o))continue;(e-r)/(o-r)*(a-i)+i>t&&s++}return s%2!=0},yt=function(e,t,n,r,i,o,a,s,u){var l,c=new Array(n.length);null!=s[0]?(l=Math.atan(s[1]/s[0]),s[0]<0?l+=Math.PI/2:l=-l-Math.PI/2):l=s;for(var d,h=Math.cos(-l),p=Math.sin(-l),f=0;f<c.length/2;f++)c[2*f]=o/2*(n[2*f]*h-n[2*f+1]*p),c[2*f+1]=a/2*(n[2*f+1]*h+n[2*f]*p),c[2*f]+=r,c[2*f+1]+=i;if(u>0){var v=bt(c,-u);d=mt(v)}else d=c;return gt(e,t,d)},mt=function(e){for(var t,n,r,i,o,a,s,u,l=new Array(e.length/2),c=0;c<e.length/4;c++){t=e[4*c],n=e[4*c+1],r=e[4*c+2],i=e[4*c+3],c<e.length/4-1?(o=e[4*(c+1)],a=e[4*(c+1)+1],s=e[4*(c+1)+2],u=e[4*(c+1)+3]):(o=e[0],a=e[1],s=e[2],u=e[3]);var d=kt(t,n,r,i,o,a,s,u,!0);l[2*c]=d[0],l[2*c+1]=d[1]}return l},bt=function(e,t){for(var n,r,i,o,a=new Array(2*e.length),s=0;s<e.length/2;s++){n=e[2*s],r=e[2*s+1],s<e.length/2-1?(i=e[2*(s+1)],o=e[2*(s+1)+1]):(i=e[0],o=e[1]);var u=o-r,l=-(i-n),c=Math.sqrt(u*u+l*l),d=u/c,h=l/c;a[4*s]=n+d*t,a[4*s+1]=r+h*t,a[4*s+2]=i+d*t,a[4*s+3]=o+h*t}return a},xt=function(e,t,n,r,i,o,a){return e-=i,t-=o,(e/=n/2+a)*e+(t/=r/2+a)*t<=1},wt=function(e,t,n,r,i,o,a){var s=[n-e,r-t],u=[e-i,t-o],l=s[0]*s[0]+s[1]*s[1],c=2*(u[0]*s[0]+u[1]*s[1]),d=c*c-4*l*(u[0]*u[0]+u[1]*u[1]-a*a);if(d<0)return[];var h=(-c+Math.sqrt(d))/(2*l),p=(-c-Math.sqrt(d))/(2*l),f=Math.min(h,p),v=Math.max(h,p),g=[];if(f>=0&&f<=1&&g.push(f),v>=0&&v<=1&&g.push(v),0===g.length)return[];var y=g[0]*s[0]+e,m=g[0]*s[1]+t;return g.length>1?g[0]==g[1]?[y,m]:[y,m,g[1]*s[0]+e,g[1]*s[1]+t]:[y,m]},Et=function(e,t,n){return t<=e&&e<=n||n<=e&&e<=t?e:e<=t&&t<=n||n<=t&&t<=e?t:n},kt=function(e,t,n,r,i,o,a,s,u){var l=e-i,c=n-e,d=a-i,h=t-o,p=r-t,f=s-o,v=d*h-f*l,g=c*h-p*l,y=f*c-d*p;if(0!==y){var m=v/y,b=g/y,x=-.001;return x<=m&&m<=1.001&&x<=b&&b<=1.001||u?[e+m*c,t+m*p]:[]}return 0===v||0===g?Et(e,n,a)===a?[a,s]:Et(e,n,i)===i?[i,o]:Et(i,a,n)===n?[n,r]:[]:[]},Pt=function(e,t,n,r,i,o,a,s){var u,l,c,d,h,p,f=[],v=new Array(n.length),g=!0;if(null==o&&(g=!1),g){for(var y=0;y<v.length/2;y++)v[2*y]=n[2*y]*o+r,v[2*y+1]=n[2*y+1]*a+i;if(s>0){var m=bt(v,-s);l=mt(m)}else l=v}else l=n;for(var b=0;b<l.length/2;b++)c=l[2*b],d=l[2*b+1],b<l.length/2-1?(h=l[2*(b+1)],p=l[2*(b+1)+1]):(h=l[0],p=l[1]),0!==(u=kt(e,t,r,i,c,d,h,p)).length&&f.push(u[0],u[1]);return f},St=function(e,t,n){var r=[e[0]-t[0],e[1]-t[1]],i=Math.sqrt(r[0]*r[0]+r[1]*r[1]),o=(i-n)/i;return o<0&&(o=1e-5),[t[0]+o*r[0],t[1]+o*r[1]]},Ct=function(e,t){var n=jt(e,t);return n=_t(n)},_t=function(e){for(var t,n,r=e.length/2,i=1/0,o=1/0,a=-1/0,s=-1/0,u=0;u<r;u++)t=e[2*u],n=e[2*u+1],i=Math.min(i,t),a=Math.max(a,t),o=Math.min(o,n),s=Math.max(s,n);for(var l=2/(a-i),c=2/(s-o),d=0;d<r;d++)t=e[2*d]=e[2*d]*l,n=e[2*d+1]=e[2*d+1]*c,i=Math.min(i,t),a=Math.max(a,t),o=Math.min(o,n),s=Math.max(s,n);if(o<-1)for(var h=0;h<r;h++)n=e[2*h+1]=e[2*h+1]+(-1-o);return e},jt=function(e,t){var n=1/e*2*Math.PI,r=e%2==0?Math.PI/2+n/2:Math.PI/2;r+=t;for(var i,o=new Array(2*e),a=0;a<e;a++)i=a*n+r,o[2*a]=Math.cos(i),o[2*a+1]=Math.sin(-i);return o},Dt=function(e,t){return Math.min(e/4,t/4,8)},Tt=function(e,t){return Math.min(e/10,t/10,8)},Bt=function(e,t){return{heightOffset:Math.min(15,.05*t),widthOffset:Math.min(100,.25*e),ctrlPtOffsetPct:.05}},Ot=we({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(e){return 1}}),Mt={pageRank:function(e){for(var t=Ot(e),n=t.dampingFactor,r=t.precision,i=t.iterations,o=t.weight,a=this._private.cy,s=this.byGroup(),u=s.nodes,l=s.edges,c=u.length,d=c*c,h=l.length,p=new Array(d),f=new Array(c),v=(1-n)/c,g=0;g<c;g++){for(var y=0;y<c;y++){p[g*c+y]=0}f[g]=0}for(var m=0;m<h;m++){var b=l[m],x=b.data("source"),w=b.data("target");if(x!==w){var E=u.indexOfId(x),k=u.indexOfId(w),P=o(b);p[k*c+E]+=P,f[E]+=P}}for(var S=1/c+v,C=0;C<c;C++)if(0===f[C])for(var _=0;_<c;_++){p[_*c+C]=S}else for(var j=0;j<c;j++){var D=j*c+C;p[D]=p[D]/f[C]+v}for(var T,B=new Array(c),O=new Array(c),M=0;M<c;M++)B[M]=1;for(var N=0;N<i;N++){for(var I=0;I<c;I++)O[I]=0;for(var L=0;L<c;L++)for(var A=0;A<c;A++){var z=L*c+A;O[L]+=p[z]*B[A]}Je(O),T=B,B=O,O=T;for(var R=0,F=0;F<c;F++){var V=T[F]-B[F];R+=V*V}if(R<r)break}return{rank:function(e){return e=a.collection(e)[0],B[u.indexOf(e)]}}}},Nt=we({root:null,weight:function(e){return 1},directed:!1,alpha:0}),It={degreeCentralityNormalized:function(e){e=Nt(e);var t=this.cy(),n=this.nodes(),r=n.length;if(e.directed){for(var i={},o={},a=0,s=0,u=0;u<r;u++){var l=n[u],c=l.id();e.root=l;var d=this.degreeCentrality(e);a<d.indegree&&(a=d.indegree),s<d.outdegree&&(s=d.outdegree),i[c]=d.indegree,o[c]=d.outdegree}return{indegree:function(e){return 0==a?0:(b(e)&&(e=t.filter(e)),i[e.id()]/a)},outdegree:function(e){return 0===s?0:(b(e)&&(e=t.filter(e)),o[e.id()]/s)}}}for(var h={},p=0,f=0;f<r;f++){var v=n[f];e.root=v;var g=this.degreeCentrality(e);p<g.degree&&(p=g.degree),h[v.id()]=g.degree}return{degree:function(e){return 0===p?0:(b(e)&&(e=t.filter(e)),h[e.id()]/p)}}},degreeCentrality:function(e){e=Nt(e);var t=this.cy(),n=this,r=e,i=r.root,o=r.weight,a=r.directed,s=r.alpha;if(i=t.collection(i)[0],a){for(var u=i.connectedEdges(),l=u.filter((function(e){return e.target().same(i)&&n.has(e)})),c=u.filter((function(e){return e.source().same(i)&&n.has(e)})),d=l.length,h=c.length,p=0,f=0,v=0;v<l.length;v++)p+=o(l[v]);for(var g=0;g<c.length;g++)f+=o(c[g]);return{indegree:Math.pow(d,1-s)*Math.pow(p,s),outdegree:Math.pow(h,1-s)*Math.pow(f,s)}}for(var y=i.connectedEdges().intersection(n),m=y.length,b=0,x=0;x<y.length;x++)b+=o(y[x]);return{degree:Math.pow(m,1-s)*Math.pow(b,s)}}};It.dc=It.degreeCentrality,It.dcn=It.degreeCentralityNormalised=It.degreeCentralityNormalized;var Lt=we({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),At={closenessCentralityNormalized:function(e){for(var t=Lt(e),n=t.harmonic,r=t.weight,i=t.directed,o=this.cy(),a={},s=0,u=this.nodes(),l=this.floydWarshall({weight:r,directed:i}),c=0;c<u.length;c++){for(var d=0,h=u[c],p=0;p<u.length;p++)if(c!==p){var f=l.distance(h,u[p]);d+=n?1/f:f}n||(d=1/d),s<d&&(s=d),a[h.id()]=d}return{closeness:function(e){return 0==s?0:(e=b(e)?o.filter(e)[0].id():e.id(),a[e]/s)}}},closenessCentrality:function(e){var t=Lt(e),n=t.root,r=t.weight,i=t.directed,o=t.harmonic;n=this.filter(n)[0];for(var a=this.dijkstra({root:n,weight:r,directed:i}),s=0,u=this.nodes(),l=0;l<u.length;l++){var c=u[l];if(!c.same(n)){var d=a.distanceTo(c);s+=o?1/d:d}}return o?s:1/s}};At.cc=At.closenessCentrality,At.ccn=At.closenessCentralityNormalised=At.closenessCentralityNormalized;var zt=we({weight:null,directed:!1}),Rt={betweennessCentrality:function(e){for(var t=zt(e),n=t.directed,r=t.weight,i=null!=r,a=this.cy(),s=this.nodes(),u={},l={},c=0,d=function(e,t){l[e]=t,t>c&&(c=t)},h=function(e){return l[e]},p=0;p<s.length;p++){var f=s[p],v=f.id();u[v]=n?f.outgoers().nodes():f.openNeighborhood().nodes(),d(v,0)}for(var g=function(e){for(var t=s[e].id(),n=[],l={},c={},p={},f=new o((function(e,t){return p[e]-p[t]})),v=0;v<s.length;v++){var g=s[v].id();l[g]=[],c[g]=0,p[g]=1/0}for(c[t]=1,p[t]=0,f.push(t);!f.empty();){var y=f.pop();if(n.push(y),i)for(var m=0;m<u[y].length;m++){var b=u[y][m],x=a.getElementById(y),w=void 0;w=x.edgesTo(b).length>0?x.edgesTo(b)[0]:b.edgesTo(x)[0];var E=r(w);b=b.id(),p[b]>p[y]+E&&(p[b]=p[y]+E,f.nodes.indexOf(b)<0?f.push(b):f.updateItem(b),c[b]=0,l[b]=[]),p[b]==p[y]+E&&(c[b]=c[b]+c[y],l[b].push(y))}else for(var k=0;k<u[y].length;k++){var P=u[y][k].id();p[P]==1/0&&(f.push(P),p[P]=p[y]+1),p[P]==p[y]+1&&(c[P]=c[P]+c[y],l[P].push(y))}}for(var S={},C=0;C<s.length;C++)S[s[C].id()]=0;for(;n.length>0;){for(var _=n.pop(),j=0;j<l[_].length;j++){var D=l[_][j];S[D]=S[D]+c[D]/c[_]*(1+S[_])}_!=s[e].id()&&d(_,h(_)+S[_])}},y=0;y<s.length;y++)g(y);var m={betweenness:function(e){var t=a.collection(e).id();return h(t)},betweennessNormalized:function(e){if(0==c)return 0;var t=a.collection(e).id();return h(t)/c}};return m.betweennessNormalised=m.betweennessNormalized,m}};Rt.bc=Rt.betweennessCentrality;var Ft=we({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(e){return 1}]}),Vt=function(e,t){for(var n=0,r=0;r<t.length;r++)n+=t[r](e);return n},qt=function(e,t){for(var n,r=0;r<t;r++){n=0;for(var i=0;i<t;i++)n+=e[i*t+r];for(var o=0;o<t;o++)e[o*t+r]=e[o*t+r]/n}},Yt=function(e,t,n){for(var r=new Array(n*n),i=0;i<n;i++){for(var o=0;o<n;o++)r[i*n+o]=0;for(var a=0;a<n;a++)for(var s=0;s<n;s++)r[i*n+s]+=e[i*n+a]*t[a*n+s]}return r},Xt=function(e,t,n){for(var r=e.slice(0),i=1;i<n;i++)e=Yt(e,r,t);return e},Ht=function(e,t,n){for(var r=new Array(t*t),i=0;i<t*t;i++)r[i]=Math.pow(e[i],n);return qt(r,t),r},Wt=function(e,t,n,r){for(var i=0;i<n;i++){if(Math.round(e[i]*Math.pow(10,r))/Math.pow(10,r)!==Math.round(t[i]*Math.pow(10,r))/Math.pow(10,r))return!1}return!0},Gt=function(e,t){for(var n=0;n<e.length;n++)if(!t[n]||e[n].id()!==t[n].id())return!1;return!0},Ut=function(e){for(var t=this.nodes(),n=this.edges(),r=this.cy(),i=function(e){return Ft(e)}(e),o={},a=0;a<t.length;a++)o[t[a].id()]=a;for(var s,u=t.length,l=u*u,c=new Array(l),d=0;d<l;d++)c[d]=0;for(var h=0;h<n.length;h++){var p=n[h],f=o[p.source().id()],v=o[p.target().id()],g=Vt(p,i.attributes);c[f*u+v]+=g,c[v*u+f]+=g}!function(e,t,n){for(var r=0;r<t;r++)e[r*t+r]=n}(c,u,i.multFactor),qt(c,u);for(var y=!0,m=0;y&&m<i.maxIterations;)y=!1,s=Xt(c,u,i.expandFactor),c=Ht(s,u,i.inflateFactor),Wt(c,s,l,4)||(y=!0),m++;var b=function(e,t,n,r){for(var i=[],o=0;o<t;o++){for(var a=[],s=0;s<t;s++)Math.round(1e3*e[o*t+s])/1e3>0&&a.push(n[s]);0!==a.length&&i.push(r.collection(a))}return i}(c,u,t,r);return b=function(e){for(var t=0;t<e.length;t++)for(var n=0;n<e.length;n++)t!=n&&Gt(e[t],e[n])&&e.splice(n,1);return e}(b),b},Kt={markovClustering:Ut,mcl:Ut},Zt=function(e){return e},Qt=function(e,t){return Math.abs(t-e)},$t=function(e,t,n){return e+Qt(t,n)},Jt=function(e,t,n){return e+Math.pow(n-t,2)},en=function(e){return Math.sqrt(e)},tn=function(e,t,n){return Math.max(e,Qt(t,n))},nn=function(e,t,n,r,i){for(var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:Zt,a=r,s=0;s<e;s++)a=i(a,t(s),n(s));return o(a)},rn={euclidean:function(e,t,n){return e>=2?nn(e,t,n,0,Jt,en):nn(e,t,n,0,$t)},squaredEuclidean:function(e,t,n){return nn(e,t,n,0,Jt)},manhattan:function(e,t,n){return nn(e,t,n,0,$t)},max:function(e,t,n){return nn(e,t,n,-1/0,tn)}};function on(e,t,n,r,i,o){var a;return a=x(e)?e:rn[e]||rn.euclidean,0===t&&x(e)?a(i,o):a(t,n,r,i,o)}rn["squared-euclidean"]=rn.squaredEuclidean,rn.squaredeuclidean=rn.squaredEuclidean;var an=we({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),sn=function(e){return an(e)},un=function(e,t,n,r,i){var o="kMedoids"!==i?function(e){return n[e]}:function(e){return r[e](n)},a=n,s=t;return on(e,r.length,o,(function(e){return r[e](t)}),a,s)},ln=function(e,t,n){for(var r=n.length,i=new Array(r),o=new Array(r),a=new Array(t),s=null,u=0;u<r;u++)i[u]=e.min(n[u]).value,o[u]=e.max(n[u]).value;for(var l=0;l<t;l++){s=[];for(var c=0;c<r;c++)s[c]=Math.random()*(o[c]-i[c])+i[c];a[l]=s}return a},cn=function(e,t,n,r,i){for(var o=1/0,a=0,s=0;s<t.length;s++){var u=un(n,e,t[s],r,i);u<o&&(o=u,a=s)}return a},dn=function(e,t,n){for(var r=[],i=null,o=0;o<t.length;o++)n[(i=t[o]).id()]===e&&r.push(i);return r},hn=function(e,t,n){for(var r=0;r<e.length;r++)for(var i=0;i<e[r].length;i++){if(Math.abs(e[r][i]-t[r][i])>n)return!1}return!0},pn=function(e,t,n){for(var r=0;r<n;r++)if(e===t[r])return!0;return!1},fn=function(e,t){var n=new Array(t);if(e.length<50)for(var r=0;r<t;r++){for(var i=e[Math.floor(Math.random()*e.length)];pn(i,n,r);)i=e[Math.floor(Math.random()*e.length)];n[r]=i}else for(var o=0;o<t;o++)n[o]=e[Math.floor(Math.random()*e.length)];return n},vn=function(e,t,n){for(var r=0,i=0;i<t.length;i++)r+=un("manhattan",t[i],e,n,"kMedoids");return r},gn=function(e,t,n,r,i){for(var o,a,s=0;s<t.length;s++)for(var u=0;u<e.length;u++)r[s][u]=Math.pow(n[s][u],i.m);for(var l=0;l<e.length;l++)for(var c=0;c<i.attributes.length;c++){o=0,a=0;for(var d=0;d<t.length;d++)o+=r[d][l]*i.attributes[c](t[d]),a+=r[d][l];e[l][c]=o/a}},yn=function(e,t,n,r,i){for(var o=0;o<e.length;o++)t[o]=e[o].slice();for(var a,s,u,l=2/(i.m-1),c=0;c<n.length;c++)for(var d=0;d<r.length;d++){a=0;for(var h=0;h<n.length;h++)s=un(i.distance,r[d],n[c],i.attributes,"cmeans"),u=un(i.distance,r[d],n[h],i.attributes,"cmeans"),a+=Math.pow(s/u,l);e[d][c]=1/a}},mn=function(e){var t,n,r,i,o,a=this.cy(),s=this.nodes(),u=sn(e);i=new Array(s.length);for(var l=0;l<s.length;l++)i[l]=new Array(u.k);r=new Array(s.length);for(var c=0;c<s.length;c++)r[c]=new Array(u.k);for(var d=0;d<s.length;d++){for(var h=0,p=0;p<u.k;p++)r[d][p]=Math.random(),h+=r[d][p];for(var f=0;f<u.k;f++)r[d][f]=r[d][f]/h}n=new Array(u.k);for(var v=0;v<u.k;v++)n[v]=new Array(u.attributes.length);o=new Array(s.length);for(var g=0;g<s.length;g++)o[g]=new Array(u.k);for(var y=!0,m=0;y&&m<u.maxIterations;)y=!1,gn(n,s,r,o,u),yn(r,i,n,s,u),hn(r,i,u.sensitivityThreshold)||(y=!0),m++;return t=function(e,t,n,r){for(var i,o,a=new Array(n.k),s=0;s<a.length;s++)a[s]=[];for(var u=0;u<t.length;u++){i=-1/0,o=-1;for(var l=0;l<t[0].length;l++)t[u][l]>i&&(i=t[u][l],o=l);a[o].push(e[u])}for(var c=0;c<a.length;c++)a[c]=r.collection(a[c]);return a}(s,r,u,a),{clusters:t,degreeOfMembership:r}},bn={kMeans:function(e){var t,n=this.cy(),r=this.nodes(),i=null,o=sn(e),s=new Array(o.k),u={};t=o.testMode?"number"==typeof o.testCentroids?ln(r,o.k,o.attributes):"object"===a(o.testCentroids)?o.testCentroids:ln(r,o.k,o.attributes):ln(r,o.k,o.attributes);for(var l,c,d,h=!0,p=0;h&&p<o.maxIterations;){for(var f=0;f<r.length;f++)u[(i=r[f]).id()]=cn(i,t,o.distance,o.attributes,"kMeans");h=!1;for(var v=0;v<o.k;v++){var g=dn(v,r,u);if(0!==g.length){for(var y=o.attributes.length,m=t[v],b=new Array(y),x=new Array(y),w=0;w<y;w++){x[w]=0;for(var E=0;E<g.length;E++)i=g[E],x[w]+=o.attributes[w](i);b[w]=x[w]/g.length,l=b[w],c=m[w],d=o.sensitivityThreshold,Math.abs(c-l)<=d||(h=!0)}t[v]=b,s[v]=n.collection(g)}}p++}return s},kMedoids:function(e){var t,n,r=this.cy(),i=this.nodes(),o=null,s=sn(e),u=new Array(s.k),l={},c=new Array(s.k);s.testMode?"number"==typeof s.testCentroids||(t="object"===a(s.testCentroids)?s.testCentroids:fn(i,s.k)):t=fn(i,s.k);for(var d=!0,h=0;d&&h<s.maxIterations;){for(var p=0;p<i.length;p++)l[(o=i[p]).id()]=cn(o,t,s.distance,s.attributes,"kMedoids");d=!1;for(var f=0;f<t.length;f++){var v=dn(f,i,l);if(0!==v.length){c[f]=vn(t[f],v,s.attributes);for(var g=0;g<v.length;g++)(n=vn(v[g],v,s.attributes))<c[f]&&(c[f]=n,t[f]=v[g],d=!0);u[f]=r.collection(v)}}h++}return u},fuzzyCMeans:mn,fcm:mn},xn=we({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),wn={single:"min",complete:"max"},En=function(e,t,n,r,i){for(var o,a=0,s=1/0,u=i.attributes,l=function(e,t){return on(i.distance,u.length,(function(t){return u[t](e)}),(function(e){return u[e](t)}),e,t)},c=0;c<e.length;c++){var d=e[c].key,h=n[d][r[d]];h<s&&(a=d,s=h)}if("threshold"===i.mode&&s>=i.threshold||"dendrogram"===i.mode&&1===e.length)return!1;var p,f=t[a],v=t[r[a]];p="dendrogram"===i.mode?{left:f,right:v,key:f.key}:{value:f.value.concat(v.value),key:f.key},e[f.index]=p,e.splice(v.index,1),t[f.key]=p;for(var g=0;g<e.length;g++){var y=e[g];f.key===y.key?o=1/0:"min"===i.linkage?(o=n[f.key][y.key],n[f.key][y.key]>n[v.key][y.key]&&(o=n[v.key][y.key])):"max"===i.linkage?(o=n[f.key][y.key],n[f.key][y.key]<n[v.key][y.key]&&(o=n[v.key][y.key])):o="mean"===i.linkage?(n[f.key][y.key]*f.size+n[v.key][y.key]*v.size)/(f.size+v.size):"dendrogram"===i.mode?l(y.value,f.value):l(y.value[0],f.value[0]),n[f.key][y.key]=n[y.key][f.key]=o}for(var m=0;m<e.length;m++){var b=e[m].key;if(r[b]===f.key||r[b]===v.key){for(var x=b,w=0;w<e.length;w++){var E=e[w].key;n[b][E]<n[b][x]&&(x=E)}r[b]=x}e[m].index=m}return f.key=v.key=f.index=v.index=null,!0},kn=function e(t,n,r){t&&(t.value?n.push(t.value):(t.left&&e(t.left,n),t.right&&e(t.right,n)))},Pn=function e(t,n){if(!t)return"";if(t.left&&t.right){var r=e(t.left,n),i=e(t.right,n),o=n.add({group:"nodes",data:{id:r+","+i}});return n.add({group:"edges",data:{source:r,target:o.id()}}),n.add({group:"edges",data:{source:i,target:o.id()}}),o.id()}return t.value?t.value.id():void 0},Sn=function e(t,n,r){if(!t)return[];var i=[],o=[],a=[];return 0===n?(t.left&&kn(t.left,i),t.right&&kn(t.right,o),a=i.concat(o),[r.collection(a)]):1===n?t.value?[r.collection(t.value)]:(t.left&&kn(t.left,i),t.right&&kn(t.right,o),[r.collection(i),r.collection(o)]):t.value?[r.collection(t.value)]:(t.left&&(i=e(t.left,n-1,r)),t.right&&(o=e(t.right,n-1,r)),i.concat(o))},Cn=function(e){for(var t=this.cy(),n=this.nodes(),r=function(e){var t=xn(e),n=wn[t.linkage];return null!=n&&(t.linkage=n),t}(e),i=r.attributes,o=function(e,t){return on(r.distance,i.length,(function(t){return i[t](e)}),(function(e){return i[e](t)}),e,t)},a=[],s=[],u=[],l=[],c=0;c<n.length;c++){var d={value:"dendrogram"===r.mode?n[c]:[n[c]],key:c,index:c};a[c]=d,l[c]=d,s[c]=[],u[c]=0}for(var h=0;h<a.length;h++)for(var p=0;p<=h;p++){var f=void 0;f="dendrogram"===r.mode?h===p?1/0:o(a[h].value,a[p].value):h===p?1/0:o(a[h].value[0],a[p].value[0]),s[h][p]=f,s[p][h]=f,f<s[h][u[h]]&&(u[h]=p)}for(var v,g=En(a,l,s,u,r);g;)g=En(a,l,s,u,r);return"dendrogram"===r.mode?(v=Sn(a[0],r.dendrogramDepth,t),r.addDendrogram&&Pn(a[0],t)):(v=new Array(a.length),a.forEach((function(e,n){e.key=e.index=null,v[n]=t.collection(e.value)}))),v},_n={hierarchicalClustering:Cn,hca:Cn},jn=we({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),Dn=function(e,t,n,r){var i=function(e,t){return r[t](e)};return-on(e,r.length,(function(e){return i(t,e)}),(function(e){return i(n,e)}),t,n)},Tn=function(e,t){var n=null;return n="median"===t?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n<e.length&&e.splice(n,e.length-n),t>0&&e.splice(0,t)):e=e.slice(t,n);for(var o=0,a=e.length-1;a>=0;a--){var s=e[a];i?isFinite(s)||(e[a]=-1/0,o++):e.splice(a,1)}r&&e.sort((function(e,t){return e-t}));var u=e.length,l=Math.floor(u/2);return u%2!=0?e[l+1+o]:(e[l-1+o]+e[l+o])/2}(e):"mean"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=0,i=0,o=t;o<n;o++){var a=e[o];isFinite(a)&&(r+=a,i++)}return r/i}(e):"min"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=1/0,i=t;i<n;i++){var o=e[i];isFinite(o)&&(r=Math.min(o,r))}return r}(e):"max"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=-1/0,i=t;i<n;i++){var o=e[i];isFinite(o)&&(r=Math.max(o,r))}return r}(e):t,n},Bn=function(e,t,n){for(var r=[],i=0;i<e;i++){for(var o=-1,a=-1/0,s=0;s<n.length;s++){var u=n[s];t[i*e+u]>a&&(o=u,a=t[i*e+u])}o>0&&r.push(o)}for(var l=0;l<n.length;l++)r[n[l]]=n[l];return r},On=function(e){for(var t,n,r,i,o,a,s=this.cy(),u=this.nodes(),l=function(e){var t=e.damping,n=e.preference;.5<=t&&t<1||fe("Damping must range on [0.5, 1). Got: ".concat(t));var r=["median","mean","min","max"];return r.some((function(e){return e===n}))||k(n)||fe("Preference must be one of [".concat(r.map((function(e){return"'".concat(e,"'")})).join(", "),"] or a number. Got: ").concat(n)),jn(e)}(e),c={},d=0;d<u.length;d++)c[u[d].id()]=d;n=(t=u.length)*t,r=new Array(n);for(var h=0;h<n;h++)r[h]=-1/0;for(var p=0;p<t;p++)for(var f=0;f<t;f++)p!==f&&(r[p*t+f]=Dn(l.distance,u[p],u[f],l.attributes));i=Tn(r,l.preference);for(var v=0;v<t;v++)r[v*t+v]=i;o=new Array(n);for(var g=0;g<n;g++)o[g]=0;a=new Array(n);for(var y=0;y<n;y++)a[y]=0;for(var m=new Array(t),b=new Array(t),x=new Array(t),w=0;w<t;w++)m[w]=0,b[w]=0,x[w]=0;for(var E,P=new Array(t*l.minIterations),S=0;S<P.length;S++)P[S]=0;for(E=0;E<l.maxIterations;E++){for(var C=0;C<t;C++){for(var _=-1/0,j=-1/0,D=-1,T=0,B=0;B<t;B++)m[B]=o[C*t+B],(T=a[C*t+B]+r[C*t+B])>=_?(j=_,_=T,D=B):T>j&&(j=T);for(var O=0;O<t;O++)o[C*t+O]=(1-l.damping)*(r[C*t+O]-_)+l.damping*m[O];o[C*t+D]=(1-l.damping)*(r[C*t+D]-j)+l.damping*m[D]}for(var M=0;M<t;M++){for(var N=0,I=0;I<t;I++)m[I]=a[I*t+M],b[I]=Math.max(0,o[I*t+M]),N+=b[I];N-=b[M],b[M]=o[M*t+M],N+=b[M];for(var L=0;L<t;L++)a[L*t+M]=(1-l.damping)*Math.min(0,N-b[L])+l.damping*m[L];a[M*t+M]=(1-l.damping)*(N-b[M])+l.damping*m[M]}for(var A=0,z=0;z<t;z++){var R=a[z*t+z]+o[z*t+z]>0?1:0;P[E%l.minIterations*t+z]=R,A+=R}if(A>0&&(E>=l.minIterations-1||E==l.maxIterations-1)){for(var F=0,V=0;V<t;V++){x[V]=0;for(var q=0;q<l.minIterations;q++)x[V]+=P[q*t+V];0!==x[V]&&x[V]!==l.minIterations||F++}if(F===t)break}}for(var Y=function(e,t,n){for(var r=[],i=0;i<e;i++)t[i*e+i]+n[i*e+i]>0&&r.push(i);return r}(t,o,a),X=function(e,t,n){for(var r=Bn(e,t,n),i=0;i<n.length;i++){for(var o=[],a=0;a<r.length;a++)r[a]===n[i]&&o.push(a);for(var s=-1,u=-1/0,l=0;l<o.length;l++){for(var c=0,d=0;d<o.length;d++)c+=t[o[d]*e+o[l]];c>u&&(s=l,u=c)}n[i]=o[s]}return Bn(e,t,n)}(t,r,Y),H={},W=0;W<Y.length;W++)H[Y[W]]=[];for(var G=0;G<u.length;G++){var U=X[c[u[G].id()]];null!=U&&H[U].push(u[G])}for(var K=new Array(Y.length),Z=0;Z<Y.length;Z++)K[Z]=s.collection(H[Y[Z]]);return K},Mn={affinityPropagation:On,ap:On},Nn=we({root:void 0,directed:!1}),In=function(){var e=this,t={},n=0,r=0,i=[],o=[],a={},s=function s(u,l,c){u===c&&(r+=1),t[l]={id:n,low:n++,cutVertex:!1};var d,h,p,f,v=e.getElementById(l).connectedEdges().intersection(e);0===v.size()?i.push(e.spawn(e.getElementById(l))):v.forEach((function(n){d=n.source().id(),h=n.target().id(),(p=d===l?h:d)!==c&&(f=n.id(),a[f]||(a[f]=!0,o.push({x:l,y:p,edge:n})),p in t?t[l].low=Math.min(t[l].low,t[p].id):(s(u,p,l),t[l].low=Math.min(t[l].low,t[p].low),t[l].id<=t[p].low&&(t[l].cutVertex=!0,function(n,r){for(var a=o.length-1,s=[],u=e.spawn();o[a].x!=n||o[a].y!=r;)s.push(o.pop().edge),a--;s.push(o.pop().edge),s.forEach((function(n){var r=n.connectedNodes().intersection(e);u.merge(n),r.forEach((function(n){var r=n.id(),i=n.connectedEdges().intersection(e);u.merge(n),t[r].cutVertex?u.merge(i.filter((function(e){return e.isLoop()}))):u.merge(i)}))})),i.push(u)}(l,p))))}))};e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||(r=0,s(n,n),t[n].cutVertex=r>1)}}));var u=Object.keys(t).filter((function(e){return t[e].cutVertex})).map((function(t){return e.getElementById(t)}));return{cut:e.spawn(u),components:i}},Ln=function(){var e=this,t={},n=0,r=[],i=[],o=e.spawn(e),a=function a(s){if(i.push(s),t[s]={index:n,low:n++,explored:!1},e.getElementById(s).connectedEdges().intersection(e).forEach((function(e){var n=e.target().id();n!==s&&(n in t||a(n),t[n].explored||(t[s].low=Math.min(t[s].low,t[n].low)))})),t[s].index===t[s].low){for(var u=e.spawn();;){var l=i.pop();if(u.merge(e.getElementById(l)),t[l].low=t[s].index,t[l].explored=!0,l===s)break}var c=u.edgesWith(u),d=u.merge(c);r.push(d),o=o.difference(d)}};return e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||a(n)}})),{cut:o,components:r}},An={};[Be,Me,Ne,Le,ze,Fe,Xe,Mt,It,At,Rt,Kt,bn,_n,Mn,{hierholzer:function(e){if(!E(e)){var t=arguments;e={root:t[0],directed:t[1]}}var n,r,i,o=Nn(e),a=o.root,s=o.directed,u=this,l=!1;a&&(i=b(a)?this.filter(a)[0].id():a[0].id());var c={},d={};s?u.forEach((function(e){var t=e.id();if(e.isNode()){var i=e.indegree(!0),o=e.outdegree(!0),a=i-o,s=o-i;1==a?n?l=!0:n=t:1==s?r?l=!0:r=t:(s>1||a>1)&&(l=!0),c[t]=[],e.outgoers().forEach((function(e){e.isEdge()&&c[t].push(e.id())}))}else d[t]=[void 0,e.target().id()]})):u.forEach((function(e){var t=e.id();e.isNode()?(e.degree(!0)%2&&(n?r?l=!0:r=t:n=t),c[t]=[],e.connectedEdges().forEach((function(e){return c[t].push(e.id())}))):d[t]=[e.source().id(),e.target().id()]}));var h={found:!1,trail:void 0};if(l)return h;if(r&&n)if(s){if(i&&r!=i)return h;i=r}else{if(i&&r!=i&&n!=i)return h;i||(i=r)}else i||(i=u[0].id());var p=function(e){for(var t,n,r,i=e,o=[e];c[i].length;)t=c[i].shift(),n=d[t][0],i!=(r=d[t][1])?(c[r]=c[r].filter((function(e){return e!=t})),i=r):s||i==n||(c[n]=c[n].filter((function(e){return e!=t})),i=n),o.unshift(t),o.unshift(i);return o},f=[],v=[];for(v=p(i);1!=v.length;)0==c[v[0]].length?(f.unshift(u.getElementById(v.shift())),f.unshift(u.getElementById(v.shift()))):v=p(v.shift()).concat(v);for(var g in f.unshift(u.getElementById(v.shift())),c)if(c[g].length)return h;return h.found=!0,h.trail=this.spawn(f,!0),h}},{hopcroftTarjanBiconnected:In,htbc:In,htb:In,hopcroftTarjanBiconnectedComponents:In},{tarjanStronglyConnected:Ln,tsc:Ln,tscc:Ln,tarjanStronglyConnectedComponents:Ln}].forEach((function(e){R(An,e)}));var zn=function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof t&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))};zn.prototype={fulfill:function(e){return Rn(this,1,"fulfillValue",e)},reject:function(e){return Rn(this,2,"rejectReason",e)},then:function(e,t){var n=this,r=new zn;return n.onFulfilled.push(qn(e,r,"fulfill")),n.onRejected.push(qn(t,r,"reject")),Fn(n),r.proxy}};var Rn=function(e,t,n,r){return 0===e.state&&(e.state=t,e[n]=r,Fn(e)),e},Fn=function(e){1===e.state?Vn(e,"onFulfilled",e.fulfillValue):2===e.state&&Vn(e,"onRejected",e.rejectReason)},Vn=function(e,t,n){if(0!==e[t].length){var r=e[t];e[t]=[];var i=function(){for(var e=0;e<r.length;e++)r[e](n)};"function"==typeof setImmediate?setImmediate(i):setTimeout(i,0)}},qn=function(e,t,n){return function(r){if("function"!=typeof e)t[n].call(t,r);else{var i;try{i=e(r)}catch(o){return void t.reject(o)}Yn(t,i)}}},Yn=function e(t,n){if(t!==n&&t.proxy!==n){var r;if("object"===a(n)&&null!==n||"function"==typeof n)try{r=n.then}catch(o){return void t.reject(o)}if("function"!=typeof r)t.fulfill(n);else{var i=!1;try{r.call(n,(function(r){i||(i=!0,r===n?t.reject(new TypeError("circular thenable chain")):e(t,r))}),(function(e){i||(i=!0,t.reject(e))}))}catch(o){i||t.reject(o)}}}else t.reject(new TypeError("cannot resolve promise with itself"))};zn.all=function(e){return new zn((function(t,n){for(var r=new Array(e.length),i=0,o=function(n,o){r[n]=o,++i===e.length&&t(r)},a=0;a<e.length;a++)!function(t){var r=e[t];null!=r&&null!=r.then?r.then((function(e){o(t,e)}),(function(e){n(e)})):o(t,r)}(a)}))},zn.resolve=function(e){return new zn((function(t,n){t(e)}))},zn.reject=function(e){return new zn((function(t,n){n(e)}))};var Xn="undefined"!=typeof Promise?Promise:zn,Hn=function(e,t,n){var r=j(e),i=!r,o=this._private=R({duration:1e3},t,n);if(o.target=e,o.style=o.style||o.css,o.started=!1,o.playing=!1,o.hooked=!1,o.applying=!1,o.progress=0,o.completes=[],o.frames=[],o.complete&&x(o.complete)&&o.completes.push(o.complete),i){var a=e.position();o.startPosition=o.startPosition||{x:a.x,y:a.y},o.startStyle=o.startStyle||e.cy().style().getAnimationStartStyle(e,o.style)}if(r){var s=e.pan();o.startPan={x:s.x,y:s.y},o.startZoom=e.zoom()}this.length=1,this[0]=this},Wn=Hn.prototype;R(Wn,{instanceString:function(){return"animation"},hook:function(){var e=this._private;if(!e.hooked){var t=e.target._private.animation;(e.queue?t.queue:t.current).push(this),S(e.target)&&e.target.cy().addToAnimationPool(e.target),e.hooked=!0}return this},play:function(){var e=this._private;return 1===e.progress&&(e.progress=0),e.playing=!0,e.started=!1,e.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var e=this._private;return e.applying=!0,e.started=!1,e.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var e=this._private;return e.playing=!1,e.started=!1,this},stop:function(){var e=this._private;return e.playing=!1,e.started=!1,e.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(e){var t=this._private;return void 0===e?t.progress*t.duration:this.progress(e/t.duration)},progress:function(e){var t=this._private,n=t.playing;return void 0===e?t.progress:(n&&this.pause(),t.progress=e,t.started=!1,n&&this.play(),this)},completed:function(){return 1===this._private.progress},reverse:function(){var e=this._private,t=e.playing;t&&this.pause(),e.progress=1-e.progress,e.started=!1;var n=function(t,n){var r=e[t];null!=r&&(e[t]=e[n],e[n]=r)};if(n("zoom","startZoom"),n("pan","startPan"),n("position","startPosition"),e.style)for(var r=0;r<e.style.length;r++){var i=e.style[r],o=i.name,a=e.startStyle[o];e.startStyle[o]=i,e.style[r]=a}return t&&this.play(),this},promise:function(e){var t,n=this._private;if("frame"===e)t=n.frames;else t=n.completes;return new Xn((function(e,n){t.push((function(){e()}))}))}}),Wn.complete=Wn.completed,Wn.run=Wn.play,Wn.running=Wn.playing;var Gn={animated:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return!1;var n=t[0];return n?n._private.animation.current.length>0:void 0}},clearQueue:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n<t.length;n++){t[n]._private.animation.queue=[]}return this}},delay:function(){return function(e,t){return(this._private.cy||this).styleEnabled()?this.animate({delay:e,duration:e,complete:t}):this}},delayAnimation:function(){return function(e,t){return(this._private.cy||this).styleEnabled()?this.animation({delay:e,duration:e,complete:t}):this}},animation:function(){return function(e,t){var n=this,r=void 0!==n.length,i=r?n:[n],o=this._private.cy||this,a=!r,s=!a;if(!o.styleEnabled())return this;var u=o.style();if(e=R({},e,t),0===Object.keys(e).length)return new Hn(i[0],e);switch(void 0===e.duration&&(e.duration=400),e.duration){case"slow":e.duration=600;break;case"fast":e.duration=200}if(s&&(e.style=u.getPropsList(e.style||e.css),e.css=void 0),s&&null!=e.renderedPosition){var l=e.renderedPosition,c=o.pan(),d=o.zoom();e.position=We(l,d,c)}if(a&&null!=e.panBy){var h=e.panBy,p=o.pan();e.pan={x:p.x+h.x,y:p.y+h.y}}var f=e.center||e.centre;if(a&&null!=f){var v=o.getCenterPan(f.eles,e.zoom);null!=v&&(e.pan=v)}if(a&&null!=e.fit){var g=e.fit,y=o.getFitViewport(g.eles||g.boundingBox,g.padding);null!=y&&(e.pan=y.pan,e.zoom=y.zoom)}if(a&&E(e.zoom)){var m=o.getZoomedViewport(e.zoom);null!=m?(m.zoomed&&(e.zoom=m.zoom),m.panned&&(e.pan=m.pan)):e.zoom=null}return new Hn(i[0],e)}},animate:function(){return function(e,t){var n=this,r=void 0!==n.length?n:[n];if(!(this._private.cy||this).styleEnabled())return this;t&&(e=R({},e,t));for(var i=0;i<r.length;i++){var o=r[i],a=o.animated()&&(void 0===e.queue||e.queue);o.animation(e,a?{queue:!0}:void 0).play()}return this}},stop:function(){return function(e,t){var n=this,r=void 0!==n.length?n:[n],i=this._private.cy||this;if(!i.styleEnabled())return this;for(var o=0;o<r.length;o++){for(var a=r[o]._private,s=a.animation.current,u=0;u<s.length;u++){var l=s[u]._private;t&&(l.duration=0)}e&&(a.animation.queue=[]),t||(a.animation.current=[])}return i.notify("draw"),this}}},Un={data:function(e){return e=R({},{field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(e){},beforeSet:function(e,t){},onSet:function(e){},canSet:function(e){return!0}},e),function(t,n){var r=e,i=this,o=void 0!==i.length,a=o?i:[i],s=o?i[0]:i;if(b(t)){var u;if(r.allowGetting&&void 0===n)return s&&(r.beforeGet(s),u=s._private[r.field][t]),u;if(r.allowSetting&&void 0!==n&&!r.immutableKeys[t]){var l=c({},t,n);r.beforeSet(i,l);for(var d=0,h=a.length;d<h;d++){var p=a[d];r.canSet(p)&&(p._private[r.field][t]=n)}r.updateStyle&&i.updateStyle(),r.onSet(i),r.settingTriggersEvent&&i[r.triggerFnName](r.settingEvent)}}else if(r.allowSetting&&E(t)){var f,v,g=t,y=Object.keys(g);r.beforeSet(i,g);for(var m=0;m<y.length;m++){if(v=g[f=y[m]],!r.immutableKeys[f])for(var w=0;w<a.length;w++){var k=a[w];r.canSet(k)&&(k._private[r.field][f]=v)}}r.updateStyle&&i.updateStyle(),r.onSet(i),r.settingTriggersEvent&&i[r.triggerFnName](r.settingEvent)}else if(r.allowBinding&&x(t)){var P=t;i.on(r.bindingEvent,P)}else if(r.allowGetting&&void 0===t){var S;return s&&(r.beforeGet(s),S=s._private[r.field]),S}return i}},removeData:function(e){return e=R({},{field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}},e),function(t){var n=e,r=this,i=void 0!==r.length?r:[r];if(b(t)){for(var o=t.split(/\s+/),a=o.length,s=0;s<a;s++){var u=o[s];if(!T(u))if(!n.immutableKeys[u])for(var l=0,c=i.length;l<c;l++)i[l]._private[n.field][u]=void 0}n.triggerEvent&&r[n.triggerFnName](n.event)}else if(void 0===t){for(var d=0,h=i.length;d<h;d++)for(var p=i[d]._private[n.field],f=Object.keys(p),v=0;v<f.length;v++){var g=f[v];!n.immutableKeys[g]&&(p[g]=void 0)}n.triggerEvent&&r[n.triggerFnName](n.event)}return r}}},Kn={eventAliasesOn:function(e){var t=e;t.addListener=t.listen=t.bind=t.on,t.unlisten=t.unbind=t.off=t.removeListener,t.trigger=t.emit,t.pon=t.promiseOn=function(e,t){var n=this,r=Array.prototype.slice.call(arguments,0);return new Xn((function(e,t){var i=r.concat([function(t){n.off.apply(n,o),e(t)}]),o=i.concat([]);n.on.apply(n,i)}))}}},Zn={};[Gn,Un,Kn].forEach((function(e){R(Zn,e)}));var Qn={animate:Zn.animate(),animation:Zn.animation(),animated:Zn.animated(),clearQueue:Zn.clearQueue(),delay:Zn.delay(),delayAnimation:Zn.delayAnimation(),stop:Zn.stop()},$n={classes:function(e){var t=this;if(void 0===e){var n=[];return t[0]._private.classes.forEach((function(e){return n.push(e)})),n}w(e)||(e=(e||"").match(/\S+/g)||[]);for(var r=[],i=new je(e),o=0;o<t.length;o++){for(var a=t[o],s=a._private,u=s.classes,l=!1,c=0;c<e.length;c++){var d=e[c];if(!u.has(d)){l=!0;break}}l||(l=u.size!==e.length),l&&(s.classes=i,r.push(a))}return r.length>0&&this.spawn(r).updateStyle().emit("class"),t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return null!=t&&t._private.classes.has(e)},toggleClass:function(e,t){w(e)||(e=e.match(/\S+/g)||[]);for(var n=this,r=void 0===t,i=[],o=0,a=n.length;o<a;o++)for(var s=n[o],u=s._private.classes,l=!1,c=0;c<e.length;c++){var d=e[c],h=u.has(d),p=!1;t||r&&!h?(u.add(d),p=!0):(!t||r&&h)&&(u.delete(d),p=!0),!l&&p&&(i.push(s),l=!0)}return i.length>0&&this.spawn(i).updateStyle().emit("class"),n},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var n=this;if(null==t)t=250;else if(0===t)return n;return n.addClass(e),setTimeout((function(){n.removeClass(e)}),t),n}};$n.className=$n.classNames=$n.classes;var Jn={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:A,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Jn.variable="(?:[\\w-]|(?:\\\\"+Jn.metaChar+"))+",Jn.value=Jn.string+"|"+Jn.number,Jn.className=Jn.variable,Jn.id=Jn.variable,function(){var e,t,n;for(e=Jn.comparatorOp.split("|"),n=0;n<e.length;n++)t=e[n],Jn.comparatorOp+="|@"+t;for(e=Jn.comparatorOp.split("|"),n=0;n<e.length;n++)(t=e[n]).indexOf("!")>=0||"="!==t&&(Jn.comparatorOp+="|\\!"+t)}();var er=0,tr=1,nr=2,rr=3,ir=4,or=5,ar=6,sr=7,ur=8,lr=9,cr=10,dr=11,hr=12,pr=13,fr=14,vr=15,gr=16,yr=17,mr=18,br=19,xr=20,wr=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort((function(e,t){return function(e,t){return-1*z(e,t)}(e.selector,t.selector)})),Er=function(){for(var e,t={},n=0;n<wr.length;n++)t[(e=wr[n]).selector]=e.matches;return t}(),kr="("+wr.map((function(e){return e.selector})).join("|")+")",Pr=function(e){return e.replace(new RegExp("\\\\("+Jn.metaChar+")","g"),(function(e,t){return t}))},Sr=function(e,t,n){e[e.length-1]=n},Cr=[{name:"group",query:!0,regex:"("+Jn.group+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:er,value:"*"===r?r:r+"s"})}},{name:"state",query:!0,regex:kr,populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:sr,value:r})}},{name:"id",query:!0,regex:"\\#("+Jn.id+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:ur,value:Pr(r)})}},{name:"className",query:!0,regex:"\\.("+Jn.className+")",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:lr,value:Pr(r)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+Jn.variable+")\\s*\\]",populate:function(e,t,n){var r=d(n,1)[0];t.checks.push({type:ir,field:Pr(r)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+Jn.variable+")\\s*("+Jn.comparatorOp+")\\s*("+Jn.value+")\\s*\\]",populate:function(e,t,n){var r=d(n,3),i=r[0],o=r[1],a=r[2];a=null!=new RegExp("^"+Jn.string+"$").exec(a)?a.substring(1,a.length-1):parseFloat(a),t.checks.push({type:rr,field:Pr(i),operator:o,value:a})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+Jn.boolOp+")\\s*("+Jn.variable+")\\s*\\]",populate:function(e,t,n){var r=d(n,2),i=r[0],o=r[1];t.checks.push({type:or,field:Pr(o),operator:i})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+Jn.meta+")\\s*("+Jn.comparatorOp+")\\s*("+Jn.number+")\\s*\\]\\]",populate:function(e,t,n){var r=d(n,3),i=r[0],o=r[1],a=r[2];t.checks.push({type:ar,field:Pr(i),operator:o,value:parseFloat(a)})}},{name:"nextQuery",separator:!0,regex:Jn.separator,populate:function(e,t){var n=e.currentSubject,r=e.edgeCount,i=e.compoundCount,o=e[e.length-1];return null!=n&&(o.subject=n,e.currentSubject=null),o.edgeCount=r,o.compoundCount=i,e.edgeCount=0,e.compoundCount=0,e[e.length++]={checks:[]}}},{name:"directedEdge",separator:!0,regex:Jn.directedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,i={checks:[]};return n.checks.push({type:dr,source:r,target:i}),Sr(e,0,n),e.edgeCount++,i}var o={checks:[]},a=t,s={checks:[]};return o.checks.push({type:hr,source:a,target:s}),Sr(e,0,o),e.edgeCount++,s}},{name:"undirectedEdge",separator:!0,regex:Jn.undirectedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,i={checks:[]};return n.checks.push({type:cr,nodes:[r,i]}),Sr(e,0,n),e.edgeCount++,i}var o={checks:[]},a=t,s={checks:[]};return o.checks.push({type:fr,node:a,neighbor:s}),Sr(e,0,o),s}},{name:"child",separator:!0,regex:Jn.child,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},i=e[e.length-1];return n.checks.push({type:vr,parent:i,child:r}),Sr(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var o={checks:[]},a=e[e.length-1],s={checks:[]},u={checks:[]},l={checks:[]},c={checks:[]};return o.checks.push({type:br,left:a,right:s,subject:u}),u.checks=t.checks,t.checks=[{type:xr}],c.checks.push({type:xr}),s.checks.push({type:yr,parent:c,child:l}),Sr(e,0,o),e.currentSubject=u,e.compoundCount++,l}var d={checks:[]},h={checks:[]},p=[{type:yr,parent:d,child:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"descendant",separator:!0,regex:Jn.descendant,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},i=e[e.length-1];return n.checks.push({type:gr,ancestor:i,descendant:r}),Sr(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var o={checks:[]},a=e[e.length-1],s={checks:[]},u={checks:[]},l={checks:[]},c={checks:[]};return o.checks.push({type:br,left:a,right:s,subject:u}),u.checks=t.checks,t.checks=[{type:xr}],c.checks.push({type:xr}),s.checks.push({type:mr,ancestor:c,descendant:l}),Sr(e,0,o),e.currentSubject=u,e.compoundCount++,l}var d={checks:[]},h={checks:[]},p=[{type:mr,ancestor:d,descendant:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"subject",modifier:!0,regex:Jn.subject,populate:function(e,t){if(null!=e.currentSubject&&e.currentSubject!==t)return ge("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=t;var n=e[e.length-1].checks[0],r=null==n?null:n.type;r===dr?n.type=pr:r===cr&&(n.type=fr,n.node=n.nodes[1],n.neighbor=n.nodes[0],n.nodes=null)}}];Cr.forEach((function(e){return e.regexObj=new RegExp("^"+e.regex)}));var _r=function(e){for(var t,n,r,i=0;i<Cr.length;i++){var o=Cr[i],a=o.name,s=e.match(o.regexObj);if(null!=s){n=s,t=o,r=a;var u=s[0];e=e.substring(u.length);break}}return{expr:t,match:n,name:r,remaining:e}},jr={parse:function(e){var t=this,n=t.inputText=e,r=t[0]={checks:[]};for(t.length=1,n=function(e){var t=e.match(/^\s+/);if(t){var n=t[0];e=e.substring(n.length)}return e}(n);;){var i=_r(n);if(null==i.expr)return ge("The selector `"+e+"`is invalid"),!1;var o=i.match.slice(1),a=i.expr.populate(t,r,o);if(!1===a)return!1;if(null!=a&&(r=a),(n=i.remaining).match(/^\s*$/))break}var s=t[t.length-1];null!=t.currentSubject&&(s.subject=t.currentSubject),s.edgeCount=t.edgeCount,s.compoundCount=t.compoundCount;for(var u=0;u<t.length;u++){var l=t[u];if(l.compoundCount>0&&l.edgeCount>0)return ge("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(l.edgeCount>1)return ge("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;1===l.edgeCount&&ge("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var e=function(e){return null==e?"":e},t=function(t){return b(t)?'"'+t+'"':e(t)},n=function(e){return" "+e+" "},r=function(r,o){var a=r.type,s=r.value;switch(a){case er:var u=e(s);return u.substring(0,u.length-1);case rr:var l=r.field,c=r.operator;return"["+l+n(e(c))+t(s)+"]";case or:var d=r.operator,h=r.field;return"["+e(d)+h+"]";case ir:return"["+r.field+"]";case ar:var p=r.operator;return"[["+r.field+n(e(p))+t(s)+"]]";case sr:return s;case ur:return"#"+s;case lr:return"."+s;case yr:case vr:return i(r.parent,o)+n(">")+i(r.child,o);case mr:case gr:return i(r.ancestor,o)+" "+i(r.descendant,o);case br:var f=i(r.left,o),v=i(r.subject,o),g=i(r.right,o);return f+(f.length>0?" ":"")+v+g;case xr:return""}},i=function(e,t){return e.checks.reduce((function(n,i,o){return n+(t===e&&0===o?"$":"")+r(i,t)}),"")},o="",a=0;a<this.length;a++){var s=this[a];o+=i(s,s.subject),this.length>1&&a<this.length-1&&(o+=", ")}return this.toStringCache=o,o}},Dr=function(e,t,n){var r,i,o,a=b(e),s=k(e),u=b(n),l=!1,c=!1,d=!1;switch(t.indexOf("!")>=0&&(t=t.replace("!",""),c=!0),t.indexOf("@")>=0&&(t=t.replace("@",""),l=!0),(a||u||l)&&(i=a||s?""+e:"",o=""+n),l&&(e=i=i.toLowerCase(),n=o=o.toLowerCase()),t){case"*=":r=i.indexOf(o)>=0;break;case"$=":r=i.indexOf(o,i.length-o.length)>=0;break;case"^=":r=0===i.indexOf(o);break;case"=":r=e===n;break;case">":d=!0,r=e>n;break;case">=":d=!0,r=e>=n;break;case"<":d=!0,r=e<n;break;case"<=":d=!0,r=e<=n;break;default:r=!1}return!c||null==e&&d||(r=!r),r},Tr=function(e,t){return e.data(t)},Br=[],Or=function(e,t){return e.checks.every((function(e){return Br[e.type](e,t)}))};Br[er]=function(e,t){var n=e.value;return"*"===n||n===t.group()},Br[sr]=function(e,t){return function(e,t){return Er[e](t)}(e.value,t)},Br[ur]=function(e,t){var n=e.value;return t.id()===n},Br[lr]=function(e,t){var n=e.value;return t.hasClass(n)},Br[ar]=function(e,t){var n=e.field,r=e.operator,i=e.value;return Dr(function(e,t){return e[t]()}(t,n),r,i)},Br[rr]=function(e,t){var n=e.field,r=e.operator,i=e.value;return Dr(Tr(t,n),r,i)},Br[or]=function(e,t){var n=e.field,r=e.operator;return function(e,t){switch(t){case"?":return!!e;case"!":return!e;case"^":return void 0===e}}(Tr(t,n),r)},Br[ir]=function(e,t){var n=e.field;e.operator;return void 0!==Tr(t,n)},Br[cr]=function(e,t){var n=e.nodes[0],r=e.nodes[1],i=t.source(),o=t.target();return Or(n,i)&&Or(r,o)||Or(r,i)&&Or(n,o)},Br[fr]=function(e,t){return Or(e.node,t)&&t.neighborhood().some((function(t){return t.isNode()&&Or(e.neighbor,t)}))},Br[dr]=function(e,t){return Or(e.source,t.source())&&Or(e.target,t.target())},Br[hr]=function(e,t){return Or(e.source,t)&&t.outgoers().some((function(t){return t.isNode()&&Or(e.target,t)}))},Br[pr]=function(e,t){return Or(e.target,t)&&t.incomers().some((function(t){return t.isNode()&&Or(e.source,t)}))},Br[vr]=function(e,t){return Or(e.child,t)&&Or(e.parent,t.parent())},Br[yr]=function(e,t){return Or(e.parent,t)&&t.children().some((function(t){return Or(e.child,t)}))},Br[gr]=function(e,t){return Or(e.descendant,t)&&t.ancestors().some((function(t){return Or(e.ancestor,t)}))},Br[mr]=function(e,t){return Or(e.ancestor,t)&&t.descendants().some((function(t){return Or(e.descendant,t)}))},Br[br]=function(e,t){return Or(e.subject,t)&&Or(e.left,t)&&Or(e.right,t)},Br[xr]=function(){return!0},Br[tr]=function(e,t){return e.value.has(t)},Br[nr]=function(e,t){return(0,e.value)(t)};var Mr={matches:function(e){for(var t=0;t<this.length;t++){var n=this[t];if(Or(n,e))return!0}return!1},filter:function(e){var t=this;if(1===t.length&&1===t[0].checks.length&&t[0].checks[0].type===ur)return e.getElementById(t[0].checks[0].value).collection();var n=function(e){for(var n=0;n<t.length;n++){var r=t[n];if(Or(r,e))return!0}return!1};return null==t.text()&&(n=function(){return!0}),e.filter(n)}},Nr=function(e){this.inputText=e,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,null==e||b(e)&&e.match(/^\s*$/)||(S(e)?this.addQuery({checks:[{type:tr,value:e.collection()}]}):x(e)?this.addQuery({checks:[{type:nr,value:e}]}):b(e)?this.parse(e)||(this.invalid=!0):fe("A selector must be created from a string; found "))},Ir=Nr.prototype;[jr,Mr].forEach((function(e){return R(Ir,e)})),Ir.text=function(){return this.inputText},Ir.size=function(){return this.length},Ir.eq=function(e){return this[e]},Ir.sameText=function(e){return!this.invalid&&!e.invalid&&this.text()===e.text()},Ir.addQuery=function(e){this[this.length++]=e},Ir.selector=Ir.toString;var Lr={allAre:function(e){var t=new Nr(e);return this.every((function(e){return t.matches(e)}))},is:function(e){var t=new Nr(e);return this.some((function(e){return t.matches(e)}))},some:function(e,t){for(var n=0;n<this.length;n++){if(t?e.apply(t,[this[n],n,this]):e(this[n],n,this))return!0}return!1},every:function(e,t){for(var n=0;n<this.length;n++){if(!(t?e.apply(t,[this[n],n,this]):e(this[n],n,this)))return!1}return!0},same:function(e){if(this===e)return!0;e=this.cy().collection(e);var t=this.length;return t===e.length&&(1===t?this[0]===e[0]:this.every((function(t){return e.hasElementWithId(t.id())})))},anySame:function(e){return e=this.cy().collection(e),this.some((function(t){return e.hasElementWithId(t.id())}))},allAreNeighbors:function(e){e=this.cy().collection(e);var t=this.neighborhood();return e.every((function(e){return t.hasElementWithId(e.id())}))},contains:function(e){e=this.cy().collection(e);var t=this;return e.every((function(e){return t.hasElementWithId(e.id())}))}};Lr.allAreNeighbours=Lr.allAreNeighbors,Lr.has=Lr.contains,Lr.equal=Lr.equals=Lr.same;var Ar,zr,Rr=function(e,t){return function(n,r,i,o){var a,s=n,u=this;if(null==s?a="":S(s)&&1===s.length&&(a=s.id()),1===u.length&&a){var l=u[0]._private,c=l.traversalCache=l.traversalCache||{},d=c[t]=c[t]||[],h=re(a),p=d[h];return p||(d[h]=e.call(u,n,r,i,o))}return e.call(u,n,r,i,o)}},Fr={parent:function(e){var t=[];if(1===this.length){var n=this[0]._private.parent;if(n)return n}for(var r=0;r<this.length;r++){var i=this[r]._private.parent;i&&t.push(i)}return this.spawn(t,!0).filter(e)},parents:function(e){for(var t=[],n=this.parent();n.nonempty();){for(var r=0;r<n.length;r++){var i=n[r];t.push(i)}n=n.parent()}return this.spawn(t,!0).filter(e)},commonAncestors:function(e){for(var t,n=0;n<this.length;n++){var r=this[n].parents();t=(t=t||r).intersect(r)}return t.filter(e)},orphans:function(e){return this.stdFilter((function(e){return e.isOrphan()})).filter(e)},nonorphans:function(e){return this.stdFilter((function(e){return e.isChild()})).filter(e)},children:Rr((function(e){for(var t=[],n=0;n<this.length;n++)for(var r=this[n]._private.children,i=0;i<r.length;i++)t.push(r[i]);return this.spawn(t,!0).filter(e)}),"children"),siblings:function(e){return this.parent().children().not(this).filter(e)},isParent:function(){var e=this[0];if(e)return e.isNode()&&0!==e._private.children.length},isChildless:function(){var e=this[0];if(e)return e.isNode()&&0===e._private.children.length},isChild:function(){var e=this[0];if(e)return e.isNode()&&null!=e._private.parent},isOrphan:function(){var e=this[0];if(e)return e.isNode()&&null==e._private.parent},descendants:function(e){var t=[];return function e(n){for(var r=0;r<n.length;r++){var i=n[r];t.push(i),i.children().nonempty()&&e(i.children())}}(this.children()),this.spawn(t,!0).filter(e)}};function Vr(e,t,n,r){for(var i=[],o=new je,a=e.cy().hasCompoundNodes(),s=0;s<e.length;s++){var u=e[s];n?i.push(u):a&&r(i,o,u)}for(;i.length>0;){var l=i.shift();t(l),o.add(l.id()),a&&r(i,o,l)}return e}function qr(e,t,n){if(n.isParent())for(var r=n._private.children,i=0;i<r.length;i++){var o=r[i];t.has(o.id())||e.push(o)}}function Yr(e,t,n){if(n.isChild()){var r=n._private.parent;t.has(r.id())||e.push(r)}}function Xr(e,t,n){Yr(e,t,n),qr(e,t,n)}Fr.forEachDown=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,qr)},Fr.forEachUp=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,Yr)},Fr.forEachUpAndDown=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Vr(this,e,t,Xr)},Fr.ancestors=Fr.parents,(Ar=zr={data:Zn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Zn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Zn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Zn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Zn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Zn.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}}).attr=Ar.data,Ar.removeAttr=Ar.removeData;var Hr,Wr,Gr=zr,Ur={};function Kr(e){return function(t){var n=this;if(void 0===t&&(t=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,i=n[0],o=i._private.edges,a=0;a<o.length;a++){var s=o[a];!t&&s.isLoop()||(r+=e(i,s))}return r}}}function Zr(e,t){return function(n){for(var r,i=this.nodes(),o=0;o<i.length;o++){var a=i[o][e](n);void 0===a||void 0!==r&&!t(a,r)||(r=a)}return r}}R(Ur,{degree:Kr((function(e,t){return t.source().same(t.target())?2:1})),indegree:Kr((function(e,t){return t.target().same(e)?1:0})),outdegree:Kr((function(e,t){return t.source().same(e)?1:0}))}),R(Ur,{minDegree:Zr("degree",(function(e,t){return e<t})),maxDegree:Zr("degree",(function(e,t){return e>t})),minIndegree:Zr("indegree",(function(e,t){return e<t})),maxIndegree:Zr("indegree",(function(e,t){return e>t})),minOutdegree:Zr("outdegree",(function(e,t){return e<t})),maxOutdegree:Zr("outdegree",(function(e,t){return e>t}))}),R(Ur,{totalDegree:function(e){for(var t=0,n=this.nodes(),r=0;r<n.length;r++)t+=n[r].degree(e);return t}});var Qr=function(e,t,n){for(var r=0;r<e.length;r++){var i=e[r];if(!i.locked()){var o=i._private.position,a={x:null!=t.x?t.x-o.x:0,y:null!=t.y?t.y-o.y:0};!i.isParent()||0===a.x&&0===a.y||i.children().shift(a,n),i.dirtyBoundingBoxCache()}}},$r={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(e){e.updateCompoundBounds()},beforeSet:function(e,t){Qr(e,t,!1)},onSet:function(e){e.dirtyCompoundBoundsCache()},canSet:function(e){return!e.locked()}};Hr=Wr={position:Zn.data($r),silentPosition:Zn.data(R({},$r,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(e,t){Qr(e,t,!0)},onSet:function(e){e.dirtyCompoundBoundsCache()}})),positions:function(e,t){if(E(e))t?this.silentPosition(e):this.position(e);else if(x(e)){var n=e,r=this.cy();r.startBatch();for(var i=0;i<this.length;i++){var o,a=this[i];(o=n(a,i))&&(t?a.silentPosition(o):a.position(o))}r.endBatch()}return this},silentPositions:function(e){return this.positions(e,!0)},shift:function(e,t,n){var r;if(E(e)?(r={x:k(e.x)?e.x:0,y:k(e.y)?e.y:0},n=t):b(e)&&k(t)&&((r={x:0,y:0})[e]=t),null!=r){var i=this.cy();i.startBatch();for(var o=0;o<this.length;o++){var a=this[o],s=a.position(),u={x:s.x+r.x,y:s.y+r.y};n?a.silentPosition(u):a.position(u)}i.endBatch()}return this},silentShift:function(e,t){return E(e)?this.shift(e,!0):b(e)&&k(t)&&this.shift(e,t,!0),this},renderedPosition:function(e,t){var n=this[0],r=this.cy(),i=r.zoom(),o=r.pan(),a=E(e)?e:void 0,s=void 0!==a||void 0!==t&&b(e);if(n&&n.isNode()){if(!s){var u=n.position();return a=He(u,i,o),void 0===e?a:a[e]}for(var l=0;l<this.length;l++){var c=this[l];void 0!==t?c.position(e,(t-o[e])/i):void 0!==a&&c.position(We(a,i,o))}}else if(!s)return;return this},relativePosition:function(e,t){var n=this[0],r=this.cy(),i=E(e)?e:void 0,o=void 0!==i||void 0!==t&&b(e),a=r.hasCompoundNodes();if(n&&n.isNode()){if(!o){var s=n.position(),u=a?n.parent():null,l=u&&u.length>0,c=l;l&&(u=u[0]);var d=c?u.position():{x:0,y:0};return i={x:s.x-d.x,y:s.y-d.y},void 0===e?i:i[e]}for(var h=0;h<this.length;h++){var p=this[h],f=a?p.parent():null,v=f&&f.length>0,g=v;v&&(f=f[0]);var y=g?f.position():{x:0,y:0};void 0!==t?p.position(e,t+y[e]):void 0!==i&&p.position({x:i.x+y.x,y:i.y+y.y})}}else if(!o)return;return this}},Hr.modelPosition=Hr.point=Hr.position,Hr.modelPositions=Hr.points=Hr.positions,Hr.renderedPoint=Hr.renderedPosition,Hr.relativePoint=Hr.relativePosition;var Jr,ei,ti=Wr;Jr=ei={},ei.renderedBoundingBox=function(e){var t=this.boundingBox(e),n=this.cy(),r=n.zoom(),i=n.pan(),o=t.x1*r+i.x,a=t.x2*r+i.x,s=t.y1*r+i.y,u=t.y2*r+i.y;return{x1:o,x2:a,y1:s,y2:u,w:a-o,h:u-s}},ei.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();return t.styleEnabled()&&t.hasCompoundNodes()?(this.forEachUp((function(t){if(t.isParent()){var n=t._private;n.compoundBoundsClean=!1,n.bbCache=null,e||t.emitAndNotify("bounds")}})),this):this},ei.updateCompoundBounds=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function n(e){if(e.isParent()){var t=e._private,n=e.children(),r="include"===e.pstyle("compound-sizing-wrt-labels").value,i={width:{val:e.pstyle("min-width").pfValue,left:e.pstyle("min-width-bias-left"),right:e.pstyle("min-width-bias-right")},height:{val:e.pstyle("min-height").pfValue,top:e.pstyle("min-height-bias-top"),bottom:e.pstyle("min-height-bias-bottom")}},o=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),a=t.position;0!==o.w&&0!==o.h||((o={w:e.pstyle("width").pfValue,h:e.pstyle("height").pfValue}).x1=a.x-o.w/2,o.x2=a.x+o.w/2,o.y1=a.y-o.h/2,o.y2=a.y+o.h/2);var s=i.width.left.value;"px"===i.width.left.units&&i.width.val>0&&(s=100*s/i.width.val);var u=i.width.right.value;"px"===i.width.right.units&&i.width.val>0&&(u=100*u/i.width.val);var l=i.height.top.value;"px"===i.height.top.units&&i.height.val>0&&(l=100*l/i.height.val);var c=i.height.bottom.value;"px"===i.height.bottom.units&&i.height.val>0&&(c=100*c/i.height.val);var d=y(i.width.val-o.w,s,u),h=d.biasDiff,p=d.biasComplementDiff,f=y(i.height.val-o.h,l,c),v=f.biasDiff,g=f.biasComplementDiff;t.autoPadding=function(e,t,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return e>0?n.pfValue*e:0;case"height":return t>0?n.pfValue*t:0;case"average":return e>0&&t>0?n.pfValue*(e+t)/2:0;case"min":return e>0&&t>0?e>t?n.pfValue*t:n.pfValue*e:0;case"max":return e>0&&t>0?e>t?n.pfValue*e:n.pfValue*t:0;default:return 0}}(o.w,o.h,e.pstyle("padding"),e.pstyle("padding-relative-to").value),t.autoWidth=Math.max(o.w,i.width.val),a.x=(-h+o.x1+o.x2+p)/2,t.autoHeight=Math.max(o.h,i.height.val),a.y=(-v+o.y1+o.y2+g)/2}function y(e,t,n){var r=0,i=0,o=t+n;return e>0&&o>0&&(r=t/o*e,i=n/o*e),{biasDiff:r,biasComplementDiff:i}}}for(var r=0;r<this.length;r++){var i=this[r],o=i._private;o.compoundBoundsClean&&!e||(n(i),t.batching()||(o.compoundBoundsClean=!0))}return this};var ni=function(e){return e===1/0||e===-1/0?0:e},ri=function(e,t,n,r,i){r-t!=0&&i-n!=0&&null!=t&&null!=n&&null!=r&&null!=i&&(e.x1=t<e.x1?t:e.x1,e.x2=r>e.x2?r:e.x2,e.y1=n<e.y1?n:e.y1,e.y2=i>e.y2?i:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},ii=function(e,t){return null==t?e:ri(e,t.x1,t.y1,t.x2,t.y2)},oi=function(e,t,n){return Pe(e,t,n)},ai=function(e,t,n){if(!t.cy().headless()){var r,i,o=t._private,a=o.rstyle,s=a.arrowWidth/2;if("none"!==t.pstyle(n+"-arrow-shape").value){"source"===n?(r=a.srcX,i=a.srcY):"target"===n?(r=a.tgtX,i=a.tgtY):(r=a.midX,i=a.midY);var u=o.arrowBounds=o.arrowBounds||{},l=u[n]=u[n]||{};l.x1=r-s,l.y1=i-s,l.x2=r+s,l.y2=i+s,l.w=l.x2-l.x1,l.h=l.y2-l.y1,ot(l,1),ri(e,l.x1,l.y1,l.x2,l.y2)}}},si=function(e,t,n){if(!t.cy().headless()){var r;r=n?n+"-":"";var i=t._private,o=i.rstyle;if(t.pstyle(r+"label").strValue){var a,s,u,l,c=t.pstyle("text-halign"),d=t.pstyle("text-valign"),h=oi(o,"labelWidth",n),p=oi(o,"labelHeight",n),f=oi(o,"labelX",n),v=oi(o,"labelY",n),g=t.pstyle(r+"text-margin-x").pfValue,y=t.pstyle(r+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle(r+"text-rotation"),x=t.pstyle("text-outline-width").pfValue,w=t.pstyle("text-border-width").pfValue/2,E=t.pstyle("text-background-padding").pfValue,k=p,P=h,S=P/2,C=k/2;if(m)a=f-S,s=f+S,u=v-C,l=v+C;else{switch(c.value){case"left":a=f-P,s=f;break;case"center":a=f-S,s=f+S;break;case"right":a=f,s=f+P}switch(d.value){case"top":u=v-k,l=v;break;case"center":u=v-C,l=v+C;break;case"bottom":u=v,l=v+k}}a+=g-Math.max(x,w)-E-2,s+=g+Math.max(x,w)+E+2,u+=y-Math.max(x,w)-E-2,l+=y+Math.max(x,w)+E+2;var _=n||"main",j=i.labelBounds,D=j[_]=j[_]||{};D.x1=a,D.y1=u,D.x2=s,D.y2=l,D.w=s-a,D.h=l-u;var T=m&&"autorotate"===b.strValue,B=null!=b.pfValue&&0!==b.pfValue;if(T||B){var O=T?oi(i.rstyle,"labelAngle",n):b.pfValue,M=Math.cos(O),N=Math.sin(O),I=(a+s)/2,L=(u+l)/2;if(!m){switch(c.value){case"left":I=s;break;case"right":I=a}switch(d.value){case"top":L=l;break;case"bottom":L=u}}var A=function(e,t){return{x:(e-=I)*M-(t-=L)*N+I,y:e*N+t*M+L}},z=A(a,u),R=A(a,l),F=A(s,u),V=A(s,l);a=Math.min(z.x,R.x,F.x,V.x),s=Math.max(z.x,R.x,F.x,V.x),u=Math.min(z.y,R.y,F.y,V.y),l=Math.max(z.y,R.y,F.y,V.y)}var q=_+"Rot",Y=j[q]=j[q]||{};Y.x1=a,Y.y1=u,Y.x2=s,Y.y2=l,Y.w=s-a,Y.h=l-u,ri(e,a,u,s,l),ri(i.labelBounds.all,a,u,s,l)}return e}},ui=function(e){var t=0,n=function(e){return(e?1:0)<<t++},r=0;return r+=n(e.incudeNodes),r+=n(e.includeEdges),r+=n(e.includeLabels),r+=n(e.includeMainLabels),r+=n(e.includeSourceLabels),r+=n(e.includeTargetLabels),r+=n(e.includeOverlays)},li=function(e){if(e.isEdge()){var t=e.source().position(),n=e.target().position(),r=function(e){return Math.round(e)};return function(e,t){var n={value:0,done:!1},r=0,i=e.length;return $({next:function(){return r<i?n.value=e[r++]:n.done=!0,n}},t)}([r(t.x),r(t.y),r(n.x),r(n.y)])}return 0},ci=function(e,t){var n,r=e._private,i=e.isEdge(),o=(null==t?hi:ui(t))===hi,a=li(e),s=r.bbCachePosKey===a,u=t.useCache&&s,l=function(e){return null==e._private.bbCache||e._private.styleDirty};if(!u||l(e)||i&&l(e.source())||l(e.target())?(s||e.recalculateRenderedStyle(u),n=function(e,t){var n,r,i,o,a,s,u,l=e._private.cy,c=l.styleEnabled(),d=l.headless(),h=rt(),p=e._private,f=e.isNode(),v=e.isEdge(),g=p.rstyle,y=f&&c?e.pstyle("bounds-expansion").pfValue:[0],m=function(e){return"none"!==e.pstyle("display").value},b=!c||m(e)&&(!v||m(e.source())&&m(e.target()));if(b){var x=0;c&&t.includeOverlays&&0!==e.pstyle("overlay-opacity").value&&(x=e.pstyle("overlay-padding").value);var w=0;if(c&&(w=e.pstyle("width").pfValue/2),f&&t.includeNodes){var E=e.position();a=E.x,s=E.y;var k=e.outerWidth()/2,P=e.outerHeight()/2;ri(h,n=a-k,i=s-P,r=a+k,o=s+P)}else if(v&&t.includeEdges)if(c&&!d){var S=e.pstyle("curve-style").strValue;if(n=Math.min(g.srcX,g.midX,g.tgtX),r=Math.max(g.srcX,g.midX,g.tgtX),i=Math.min(g.srcY,g.midY,g.tgtY),o=Math.max(g.srcY,g.midY,g.tgtY),ri(h,n-=w,i-=w,r+=w,o+=w),"haystack"===S){var C=g.haystackPts;if(C&&2===C.length){if(n=C[0].x,i=C[0].y,n>(r=C[1].x)){var _=n;n=r,r=_}if(i>(o=C[1].y)){var j=i;i=o,o=j}ri(h,n-w,i-w,r+w,o+w)}}else if("bezier"===S||"unbundled-bezier"===S||"segments"===S||"taxi"===S){var D;switch(S){case"bezier":case"unbundled-bezier":D=g.bezierPts;break;case"segments":case"taxi":D=g.linePts}if(null!=D)for(var T=0;T<D.length;T++){var B=D[T];n=B.x-w,r=B.x+w,i=B.y-w,o=B.y+w,ri(h,n,i,r,o)}}}else{var O=e.source().position(),M=e.target().position();if((n=O.x)>(r=M.x)){var N=n;n=r,r=N}if((i=O.y)>(o=M.y)){var I=i;i=o,o=I}ri(h,n-=w,i-=w,r+=w,o+=w)}if(c&&t.includeEdges&&v&&(ai(h,e,"mid-source"),ai(h,e,"mid-target"),ai(h,e,"source"),ai(h,e,"target")),c&&"yes"===e.pstyle("ghost").value){var L=e.pstyle("ghost-offset-x").pfValue,A=e.pstyle("ghost-offset-y").pfValue;ri(h,h.x1+L,h.y1+A,h.x2+L,h.y2+A)}var z=p.bodyBounds=p.bodyBounds||{};st(z,h),at(z,y),ot(z,1),c&&(n=h.x1,r=h.x2,i=h.y1,o=h.y2,ri(h,n-x,i-x,r+x,o+x));var R=p.overlayBounds=p.overlayBounds||{};st(R,h),at(R,y),ot(R,1);var F=p.labelBounds=p.labelBounds||{};null!=F.all?((u=F.all).x1=1/0,u.y1=1/0,u.x2=-1/0,u.y2=-1/0,u.w=0,u.h=0):F.all=rt(),c&&t.includeLabels&&(t.includeMainLabels&&si(h,e,null),v&&(t.includeSourceLabels&&si(h,e,"source"),t.includeTargetLabels&&si(h,e,"target")))}return h.x1=ni(h.x1),h.y1=ni(h.y1),h.x2=ni(h.x2),h.y2=ni(h.y2),h.w=ni(h.x2-h.x1),h.h=ni(h.y2-h.y1),h.w>0&&h.h>0&&b&&(at(h,y),ot(h,1)),h}(e,di),r.bbCache=n,r.bbCachePosKey=a):n=r.bbCache,!o){var c=e.isNode();n=rt(),(t.includeNodes&&c||t.includeEdges&&!c)&&(t.includeOverlays?ii(n,r.overlayBounds):ii(n,r.bodyBounds)),t.includeLabels&&(t.includeMainLabels&&(!i||t.includeSourceLabels&&t.includeTargetLabels)?ii(n,r.labelBounds.all):(t.includeMainLabels&&ii(n,r.labelBounds.mainRot),t.includeSourceLabels&&ii(n,r.labelBounds.sourceRot),t.includeTargetLabels&&ii(n,r.labelBounds.targetRot))),n.w=n.x2-n.x1,n.h=n.y2-n.y1}return n},di={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,useCache:!0},hi=ui(di),pi=we(di);ei.boundingBox=function(e){var t;if(1!==this.length||null==this[0]._private.bbCache||this[0]._private.styleDirty||void 0!==e&&void 0!==e.useCache&&!0!==e.useCache){t=rt();var n=pi(e=e||di),r=this;if(r.cy().styleEnabled())for(var i=0;i<r.length;i++){var o=r[i],a=o._private,s=li(o),u=a.bbCachePosKey===s,l=n.useCache&&u&&!a.styleDirty;o.recalculateRenderedStyle(l)}this.updateCompoundBounds(!e.useCache);for(var c=0;c<r.length;c++){var d=r[c];ii(t,ci(d,n))}}else e=void 0===e?di:pi(e),t=ci(this[0],e);return t.x1=ni(t.x1),t.y1=ni(t.y1),t.x2=ni(t.x2),t.y2=ni(t.y2),t.w=ni(t.x2-t.x1),t.h=ni(t.y2-t.y1),t},ei.dirtyBoundingBoxCache=function(){for(var e=0;e<this.length;e++){var t=this[e]._private;t.bbCache=null,t.bbCachePosKey=null,t.bodyBounds=null,t.overlayBounds=null,t.labelBounds.all=null,t.labelBounds.source=null,t.labelBounds.target=null,t.labelBounds.main=null,t.labelBounds.sourceRot=null,t.labelBounds.targetRot=null,t.labelBounds.mainRot=null,t.arrowBounds.source=null,t.arrowBounds.target=null,t.arrowBounds["mid-source"]=null,t.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this},ei.boundingBoxAt=function(e){var t=this.nodes(),n=this.cy(),r=n.hasCompoundNodes(),i=n.collection();if(r&&(i=t.filter((function(e){return e.isParent()})),t=t.not(i)),E(e)){var o=e;e=function(){return o}}n.startBatch(),t.forEach((function(t,n){return t._private.bbAtOldPos=e(t,n)})).silentPositions(e),r&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0));var a=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}}(this.boundingBox({useCache:!1}));return t.silentPositions((function(e){return e._private.bbAtOldPos})),r&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0)),n.endBatch(),a},Jr.boundingbox=Jr.bb=Jr.boundingBox,Jr.renderedBoundingbox=Jr.renderedBoundingBox;var fi,vi,gi=ei;fi=vi={};var yi=function(e){e.uppercaseName=L(e.name),e.autoName="auto"+e.uppercaseName,e.labelName="label"+e.uppercaseName,e.outerName="outer"+e.uppercaseName,e.uppercaseOuterName=L(e.outerName),fi[e.name]=function(){var t=this[0],n=t._private,r=n.cy._private.styleEnabled;if(t){if(r){if(t.isParent())return t.updateCompoundBounds(),n[e.autoName]||0;var i=t.pstyle(e.name);return"label"===i.strValue?(t.recalculateRenderedStyle(),n.rstyle[e.labelName]||0):i.pfValue}return 1}},fi["outer"+e.uppercaseName]=function(){var t=this[0],n=t._private.cy._private.styleEnabled;if(t)return n?t[e.name]()+t.pstyle("border-width").pfValue+2*t.padding():1},fi["rendered"+e.uppercaseName]=function(){var t=this[0];if(t)return t[e.name]()*this.cy().zoom()},fi["rendered"+e.uppercaseOuterName]=function(){var t=this[0];if(t)return t[e.outerName]()*this.cy().zoom()}};yi({name:"width"}),yi({name:"height"}),vi.padding=function(){var e=this[0],t=e._private;return e.isParent()?(e.updateCompoundBounds(),void 0!==t.autoPadding?t.autoPadding:e.pstyle("padding").pfValue):e.pstyle("padding").pfValue},vi.paddedHeight=function(){var e=this[0];return e.height()+2*e.padding()},vi.paddedWidth=function(){var e=this[0];return e.width()+2*e.padding()};var mi=vi,bi={controlPoints:{get:function(e){return e.renderer().getControlPoints(e)},mult:!0},segmentPoints:{get:function(e){return e.renderer().getSegmentPoints(e)},mult:!0},sourceEndpoint:{get:function(e){return e.renderer().getSourceEndpoint(e)}},targetEndpoint:{get:function(e){return e.renderer().getTargetEndpoint(e)}},midpoint:{get:function(e){return e.renderer().getEdgeMidpoint(e)}}},xi=Object.keys(bi).reduce((function(e,t){var n=bi[t],r=function(e){return"rendered"+e[0].toUpperCase()+e.substr(1)}(t);return e[t]=function(){return function(e,t){if(e.isEdge())return t(e)}(this,n.get)},n.mult?e[r]=function(){return function(e,t){if(e.isEdge()){var n=e.cy(),r=n.pan(),i=n.zoom();return t(e).map((function(e){return He(e,i,r)}))}}(this,n.get)}:e[r]=function(){return function(e,t){if(e.isEdge()){var n=e.cy();return He(t(e),n.zoom(),n.pan())}}(this,n.get)},e}),{}),wi=R({},ti,gi,mi,xi),Ei=function(e,t){this.recycle(e,t)};function ki(){return!1}function Pi(){return!0}Ei.prototype={instanceString:function(){return"event"},recycle:function(e,t){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=ki,null!=e&&e.preventDefault?(this.type=e.type,this.isDefaultPrevented=e.defaultPrevented?Pi:ki):null!=e&&e.type?t=e:this.type=e,null!=t&&(this.originalEvent=t.originalEvent,this.type=null!=t.type?t.type:this.type,this.cy=t.cy,this.target=t.target,this.position=t.position,this.renderedPosition=t.renderedPosition,this.namespace=t.namespace,this.layout=t.layout),null!=this.cy&&null!=this.position&&null==this.renderedPosition){var n=this.position,r=this.cy.zoom(),i=this.cy.pan();this.renderedPosition={x:n.x*r+i.x,y:n.y*r+i.y}}this.timeStamp=e&&e.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=Pi;var e=this.originalEvent;e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){this.isPropagationStopped=Pi;var e=this.originalEvent;e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Pi,this.stopPropagation()},isDefaultPrevented:ki,isPropagationStopped:ki,isImmediatePropagationStopped:ki};var Si=/^([^.]+)(\.(?:[^.]+))?$/,Ci={qualifierCompare:function(e,t){return e===t},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(e){return e},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},_i=Object.keys(Ci),ji={};function Di(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ji,t=arguments.length>1?arguments[1]:void 0,n=0;n<_i.length;n++){var r=_i[n];this[r]=e[r]||Ci[r]}this.context=t||this.context,this.listeners=[],this.emitting=0}var Ti=Di.prototype,Bi=function(e,t,n,r,i,o,a){x(r)&&(i=r,r=null),a&&(o=null==o?a:R({},o,a));for(var s=w(n)?n:n.split(/\s+/),u=0;u<s.length;u++){var l=s[u];if(!T(l)){var c=l.match(Si);if(c)if(!1===t(e,l,c[1],c[2]?c[2]:null,r,i,o))break}}},Oi=function(e,t){return e.addEventFields(e.context,t),new Ei(t.type,t)},Mi=function(e,t,n){if("event"!==m(n))if(E(n))t(e,Oi(e,n));else for(var r=w(n)?n:n.split(/\s+/),i=0;i<r.length;i++){var o=r[i];if(!T(o)){var a=o.match(Si);if(a){var s=a[1],u=a[2]?a[2]:null;t(e,Oi(e,{type:s,namespace:u,target:e.context}))}}}else t(e,n)};Ti.on=Ti.addListener=function(e,t,n,r,i){return Bi(this,(function(e,t,n,r,i,o,a){x(o)&&e.listeners.push({event:t,callback:o,type:n,namespace:r,qualifier:i,conf:a})}),e,t,n,r,i),this},Ti.one=function(e,t,n,r){return this.on(e,t,n,r,{one:!0})},Ti.removeListener=Ti.off=function(e,t,n,r){var i=this;0!==this.emitting&&(this.listeners=this.listeners.slice());for(var o=this.listeners,a=function(a){var s=o[a];Bi(i,(function(t,n,r,i,u,l){if((s.type===r||"*"===e)&&(!i&&".*"!==s.namespace||s.namespace===i)&&(!u||t.qualifierCompare(s.qualifier,u))&&(!l||s.callback===l))return o.splice(a,1),!1}),e,t,n,r)},s=o.length-1;s>=0;s--)a(s);return this},Ti.removeAllListeners=function(){return this.removeListener("*")},Ti.emit=Ti.trigger=function(e,t,n){var r=this.listeners,i=r.length;return this.emitting++,w(t)||(t=[t]),Mi(this,(function(e,o){null!=n&&(r=[{event:o.event,type:o.type,namespace:o.namespace,callback:n}],i=r.length);for(var a=function(n){var i=r[n];if(i.type===o.type&&(!i.namespace||i.namespace===o.namespace||".*"===i.namespace)&&e.eventMatches(e.context,i,o)){var a=[o];null!=t&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];e.push(r)}}(a,t),e.beforeEmit(e.context,i,o),i.conf&&i.conf.one&&(e.listeners=e.listeners.filter((function(e){return e!==i})));var s=e.callbackContext(e.context,i,o),u=i.callback.apply(s,a);e.afterEmit(e.context,i,o),!1===u&&(o.stopPropagation(),o.preventDefault())}},s=0;s<i;s++)a(s);e.bubble(e.context)&&!o.isPropagationStopped()&&e.parent(e.context).emit(o,t)}),e),this.emitting--,this};var Ni={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&C(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e.cy(),t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e},beforeEmit:function(e,t){t.conf&&t.conf.once&&t.conf.onceCollection.removeListener(t.event,t.qualifier,t.callback)},bubble:function(){return!0},parent:function(e){return e.isChild()?e.parent():e.cy()}},Ii=function(e){return b(e)?new Nr(e):e},Li={createEmitter:function(){for(var e=0;e<this.length;e++){var t=this[e],n=t._private;n.emitter||(n.emitter=new Di(Ni,t))}return this},emitter:function(){return this._private.emitter},on:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().on(e,r,n)}return this},removeListener:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().removeListener(e,r,n)}return this},removeAllListeners:function(){for(var e=0;e<this.length;e++){this[e].emitter().removeAllListeners()}return this},one:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().one(e,r,n)}return this},once:function(e,t,n){for(var r=Ii(t),i=0;i<this.length;i++){this[i].emitter().on(e,r,n,{once:!0,onceCollection:this})}},emit:function(e,t){for(var n=0;n<this.length;n++){this[n].emitter().emit(e,t)}return this},emitAndNotify:function(e,t){if(0!==this.length)return this.cy().notify(e,this),this.emit(e,t),this}};Zn.eventAliasesOn(Li);var Ai={nodes:function(e){return this.filter((function(e){return e.isNode()})).filter(e)},edges:function(e){return this.filter((function(e){return e.isEdge()})).filter(e)},byGroup:function(){for(var e=this.spawn(),t=this.spawn(),n=0;n<this.length;n++){var r=this[n];r.isNode()?e.push(r):t.push(r)}return{nodes:e,edges:t}},filter:function(e,t){if(void 0===e)return this;if(b(e)||S(e))return new Nr(e).filter(this);if(x(e)){for(var n=this.spawn(),r=this,i=0;i<r.length;i++){var o=r[i];(t?e.apply(t,[o,i,r]):e(o,i,r))&&n.push(o)}return n}return this.spawn()},not:function(e){if(e){b(e)&&(e=this.filter(e));for(var t=this.spawn(),n=0;n<this.length;n++){var r=this[n];e.has(r)||t.push(r)}return t}return this},absoluteComplement:function(){return this.cy().mutableElements().not(this)},intersect:function(e){if(b(e)){var t=e;return this.filter(t)}for(var n=this.spawn(),r=e,i=this.length<e.length,o=i?this:r,a=i?r:this,s=0;s<o.length;s++){var u=o[s];a.has(u)&&n.push(u)}return n},xor:function(e){var t=this._private.cy;b(e)&&(e=t.$(e));var n=this.spawn(),r=e,i=function(e,t){for(var r=0;r<e.length;r++){var i=e[r],o=i._private.data.id;t.hasElementWithId(o)||n.push(i)}};return i(this,r),i(r,this),n},diff:function(e){var t=this._private.cy;b(e)&&(e=t.$(e));var n=this.spawn(),r=this.spawn(),i=this.spawn(),o=e,a=function(e,t,n){for(var r=0;r<e.length;r++){var o=e[r],a=o._private.data.id;t.hasElementWithId(a)?i.merge(o):n.push(o)}};return a(this,o,n),a(o,this,r),{left:n,right:r,both:i}},add:function(e){var t=this._private.cy;if(!e)return this;if(b(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=this.spawnSelf(),i=0;i<e.length;i++){var o=e[i],a=!this.has(o);a&&r.push(o)}return r},merge:function(e){var t=this._private,n=t.cy;if(!e)return this;if(e&&b(e)){var r=e;e=n.mutableElements().filter(r)}for(var i=t.map,o=0;o<e.length;o++){var a=e[o],s=a._private.data.id;if(!i.has(s)){var u=this.length++;this[u]=a,i.set(s,{ele:a,index:u})}}return this},unmergeAt:function(e){var t=this[e].id(),n=this._private.map;this[e]=void 0,n.delete(t);var r=e===this.length-1;if(this.length>1&&!r){var i=this.length-1,o=this[i],a=o._private.data.id;this[i]=void 0,this[e]=o,n.set(a,{ele:o,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,n=e._private.data.id,r=t.map.get(n);if(!r)return this;var i=r.index;return this.unmergeAt(i),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&b(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=0;r<e.length;r++)this.unmergeOne(e[r]);return this},unmergeBy:function(e){for(var t=this.length-1;t>=0;t--){e(this[t])&&this.unmergeAt(t)}return this},map:function(e,t){for(var n=[],r=this,i=0;i<r.length;i++){var o=r[i],a=t?e.apply(t,[o,i,r]):e(o,i,r);n.push(a)}return n},reduce:function(e,t){for(var n=t,r=this,i=0;i<r.length;i++)n=e(n,r[i],i,r);return n},max:function(e,t){for(var n,r=-1/0,i=this,o=0;o<i.length;o++){var a=i[o],s=t?e.apply(t,[a,o,i]):e(a,o,i);s>r&&(r=s,n=a)}return{value:r,ele:n}},min:function(e,t){for(var n,r=1/0,i=this,o=0;o<i.length;o++){var a=i[o],s=t?e.apply(t,[a,o,i]):e(a,o,i);s<r&&(r=s,n=a)}return{value:r,ele:n}}},zi=Ai;zi.u=zi["|"]=zi["+"]=zi.union=zi.or=zi.add,zi["\\"]=zi["!"]=zi["-"]=zi.difference=zi.relativeComplement=zi.subtract=zi.not,zi.n=zi["&"]=zi["."]=zi.and=zi.intersection=zi.intersect,zi["^"]=zi["(+)"]=zi["(-)"]=zi.symmetricDifference=zi.symdiff=zi.xor,zi.fnFilter=zi.filterFn=zi.stdFilter=zi.filter,zi.complement=zi.abscomp=zi.absoluteComplement;var Ri=function(e,t){var n=e.cy().hasCompoundNodes();function r(e){var t=e.pstyle("z-compound-depth");return"auto"===t.value?n?e.zDepth():0:"bottom"===t.value?-1:"top"===t.value?le:0}var i=r(e)-r(t);if(0!==i)return i;function o(e){return"auto"===e.pstyle("z-index-compare").value&&e.isNode()?1:0}var a=o(e)-o(t);if(0!==a)return a;var s=e.pstyle("z-index").value-t.pstyle("z-index").value;return 0!==s?s:e.poolIndex()-t.poolIndex()},Fi={forEach:function(e,t){if(x(e))for(var n=this.length,r=0;r<n;r++){var i=this[r];if(!1===(t?e.apply(t,[i,r,this]):e(i,r,this)))break}return this},toArray:function(){for(var e=[],t=0;t<this.length;t++)e.push(this[t]);return e},slice:function(e,t){var n=[],r=this.length;null==t&&(t=r),null==e&&(e=0),e<0&&(e=r+e),t<0&&(t=r+t);for(var i=e;i>=0&&i<t&&i<r;i++)n.push(this[i]);return this.spawn(n)},size:function(){return this.length},eq:function(e){return this[e]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return 0===this.length},nonempty:function(){return!this.empty()},sort:function(e){if(!x(e))return this;var t=this.toArray().sort(e);return this.spawn(t)},sortByZIndex:function(){return this.sort(Ri)},zDepth:function(){var e=this[0];if(e){var t=e._private;if("nodes"===t.group){var n=t.data.parent?e.parents().size():0;return e.isParent()?n:le-1}var r=t.source,i=t.target,o=r.zDepth(),a=i.zDepth();return Math.max(o,a,0)}}};Fi.each=Fi.forEach;var Vi;Vi="undefined",("undefined"==typeof Symbol?"undefined":a(Symbol))!=Vi&&a(Symbol.iterator)!=Vi&&(Fi[Symbol.iterator]=function(){var e=this,t={value:void 0,done:!1},n=0,r=this.length;return c({next:function(){return n<r?t.value=e[n++]:(t.value=void 0,t.done=!0),t}},Symbol.iterator,(function(){return this}))});var qi=we({nodeDimensionsIncludeLabels:!1}),Yi={layoutDimensions:function(e){var t;if(e=qi(e),this.takesUpSpace())if(e.nodeDimensionsIncludeLabels){var n=this.boundingBox();t={w:n.w,h:n.h}}else t={w:this.outerWidth(),h:this.outerHeight()};else t={w:0,h:0};return 0!==t.w&&0!==t.h||(t.w=t.h=1),t},layoutPositions:function(e,t,n){var r=this.nodes().filter((function(e){return!e.isParent()})),i=this.cy(),o=t.eles,a=function(e){return e.id()},s=O(n,a);e.emit({type:"layoutstart",layout:e}),e.animations=[];var u=t.spacingFactor&&1!==t.spacingFactor,l=function(){if(!u)return null;for(var e=rt(),t=0;t<r.length;t++){var n=r[t],i=s(n,t);it(e,i.x,i.y)}return e}(),c=O((function(e,n){var r=s(e,n);u&&(r=function(e,t,n){var r=t.x1+t.w/2,i=t.y1+t.h/2;return{x:r+(n.x-r)*e,y:i+(n.y-i)*e}}(Math.abs(t.spacingFactor),l,r));return null!=t.transform&&(r=t.transform(e,r)),r}),a);if(t.animate){for(var d=0;d<r.length;d++){var h=r[d],p=c(h,d);if(null==t.animateFilter||t.animateFilter(h,d)){var f=h.animation({position:p,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(f)}else h.position(p)}if(t.fit){var v=i.animation({fit:{boundingBox:o.boundingBoxAt(c),padding:t.padding},duration:t.animationDuration,easing:t.animationEasing});e.animations.push(v)}else if(void 0!==t.zoom&&void 0!==t.pan){var g=i.animation({zoom:t.zoom,pan:t.pan,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(g)}e.animations.forEach((function(e){return e.play()})),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),Xn.all(e.animations.map((function(e){return e.promise()}))).then((function(){e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})}))}else r.positions(c),t.fit&&i.fit(t.eles,t.padding),null!=t.zoom&&i.zoom(t.zoom),t.pan&&i.pan(t.pan),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e});return this},layout:function(e){return this.cy().makeLayout(R({},e,{eles:this}))}};function Xi(e,t,n){var r,i=n._private,o=i.styleCache=i.styleCache||[];return null!=(r=o[e])?r:r=o[e]=t(n)}function Hi(e,t){return e=re(e),function(n){return Xi(e,t,n)}}function Wi(e,t){e=re(e);var n=function(e){return t.call(e)};return function(){var t=this[0];if(t)return Xi(e,n,t)}}Yi.createLayout=Yi.makeLayout=Yi.layout;var Gi={recalculateRenderedStyle:function(e){var t=this.cy(),n=t.renderer(),r=t.styleEnabled();return n&&r&&n.recalculateRenderedStyle(this,e),this},dirtyStyleCache:function(){var e,t=this.cy(),n=function(e){return e._private.styleCache=null};t.hasCompoundNodes()?((e=this.spawnSelf().merge(this.descendants()).merge(this.parents())).merge(e.connectedEdges()),e.forEach(n)):this.forEach((function(e){n(e),e.connectedEdges().forEach(n)}));return this},updateStyle:function(e){var t=this._private.cy;if(!t.styleEnabled())return this;if(t.batching())return t._private.batchStyleEles.merge(this),this;var n=this;e=!(!e&&void 0!==e),t.hasCompoundNodes()&&(n=this.spawnSelf().merge(this.descendants()).merge(this.parents()));var r=n;return e?r.emitAndNotify("style"):r.emit("style"),n.forEach((function(e){return e._private.styleDirty=!0})),this},cleanStyle:function(){var e=this.cy();if(e.styleEnabled())for(var t=0;t<this.length;t++){var n=this[t];n._private.styleDirty&&(n._private.styleDirty=!1,e.style().apply(n))}},parsedStyle:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var i=n._private.style[e];return null!=i?i:t?r.style().getDefaultProperty(e):null}},numericStyle:function(e){var t=this[0];if(t.cy().styleEnabled()&&t){var n=t.pstyle(e);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(e){var t=this[0];if(t.cy().styleEnabled())return t?t.pstyle(e).units:void 0},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=this[0];return n?t.style().getRenderedStyle(n,e):void 0},style:function(e,t){var n=this.cy();if(!n.styleEnabled())return this;var r=n.style();if(E(e)){var i=e;r.applyBypass(this,i,false),this.emitAndNotify("style")}else if(b(e)){if(void 0===t){var o=this[0];return o?r.getStylePropertyValue(o,e):void 0}r.applyBypass(this,e,t,false),this.emitAndNotify("style")}else if(void 0===e){var a=this[0];return a?r.getRawStyle(a):void 0}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=t.style(),r=this;if(void 0===e)for(var i=0;i<r.length;i++){var o=r[i];n.removeAllBypasses(o,false)}else{e=e.split(/\s+/);for(var a=0;a<r.length;a++){var s=r[a];n.removeBypasses(s,e,false)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var e=this.cy();if(!e.styleEnabled())return 1;var t=e.hasCompoundNodes(),n=this[0];if(n){var r=n._private,i=n.pstyle("opacity").value;if(!t)return i;var o=r.data.parent?n.parents():null;if(o)for(var a=0;a<o.length;a++){i*=o[a].pstyle("opacity").value}return i}},transparent:function(){if(!this.cy().styleEnabled())return!1;var e=this[0],t=e.cy().hasCompoundNodes();return e?t?0===e.effectiveOpacity():0===e.pstyle("opacity").value:void 0},backgrounding:function(){return!!this.cy().styleEnabled()&&!!this[0]._private.backgrounding}};function Ui(e,t){var n=e._private.data.parent?e.parents():null;if(n)for(var r=0;r<n.length;r++){if(!t(n[r]))return!1}return!0}function Ki(e){var t=e.ok,n=e.edgeOkViaNode||e.ok,r=e.parentOk||e.ok;return function(){var e=this.cy();if(!e.styleEnabled())return!0;var i=this[0],o=e.hasCompoundNodes();if(i){var a=i._private;if(!t(i))return!1;if(i.isNode())return!o||Ui(i,r);var s=a.source,u=a.target;return n(s)&&(!o||Ui(s,n))&&(s===u||n(u)&&(!o||Ui(u,n)))}}}var Zi=Hi("eleTakesUpSpace",(function(e){return"element"===e.pstyle("display").value&&0!==e.width()&&(!e.isNode()||0!==e.height())}));Gi.takesUpSpace=Wi("takesUpSpace",Ki({ok:Zi}));var Qi=Hi("eleInteractive",(function(e){return"yes"===e.pstyle("events").value&&"visible"===e.pstyle("visibility").value&&Zi(e)})),$i=Hi("parentInteractive",(function(e){return"visible"===e.pstyle("visibility").value&&Zi(e)}));Gi.interactive=Wi("interactive",Ki({ok:Qi,parentOk:$i,edgeOkViaNode:Zi})),Gi.noninteractive=function(){var e=this[0];if(e)return!e.interactive()};var Ji=Hi("eleVisible",(function(e){return"visible"===e.pstyle("visibility").value&&0!==e.pstyle("opacity").pfValue&&Zi(e)})),eo=Zi;Gi.visible=Wi("visible",Ki({ok:Ji,edgeOkViaNode:eo})),Gi.hidden=function(){var e=this[0];if(e)return!e.visible()},Gi.isBundledBezier=Wi("isBundledBezier",(function(){return!!this.cy().styleEnabled()&&(!this.removed()&&"bezier"===this.pstyle("curve-style").value&&this.takesUpSpace())})),Gi.bypass=Gi.css=Gi.style,Gi.renderedCss=Gi.renderedStyle,Gi.removeBypass=Gi.removeCss=Gi.removeStyle,Gi.pstyle=Gi.parsedStyle;var to={};function no(e){return function(){var t=arguments,n=[];if(2===t.length){var r=t[0],i=t[1];this.on(e.event,r,i)}else if(1===t.length&&x(t[0])){var o=t[0];this.on(e.event,o)}else if(0===t.length||1===t.length&&w(t[0])){for(var a=1===t.length?t[0]:null,s=0;s<this.length;s++){var u=this[s],l=!e.ableField||u._private[e.ableField],c=u._private[e.field]!=e.value;if(e.overrideAble){var d=e.overrideAble(u);if(void 0!==d&&(l=d,!d))return this}l&&(u._private[e.field]=e.value,c&&n.push(u))}var h=this.spawn(n);h.updateStyle(),h.emit(e.event),a&&h.emit(a)}return this}}function ro(e){to[e.field]=function(){var t=this[0];if(t){if(e.overrideField){var n=e.overrideField(t);if(void 0!==n)return n}return t._private[e.field]}},to[e.on]=no({event:e.on,field:e.field,ableField:e.ableField,overrideAble:e.overrideAble,value:!0}),to[e.off]=no({event:e.off,field:e.field,ableField:e.ableField,overrideAble:e.overrideAble,value:!1})}ro({field:"locked",overrideField:function(e){return!!e.cy().autolock()||void 0},on:"lock",off:"unlock"}),ro({field:"grabbable",overrideField:function(e){return!e.cy().autoungrabify()&&!e.pannable()&&void 0},on:"grabify",off:"ungrabify"}),ro({field:"selected",ableField:"selectable",overrideAble:function(e){return!e.cy().autounselectify()&&void 0},on:"select",off:"unselect"}),ro({field:"selectable",overrideField:function(e){return!e.cy().autounselectify()&&void 0},on:"selectify",off:"unselectify"}),to.deselect=to.unselect,to.grabbed=function(){var e=this[0];if(e)return e._private.grabbed},ro({field:"active",on:"activate",off:"unactivate"}),ro({field:"pannable",on:"panify",off:"unpanify"}),to.inactive=function(){var e=this[0];if(e)return!e._private.active};var io={},oo=function(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r];if(i.isNode()){for(var o=!1,a=i.connectedEdges(),s=0;s<a.length;s++){var u=a[s],l=u.source(),c=u.target();if(e.noIncomingEdges&&c===i&&l!==i||e.noOutgoingEdges&&l===i&&c!==i){o=!0;break}}o||n.push(i)}}return this.spawn(n,!0).filter(t)}},ao=function(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r];if(i.isNode())for(var o=i.connectedEdges(),a=0;a<o.length;a++){var s=o[a],u=s.source(),l=s.target();e.outgoing&&u===i?(n.push(s),n.push(l)):e.incoming&&l===i&&(n.push(s),n.push(u))}}return this.spawn(n,!0).filter(t)}},so=function(e){return function(t){for(var n=this,r=[],i={};;){var o=e.outgoing?n.outgoers():n.incomers();if(0===o.length)break;for(var a=!1,s=0;s<o.length;s++){var u=o[s],l=u.id();i[l]||(i[l]=!0,r.push(u),a=!0)}if(!a)break;n=o}return this.spawn(r,!0).filter(t)}};function uo(e){return function(t){for(var n=[],r=0;r<this.length;r++){var i=this[r]._private[e.attr];i&&n.push(i)}return this.spawn(n,!0).filter(t)}}function lo(e){return function(t){var n=[],r=this._private.cy,i=e||{};b(t)&&(t=r.$(t));for(var o=0;o<t.length;o++)for(var a=t[o]._private.edges,s=0;s<a.length;s++){var u=a[s],l=u._private.data,c=this.hasElementWithId(l.source)&&t.hasElementWithId(l.target),d=t.hasElementWithId(l.source)&&this.hasElementWithId(l.target);if(c||d){if(i.thisIsSrc||i.thisIsTgt){if(i.thisIsSrc&&!c)continue;if(i.thisIsTgt&&!d)continue}n.push(u)}}return this.spawn(n,!0)}}function co(e){return e=R({},{codirected:!1},e),function(t){for(var n=[],r=this.edges(),i=e,o=0;o<r.length;o++)for(var a=r[o]._private,s=a.source,u=s._private.data.id,l=a.data.target,c=s._private.edges,d=0;d<c.length;d++){var h=c[d],p=h._private.data,f=p.target,v=p.source,g=f===l&&v===u,y=u===f&&l===v;(i.codirected&&g||!i.codirected&&(g||y))&&n.push(h)}return this.spawn(n,!0).filter(t)}}io.clearTraversalCache=function(){for(var e=0;e<this.length;e++)this[e]._private.traversalCache=null},R(io,{roots:oo({noIncomingEdges:!0}),leaves:oo({noOutgoingEdges:!0}),outgoers:Rr(ao({outgoing:!0}),"outgoers"),successors:so({outgoing:!0}),incomers:Rr(ao({incoming:!0}),"incomers"),predecessors:so({incoming:!0})}),R(io,{neighborhood:Rr((function(e){for(var t=[],n=this.nodes(),r=0;r<n.length;r++)for(var i=n[r],o=i.connectedEdges(),a=0;a<o.length;a++){var s=o[a],u=s.source(),l=s.target(),c=i===u?l:u;c.length>0&&t.push(c[0]),t.push(s[0])}return this.spawn(t,!0).filter(e)}),"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}}),io.neighbourhood=io.neighborhood,io.closedNeighbourhood=io.closedNeighborhood,io.openNeighbourhood=io.openNeighborhood,R(io,{source:Rr((function(e){var t,n=this[0];return n&&(t=n._private.source||n.cy().collection()),t&&e?t.filter(e):t}),"source"),target:Rr((function(e){var t,n=this[0];return n&&(t=n._private.target||n.cy().collection()),t&&e?t.filter(e):t}),"target"),sources:uo({attr:"source"}),targets:uo({attr:"target"})}),R(io,{edgesWith:Rr(lo(),"edgesWith"),edgesTo:Rr(lo({thisIsSrc:!0}),"edgesTo")}),R(io,{connectedEdges:Rr((function(e){for(var t=[],n=0;n<this.length;n++){var r=this[n];if(r.isNode())for(var i=r._private.edges,o=0;o<i.length;o++){var a=i[o];t.push(a)}}return this.spawn(t,!0).filter(e)}),"connectedEdges"),connectedNodes:Rr((function(e){for(var t=[],n=0;n<this.length;n++){var r=this[n];r.isEdge()&&(t.push(r.source()[0]),t.push(r.target()[0]))}return this.spawn(t,!0).filter(e)}),"connectedNodes"),parallelEdges:Rr(co(),"parallelEdges"),codirectedEdges:Rr(co({codirected:!0}),"codirectedEdges")}),R(io,{components:function(e){var t=this,n=t.cy(),r=n.collection(),i=null==e?t.nodes():e.nodes(),o=[];null!=e&&i.empty()&&(i=e.sources());var a=function(e,t){r.merge(e),i.unmerge(e),t.merge(e)};if(i.empty())return t.spawn();var s=function(){var e=n.collection();o.push(e);var r=i[0];a(r,e),t.bfs({directed:!1,roots:r,visit:function(t){return a(t,e)}}),e.forEach((function(n){n.connectedEdges().forEach((function(n){t.has(n)&&e.has(n.source())&&e.has(n.target())&&e.merge(n)}))}))};do{s()}while(i.length>0);return o},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}}),io.componentsOf=io.components;var ho=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(void 0!==e){var r=new Ce,i=!1;if(t){if(t.length>0&&E(t[0])&&!C(t[0])){i=!0;for(var o=[],a=new je,s=0,u=t.length;s<u;s++){var l=t[s];null==l.data&&(l.data={});var c=l.data;if(null==c.id)c.id=me();else if(e.hasElementWithId(c.id)||a.has(c.id))continue;var d=new De(e,l,!1);o.push(d),a.add(c.id)}t=o}}else t=[];this.length=0;for(var h=0,p=t.length;h<p;h++){var f=t[h][0];if(null!=f){var v=f._private.data.id;n&&r.has(v)||(n&&r.set(v,{index:this.length,ele:f}),this[this.length]=f,this.length++)}}this._private={eles:this,cy:e,get map(){return null==this.lazyMap&&this.rebuildMap(),this.lazyMap},set map(e){this.lazyMap=e},rebuildMap:function(){for(var e=this.lazyMap=new Ce,t=this.eles,n=0;n<t.length;n++){var r=t[n];e.set(r.id(),{index:n,ele:r})}}},n&&(this._private.map=r),i&&this.restore()}else fe("A collection must have a reference to the core")},po=De.prototype=ho.prototype=Object.create(Array.prototype);po.instanceString=function(){return"collection"},po.spawn=function(e,t){return new ho(this.cy(),e,t)},po.spawnSelf=function(){return this.spawn(this)},po.cy=function(){return this._private.cy},po.renderer=function(){return this._private.cy.renderer()},po.element=function(){return this[0]},po.collection=function(){return _(this)?this:new ho(this._private.cy,[this])},po.unique=function(){return new ho(this._private.cy,this,!0)},po.hasElementWithId=function(e){return e=""+e,this._private.map.has(e)},po.getElementById=function(e){e=""+e;var t=this._private.cy,n=this._private.map.get(e);return n?n.ele:new ho(t)},po.$id=po.getElementById,po.poolIndex=function(){var e=this._private.cy._private.elements,t=this[0]._private.data.id;return e._private.map.get(t).index},po.indexOf=function(e){var t=e[0]._private.data.id;return this._private.map.get(t).index},po.indexOfId=function(e){return e=""+e,this._private.map.get(e).index},po.json=function(e){var t=this.element(),n=this.cy();if(null==t&&e)return this;if(null!=t){var r=t._private;if(E(e)){if(n.startBatch(),e.data){t.data(e.data);var i=r.data;if(t.isEdge()){var o=!1,a={},s=e.data.source,u=e.data.target;null!=s&&s!=i.source&&(a.source=""+s,o=!0),null!=u&&u!=i.target&&(a.target=""+u,o=!0),o&&(t=t.move(a))}else{var l="parent"in e.data,c=e.data.parent;!l||null==c&&null==i.parent||c==i.parent||(void 0===c&&(c=null),null!=c&&(c=""+c),t=t.move({parent:c}))}}e.position&&t.position(e.position);var d=function(n,i,o){var a=e[n];null!=a&&a!==r[n]&&(a?t[i]():t[o]())};return d("removed","remove","restore"),d("selected","select","unselect"),d("selectable","selectify","unselectify"),d("locked","lock","unlock"),d("grabbable","grabify","ungrabify"),d("pannable","panify","unpanify"),null!=e.classes&&t.classes(e.classes),n.endBatch(),this}if(void 0===e){var h={data:ye(r.data),position:ye(r.position),group:r.group,removed:r.removed,selected:r.selected,selectable:r.selectable,locked:r.locked,grabbable:r.grabbable,pannable:r.pannable,classes:(null,"")},p=0;return r.classes.forEach((function(e){return h.classes+=0==p++?e:" "+e})),h}}},po.jsons=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t].json();e.push(n)}return e},po.clone=function(){for(var e=this.cy(),t=[],n=0;n<this.length;n++){var r=this[n].json(),i=new De(e,r,!1);t.push(i)}return new ho(e,t)},po.copy=po.clone,po.restore=function(){for(var e,t,n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this,o=i.cy(),a=o._private,s=[],u=[],l=0,c=i.length;l<c;l++){var d=i[l];r&&!d.removed()||(d.isNode()?s.push(d):u.push(d))}e=s.concat(u);var h=function(){e.splice(t,1),t--};for(t=0;t<e.length;t++){var p=e[t],f=p._private,v=f.data;if(p.clearTraversalCache(),r||f.removed)if(void 0===v.id)v.id=me();else if(k(v.id))v.id=""+v.id;else{if(T(v.id)||!b(v.id)){fe("Can not create element with invalid string ID `"+v.id+"`"),h();continue}if(o.hasElementWithId(v.id)){fe("Can not create second element with ID `"+v.id+"`"),h();continue}}else;var g=v.id;if(p.isNode()){var y=f.position;null==y.x&&(y.x=0),null==y.y&&(y.y=0)}if(p.isEdge()){for(var m=p,x=["source","target"],w=x.length,E=!1,P=0;P<w;P++){var S=x[P],C=v[S];k(C)&&(C=v[S]=""+v[S]),null==C||""===C?(fe("Can not create edge `"+g+"` with unspecified "+S),E=!0):o.hasElementWithId(C)||(fe("Can not create edge `"+g+"` with nonexistant "+S+" `"+C+"`"),E=!0)}if(E){h();continue}var _=o.getElementById(v.source),j=o.getElementById(v.target);_.same(j)?_._private.edges.push(m):(_._private.edges.push(m),j._private.edges.push(m)),m._private.source=_,m._private.target=j}f.map=new Ce,f.map.set(g,{ele:p,index:0}),f.removed=!1,r&&o.addToPool(p)}for(var D=0;D<s.length;D++){var B=s[D],O=B._private.data;k(O.parent)&&(O.parent=""+O.parent);var M=O.parent,N=null!=M;if(N){var I=o.getElementById(M);if(I.empty())O.parent=void 0;else{for(var L=!1,A=I;!A.empty();){if(B.same(A)){L=!0,O.parent=void 0;break}A=A.parent()}L||(I[0]._private.children.push(B),B._private.parent=I[0],a.hasCompoundNodes=!0)}}}if(e.length>0){for(var z=e.length===i.length?i:new ho(o,e),R=0;R<z.length;R++){var F=z[R];F.isNode()||(F.parallelEdges().clearTraversalCache(),F.source().clearTraversalCache(),F.target().clearTraversalCache())}(a.hasCompoundNodes?o.collection().merge(z).merge(z.connectedNodes()).merge(z.parent()):z).dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(n),n?z.emitAndNotify("add"):r&&z.emit("add")}return i},po.removed=function(){var e=this[0];return e&&e._private.removed},po.inside=function(){var e=this[0];return e&&!e._private.removed},po.remove=function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],i={},o=n._private.cy;function a(e){for(var t=e._private.edges,n=0;n<t.length;n++)u(t[n])}function s(e){for(var t=e._private.children,n=0;n<t.length;n++)u(t[n])}function u(e){var n=i[e.id()];t&&e.removed()||n||(i[e.id()]=!0,e.isNode()?(r.push(e),a(e),s(e)):r.unshift(e))}for(var l=0,c=n.length;l<c;l++){var d=n[l];u(d)}function h(e,t){var n=e._private.edges;Ee(n,t),e.clearTraversalCache()}function p(e){e.clearTraversalCache()}var f=[];function v(e,t){t=t[0];var n=(e=e[0])._private.children,r=e.id();Ee(n,t),t._private.parent=null,f.ids[r]||(f.ids[r]=!0,f.push(e))}f.ids={},n.dirtyCompoundBoundsCache(),t&&o.removeFromPool(r);for(var g=0;g<r.length;g++){var y=r[g];if(y.isEdge()){var m=y.source()[0],b=y.target()[0];h(m,y),h(b,y);for(var x=y.parallelEdges(),w=0;w<x.length;w++){var E=x[w];p(E),E.isBundledBezier()&&E.dirtyBoundingBoxCache()}}else{var k=y.parent();0!==k.length&&v(k,y)}t&&(y._private.removed=!0)}var P=o._private.elements;o._private.hasCompoundNodes=!1;for(var S=0;S<P.length;S++){var C=P[S];if(C.isParent()){o._private.hasCompoundNodes=!0;break}}var _=new ho(this.cy(),r);_.size()>0&&(e?_.emitAndNotify("remove"):t&&_.emit("remove"));for(var j=0;j<f.length;j++){var D=f[j];t&&D.removed()||D.updateStyle()}return _},po.move=function(e){var t=this._private.cy,n=this,r=!1,i=!1,o=function(e){return null==e?e:""+e};if(void 0!==e.source||void 0!==e.target){var a=o(e.source),s=o(e.target),u=null!=a&&t.hasElementWithId(a),l=null!=s&&t.hasElementWithId(s);(u||l)&&(t.batch((function(){n.remove(r,i),n.emitAndNotify("moveout");for(var e=0;e<n.length;e++){var t=n[e],o=t._private.data;t.isEdge()&&(u&&(o.source=a),l&&(o.target=s))}n.restore(r,i)})),n.emitAndNotify("move"))}else if(void 0!==e.parent){var c=o(e.parent);if(null===c||t.hasElementWithId(c)){var d=null===c?void 0:c;t.batch((function(){var e=n.remove(r,i);e.emitAndNotify("moveout");for(var t=0;t<n.length;t++){var o=n[t],a=o._private.data;o.isNode()&&(a.parent=d)}e.restore(r,i)})),n.emitAndNotify("move")}}return this},[An,Qn,$n,Lr,Fr,Gr,Ur,wi,Li,Ai,{isNode:function(){return"nodes"===this.group()},isEdge:function(){return"edges"===this.group()},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var e=this[0];if(e)return e._private.group}},Fi,Yi,Gi,to,io].forEach((function(e){R(po,e)}));var fo={add:function(e){var t,n=this;if(S(e)){var r=e;if(r._private.cy===n)t=r.restore();else{for(var i=[],o=0;o<r.length;o++){var a=r[o];i.push(a.json())}t=new ho(n,i)}}else if(w(e)){t=new ho(n,e)}else if(E(e)&&(w(e.nodes)||w(e.edges))){for(var s=e,u=[],l=["nodes","edges"],c=0,d=l.length;c<d;c++){var h=l[c],p=s[h];if(w(p))for(var f=0,v=p.length;f<v;f++){var g=R({group:h},p[f]);u.push(g)}}t=new ho(n,u)}else{t=new De(n,e).collection()}return t},remove:function(e){if(S(e));else if(b(e)){var t=e;e=this.$(t)}return e.remove()}};var vo=function(){function e(e){return-e.tension*e.x-e.friction*e.v}function t(t,n,r){var i={x:t.x+r.dx*n,v:t.v+r.dv*n,tension:t.tension,friction:t.friction};return{dx:i.v,dv:e(i)}}function n(n,r){var i={dx:n.v,dv:e(n)},o=t(n,.5*r,i),a=t(n,.5*r,o),s=t(n,r,a),u=1/6*(i.dx+2*(o.dx+a.dx)+s.dx),l=1/6*(i.dv+2*(o.dv+a.dv)+s.dv);return n.x=n.x+u*r,n.v=n.v+l*r,n}return function e(t,r,i){var o,a,s,u={x:-1,v:0,tension:null,friction:null},l=[0],c=0,d=1e-4;for(t=parseFloat(t)||500,r=parseFloat(r)||20,i=i||null,u.tension=t,u.friction=r,a=(o=null!==i)?(c=e(t,r))/i*.016:.016;s=n(s||u,a),l.push(1+s.x),c+=16,Math.abs(s.x)>d&&Math.abs(s.v)>d;);return o?function(e){return l[e*(l.length-1)|0]}:c}}(),go=function(e,t,n,r){var i=function(e,t,n,r){var i=4,o=.001,a=1e-7,s=10,u=11,l=1/(u-1),c="undefined"!=typeof Float32Array;if(4!==arguments.length)return!1;for(var d=0;d<4;++d)if("number"!=typeof arguments[d]||isNaN(arguments[d])||!isFinite(arguments[d]))return!1;e=Math.min(e,1),n=Math.min(n,1),e=Math.max(e,0),n=Math.max(n,0);var h=c?new Float32Array(u):new Array(u);function p(e,t){return 1-3*t+3*e}function f(e,t){return 3*t-6*e}function v(e){return 3*e}function g(e,t,n){return((p(t,n)*e+f(t,n))*e+v(t))*e}function y(e,t,n){return 3*p(t,n)*e*e+2*f(t,n)*e+v(t)}function m(t,r){for(var o=0;o<i;++o){var a=y(r,e,n);if(0===a)return r;r-=(g(r,e,n)-t)/a}return r}function b(){for(var t=0;t<u;++t)h[t]=g(t*l,e,n)}function x(t,r,i){var o,u,l=0;do{(o=g(u=r+(i-r)/2,e,n)-t)>0?i=u:r=u}while(Math.abs(o)>a&&++l<s);return u}function w(t){for(var r=0,i=1,a=u-1;i!==a&&h[i]<=t;++i)r+=l;--i;var s=r+(t-h[i])/(h[i+1]-h[i])*l,c=y(s,e,n);return c>=o?m(t,s):0===c?s:x(t,r,r+l)}var E=!1;function k(){E=!0,e===t&&n===r||b()}var P=function(i){return E||k(),e===t&&n===r?i:0===i?0:1===i?1:g(w(i),t,r)};P.getControlPoints=function(){return[{x:e,y:t},{x:n,y:r}]};var S="generateBezier("+[e,t,n,r]+")";return P.toString=function(){return S},P}(e,t,n,r);return function(e,t,n){return e+(t-e)*i(n)}},yo={linear:function(e,t,n){return e+(t-e)*n},ease:go(.25,.1,.25,1),"ease-in":go(.42,0,1,1),"ease-out":go(0,0,.58,1),"ease-in-out":go(.42,0,.58,1),"ease-in-sine":go(.47,0,.745,.715),"ease-out-sine":go(.39,.575,.565,1),"ease-in-out-sine":go(.445,.05,.55,.95),"ease-in-quad":go(.55,.085,.68,.53),"ease-out-quad":go(.25,.46,.45,.94),"ease-in-out-quad":go(.455,.03,.515,.955),"ease-in-cubic":go(.55,.055,.675,.19),"ease-out-cubic":go(.215,.61,.355,1),"ease-in-out-cubic":go(.645,.045,.355,1),"ease-in-quart":go(.895,.03,.685,.22),"ease-out-quart":go(.165,.84,.44,1),"ease-in-out-quart":go(.77,0,.175,1),"ease-in-quint":go(.755,.05,.855,.06),"ease-out-quint":go(.23,1,.32,1),"ease-in-out-quint":go(.86,0,.07,1),"ease-in-expo":go(.95,.05,.795,.035),"ease-out-expo":go(.19,1,.22,1),"ease-in-out-expo":go(1,0,0,1),"ease-in-circ":go(.6,.04,.98,.335),"ease-out-circ":go(.075,.82,.165,1),"ease-in-out-circ":go(.785,.135,.15,.86),spring:function(e,t,n){if(0===n)return yo.linear;var r=vo(e,t,n);return function(e,t,n){return e+(t-e)*r(n)}},"cubic-bezier":go};function mo(e,t,n,r,i){if(1===r)return n;if(t===n)return n;var o=i(t,n,r);return null==e||((e.roundValue||e.color)&&(o=Math.round(o)),void 0!==e.min&&(o=Math.max(o,e.min)),void 0!==e.max&&(o=Math.min(o,e.max))),o}function bo(e,t){return null!=e.pfValue||null!=e.value?null==e.pfValue||null!=t&&"%"===t.type.units?e.value:e.pfValue:e}function xo(e,t,n,r,i){var o=null!=i?i.type:null;n<0?n=0:n>1&&(n=1);var a=bo(e,i),s=bo(t,i);if(k(a)&&k(s))return mo(o,a,s,n,r);if(w(a)&&w(s)){for(var u=[],l=0;l<s.length;l++){var c=a[l],d=s[l];if(null!=c&&null!=d){var h=mo(o,c,d,n,r);u.push(h)}else u.push(d)}return u}}function wo(e,t,n,r){var i=!r,o=e._private,a=t._private,s=a.easing,u=a.startTime,l=(r?e:e.cy()).style();if(!a.easingImpl)if(null==s)a.easingImpl=yo.linear;else{var c,d,h;if(b(s))c=l.parse("transition-timing-function",s).value;else c=s;b(c)?(d=c,h=[]):(d=c[1],h=c.slice(2).map((function(e){return+e}))),h.length>0?("spring"===d&&h.push(a.duration),a.easingImpl=yo[d].apply(null,h)):a.easingImpl=yo[d]}var p,f=a.easingImpl;if(p=0===a.duration?1:(n-u)/a.duration,a.applying&&(p=a.progress),p<0?p=0:p>1&&(p=1),null==a.delay){var v=a.startPosition,g=a.position;if(g&&i&&!e.locked()){var y={};Eo(v.x,g.x)&&(y.x=xo(v.x,g.x,p,f)),Eo(v.y,g.y)&&(y.y=xo(v.y,g.y,p,f)),e.position(y)}var m=a.startPan,x=a.pan,w=o.pan,E=null!=x&&r;E&&(Eo(m.x,x.x)&&(w.x=xo(m.x,x.x,p,f)),Eo(m.y,x.y)&&(w.y=xo(m.y,x.y,p,f)),e.emit("pan"));var k=a.startZoom,P=a.zoom,S=null!=P&&r;S&&(Eo(k,P)&&(o.zoom=nt(o.minZoom,xo(k,P,p,f),o.maxZoom)),e.emit("zoom")),(E||S)&&e.emit("viewport");var C=a.style;if(C&&C.length>0&&i){for(var _=0;_<C.length;_++){var j=C[_],D=j.name,T=j,B=a.startStyle[D],O=xo(B,T,p,f,l.properties[B.name]);l.overrideBypass(e,D,O)}e.emit("style")}}return a.progress=p,p}function Eo(e,t){return null!=e&&null!=t&&(!(!k(e)||!k(t))||!(!e||!t))}function ko(e,t,n,r){var i=t._private;i.started=!0,i.startTime=n-i.progress*i.duration}function Po(e,t){var n=t._private.aniEles,r=[];function i(t,n){var i=t._private,o=i.animation.current,a=i.animation.queue,s=!1;if(0===o.length){var u=a.shift();u&&o.push(u)}for(var l=function(e){for(var t=e.length-1;t>=0;t--){(0,e[t])()}e.splice(0,e.length)},c=o.length-1;c>=0;c--){var d=o[c],h=d._private;h.stopped?(o.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,l(h.frames)):(h.playing||h.applying)&&(h.playing&&h.applying&&(h.applying=!1),h.started||ko(0,d,e),wo(t,d,e,n),h.applying&&(h.applying=!1),l(h.frames),null!=h.step&&h.step(e),d.completed()&&(o.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,l(h.completes)),s=!0)}return n||0!==o.length||0!==a.length||r.push(t),s}for(var o=!1,a=0;a<n.length;a++){var s=i(n[a]);o=o||s}var u=i(t,!0);(o||u)&&(n.length>0?t.notify("draw",n):t.notify("draw")),n.unmerge(r),t.emit("step")}var So={animate:Zn.animate(),animation:Zn.animation(),animated:Zn.animated(),clearQueue:Zn.clearQueue(),delay:Zn.delay(),delayAnimation:Zn.delayAnimation(),stop:Zn.stop(),addToAnimationPool:function(e){this.styleEnabled()&&this._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,e.styleEnabled()){var t=e.renderer();t&&t.beforeRender?t.beforeRender((function(t,n){Po(n,e)}),t.beforeRenderPriorities.animations):function t(){e._private.animationsRunning&&G((function(n){Po(n,e),t()}))}()}}},Co={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&C(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e}},_o=function(e){return b(e)?new Nr(e):e},jo={createEmitter:function(){var e=this._private;return e.emitter||(e.emitter=new Di(Co,this)),this},emitter:function(){return this._private.emitter},on:function(e,t,n){return this.emitter().on(e,_o(t),n),this},removeListener:function(e,t,n){return this.emitter().removeListener(e,_o(t),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,n){return this.emitter().one(e,_o(t),n),this},once:function(e,t,n){return this.emitter().one(e,_o(t),n),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};Zn.eventAliasesOn(jo);var Do={png:function(e){return e=e||{},this._private.renderer.png(e)},jpg:function(e){var t=this._private.renderer;return(e=e||{}).bg=e.bg||"#fff",t.jpg(e)}};Do.jpeg=Do.jpg;var To={layout:function(e){var t=this;if(null!=e)if(null!=e.name){var n=e.name,r=t.extension("layout",n);if(null!=r){var i;i=b(e.eles)?t.$(e.eles):null!=e.eles?e.eles:t.$();var o=new r(R({},e,{cy:t,eles:i}));return o}fe("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?")}else fe("A `name` must be specified to make a layout");else fe("Layout options must be specified to make a layout")}};To.createLayout=To.makeLayout=To.layout;var Bo={notify:function(e,t){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();null!=t&&r.merge(t)}else if(n.notificationsEnabled){var i=this.renderer();!this.destroyed()&&i&&i.notify(e,t)}},notifications:function(e){var t=this._private;return void 0===e?t.notificationsEnabled:(t.notificationsEnabled=!!e,this)},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;return null==e.batchCount&&(e.batchCount=0),0===e.batchCount&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},endBatch:function(){var e=this._private;if(0===e.batchCount)return this;if(e.batchCount--,0===e.batchCount){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach((function(n){var r=e.batchNotifications[n];r.empty()?t.notify(n):t.notify(n,r)}))}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch((function(){for(var n=Object.keys(e),r=0;r<n.length;r++){var i=n[r],o=e[i];t.getElementById(i).data(o)}}))}},Oo=we({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1}),Mo={renderTo:function(e,t,n,r){return this._private.renderer.renderTo(e,t,n,r),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(e){var t=this,n=t.extension("renderer",e.name);if(null!=n){void 0!==e.wheelSensitivity&&ge("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var r=Oo(e);r.cy=t,t._private.renderer=new n(r),this.notify("init")}else fe("Can not initialise: No such renderer `".concat(e.name,"` found. Did you forget to import it and `cytoscape.use()` it?"))},destroyRenderer:function(){var e=this;e.notify("destroy");var t=e.container();if(t)for(t._cyreg=null;t.childNodes.length>0;)t.removeChild(t.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach((function(e){var t=e._private;t.rscratch={},t.rstyle={},t.animation.current=[],t.animation.queue=[]}))},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};Mo.invalidateDimensions=Mo.resize;var No={collection:function(e,t){return b(e)?this.$(e):S(e)?e.collection():w(e)?new ho(this,e,t):new ho(this)},nodes:function(e){var t=this.$((function(e){return e.isNode()}));return e?t.filter(e):t},edges:function(e){var t=this.$((function(e){return e.isEdge()}));return e?t.filter(e):t},$:function(e){var t=this._private.elements;return e?t.filter(e):t.spawnSelf()},mutableElements:function(){return this._private.elements}};No.elements=No.filter=No.$;var Io={},Lo="t";Io.apply=function(e){for(var t=this,n=t._private.cy.collection(),r=0;r<e.length;r++){var i=e[r],o=t.getContextMeta(i);if(!o.empty){var a=t.getContextStyle(o),s=t.applyContextStyle(o,a,i);i._private.appliedInitStyle?t.updateTransitions(i,s.diffProps):i._private.appliedInitStyle=!0,t.updateStyleHints(i)&&n.push(i)}}return n},Io.getPropertiesDiff=function(e,t){var n=this,r=n._private.propDiffs=n._private.propDiffs||{},i=e+"-"+t,o=r[i];if(o)return o;for(var a=[],s={},u=0;u<n.length;u++){var l=n[u],c=e[u]===Lo,d=t[u]===Lo,h=c!==d,p=l.mappedProperties.length>0;if(h||d&&p){var f=void 0;h&&p||h?f=l.properties:p&&(f=l.mappedProperties);for(var v=0;v<f.length;v++){for(var g=f[v],y=g.name,m=!1,b=u+1;b<n.length;b++){var x=n[b];if(t[b]===Lo&&(m=null!=x.properties[g.name]))break}s[y]||m||(s[y]=!0,a.push(y))}}}return r[i]=a,a},Io.getContextMeta=function(e){for(var t,n=this,r="",i=e._private.styleCxtKey||"",o=0;o<n.length;o++){var a=n[o];r+=a.selector&&a.selector.matches(e)?Lo:"f"}return t=n.getPropertiesDiff(i,r),e._private.styleCxtKey=r,{key:r,diffPropNames:t,empty:0===t.length}},Io.getContextStyle=function(e){var t=e.key,n=this._private.contextStyles=this._private.contextStyles||{};if(n[t])return n[t];for(var r={_private:{key:t}},i=0;i<this.length;i++){var o=this[i];if(t[i]===Lo)for(var a=0;a<o.properties.length;a++){var s=o.properties[a];r[s.name]=s}}return n[t]=r,r},Io.applyContextStyle=function(e,t,n){for(var r=e.diffPropNames,i={},o=this.types,a=0;a<r.length;a++){var s=r[a],u=t[s],l=n.pstyle(s);if(!u){if(!l)continue;u=l.bypass?{name:s,deleteBypassed:!0}:{name:s,delete:!0}}if(l!==u){if(u.mapped===o.fn&&null!=l&&null!=l.mapping&&l.mapping.value===u.value){var c=l.mapping;if((c.fnValue=u.value(n))===c.prevFnValue)continue}var d=i[s]={prev:l};this.applyParsedProperty(n,u),d.next=n.pstyle(s),d.next&&d.next.bypass&&(d.next=d.next.bypassed)}}return{diffProps:i}},Io.updateStyleHints=function(e){var t=e._private,n=this,r=n.propertyGroupNames,i=n.propertyGroupKeys,o=function(e,t,r){return n.getPropertiesHash(e,t,r)},a=t.styleKey;if(e.removed())return!1;var s="nodes"===t.group,u=e._private.style;r=Object.keys(u);for(var l=0;l<i.length;l++){var c=i[l];t.styleKeys[c]=[K,Q]}for(var d,h=function(e,n){return t.styleKeys[n][0]=J(e,t.styleKeys[n][0])},p=function(e,n){return t.styleKeys[n][1]=ee(e,t.styleKeys[n][1])},f=function(e,t){h(e,t),p(e,t)},v=function(e,t){for(var n=0;n<e.length;n++){var r=e.charCodeAt(n);h(r,t),p(r,t)}},g=0;g<r.length;g++){var y=r[g],m=u[y];if(null!=m){var b=this.properties[y],x=b.type,w=b.groupKey,E=void 0;null!=b.hashOverride?E=b.hashOverride(e,m):null!=m.pfValue&&(E=m.pfValue);var k=null==b.enums?m.value:null,P=null!=E,S=P||null!=k,C=m.units;if(x.number&&S&&!x.multiple)f(-128<(d=P?E:k)&&d<128&&Math.floor(d)!==d?2e9-(1024*d|0):d,w),P||null==C||v(C,w);else v(m.strValue,w)}}for(var _,j,D=[K,Q],T=0;T<i.length;T++){var B=i[T],O=t.styleKeys[B];D[0]=J(O[0],D[0]),D[1]=ee(O[1],D[1])}t.styleKey=(_=D[0],j=D[1],2097152*_+j);var M=t.styleKeys;t.labelDimsKey=te(M.labelDimensions);var N=o(e,["label"],M.labelDimensions);if(t.labelKey=te(N),t.labelStyleKey=te(ne(M.commonLabel,N)),!s){var I=o(e,["source-label"],M.labelDimensions);t.sourceLabelKey=te(I),t.sourceLabelStyleKey=te(ne(M.commonLabel,I));var L=o(e,["target-label"],M.labelDimensions);t.targetLabelKey=te(L),t.targetLabelStyleKey=te(ne(M.commonLabel,L))}if(s){var A=t.styleKeys,z=A.nodeBody,R=A.nodeBorder,F=A.backgroundImage,V=A.compound,q=A.pie,Y=[z,R,F,V,q].filter((function(e){return null!=e})).reduce(ne,[K,Q]);t.nodeKey=te(Y),t.hasPie=null!=q&&q[0]!==K&&q[1]!==Q}return a!==t.styleKey},Io.clearStyleHints=function(e){var t=e._private;t.styleCxtKey="",t.styleKeys={},t.styleKey=null,t.labelKey=null,t.labelStyleKey=null,t.sourceLabelKey=null,t.sourceLabelStyleKey=null,t.targetLabelKey=null,t.targetLabelStyleKey=null,t.nodeKey=null,t.hasPie=null},Io.applyParsedProperty=function(e,t){var n,r=this,i=t,o=e._private.style,a=r.types,s=r.properties[i.name].type,u=i.bypass,l=o[i.name],c=l&&l.bypass,d=e._private,h="mapping",p=function(e){return null==e?null:null!=e.pfValue?e.pfValue:e.value},f=function(){var t=p(l),n=p(i);r.checkTriggers(e,i.name,t,n)};if(i&&"pie"===i.name.substr(0,3)&&ge("The pie style properties are deprecated. Create charts using background images instead."),"curve-style"===t.name&&e.isEdge()&&("bezier"!==t.value&&e.isLoop()||"haystack"===t.value&&(e.source().isParent()||e.target().isParent()))&&(i=t=this.parse(t.name,"bezier",u)),i.delete)return o[i.name]=void 0,f(),!0;if(i.deleteBypassed)return l?!!l.bypass&&(l.bypassed=void 0,f(),!0):(f(),!0);if(i.deleteBypass)return l?!!l.bypass&&(o[i.name]=l.bypassed,f(),!0):(f(),!0);var v=function(){ge("Do not assign mappings to elements without corresponding data (i.e. ele `"+e.id()+"` has no mapping for property `"+i.name+"` with data field `"+i.field+"`); try a `["+i.field+"]` selector to limit scope to elements with `"+i.field+"` defined")};switch(i.mapped){case a.mapData:for(var g,y=i.field.split("."),m=d.data,b=0;b<y.length&&m;b++){m=m[y[b]]}if(null==m)return v(),!1;if(!k(m))return ge("Do not use continuous mappers without specifying numeric data (i.e. `"+i.field+": "+m+"` for `"+e.id()+"` is non-numeric)"),!1;var x=i.fieldMax-i.fieldMin;if((g=0===x?0:(m-i.fieldMin)/x)<0?g=0:g>1&&(g=1),s.color){var w=i.valueMin[0],E=i.valueMax[0],P=i.valueMin[1],S=i.valueMax[1],C=i.valueMin[2],_=i.valueMax[2],j=null==i.valueMin[3]?1:i.valueMin[3],D=null==i.valueMax[3]?1:i.valueMax[3],T=[Math.round(w+(E-w)*g),Math.round(P+(S-P)*g),Math.round(C+(_-C)*g),Math.round(j+(D-j)*g)];n={bypass:i.bypass,name:i.name,value:T,strValue:"rgb("+T[0]+", "+T[1]+", "+T[2]+")"}}else{if(!s.number)return!1;var B=i.valueMin+(i.valueMax-i.valueMin)*g;n=this.parse(i.name,B,i.bypass,h)}if(!n)return v(),!1;n.mapping=i,i=n;break;case a.data:for(var O=i.field.split("."),M=d.data,N=0;N<O.length&&M;N++){M=M[O[N]]}if(null!=M&&(n=this.parse(i.name,M,i.bypass,h)),!n)return v(),!1;n.mapping=i,i=n;break;case a.fn:var I=i.value,L=null!=i.fnValue?i.fnValue:I(e);if(i.prevFnValue=L,null==L)return ge("Custom function mappers may not return null (i.e. `"+i.name+"` for ele `"+e.id()+"` is null)"),!1;if(!(n=this.parse(i.name,L,i.bypass,h)))return ge("Custom function mappers may not return invalid values for the property type (i.e. `"+i.name+"` for ele `"+e.id()+"` is invalid)"),!1;n.mapping=ye(i),i=n;break;case void 0:break;default:return!1}return u?(i.bypassed=c?l.bypassed:l,o[i.name]=i):c?l.bypassed=i:o[i.name]=i,f(),!0},Io.cleanElements=function(e,t){for(var n=0;n<e.length;n++){var r=e[n];if(this.clearStyleHints(r),r.dirtyCompoundBoundsCache(),r.dirtyBoundingBoxCache(),t)for(var i=r._private.style,o=Object.keys(i),a=0;a<o.length;a++){var s=o[a],u=i[s];null!=u&&(u.bypass?u.bypassed=null:i[s]=null)}else r._private.style={}}},Io.update=function(){this._private.cy.mutableElements().updateStyle()},Io.updateTransitions=function(e,t){var n=this,r=e._private,i=e.pstyle("transition-property").value,o=e.pstyle("transition-duration").pfValue,a=e.pstyle("transition-delay").pfValue;if(i.length>0&&o>0){for(var s={},u=!1,l=0;l<i.length;l++){var c=i[l],d=e.pstyle(c),h=t[c];if(h){var p=h.prev,f=null!=h.next?h.next:d,v=!1,g=void 0,y=1e-6;p&&(k(p.pfValue)&&k(f.pfValue)?(v=f.pfValue-p.pfValue,g=p.pfValue+y*v):k(p.value)&&k(f.value)?(v=f.value-p.value,g=p.value+y*v):w(p.value)&&w(f.value)&&(v=p.value[0]!==f.value[0]||p.value[1]!==f.value[1]||p.value[2]!==f.value[2],g=p.strValue),v&&(s[c]=f.strValue,this.applyBypass(e,c,g),u=!0))}}if(!u)return;r.transitioning=!0,new Xn((function(t){a>0?e.delayAnimation(a).play().promise().then(t):t()})).then((function(){return e.animation({style:s,duration:o,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1)},Io.checkTrigger=function(e,t,n,r,i,o){var a=this.properties[t],s=i(a);null!=s&&s(n,r)&&o(a)},Io.checkZOrderTrigger=function(e,t,n,r){var i=this;this.checkTrigger(e,t,n,r,(function(e){return e.triggersZOrder}),(function(){i._private.cy.notify("zorder",e)}))},Io.checkBoundsTrigger=function(e,t,n,r){this.checkTrigger(e,t,n,r,(function(e){return e.triggersBounds}),(function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),"curve-style"!==t||"bezier"!==n&&"bezier"!==r||!i.triggersBoundsOfParallelBeziers||e.parallelEdges().forEach((function(e){e.isBundledBezier()&&e.dirtyBoundingBoxCache()}))}))},Io.checkTriggers=function(e,t,n,r){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,n,r),this.checkBoundsTrigger(e,t,n,r)};var Ao={applyBypass:function(e,t,n,r){var i=[];if("*"===t||"**"===t){if(void 0!==n)for(var o=0;o<this.properties.length;o++){var a=this.properties[o].name,s=this.parse(a,n,!0);s&&i.push(s)}}else if(b(t)){var u=this.parse(t,n,!0);u&&i.push(u)}else{if(!E(t))return!1;var l=t;r=n;for(var c=Object.keys(l),d=0;d<c.length;d++){var h=c[d],p=l[h];if(void 0===p&&(p=l[N(h)]),void 0!==p){var f=this.parse(h,p,!0);f&&i.push(f)}}}if(0===i.length)return!1;for(var v=!1,g=0;g<e.length;g++){for(var y=e[g],m={},x=void 0,w=0;w<i.length;w++){var k=i[w];if(r){var P=y.pstyle(k.name);x=m[k.name]={prev:P}}v=this.applyParsedProperty(y,ye(k))||v,r&&(x.next=y.pstyle(k.name))}v&&this.updateStyleHints(y),r&&this.updateTransitions(y,m,true)}return v},overrideBypass:function(e,t,n){t=M(t);for(var r=0;r<e.length;r++){var i=e[r],o=i._private.style[t],a=this.properties[t].type,s=a.color,u=a.mutiple,l=o?null!=o.pfValue?o.pfValue:o.value:null;o&&o.bypass?(o.value=n,null!=o.pfValue&&(o.pfValue=n),o.strValue=s?"rgb("+n.join(",")+")":u?n.join(" "):""+n,this.updateStyleHints(i)):this.applyBypass(i,t,n),this.checkTriggers(i,t,l,n)}},removeAllBypasses:function(e,t){return this.removeBypasses(e,this.propertyNames,t)},removeBypasses:function(e,t,n){for(var r=0;r<e.length;r++){for(var i=e[r],o={},a=0;a<t.length;a++){var s=t[a],u=this.properties[s],l=i.pstyle(u.name);if(l&&l.bypass){var c=this.parse(s,"",!0),d=o[u.name]={prev:l};this.applyParsedProperty(i,c),d.next=i.pstyle(u.name)}}this.updateStyleHints(i),n&&this.updateTransitions(i,o,true)}}},zo={getEmSizeInPixels:function(){var e=this.containerCss("font-size");return null!=e?parseFloat(e):1},containerCss:function(e){var t=this._private.cy.container();if(h&&t&&h.getComputedStyle)return h.getComputedStyle(t).getPropertyValue(e)}},Ro={getRenderedStyle:function(e,t){return t?this.getStylePropertyValue(e,t,!0):this.getRawStyle(e,!0)},getRawStyle:function(e,t){var n=this;if(e=e[0]){for(var r={},i=0;i<n.properties.length;i++){var o=n.properties[i],a=n.getStylePropertyValue(e,o.name,t);null!=a&&(r[o.name]=a,r[N(o.name)]=a)}return r}},getIndexedStyle:function(e,t,n,r){var i=e.pstyle(t)[n][r];return null!=i?i:e.cy().style().getDefaultProperty(t)[n][0]},getStylePropertyValue:function(e,t,n){if(e=e[0]){var r=this.properties[t];r.alias&&(r=r.pointsTo);var i=r.type,o=e.pstyle(r.name);if(o){var a=o.value,s=o.units,u=o.strValue;if(n&&i.number&&null!=a&&k(a)){var l=e.cy().zoom(),c=function(e){return e*l},d=function(e,t){return c(e)+t},h=w(a);return(h?s.every((function(e){return null!=e})):null!=s)?h?a.map((function(e,t){return d(e,s[t])})).join(" "):d(a,s):h?a.map((function(e){return b(e)?e:""+c(e)})).join(" "):""+c(a)}if(null!=u)return u}return null}},getAnimationStartStyle:function(e,t){for(var n={},r=0;r<t.length;r++){var i=t[r].name,o=e.pstyle(i);void 0!==o&&(o=E(o)?this.parse(i,o.strValue):this.parse(i,o)),o&&(n[i]=o)}return n},getPropsList:function(e){var t=[],n=e,r=this.properties;if(n)for(var i=Object.keys(n),o=0;o<i.length;o++){var a=i[o],s=n[a],u=r[a]||r[M(a)],l=this.parse(u.name,s);l&&t.push(l)}return t},getNonDefaultPropertiesHash:function(e,t,n){var r,i,o,a,s,u,l=n.slice();for(s=0;s<t.length;s++)if(r=t[s],null!=(i=e.pstyle(r,!1)))if(null!=i.pfValue)l[0]=J(a,l[0]),l[1]=ee(a,l[1]);else for(o=i.strValue,u=0;u<o.length;u++)a=o.charCodeAt(u),l[0]=J(a,l[0]),l[1]=ee(a,l[1]);return l}};Ro.getPropertiesHash=Ro.getNonDefaultPropertiesHash;var Fo={appendFromJson:function(e){for(var t=this,n=0;n<e.length;n++){var r=e[n],i=r.selector,o=r.style||r.css,a=Object.keys(o);t.selector(i);for(var s=0;s<a.length;s++){var u=a[s],l=o[u];t.css(u,l)}}return t},fromJson:function(e){var t=this;return t.resetToDefault(),t.appendFromJson(e),t},json:function(){for(var e=[],t=this.defaultLength;t<this.length;t++){for(var n=this[t],r=n.selector,i=n.properties,o={},a=0;a<i.length;a++){var s=i[a];o[s.name]=s.strValue}e.push({selector:r?r.toString():"core",style:o})}return e}},Vo={appendFromString:function(e){var t,n,r,i=this,o=""+e;function a(){o=o.length>t.length?o.substr(t.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(o=o.replace(/[/][*](\s|.)+?[*][/]/g,"");;){if(o.match(/^\s*$/))break;var u=o.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!u){ge("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+o);break}t=u[0];var l=u[1];if("core"!==l)if(new Nr(l).invalid){ge("Skipping parsing of block: Invalid selector found in string stylesheet: "+l),a();continue}var c=u[2],d=!1;n=c;for(var h=[];;){if(n.match(/^\s*$/))break;var p=n.match(/^\s*(.+?)\s*:\s*(.+?)\s*;/);if(!p){ge("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+c),d=!0;break}r=p[0];var f=p[1],v=p[2];if(this.properties[f])i.parse(f,v)?(h.push({name:f,val:v}),s()):(ge("Skipping property: Invalid property definition in: "+r),s());else ge("Skipping property: Invalid property name in: "+r),s()}if(d){a();break}i.selector(l);for(var g=0;g<h.length;g++){var y=h[g];i.css(y.name,y.val)}a()}return i},fromString:function(e){var t=this;return t.resetToDefault(),t.appendFromString(e),t}},qo={};!function(){var e=A,t=function(e){return"^"+e+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},n=function(t){var n=e+"|\\w+|rgb[a]?\\((?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%]?)(?:\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)|hsl[a]?\\((?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?)))\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))[%])(?:\\s*,\\s*(?:(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))))?\\)|\\#[0-9a-fA-F]{3}|\\#[0-9a-fA-F]{6}";return"^"+t+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+e+")\\s*\\,\\s*("+e+")\\s*,\\s*("+n+")\\s*\\,\\s*("+n+")\\)$"},r=["^url\\s*\\(\\s*['\"]?(.+?)['\"]?\\s*\\)$","^(none)$","^(.+)$"];qo.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi"]},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:t("data")},layoutData:{mapping:!0,regex:t("layoutData")},scratch:{mapping:!0,regex:t("scratch")},mapData:{mapping:!0,regex:n("mapData")},mapLayoutData:{mapping:!0,regex:n("mapLayoutData")},mapScratch:{mapping:!0,regex:n("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:r,singleRegexMatchValue:!0},urls:{regexes:r,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(e,t){switch(e.length){case 2:return"deg"!==t[0]&&"rad"!==t[0]&&"deg"!==t[1]&&"rad"!==t[1];case 1:return b(e[0])||"deg"===t[0]||"rad"===t[0];default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+e+")\\s*,\\s*("+e+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+e+")\\s*,\\s*("+e+")\\s*,\\s*("+e+")\\s*,\\s*("+e+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(e){var t=e.length;return 1===t||2===t||4===t}}};var i={zeroNonZero:function(e,t){return(null==e||null==t)&&e!==t||(0==e&&0!=t||0!=e&&0==t)},any:function(e,t){return e!=t},emptyNonEmpty:function(e,t){var n=T(e),r=T(t);return n&&!r||!n&&r}},o=qo.types,a=[{name:"label",type:o.text,triggersBounds:i.any,triggersZOrder:i.emptyNonEmpty},{name:"text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any}],s=[{name:"source-label",type:o.text,triggersBounds:i.any},{name:"source-text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"source-text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"source-text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"source-text-offset",type:o.size,triggersBounds:i.any}],u=[{name:"target-label",type:o.text,triggersBounds:i.any},{name:"target-text-rotation",type:o.textRotation,triggersBounds:i.any},{name:"target-text-margin-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"target-text-margin-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"target-text-offset",type:o.size,triggersBounds:i.any}],l=[{name:"font-family",type:o.fontFamily,triggersBounds:i.any},{name:"font-style",type:o.fontStyle,triggersBounds:i.any},{name:"font-weight",type:o.fontWeight,triggersBounds:i.any},{name:"font-size",type:o.size,triggersBounds:i.any},{name:"text-transform",type:o.textTransform,triggersBounds:i.any},{name:"text-wrap",type:o.textWrap,triggersBounds:i.any},{name:"text-overflow-wrap",type:o.textOverflowWrap,triggersBounds:i.any},{name:"text-max-width",type:o.size,triggersBounds:i.any},{name:"text-outline-width",type:o.size,triggersBounds:i.any},{name:"line-height",type:o.positiveNumber,triggersBounds:i.any}],c=[{name:"text-valign",type:o.valign,triggersBounds:i.any},{name:"text-halign",type:o.halign,triggersBounds:i.any},{name:"color",type:o.color},{name:"text-outline-color",type:o.color},{name:"text-outline-opacity",type:o.zeroOneNumber},{name:"text-background-color",type:o.color},{name:"text-background-opacity",type:o.zeroOneNumber},{name:"text-background-padding",type:o.size,triggersBounds:i.any},{name:"text-border-opacity",type:o.zeroOneNumber},{name:"text-border-color",type:o.color},{name:"text-border-width",type:o.size,triggersBounds:i.any},{name:"text-border-style",type:o.borderStyle,triggersBounds:i.any},{name:"text-background-shape",type:o.textBackgroundShape,triggersBounds:i.any},{name:"text-justification",type:o.justification}],d=[{name:"events",type:o.bool},{name:"text-events",type:o.bool}],h=[{name:"display",type:o.display,triggersZOrder:i.any,triggersBounds:i.any,triggersBoundsOfParallelBeziers:!0},{name:"visibility",type:o.visibility,triggersZOrder:i.any},{name:"opacity",type:o.zeroOneNumber,triggersZOrder:i.zeroNonZero},{name:"text-opacity",type:o.zeroOneNumber},{name:"min-zoomed-font-size",type:o.size},{name:"z-compound-depth",type:o.zCompoundDepth,triggersZOrder:i.any},{name:"z-index-compare",type:o.zIndexCompare,triggersZOrder:i.any},{name:"z-index",type:o.nonNegativeInt,triggersZOrder:i.any}],p=[{name:"overlay-padding",type:o.size,triggersBounds:i.any},{name:"overlay-color",type:o.color},{name:"overlay-opacity",type:o.zeroOneNumber,triggersBounds:i.zeroNonZero},{name:"overlay-shape",type:o.overlayShape,triggersBounds:i.any}],f=[{name:"underlay-padding",type:o.size,triggersBounds:i.any},{name:"underlay-color",type:o.color},{name:"underlay-opacity",type:o.zeroOneNumber,triggersBounds:i.zeroNonZero},{name:"underlay-shape",type:o.overlayShape,triggersBounds:i.any}],v=[{name:"transition-property",type:o.propList},{name:"transition-duration",type:o.time},{name:"transition-delay",type:o.time},{name:"transition-timing-function",type:o.easing}],g=function(e,t){return"label"===t.value?-e.poolIndex():t.pfValue},y=[{name:"height",type:o.nodeSize,triggersBounds:i.any,hashOverride:g},{name:"width",type:o.nodeSize,triggersBounds:i.any,hashOverride:g},{name:"shape",type:o.nodeShape,triggersBounds:i.any},{name:"shape-polygon-points",type:o.polygonPointList,triggersBounds:i.any},{name:"background-color",type:o.color},{name:"background-fill",type:o.fill},{name:"background-opacity",type:o.zeroOneNumber},{name:"background-blacken",type:o.nOneOneNumber},{name:"background-gradient-stop-colors",type:o.colors},{name:"background-gradient-stop-positions",type:o.percentages},{name:"background-gradient-direction",type:o.gradientDirection},{name:"padding",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"padding-relative-to",type:o.paddingRelativeTo,triggersBounds:i.any},{name:"bounds-expansion",type:o.boundsExpansion,triggersBounds:i.any}],m=[{name:"border-color",type:o.color},{name:"border-opacity",type:o.zeroOneNumber},{name:"border-width",type:o.size,triggersBounds:i.any},{name:"border-style",type:o.borderStyle}],x=[{name:"background-image",type:o.urls},{name:"background-image-crossorigin",type:o.bgCrossOrigin},{name:"background-image-opacity",type:o.zeroOneNumbers},{name:"background-image-containment",type:o.bgContainment},{name:"background-image-smoothing",type:o.bools},{name:"background-position-x",type:o.bgPos},{name:"background-position-y",type:o.bgPos},{name:"background-width-relative-to",type:o.bgRelativeTo},{name:"background-height-relative-to",type:o.bgRelativeTo},{name:"background-repeat",type:o.bgRepeat},{name:"background-fit",type:o.bgFit},{name:"background-clip",type:o.bgClip},{name:"background-width",type:o.bgWH},{name:"background-height",type:o.bgWH},{name:"background-offset-x",type:o.bgPos},{name:"background-offset-y",type:o.bgPos}],w=[{name:"position",type:o.position,triggersBounds:i.any},{name:"compound-sizing-wrt-labels",type:o.compoundIncludeLabels,triggersBounds:i.any},{name:"min-width",type:o.size,triggersBounds:i.any},{name:"min-width-bias-left",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-width-bias-right",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-height",type:o.size,triggersBounds:i.any},{name:"min-height-bias-top",type:o.sizeMaybePercent,triggersBounds:i.any},{name:"min-height-bias-bottom",type:o.sizeMaybePercent,triggersBounds:i.any}],E=[{name:"line-style",type:o.lineStyle},{name:"line-color",type:o.color},{name:"line-fill",type:o.fill},{name:"line-cap",type:o.lineCap},{name:"line-opacity",type:o.zeroOneNumber},{name:"line-dash-pattern",type:o.numbers},{name:"line-dash-offset",type:o.number},{name:"line-gradient-stop-colors",type:o.colors},{name:"line-gradient-stop-positions",type:o.percentages},{name:"curve-style",type:o.curveStyle,triggersBounds:i.any,triggersBoundsOfParallelBeziers:!0},{name:"haystack-radius",type:o.zeroOneNumber,triggersBounds:i.any},{name:"source-endpoint",type:o.edgeEndpoint,triggersBounds:i.any},{name:"target-endpoint",type:o.edgeEndpoint,triggersBounds:i.any},{name:"control-point-step-size",type:o.size,triggersBounds:i.any},{name:"control-point-distances",type:o.bidirectionalSizes,triggersBounds:i.any},{name:"control-point-weights",type:o.numbers,triggersBounds:i.any},{name:"segment-distances",type:o.bidirectionalSizes,triggersBounds:i.any},{name:"segment-weights",type:o.numbers,triggersBounds:i.any},{name:"taxi-turn",type:o.bidirectionalSizeMaybePercent,triggersBounds:i.any},{name:"taxi-turn-min-distance",type:o.size,triggersBounds:i.any},{name:"taxi-direction",type:o.axisDirection,triggersBounds:i.any},{name:"edge-distances",type:o.edgeDistances,triggersBounds:i.any},{name:"arrow-scale",type:o.positiveNumber,triggersBounds:i.any},{name:"loop-direction",type:o.angle,triggersBounds:i.any},{name:"loop-sweep",type:o.angle,triggersBounds:i.any},{name:"source-distance-from-node",type:o.size,triggersBounds:i.any},{name:"target-distance-from-node",type:o.size,triggersBounds:i.any}],k=[{name:"ghost",type:o.bool,triggersBounds:i.any},{name:"ghost-offset-x",type:o.bidirectionalSize,triggersBounds:i.any},{name:"ghost-offset-y",type:o.bidirectionalSize,triggersBounds:i.any},{name:"ghost-opacity",type:o.zeroOneNumber}],P=[{name:"selection-box-color",type:o.color},{name:"selection-box-opacity",type:o.zeroOneNumber},{name:"selection-box-border-color",type:o.color},{name:"selection-box-border-width",type:o.size},{name:"active-bg-color",type:o.color},{name:"active-bg-opacity",type:o.zeroOneNumber},{name:"active-bg-size",type:o.size},{name:"outside-texture-bg-color",type:o.color},{name:"outside-texture-bg-opacity",type:o.zeroOneNumber}],S=[];qo.pieBackgroundN=16,S.push({name:"pie-size",type:o.sizeMaybePercent});for(var C=1;C<=qo.pieBackgroundN;C++)S.push({name:"pie-"+C+"-background-color",type:o.color}),S.push({name:"pie-"+C+"-background-size",type:o.percent}),S.push({name:"pie-"+C+"-background-opacity",type:o.zeroOneNumber});var _=[],j=qo.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:o.arrowShape,triggersBounds:i.any},{name:"arrow-color",type:o.color},{name:"arrow-fill",type:o.arrowFill}].forEach((function(e){j.forEach((function(t){var n=t+"-"+e.name,r=e.type,i=e.triggersBounds;_.push({name:n,type:r,triggersBounds:i})}))}),{});var D=qo.properties=[].concat(d,v,h,p,f,k,c,l,a,s,u,y,m,x,S,w,E,_,P),B=qo.propertyGroups={behavior:d,transition:v,visibility:h,overlay:p,underlay:f,ghost:k,commonLabel:c,labelDimensions:l,mainLabel:a,sourceLabel:s,targetLabel:u,nodeBody:y,nodeBorder:m,backgroundImage:x,pie:S,compound:w,edgeLine:E,edgeArrow:_,core:P},O=qo.propertyGroupNames={};(qo.propertyGroupKeys=Object.keys(B)).forEach((function(e){O[e]=B[e].map((function(e){return e.name})),B[e].forEach((function(t){return t.groupKey=e}))}));var M=qo.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];qo.propertyNames=D.map((function(e){return e.name}));for(var N=0;N<D.length;N++){var I=D[N];D[I.name]=I}for(var L=0;L<M.length;L++){var z=M[L],R=D[z.pointsTo],F={name:z.name,alias:!0,pointsTo:R};D.push(F),D[z.name]=F}}(),qo.getDefaultProperty=function(e){return this.getDefaultProperties()[e]},qo.getDefaultProperties=function(){var e=this._private;if(null!=e.defaultProperties)return e.defaultProperties;for(var t=R({"selection-box-color":"#ddd","selection-box-opacity":.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce((function(e,t){for(var n=1;n<=qo.pieBackgroundN;n++){var r=t.name.replace("{{i}}",n),i=t.value;e[r]=i}return e}),{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":.5,"segment-weights":.5,"segment-distances":20,"taxi-turn":"50%","taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"}].reduce((function(e,t){return qo.arrowPrefixes.forEach((function(n){var r=n+"-"+t.name,i=t.value;e[r]=i})),e}),{})),n={},r=0;r<this.properties.length;r++){var i=this.properties[r];if(!i.pointsTo){var o=i.name,a=t[o],s=this.parse(o,a);n[o]=s}}return e.defaultProperties=n,e.defaultProperties},qo.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":.25}),this.defaultLength=this.length};var Yo={parse:function(e,t,n,r){var i=this;if(x(t))return i.parseImplWarn(e,t,n,r);var o,a=ie(e,""+t,n?"t":"f","mapping"===r||!0===r||!1===r||null==r?"dontcare":r),s=i.propCache=i.propCache||[];return(o=s[a])||(o=s[a]=i.parseImplWarn(e,t,n,r)),(n||"mapping"===r)&&(o=ye(o))&&(o.value=ye(o.value)),o},parseImplWarn:function(e,t,n,r){var i=this.parseImpl(e,t,n,r);return i||null==t||ge("The style property `".concat(e,": ").concat(t,"` is invalid")),!i||"width"!==i.name&&"height"!==i.name||"label"!==t||ge("The style value of `label` is deprecated for `"+i.name+"`"),i}};Yo.parseImpl=function(e,t,n,r){var i=this;e=M(e);var o=i.properties[e],a=t,s=i.types;if(!o)return null;if(void 0===t)return null;o.alias&&(o=o.pointsTo,e=o.name);var u=b(t);u&&(t=t.trim());var l,c,d=o.type;if(!d)return null;if(n&&(""===t||null===t))return{name:e,value:t,bypass:!0,deleteBypass:!0};if(x(t))return{name:e,value:t,strValue:"fn",mapped:s.fn,bypass:n};if(!u||r||t.length<7||"a"!==t[1]);else{if(t.length>=7&&"d"===t[0]&&(l=new RegExp(s.data.regex).exec(t))){if(n)return!1;var h=s.data;return{name:e,value:l,strValue:""+t,mapped:h,field:l[1],bypass:n}}if(t.length>=10&&"m"===t[0]&&(c=new RegExp(s.mapData.regex).exec(t))){if(n)return!1;if(d.multiple)return!1;var p=s.mapData;if(!d.color&&!d.number)return!1;var f=this.parse(e,c[4]);if(!f||f.mapped)return!1;var v=this.parse(e,c[5]);if(!v||v.mapped)return!1;if(f.pfValue===v.pfValue||f.strValue===v.strValue)return ge("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+f.strValue+"`"),this.parse(e,f.strValue);if(d.color){var g=f.value,y=v.value;if(!(g[0]!==y[0]||g[1]!==y[1]||g[2]!==y[2]||g[3]!==y[3]&&(null!=g[3]&&1!==g[3]||null!=y[3]&&1!==y[3])))return!1}return{name:e,value:c,strValue:""+t,mapped:p,field:c[1],fieldMin:parseFloat(c[2]),fieldMax:parseFloat(c[3]),valueMin:f.value,valueMax:v.value,bypass:n}}}if(d.multiple&&"multiple"!==r){var m;if(m=u?t.split(/\s+/):w(t)?t:[t],d.evenMultiple&&m.length%2!=0)return null;for(var E=[],P=[],S=[],C="",_=!1,j=0;j<m.length;j++){var D=i.parse(e,m[j],n,"multiple");_=_||b(D.value),E.push(D.value),S.push(null!=D.pfValue?D.pfValue:D.value),P.push(D.units),C+=(j>0?" ":"")+D.strValue}return d.validate&&!d.validate(E,P)?null:d.singleEnum&&_?1===E.length&&b(E[0])?{name:e,value:E[0],strValue:E[0],bypass:n}:null:{name:e,value:E,pfValue:S,strValue:C,bypass:n,units:P}}var T,B,O=function(){for(var r=0;r<d.enums.length;r++){if(d.enums[r]===t)return{name:e,value:t,strValue:""+t,bypass:n}}return null};if(d.number){var N,I="px";if(d.units&&(N=d.units),d.implicitUnits&&(I=d.implicitUnits),!d.unitless)if(u){var L="px|em"+(d.allowPercent?"|\\%":"");N&&(L=N);var z=t.match("^("+A+")("+L+")?$");z&&(t=z[1],N=z[2]||I)}else N&&!d.implicitUnits||(N=I);if(t=parseFloat(t),isNaN(t)&&void 0===d.enums)return null;if(isNaN(t)&&void 0!==d.enums)return t=a,O();if(d.integer&&(!k(B=t)||Math.floor(B)!==B))return null;if(void 0!==d.min&&(t<d.min||d.strictMin&&t===d.min)||void 0!==d.max&&(t>d.max||d.strictMax&&t===d.max))return null;var R={name:e,value:t,strValue:""+t+(N||""),units:N,bypass:n};return d.unitless||"px"!==N&&"em"!==N?R.pfValue=t:R.pfValue="px"!==N&&N?this.getEmSizeInPixels()*t:t,"ms"!==N&&"s"!==N||(R.pfValue="ms"===N?t:1e3*t),"deg"!==N&&"rad"!==N||(R.pfValue="rad"===N?t:(T=t,Math.PI*T/180)),"%"===N&&(R.pfValue=t/100),R}if(d.propList){var V=[],q=""+t;if("none"===q);else{for(var Y=q.split(/\s*,\s*|\s+/),X=0;X<Y.length;X++){var H=Y[X].trim();i.properties[H]?V.push(H):ge("`"+H+"` is not a valid property name")}if(0===V.length)return null}return{name:e,value:V,strValue:0===V.length?"none":V.join(" "),bypass:n}}if(d.color){var W=F(t);return W?{name:e,value:W,pfValue:W,strValue:"rgb("+W[0]+","+W[1]+","+W[2]+")",bypass:n}:null}if(d.regex||d.regexes){if(d.enums){var G=O();if(G)return G}for(var U=d.regexes?d.regexes:[d.regex],K=0;K<U.length;K++){var Z=new RegExp(U[K]).exec(t);if(Z)return{name:e,value:d.singleRegexMatchValue?Z[1]:Z,strValue:""+t,bypass:n}}return null}return d.string?{name:e,value:""+t,strValue:""+t,bypass:n}:d.enums?O():null};var Xo=function e(t){if(!(this instanceof e))return new e(t);j(t)?(this._private={cy:t,coreStyle:{}},this.length=0,this.resetToDefault()):fe("A style must have a core reference")},Ho=Xo.prototype;Ho.instanceString=function(){return"style"},Ho.clear=function(){for(var e=this._private,t=e.cy.elements(),n=0;n<this.length;n++)this[n]=void 0;return this.length=0,e.contextStyles={},e.propDiffs={},this.cleanElements(t,!0),t.forEach((function(e){var t=e[0]._private;t.styleDirty=!0,t.appliedInitStyle=!1})),this},Ho.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this},Ho.core=function(e){return this._private.coreStyle[e]||this.getDefaultProperty(e)},Ho.selector=function(e){var t="core"===e?null:new Nr(e),n=this.length++;return this[n]={selector:t,properties:[],mappedProperties:[],index:n},this},Ho.css=function(){var e=this,t=arguments;if(1===t.length)for(var n=t[0],r=0;r<e.properties.length;r++){var i=e.properties[r],o=n[i.name];void 0===o&&(o=n[N(i.name)]),void 0!==o&&this.cssRule(i.name,o)}else 2===t.length&&this.cssRule(t[0],t[1]);return this},Ho.style=Ho.css,Ho.cssRule=function(e,t){var n=this.parse(e,t);if(n){var r=this.length-1;this[r].properties.push(n),this[r].properties[n.name]=n,n.name.match(/pie-(\d+)-background-size/)&&n.value&&(this._private.hasPie=!0),n.mapped&&this[r].mappedProperties.push(n),!this[r].selector&&(this._private.coreStyle[n.name]=n)}return this},Ho.append=function(e){return D(e)?e.appendToStyle(this):w(e)?this.appendFromJson(e):b(e)&&this.appendFromString(e),this},Xo.fromJson=function(e,t){var n=new Xo(e);return n.fromJson(t),n},Xo.fromString=function(e,t){return new Xo(e).fromString(t)},[Io,Ao,zo,Ro,Fo,Vo,qo,Yo].forEach((function(e){R(Ho,e)})),Xo.types=Ho.types,Xo.properties=Ho.properties,Xo.propertyGroups=Ho.propertyGroups,Xo.propertyGroupNames=Ho.propertyGroupNames,Xo.propertyGroupKeys=Ho.propertyGroupKeys;var Wo={style:function(e){e&&this.setStyle(e).update();return this._private.style},setStyle:function(e){var t=this._private;return D(e)?t.style=e.generateStyle(this):w(e)?t.style=Xo.fromJson(this,e):b(e)?t.style=Xo.fromString(this,e):t.style=Xo(this),t.style},updateStyle:function(){this.mutableElements().updateStyle()}},Go={autolock:function(e){return void 0===e?this._private.autolock:(this._private.autolock=!!e,this)},autoungrabify:function(e){return void 0===e?this._private.autoungrabify:(this._private.autoungrabify=!!e,this)},autounselectify:function(e){return void 0===e?this._private.autounselectify:(this._private.autounselectify=!!e,this)},selectionType:function(e){var t=this._private;return null==t.selectionType&&(t.selectionType="single"),void 0===e?t.selectionType:("additive"!==e&&"single"!==e||(t.selectionType=e),this)},panningEnabled:function(e){return void 0===e?this._private.panningEnabled:(this._private.panningEnabled=!!e,this)},userPanningEnabled:function(e){return void 0===e?this._private.userPanningEnabled:(this._private.userPanningEnabled=!!e,this)},zoomingEnabled:function(e){return void 0===e?this._private.zoomingEnabled:(this._private.zoomingEnabled=!!e,this)},userZoomingEnabled:function(e){return void 0===e?this._private.userZoomingEnabled:(this._private.userZoomingEnabled=!!e,this)},boxSelectionEnabled:function(e){return void 0===e?this._private.boxSelectionEnabled:(this._private.boxSelectionEnabled=!!e,this)},pan:function(){var e,t,n,r,i,o=arguments,a=this._private.pan;switch(o.length){case 0:return a;case 1:if(b(o[0]))return a[e=o[0]];if(E(o[0])){if(!this._private.panningEnabled)return this;r=(n=o[0]).x,i=n.y,k(r)&&(a.x=r),k(i)&&(a.y=i),this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;e=o[0],t=o[1],"x"!==e&&"y"!==e||!k(t)||(a[e]=t),this.emit("pan viewport")}return this.notify("viewport"),this},panBy:function(e,t){var n,r,i,o,a,s=arguments,u=this._private.pan;if(!this._private.panningEnabled)return this;switch(s.length){case 1:E(e)&&(o=(i=s[0]).x,a=i.y,k(o)&&(u.x+=o),k(a)&&(u.y+=a),this.emit("pan viewport"));break;case 2:r=t,"x"!==(n=e)&&"y"!==n||!k(r)||(u[n]+=r),this.emit("pan viewport")}return this.notify("viewport"),this},fit:function(e,t){var n=this.getFitViewport(e,t);if(n){var r=this._private;r.zoom=n.zoom,r.pan=n.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(e,t){if(k(e)&&void 0===t&&(t=e,e=void 0),this._private.panningEnabled&&this._private.zoomingEnabled){var n,r;if(b(e)){var i=e;e=this.$(i)}else if(E(r=e)&&k(r.x1)&&k(r.x2)&&k(r.y1)&&k(r.y2)){var o=e;(n={x1:o.x1,y1:o.y1,x2:o.x2,y2:o.y2}).w=n.x2-n.x1,n.h=n.y2-n.y1}else S(e)||(e=this.mutableElements());if(!S(e)||!e.empty()){n=n||e.boundingBox();var a,s=this.width(),u=this.height();if(t=k(t)?t:0,!isNaN(s)&&!isNaN(u)&&s>0&&u>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:a=(a=(a=Math.min((s-2*t)/n.w,(u-2*t)/n.h))>this._private.maxZoom?this._private.maxZoom:a)<this._private.minZoom?this._private.minZoom:a,pan:{x:(s-a*(n.x1+n.x2))/2,y:(u-a*(n.y1+n.y2))/2}}}}},zoomRange:function(e,t){var n=this._private;if(null==t){var r=e;e=r.min,t=r.max}return k(e)&&k(t)&&e<=t?(n.minZoom=e,n.maxZoom=t):k(e)&&void 0===t&&e<=n.maxZoom?n.minZoom=e:k(t)&&void 0===e&&t>=n.minZoom&&(n.maxZoom=t),this},minZoom:function(e){return void 0===e?this._private.minZoom:this.zoomRange({min:e})},maxZoom:function(e){return void 0===e?this._private.maxZoom:this.zoomRange({max:e})},getZoomedViewport:function(e){var t,n,r=this._private,i=r.pan,o=r.zoom,a=!1;if(r.zoomingEnabled||(a=!0),k(e)?n=e:E(e)&&(n=e.level,null!=e.position?t=He(e.position,o,i):null!=e.renderedPosition&&(t=e.renderedPosition),null==t||r.panningEnabled||(a=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)<r.minZoom?r.minZoom:n,a||!k(n)||n===o||null!=t&&(!k(t.x)||!k(t.y)))return null;if(null!=t){var s=i,u=o,l=n;return{zoomed:!0,panned:!0,zoom:l,pan:{x:-l/u*(t.x-s.x)+t.x,y:-l/u*(t.y-s.y)+t.y}}}return{zoomed:!0,panned:!1,zoom:n,pan:i}},zoom:function(e){if(void 0===e)return this._private.zoom;var t=this.getZoomedViewport(e),n=this._private;return null!=t&&t.zoomed?(n.zoom=t.zoom,t.panned&&(n.pan.x=t.pan.x,n.pan.y=t.pan.y),this.emit("zoom"+(t.panned?" pan":"")+" viewport"),this.notify("viewport"),this):this},viewport:function(e){var t=this._private,n=!0,r=!0,i=[],o=!1,a=!1;if(!e)return this;if(k(e.zoom)||(n=!1),E(e.pan)||(r=!1),!n&&!r)return this;if(n){var s=e.zoom;s<t.minZoom||s>t.maxZoom||!t.zoomingEnabled?o=!0:(t.zoom=s,i.push("zoom"))}if(r&&(!o||!e.cancelOnFailedZoom)&&t.panningEnabled){var u=e.pan;k(u.x)&&(t.pan.x=u.x,a=!1),k(u.y)&&(t.pan.y=u.y,a=!1),a||i.push("pan")}return i.length>0&&(i.push("viewport"),this.emit(i.join(" ")),this.notify("viewport")),this},center:function(e){var t=this.getCenterPan(e);return t&&(this._private.pan=t,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(e,t){if(this._private.panningEnabled){if(b(e)){var n=e;e=this.mutableElements().filter(n)}else S(e)||(e=this.mutableElements());if(0!==e.length){var r=e.boundingBox(),i=this.width(),o=this.height();return{x:(i-(t=void 0===t?this._private.zoom:t)*(r.x1+r.x2))/2,y:(o-t*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e,t,n=this._private,r=n.container;return n.sizeCache=n.sizeCache||(r?(e=h.getComputedStyle(r),t=function(t){return parseFloat(e.getPropertyValue(t))},{width:r.clientWidth-t("padding-left")-t("padding-right"),height:r.clientHeight-t("padding-top")-t("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-e.x)/t,x2:(n.x2-e.x)/t,y1:(n.y1-e.y)/t,y2:(n.y2-e.y)/t};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){return e?(this._private.multiClickDebounceTime=e,this):this._private.multiClickDebounceTime}};Go.centre=Go.center,Go.autolockNodes=Go.autolock,Go.autoungrabifyNodes=Go.autoungrabify;var Uo={data:Zn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Zn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Zn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Zn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Uo.attr=Uo.data,Uo.removeAttr=Uo.removeData;var Ko=function(e){var t=this,n=(e=R({},e)).container;n&&!P(n)&&P(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var i=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=t;var o=void 0!==h&&void 0!==n&&!e.headless,a=e;a.layout=R({name:o?"grid":"null"},a.layout),a.renderer=R({name:o?"canvas":"null"},a.renderer);var s=function(e,t,n){return void 0!==t?t:void 0!==n?n:e},u=this._private={container:n,ready:!1,options:a,elements:new ho(this),listeners:[],aniEles:new ho(this),data:a.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,a.zoomingEnabled),userZoomingEnabled:s(!0,a.userZoomingEnabled),panningEnabled:s(!0,a.panningEnabled),userPanningEnabled:s(!0,a.userPanningEnabled),boxSelectionEnabled:s(!0,a.boxSelectionEnabled),autolock:s(!1,a.autolock,a.autolockNodes),autoungrabify:s(!1,a.autoungrabify,a.autoungrabifyNodes),autounselectify:s(!1,a.autounselectify),styleEnabled:void 0===a.styleEnabled?o:a.styleEnabled,zoom:k(a.zoom)?a.zoom:1,pan:{x:E(a.pan)&&k(a.pan.x)?a.pan.x:0,y:E(a.pan)&&k(a.pan.y)?a.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:s(250,a.multiClickDebounceTime)};this.createEmitter(),this.selectionType(a.selectionType),this.zoomRange({min:a.minZoom,max:a.maxZoom});u.styleEnabled&&t.setStyle([]);var l=R({},a,a.renderer);t.initRenderer(l);!function(e,t){if(e.some(B))return Xn.all(e).then(t);t(e)}([a.style,a.elements],(function(e){var n=e[0],o=e[1];u.styleEnabled&&t.style().append(n),function(e,n,r){t.notifications(!1);var i=t.mutableElements();i.length>0&&i.remove(),null!=e&&(E(e)||w(e))&&t.add(e),t.one("layoutready",(function(e){t.notifications(!0),t.emit(e),t.one("load",n),t.emitAndNotify("load")})).one("layoutstop",(function(){t.one("done",r),t.emit("done")}));var o=R({},t._private.options.layout);o.eles=t.elements(),t.layout(o).run()}(o,(function(){t.startAnimationLoop(),u.ready=!0,x(a.ready)&&t.on("ready",a.ready);for(var e=0;e<i.length;e++){var n=i[e];t.on("ready",n)}r&&(r.readies=[]),t.emit("ready")}),a.done)}))},Zo=Ko.prototype;R(Zo,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(e){return this.isReady()?this.emitter().emit("ready",[],e):this.on("ready",e),this},destroy:function(){var e=this;if(!e.destroyed())return e.stopAnimationLoop(),e.destroyRenderer(),this.emit("destroy"),e._private.destroyed=!0,e},hasElementWithId:function(e){return this._private.elements.hasElementWithId(e)},getElementById:function(e){return this._private.elements.getElementById(e)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(e){return this._private.elements.merge(e),this},removeFromPool:function(e){return this._private.elements.unmerge(e),this},container:function(){return this._private.container||null},mount:function(e){if(null!=e){var t=this,n=t._private,r=n.options;return!P(e)&&P(e[0])&&(e=e[0]),t.stopAnimationLoop(),t.destroyRenderer(),n.container=e,n.styleEnabled=!0,t.invalidateSize(),t.initRenderer(R({},r,r.renderer,{name:"null"===r.renderer.name?"canvas":r.renderer.name})),t.startAnimationLoop(),t.style(r.style),t.emit("mount"),t}},unmount:function(){var e=this;return e.stopAnimationLoop(),e.destroyRenderer(),e.initRenderer({name:"null"}),e.emit("unmount"),e},options:function(){return ye(this._private.options)},json:function(e){var t=this,n=t._private,r=t.mutableElements();if(E(e)){if(t.startBatch(),e.elements){var i={},o=function(e,n){for(var r=[],o=[],a=0;a<e.length;a++){var s=e[a];if(s.data.id){var u=""+s.data.id,l=t.getElementById(u);i[u]=!0,0!==l.length?o.push({ele:l,json:s}):n?(s.group=n,r.push(s)):r.push(s)}else ge("cy.json() cannot handle elements without an ID attribute")}t.add(r);for(var c=0;c<o.length;c++){var d=o[c],h=d.ele,p=d.json;h.json(p)}};if(w(e.elements))o(e.elements);else for(var a=["nodes","edges"],s=0;s<a.length;s++){var u=a[s],l=e.elements[u];w(l)&&o(l,u)}var c=t.collection();r.filter((function(e){return!i[e.id()]})).forEach((function(e){e.isParent()?c.merge(e):e.remove()})),c.forEach((function(e){return e.children().move({parent:null})})),c.forEach((function(e){return function(e){return t.getElementById(e.id())}(e).remove()}))}e.style&&t.style(e.style),null!=e.zoom&&e.zoom!==n.zoom&&t.zoom(e.zoom),e.pan&&(e.pan.x===n.pan.x&&e.pan.y===n.pan.y||t.pan(e.pan)),e.data&&t.data(e.data);for(var d=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"],h=0;h<d.length;h++){var p=d[h];null!=e[p]&&t[p](e[p])}return t.endBatch(),this}var f={};!!e?f.elements=this.elements().map((function(e){return e.json()})):(f.elements={},r.forEach((function(e){var t=e.group();f.elements[t]||(f.elements[t]=[]),f.elements[t].push(e.json())}))),this._private.styleEnabled&&(f.style=t.style().json()),f.data=ye(t.data());var v=n.options;return f.zoomingEnabled=n.zoomingEnabled,f.userZoomingEnabled=n.userZoomingEnabled,f.zoom=n.zoom,f.minZoom=n.minZoom,f.maxZoom=n.maxZoom,f.panningEnabled=n.panningEnabled,f.userPanningEnabled=n.userPanningEnabled,f.pan=ye(n.pan),f.boxSelectionEnabled=n.boxSelectionEnabled,f.renderer=ye(v.renderer),f.hideEdgesOnViewport=v.hideEdgesOnViewport,f.textureOnViewport=v.textureOnViewport,f.wheelSensitivity=v.wheelSensitivity,f.motionBlur=v.motionBlur,f.multiClickDebounceTime=v.multiClickDebounceTime,f}}),Zo.$id=Zo.getElementById,[fo,So,jo,Do,To,Bo,Mo,No,Wo,Go,Uo].forEach((function(e){R(Zo,e)}));var Qo={fit:!0,directed:!1,padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,maximal:!1,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}},$o=function(e){return e.scratch("breadthfirst")},Jo=function(e,t){return e.scratch("breadthfirst",t)};function ea(e){this.options=R({},Qo,e)}ea.prototype.run=function(){var e,t=this.options,n=t,r=t.cy,i=n.eles,o=i.nodes().filter((function(e){return!e.isParent()})),a=i,s=n.directed,u=n.maximal||n.maximalAdjustments>0,l=rt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(S(n.roots))e=n.roots;else if(w(n.roots)){for(var c=[],d=0;d<n.roots.length;d++){var h=n.roots[d],p=r.getElementById(h);c.push(p)}e=r.collection(c)}else if(b(n.roots))e=r.$(n.roots);else if(s)e=o.roots();else{var f=i.components();e=r.collection();for(var v=function(t){var n=f[t],r=n.maxDegree(!1),i=n.filter((function(e){return e.degree(!1)===r}));e=e.add(i)},g=0;g<f.length;g++)v(g)}var y=[],m={},x=function(e,t){null==y[t]&&(y[t]=[]);var n=y[t].length;y[t].push(e),Jo(e,{index:n,depth:t})};a.bfs({roots:e,directed:n.directed,visit:function(e,t,n,r,i){var o=e[0],a=o.id();x(o,i),m[a]=!0}});for(var E=[],k=0;k<o.length;k++){var P=o[k];m[P.id()]||E.push(P)}var C=function(e){for(var t=y[e],n=0;n<t.length;n++){var r=t[n];null!=r?Jo(r,{depth:e,index:n}):(t.splice(n,1),n--)}},_=function(){for(var e=0;e<y.length;e++)C(e)},j=function(e,t){for(var n=$o(e),r=e.incomers().filter((function(e){return e.isNode()&&i.has(e)})),o=-1,a=e.id(),s=0;s<r.length;s++){var u=r[s],l=$o(u);o=Math.max(o,l.depth)}return n.depth<=o&&(t[a]?null:(function(e,t){var n=$o(e),r=n.depth,i=n.index;y[r][i]=null,x(e,t)}(e,o+1),t[a]=!0,!0))};if(s&&u){var D=[],T={},B=function(e){return D.push(e)};for(o.forEach((function(e){return D.push(e)}));D.length>0;){var O=D.shift(),M=j(O,T);if(M)O.outgoers().filter((function(e){return e.isNode()&&i.has(e)})).forEach(B);else if(null===M){ge("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}_();var N=0;if(n.avoidOverlap)for(var I=0;I<o.length;I++){var L=o[I].layoutDimensions(n),A=L.w,R=L.h;N=Math.max(N,A,R)}for(var F={},V=function(e){if(F[e.id()])return F[e.id()];for(var t=$o(e).depth,n=e.neighborhood(),r=0,i=0,a=0;a<n.length;a++){var s=n[a];if(!s.isEdge()&&!s.isParent()&&o.has(s)){var u=$o(s);if(null!=u){var l=u.index,c=u.depth;if(null!=l&&null!=c){var d=y[c].length;c<t&&(r+=l/d,i++)}}}}return r/=i=Math.max(1,i),0===i&&(r=0),F[e.id()]=r,r},q=function(e,t){var n=V(e)-V(t);return 0===n?z(e.id(),t.id()):n},Y=0;Y<y.length;Y++)y[Y].sort(q),C(Y);for(var X=[],H=0;H<E.length;H++)X.push(E[H]);y.unshift(X),_();for(var W=0,G=0;G<y.length;G++)W=Math.max(y[G].length,W);var U=l.x1+l.w/2,K=l.x1+l.h/2,Z=y.reduce((function(e,t){return Math.max(e,t.length)}),0);return i.nodes().layoutPositions(this,n,(function(e){var t=$o(e),r=t.depth,i=t.index,o=y[r].length,a=Math.max(l.w/((n.grid?Z:o)+1),N),s=Math.max(l.h/(y.length+1),N),u=Math.min(l.w/2/y.length,l.h/2/y.length);if(u=Math.max(u,N),n.circle){var c=u*r+u-(y.length>0&&y[0].length<=3?u/2:0),d=2*Math.PI/y[r].length*i;return 0===r&&1===y[0].length&&(c=1),{x:U+c*Math.cos(d),y:K+c*Math.sin(d)}}return{x:U+(i+1-(o+1)/2)*a,y:(r+1)*s}})),this};var ta={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function na(e){this.options=R({},ta,e)}na.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,o=r.nodes().not(":parent");t.sort&&(o=o.sort(t.sort));for(var a,s=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),u=s.x1+s.w/2,l=s.y1+s.h/2,c=(void 0===t.sweep?2*Math.PI-2*Math.PI/o.length:t.sweep)/Math.max(1,o.length-1),d=0,h=0;h<o.length;h++){var p=o[h].layoutDimensions(t),f=p.w,v=p.h;d=Math.max(d,f,v)}if(a=k(t.radius)?t.radius:o.length<=1?0:Math.min(s.h,s.w)/2-d,o.length>1&&t.avoidOverlap){d*=1.75;var g=Math.cos(c)-Math.cos(0),y=Math.sin(c)-Math.sin(0),m=Math.sqrt(d*d/(g*g+y*y));a=Math.max(m,a)}return r.nodes().layoutPositions(this,t,(function(e,n){var r=t.startAngle+n*c*(i?1:-1),o=a*Math.cos(r),s=a*Math.sin(r);return{x:u+o,y:l+s}})),this};var ra,ia={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function oa(e){this.options=R({},ia,e)}oa.prototype.run=function(){for(var e=this.options,t=e,n=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,r=e.cy,i=t.eles,o=i.nodes().not(":parent"),a=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=a.x1+a.w/2,u=a.y1+a.h/2,l=[],c=0,d=0;d<o.length;d++){var h,p=o[d];h=t.concentric(p),l.push({value:h,node:p}),p._private.scratch.concentric=h}o.updateStyle();for(var f=0;f<o.length;f++){var v=o[f].layoutDimensions(t);c=Math.max(c,v.w,v.h)}l.sort((function(e,t){return t.value-e.value}));for(var g=t.levelWidth(o),y=[[]],m=y[0],b=0;b<l.length;b++){var x=l[b];if(m.length>0)Math.abs(m[0].value-x.value)>=g&&(m=[],y.push(m));m.push(x)}var w=c+t.minNodeSpacing;if(!t.avoidOverlap){var E=y.length>0&&y[0].length>1,k=(Math.min(a.w,a.h)/2-w)/(y.length+E?1:0);w=Math.min(w,k)}for(var P=0,S=0;S<y.length;S++){var C=y[S],_=void 0===t.sweep?2*Math.PI-2*Math.PI/C.length:t.sweep,j=C.dTheta=_/Math.max(1,C.length-1);if(C.length>1&&t.avoidOverlap){var D=Math.cos(j)-Math.cos(0),T=Math.sin(j)-Math.sin(0),B=Math.sqrt(w*w/(D*D+T*T));P=Math.max(B,P)}C.r=P,P+=w}if(t.equidistant){for(var O=0,M=0,N=0;N<y.length;N++){var I=y[N].r-M;O=Math.max(O,I)}M=0;for(var L=0;L<y.length;L++){var A=y[L];0===L&&(M=A.r),A.r=M,M+=O}}for(var z={},R=0;R<y.length;R++)for(var F=y[R],V=F.dTheta,q=F.r,Y=0;Y<F.length;Y++){var X=F[Y],H=t.startAngle+(n?1:-1)*V*Y,W={x:s+q*Math.cos(H),y:u+q*Math.sin(H)};z[X.node.id()]=W}return i.nodes().layoutPositions(this,t,(function(e){var t=e.id();return z[t]})),this};var aa={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(e,t){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(e){return 2048},nodeOverlap:4,idealEdgeLength:function(e){return 32},edgeElasticity:function(e){return 32},nestingFactor:1.2,gravity:1,numIter:1e3,initialTemp:1e3,coolingFactor:.99,minTemp:1};function sa(e){this.options=R({},aa,e),this.options.layout=this}sa.prototype.run=function(){var e=this.options,t=e.cy,n=this;n.stopped=!1,!0!==e.animate&&!1!==e.animate||n.emit({type:"layoutstart",layout:n}),ra=!0===e.debug;var r=ua(t,n,e);ra&&undefined(r),e.randomize&&da(r);var i=U(),o=function(){pa(r,t,e),!0===e.fit&&t.fit(e.padding)},a=function(t){return!(n.stopped||t>=e.numIter)&&(fa(r,e),r.temperature=r.temperature*e.coolingFactor,!(r.temperature<e.minTemp))},s=function(){if(!0===e.animate||!1===e.animate)o(),n.one("layoutstop",e.stop),n.emit({type:"layoutstop",layout:n});else{var t=e.eles.nodes(),i=ha(r,e,t);t.layoutPositions(n,e,i)}},u=0,l=!0;if(!0===e.animate){!function t(){for(var n=0;l&&n<e.refresh;)l=a(u),u++,n++;l?(U()-i>=e.animationThreshold&&o(),G(t)):(Ca(r,e),s())}()}else{for(;l;)l=a(u),u++;Ca(r,e),s()}return this},sa.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},sa.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var ua=function(e,t,n){for(var r=n.eles.edges(),i=n.eles.nodes(),o={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:i.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:e.width(),clientHeight:e.width(),boundingBox:rt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()})},a=n.eles.components(),s={},u=0;u<a.length;u++)for(var l=a[u],c=0;c<l.length;c++){s[l[c].id()]=u}for(u=0;u<o.nodeSize;u++){var d=(g=i[u]).layoutDimensions(n);(M={}).isLocked=g.locked(),M.id=g.data("id"),M.parentId=g.data("parent"),M.cmptId=s[g.id()],M.children=[],M.positionX=g.position("x"),M.positionY=g.position("y"),M.offsetX=0,M.offsetY=0,M.height=d.w,M.width=d.h,M.maxX=M.positionX+M.width/2,M.minX=M.positionX-M.width/2,M.maxY=M.positionY+M.height/2,M.minY=M.positionY-M.height/2,M.padLeft=parseFloat(g.style("padding")),M.padRight=parseFloat(g.style("padding")),M.padTop=parseFloat(g.style("padding")),M.padBottom=parseFloat(g.style("padding")),M.nodeRepulsion=x(n.nodeRepulsion)?n.nodeRepulsion(g):n.nodeRepulsion,o.layoutNodes.push(M),o.idToIndex[M.id]=u}var h=[],p=0,f=-1,v=[];for(u=0;u<o.nodeSize;u++){var g,y=(g=o.layoutNodes[u]).parentId;null!=y?o.layoutNodes[o.idToIndex[y]].children.push(g.id):(h[++f]=g.id,v.push(g.id))}for(o.graphSet.push(v);p<=f;){var m=h[p++],b=o.idToIndex[m],w=o.layoutNodes[b].children;if(w.length>0){o.graphSet.push(w);for(u=0;u<w.length;u++)h[++f]=w[u]}}for(u=0;u<o.graphSet.length;u++){var E=o.graphSet[u];for(c=0;c<E.length;c++){var k=o.idToIndex[E[c]];o.indexToGraph[k]=u}}for(u=0;u<o.edgeSize;u++){var P=r[u],S={};S.id=P.data("id"),S.sourceId=P.data("source"),S.targetId=P.data("target");var C=x(n.idealEdgeLength)?n.idealEdgeLength(P):n.idealEdgeLength,_=x(n.edgeElasticity)?n.edgeElasticity(P):n.edgeElasticity,j=o.idToIndex[S.sourceId],D=o.idToIndex[S.targetId];if(o.indexToGraph[j]!=o.indexToGraph[D]){for(var T=la(S.sourceId,S.targetId,o),B=o.graphSet[T],O=0,M=o.layoutNodes[j];-1===B.indexOf(M.id);)M=o.layoutNodes[o.idToIndex[M.parentId]],O++;for(M=o.layoutNodes[D];-1===B.indexOf(M.id);)M=o.layoutNodes[o.idToIndex[M.parentId]],O++;C*=O*n.nestingFactor}S.idealLength=C,S.elasticity=_,o.layoutEdges.push(S)}return o},la=function(e,t,n){var r=ca(e,t,0,n);return 2>r.count?0:r.graph},ca=function e(t,n,r,i){var o=i.graphSet[r];if(-1<o.indexOf(t)&&-1<o.indexOf(n))return{count:2,graph:r};for(var a=0,s=0;s<o.length;s++){var u=o[s],l=i.idToIndex[u],c=i.layoutNodes[l].children;if(0!==c.length){var d=e(t,n,i.indexToGraph[i.idToIndex[c[0]]],i);if(0!==d.count){if(1!==d.count)return d;if(2===++a)break}}}return{count:a,graph:r}},da=function(e,t){for(var n=e.clientWidth,r=e.clientHeight,i=0;i<e.nodeSize;i++){var o=e.layoutNodes[i];0!==o.children.length||o.isLocked||(o.positionX=Math.random()*n,o.positionY=Math.random()*r)}},ha=function(e,t,n){var r=e.boundingBox,i={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};return t.boundingBox&&(n.forEach((function(t){var n=e.layoutNodes[e.idToIndex[t.data("id")]];i.x1=Math.min(i.x1,n.positionX),i.x2=Math.max(i.x2,n.positionX),i.y1=Math.min(i.y1,n.positionY),i.y2=Math.max(i.y2,n.positionY)})),i.w=i.x2-i.x1,i.h=i.y2-i.y1),function(n,o){var a=e.layoutNodes[e.idToIndex[n.data("id")]];if(t.boundingBox){var s=(a.positionX-i.x1)/i.w,u=(a.positionY-i.y1)/i.h;return{x:r.x1+s*r.w,y:r.y1+u*r.h}}return{x:a.positionX,y:a.positionY}}},pa=function(e,t,n){var r=n.layout,i=n.eles.nodes(),o=ha(e,n,i);i.positions(o),!0!==e.ready&&(e.ready=!0,r.one("layoutready",n.ready),r.emit({type:"layoutready",layout:this}))},fa=function(e,t,n){va(e,t),xa(e),wa(e,t),Ea(e),ka(e)},va=function(e,t){for(var n=0;n<e.graphSet.length;n++)for(var r=e.graphSet[n],i=r.length,o=0;o<i;o++)for(var a=e.layoutNodes[e.idToIndex[r[o]]],s=o+1;s<i;s++){var u=e.layoutNodes[e.idToIndex[r[s]]];ya(a,u,e,t)}},ga=function(e){return-e+2*e*Math.random()},ya=function(e,t,n,r){if(e.cmptId===t.cmptId||n.isCompound){var i=t.positionX-e.positionX,o=t.positionY-e.positionY;0===i&&0===o&&(i=ga(1),o=ga(1));var a=ma(e,t,i,o);if(a>0)var s=(l=r.nodeOverlap*a)*i/(v=Math.sqrt(i*i+o*o)),u=l*o/v;else{var l,c=ba(e,i,o),d=ba(t,-1*i,-1*o),h=d.x-c.x,p=d.y-c.y,f=h*h+p*p,v=Math.sqrt(f);s=(l=(e.nodeRepulsion+t.nodeRepulsion)/f)*h/v,u=l*p/v}e.isLocked||(e.offsetX-=s,e.offsetY-=u),t.isLocked||(t.offsetX+=s,t.offsetY+=u)}},ma=function(e,t,n,r){if(n>0)var i=e.maxX-t.minX;else i=t.maxX-e.minX;if(r>0)var o=e.maxY-t.minY;else o=t.maxY-e.minY;return i>=0&&o>=0?Math.sqrt(i*i+o*o):0},ba=function(e,t,n){var r=e.positionX,i=e.positionY,o=e.height||1,a=e.width||1,s=n/t,u=o/a,l={};return 0===t&&0<n||0===t&&0>n?(l.x=r,l.y=i+o/2,l):0<t&&-1*u<=s&&s<=u?(l.x=r+a/2,l.y=i+a*n/2/t,l):0>t&&-1*u<=s&&s<=u?(l.x=r-a/2,l.y=i-a*n/2/t,l):0<n&&(s<=-1*u||s>=u)?(l.x=r+o*t/2/n,l.y=i+o/2,l):0>n&&(s<=-1*u||s>=u)?(l.x=r-o*t/2/n,l.y=i-o/2,l):l},xa=function(e,t){for(var n=0;n<e.edgeSize;n++){var r=e.layoutEdges[n],i=e.idToIndex[r.sourceId],o=e.layoutNodes[i],a=e.idToIndex[r.targetId],s=e.layoutNodes[a],u=s.positionX-o.positionX,l=s.positionY-o.positionY;if(0!==u||0!==l){var c=ba(o,u,l),d=ba(s,-1*u,-1*l),h=d.x-c.x,p=d.y-c.y,f=Math.sqrt(h*h+p*p),v=Math.pow(r.idealLength-f,2)/r.elasticity;if(0!==f)var g=v*h/f,y=v*p/f;else g=0,y=0;o.isLocked||(o.offsetX+=g,o.offsetY+=y),s.isLocked||(s.offsetX-=g,s.offsetY-=y)}}},wa=function(e,t){if(0!==t.gravity)for(var n=0;n<e.graphSet.length;n++){var r=e.graphSet[n],i=r.length;if(0===n)var o=e.clientHeight/2,a=e.clientWidth/2;else{var s=e.layoutNodes[e.idToIndex[r[0]]],u=e.layoutNodes[e.idToIndex[s.parentId]];o=u.positionX,a=u.positionY}for(var l=0;l<i;l++){var c=e.layoutNodes[e.idToIndex[r[l]]];if(!c.isLocked){var d=o-c.positionX,h=a-c.positionY,p=Math.sqrt(d*d+h*h);if(p>1){var f=t.gravity*d/p,v=t.gravity*h/p;c.offsetX+=f,c.offsetY+=v}}}}},Ea=function(e,t){var n=[],r=0,i=-1;for(n.push.apply(n,e.graphSet[0]),i+=e.graphSet[0].length;r<=i;){var o=n[r++],a=e.idToIndex[o],s=e.layoutNodes[a],u=s.children;if(0<u.length&&!s.isLocked){for(var l=s.offsetX,c=s.offsetY,d=0;d<u.length;d++){var h=e.layoutNodes[e.idToIndex[u[d]]];h.offsetX+=l,h.offsetY+=c,n[++i]=u[d]}s.offsetX=0,s.offsetY=0}}},ka=function(e,t){for(var n=0;n<e.nodeSize;n++){0<(i=e.layoutNodes[n]).children.length&&(i.maxX=void 0,i.minX=void 0,i.maxY=void 0,i.minY=void 0)}for(n=0;n<e.nodeSize;n++){if(!(0<(i=e.layoutNodes[n]).children.length||i.isLocked)){var r=Pa(i.offsetX,i.offsetY,e.temperature);i.positionX+=r.x,i.positionY+=r.y,i.offsetX=0,i.offsetY=0,i.minX=i.positionX-i.width,i.maxX=i.positionX+i.width,i.minY=i.positionY-i.height,i.maxY=i.positionY+i.height,Sa(i,e)}}for(n=0;n<e.nodeSize;n++){var i;0<(i=e.layoutNodes[n]).children.length&&!i.isLocked&&(i.positionX=(i.maxX+i.minX)/2,i.positionY=(i.maxY+i.minY)/2,i.width=i.maxX-i.minX,i.height=i.maxY-i.minY)}},Pa=function(e,t,n){var r=Math.sqrt(e*e+t*t);if(r>n)var i={x:n*e/r,y:n*t/r};else i={x:e,y:t};return i},Sa=function e(t,n){var r=t.parentId;if(null!=r){var i=n.layoutNodes[n.idToIndex[r]],o=!1;return(null==i.maxX||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,o=!0),(null==i.minX||t.minX-i.padLeft<i.minX)&&(i.minX=t.minX-i.padLeft,o=!0),(null==i.maxY||t.maxY+i.padBottom>i.maxY)&&(i.maxY=t.maxY+i.padBottom,o=!0),(null==i.minY||t.minY-i.padTop<i.minY)&&(i.minY=t.minY-i.padTop,o=!0),o?e(i,n):void 0}},Ca=function(e,t){for(var n=e.layoutNodes,r=[],i=0;i<n.length;i++){var o=n[i],a=o.cmptId;(r[a]=r[a]||[]).push(o)}var s=0;for(i=0;i<r.length;i++){if(v=r[i]){v.x1=1/0,v.x2=-1/0,v.y1=1/0,v.y2=-1/0;for(var u=0;u<v.length;u++){var l=v[u];v.x1=Math.min(v.x1,l.positionX-l.width/2),v.x2=Math.max(v.x2,l.positionX+l.width/2),v.y1=Math.min(v.y1,l.positionY-l.height/2),v.y2=Math.max(v.y2,l.positionY+l.height/2)}v.w=v.x2-v.x1,v.h=v.y2-v.y1,s+=v.w*v.h}}r.sort((function(e,t){return t.w*t.h-e.w*e.h}));var c=0,d=0,h=0,p=0,f=Math.sqrt(s)*e.clientWidth/e.clientHeight;for(i=0;i<r.length;i++){var v;if(v=r[i]){for(u=0;u<v.length;u++){(l=v[u]).isLocked||(l.positionX+=c-v.x1,l.positionY+=d-v.y1)}c+=v.w+t.componentSpacing,h+=v.w+t.componentSpacing,p=Math.max(p,v.h),h>f&&(d+=p+t.componentSpacing,c=0,h=0,p=0)}}},_a={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function ja(e){this.options=R({},_a,e)}ja.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=r.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var o=rt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===o.h||0===o.w)r.nodes().layoutPositions(this,t,(function(e){return{x:o.x1,y:o.y1}}));else{var a=i.size(),s=Math.sqrt(a*o.h/o.w),u=Math.round(s),l=Math.round(o.w/o.h*s),c=function(e){if(null==e)return Math.min(u,l);Math.min(u,l)==u?u=e:l=e},d=function(e){if(null==e)return Math.max(u,l);Math.max(u,l)==u?u=e:l=e},h=t.rows,p=null!=t.cols?t.cols:t.columns;if(null!=h&&null!=p)u=h,l=p;else if(null!=h&&null==p)u=h,l=Math.ceil(a/u);else if(null==h&&null!=p)l=p,u=Math.ceil(a/l);else if(l*u>a){var f=c(),v=d();(f-1)*v>=a?c(f-1):(v-1)*f>=a&&d(v-1)}else for(;l*u<a;){var g=c(),y=d();(y+1)*g>=a?d(y+1):c(g+1)}var m=o.w/l,b=o.h/u;if(t.condense&&(m=0,b=0),t.avoidOverlap)for(var x=0;x<i.length;x++){var w=i[x],E=w._private.position;null!=E.x&&null!=E.y||(E.x=0,E.y=0);var k=w.layoutDimensions(t),P=t.avoidOverlapPadding,S=k.w+P,C=k.h+P;m=Math.max(m,S),b=Math.max(b,C)}for(var _={},j=function(e,t){return!!_["c-"+e+"-"+t]},D=function(e,t){_["c-"+e+"-"+t]=!0},T=0,B=0,O=function(){++B>=l&&(B=0,T++)},M={},N=0;N<i.length;N++){var I=i[N],L=t.position(I);if(L&&(void 0!==L.row||void 0!==L.col)){var A={row:L.row,col:L.col};if(void 0===A.col)for(A.col=0;j(A.row,A.col);)A.col++;else if(void 0===A.row)for(A.row=0;j(A.row,A.col);)A.row++;M[I.id()]=A,D(A.row,A.col)}}i.layoutPositions(this,t,(function(e,t){var n,r;if(e.locked()||e.isParent())return!1;var i=M[e.id()];if(i)n=i.col*m+m/2+o.x1,r=i.row*b+b/2+o.y1;else{for(;j(T,B);)O();n=B*m+m/2+o.x1,r=T*b+b/2+o.y1,D(T,B),O()}return{x:n,y:r}}))}return this};var Da={ready:function(){},stop:function(){}};function Ta(e){this.options=R({},Da,e)}Ta.prototype.run=function(){var e=this.options,t=e.eles,n=this;e.cy;return n.emit("layoutstart"),t.nodes().positions((function(){return{x:0,y:0}})),n.one("layoutready",e.ready),n.emit("layoutready"),n.one("layoutstop",e.stop),n.emit("layoutstop"),this},Ta.prototype.stop=function(){return this};var Ba={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Oa(e){this.options=R({},Ba,e)}Oa.prototype.run=function(){var e=this.options,t=e.eles.nodes(),n=x(e.positions);return t.layoutPositions(this,e,(function(t,r){var i=function(t){if(null==e.positions)return function(e){return{x:e.x,y:e.y}}(t.position());if(n)return e.positions(t);var r=e.positions[t._private.data.id];return null==r?null:r}(t);return!t.locked()&&null!=i&&i})),this};var Ma={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Na(e){this.options=R({},Ma,e)}Na.prototype.run=function(){var e=this.options,t=e.cy,n=e.eles,r=rt(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()});return n.nodes().layoutPositions(this,e,(function(e,t){return{x:r.x1+Math.round(Math.random()*r.w),y:r.y1+Math.round(Math.random()*r.h)}})),this};var Ia=[{name:"breadthfirst",impl:ea},{name:"circle",impl:na},{name:"concentric",impl:oa},{name:"cose",impl:sa},{name:"grid",impl:ja},{name:"null",impl:Ta},{name:"preset",impl:Oa},{name:"random",impl:Na}];function La(e){this.options=e,this.notifications=0}var Aa=function(){},za=function(){throw new Error("A headless instance can not render images")};La.prototype={recalculateRenderedStyle:Aa,notify:function(){this.notifications++},init:Aa,isHeadless:function(){return!0},png:za,jpg:za};var Ra={arrowShapeWidth:.3,registerArrowShapes:function(){var e=this.arrowShapes={},t=this,n=function(e,t,n,r,i,o,a){var s=i.x-n/2-a,u=i.x+n/2+a,l=i.y-n/2-a,c=i.y+n/2+a;return s<=e&&e<=u&&l<=t&&t<=c},r=function(e,t,n,r,i){var o=e*Math.cos(r)-t*Math.sin(r),a=(e*Math.sin(r)+t*Math.cos(r))*n;return{x:o*n+i.x,y:a+i.y}},i=function(e,t,n,i){for(var o=[],a=0;a<e.length;a+=2){var s=e[a],u=e[a+1];o.push(r(s,u,t,n,i))}return o},o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r.x,r.y)}return t},a=function(e){return e.pstyle("width").pfValue*e.pstyle("arrow-scale").pfValue*2},s=function(r,s){b(s)&&(s=e[s]),e[r]=R({name:r,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:function(e,t,n,r,a,s){var u=o(i(this.points,n+2*s,r,a));return gt(e,t,u)},roughCollide:n,draw:function(e,n,r,o){var a=i(this.points,n,r,o);t.arrowShapeImpl("polygon")(e,a)},spacing:function(e){return 0},gap:a},s)};s("none",{collide:de,roughCollide:de,draw:pe,spacing:he,gap:he}),s("triangle",{points:[-.15,-.3,0,0,.15,-.3]}),s("arrow","triangle"),s("triangle-backcurve",{points:e.triangle.points,controlPoint:[0,-.15],roughCollide:n,draw:function(e,n,o,a,s){var u=i(this.points,n,o,a),l=this.controlPoint,c=r(l[0],l[1],n,o,a);t.arrowShapeImpl(this.name)(e,u,c)},gap:function(e){return.8*a(e)}}),s("triangle-tee",{points:[0,0,.15,-.3,-.15,-.3,0,0],pointsTee:[-.15,-.4,-.15,-.5,.15,-.5,.15,-.4],collide:function(e,t,n,r,a,s,u){var l=o(i(this.points,n+2*u,r,a)),c=o(i(this.pointsTee,n+2*u,r,a));return gt(e,t,l)||gt(e,t,c)},draw:function(e,n,r,o,a){var s=i(this.points,n,r,o),u=i(this.pointsTee,n,r,o);t.arrowShapeImpl(this.name)(e,s,u)}}),s("circle-triangle",{radius:.15,pointsTr:[0,-.15,.15,-.45,-.15,-.45,0,-.15],collide:function(e,t,n,r,a,s,u){var l=a,c=Math.pow(l.x-e,2)+Math.pow(l.y-t,2)<=Math.pow((n+2*u)*this.radius,2),d=o(i(this.points,n+2*u,r,a));return gt(e,t,d)||c},draw:function(e,n,r,o,a){var s=i(this.pointsTr,n,r,o);t.arrowShapeImpl(this.name)(e,s,o.x,o.y,this.radius*n)},spacing:function(e){return t.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.radius}}),s("triangle-cross",{points:[0,0,.15,-.3,-.15,-.3,0,0],baseCrossLinePts:[-.15,-.4,-.15,-.4,.15,-.4,.15,-.4],crossLinePts:function(e,t){var n=this.baseCrossLinePts.slice(),r=t/e;return n[3]=n[3]-r,n[5]=n[5]-r,n},collide:function(e,t,n,r,a,s,u){var l=o(i(this.points,n+2*u,r,a)),c=o(i(this.crossLinePts(n,s),n+2*u,r,a));return gt(e,t,l)||gt(e,t,c)},draw:function(e,n,r,o,a){var s=i(this.points,n,r,o),u=i(this.crossLinePts(n,a),n,r,o);t.arrowShapeImpl(this.name)(e,s,u)}}),s("vee",{points:[-.15,-.3,0,0,.15,-.3,0,-.15],gap:function(e){return.525*a(e)}}),s("circle",{radius:.15,collide:function(e,t,n,r,i,o,a){var s=i;return Math.pow(s.x-e,2)+Math.pow(s.y-t,2)<=Math.pow((n+2*a)*this.radius,2)},draw:function(e,n,r,i,o){t.arrowShapeImpl(this.name)(e,i.x,i.y,this.radius*n)},spacing:function(e){return t.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.radius}}),s("tee",{points:[-.15,0,-.15,-.1,.15,-.1,.15,0],spacing:function(e){return 1},gap:function(e){return 1}}),s("square",{points:[-.15,0,.15,0,.15,-.3,-.15,-.3]}),s("diamond",{points:[-.15,-.15,0,-.3,.15,-.15,0,0],gap:function(e){return e.pstyle("width").pfValue*e.pstyle("arrow-scale").value}}),s("chevron",{points:[0,0,-.15,-.15,-.1,-.2,0,-.1,.1,-.2,.15,-.15],gap:function(e){return.95*e.pstyle("width").pfValue*e.pstyle("arrow-scale").value}})}},Fa={projectIntoViewport:function(e,t){var n=this.cy,r=this.findContainerClientCoords(),i=r[0],o=r[1],a=r[4],s=n.pan(),u=n.zoom();return[((e-i)/a-s.x)/u,((t-o)/a-s.y)/u]},findContainerClientCoords:function(){if(this.containerBB)return this.containerBB;var e=this.container,t=e.getBoundingClientRect(),n=h.getComputedStyle(e),r=function(e){return parseFloat(n.getPropertyValue(e))},i=r("padding-left"),o=r("padding-right"),a=r("padding-top"),s=r("padding-bottom"),u=r("border-left-width"),l=r("border-right-width"),c=r("border-top-width"),d=(r("border-bottom-width"),e.clientWidth),p=e.clientHeight,f=i+o,v=a+s,g=u+l,y=t.width/(d+g),m=d-f,b=p-v,x=t.left+i+u,w=t.top+a+c;return this.containerBB=[x,w,m,b,y]},invalidateContainerClientCoordsCache:function(){this.containerBB=null},findNearestElement:function(e,t,n,r){return this.findNearestElements(e,t,n,r)[0]},findNearestElements:function(e,t,n,r){var i,o,a=this,s=this,u=s.getCachedZSortedEles(),l=[],c=s.cy.zoom(),d=s.cy.hasCompoundNodes(),h=(r?24:8)/c,p=(r?8:2)/c,f=(r?8:2)/c,v=1/0;function g(e,t){if(e.isNode()){if(o)return;o=e,l.push(e)}if(e.isEdge()&&(null==t||t<v))if(i){if(i.pstyle("z-compound-depth").value===e.pstyle("z-compound-depth").value&&i.pstyle("z-compound-depth").value===e.pstyle("z-compound-depth").value)for(var n=0;n<l.length;n++)if(l[n].isEdge()){l[n]=e,i=e,v=null!=t?t:v;break}}else l.push(e),i=e,v=null!=t?t:v}function y(n){var r=n.outerWidth()+2*p,i=n.outerHeight()+2*p,o=r/2,u=i/2,l=n.position();if(l.x-o<=e&&e<=l.x+o&&l.y-u<=t&&t<=l.y+u&&s.nodeShapes[a.getNodeShape(n)].checkPoint(e,t,0,r,i,l.x,l.y))return g(n,0),!0}function m(n){var r,i=n._private,o=i.rscratch,u=n.pstyle("width").pfValue,c=n.pstyle("arrow-scale").value,p=u/2+h,f=p*p,v=2*p,m=i.source,b=i.target;if("segments"===o.edgeType||"straight"===o.edgeType||"haystack"===o.edgeType){for(var x=o.allpts,w=0;w+3<x.length;w+=2)if(ht(e,t,x[w],x[w+1],x[w+2],x[w+3],v)&&f>(r=vt(e,t,x[w],x[w+1],x[w+2],x[w+3])))return g(n,r),!0}else if("bezier"===o.edgeType||"multibezier"===o.edgeType||"self"===o.edgeType||"compound"===o.edgeType)for(x=o.allpts,w=0;w+5<o.allpts.length;w+=4)if(pt(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5],v)&&f>(r=ft(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return g(n,r),!0;m=m||i.source,b=b||i.target;var E=a.getArrowWidth(u,c),k=[{name:"source",x:o.arrowStartX,y:o.arrowStartY,angle:o.srcArrowAngle},{name:"target",x:o.arrowEndX,y:o.arrowEndY,angle:o.tgtArrowAngle},{name:"mid-source",x:o.midX,y:o.midY,angle:o.midsrcArrowAngle},{name:"mid-target",x:o.midX,y:o.midY,angle:o.midtgtArrowAngle}];for(w=0;w<k.length;w++){var P=k[w],S=s.arrowShapes[n.pstyle(P.name+"-arrow-shape").value],C=n.pstyle("width").pfValue;if(S.roughCollide(e,t,E,P.angle,{x:P.x,y:P.y},C,h)&&S.collide(e,t,E,P.angle,{x:P.x,y:P.y},C,h))return g(n),!0}d&&l.length>0&&(y(m),y(b))}function b(e,t,n){return Pe(e,t,n)}function x(n,r){var i,o=n._private,a=f;i=r?r+"-":"",n.boundingBox();var s=o.labelBounds[r||"main"],u=n.pstyle(i+"label").value;if("yes"===n.pstyle("text-events").strValue&&u){var l=b(o.rscratch,"labelX",r),c=b(o.rscratch,"labelY",r),d=b(o.rscratch,"labelAngle",r),h=n.pstyle(i+"text-margin-x").pfValue,p=n.pstyle(i+"text-margin-y").pfValue,v=s.x1-a-h,y=s.x2+a-h,m=s.y1-a-p,x=s.y2+a-p;if(d){var w=Math.cos(d),E=Math.sin(d),k=function(e,t){return{x:(e-=l)*w-(t-=c)*E+l,y:e*E+t*w+c}},P=k(v,m),S=k(v,x),C=k(y,m),_=k(y,x),j=[P.x+h,P.y+p,C.x+h,C.y+p,_.x+h,_.y+p,S.x+h,S.y+p];if(gt(e,t,j))return g(n),!0}else if(lt(s,e,t))return g(n),!0}}n&&(u=u.interactive);for(var w=u.length-1;w>=0;w--){var E=u[w];E.isNode()?y(E)||x(E):m(E)||x(E)||x(E,"source")||x(E,"target")}return l},getAllInBox:function(e,t,n,r){for(var i,o,a=this.getCachedZSortedEles().interactive,s=[],u=Math.min(e,n),l=Math.max(e,n),c=Math.min(t,r),d=Math.max(t,r),h=rt({x1:e=u,y1:t=c,x2:n=l,y2:r=d}),p=0;p<a.length;p++){var f=a[p];if(f.isNode()){var v=f,g=v.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:!1});ut(h,g)&&!ct(g,h)&&s.push(v)}else{var y=f,m=y._private,b=m.rscratch;if(null!=b.startX&&null!=b.startY&&!lt(h,b.startX,b.startY))continue;if(null!=b.endX&&null!=b.endY&&!lt(h,b.endX,b.endY))continue;if("bezier"===b.edgeType||"multibezier"===b.edgeType||"self"===b.edgeType||"compound"===b.edgeType||"segments"===b.edgeType||"haystack"===b.edgeType){for(var x=m.rstyle.bezierPts||m.rstyle.linePts||m.rstyle.haystackPts,w=!0,E=0;E<x.length;E++)if(i=h,o=x[E],!lt(i,o.x,o.y)){w=!1;break}w&&s.push(y)}else"haystack"!==b.edgeType&&"straight"!==b.edgeType||s.push(y)}}return s}},Va={calculateArrowAngles:function(e){var t,n,r,i,o,a,s=e._private.rscratch,u="haystack"===s.edgeType,l="bezier"===s.edgeType,c="multibezier"===s.edgeType,d="segments"===s.edgeType,h="compound"===s.edgeType,p="self"===s.edgeType;if(u?(r=s.haystackPts[0],i=s.haystackPts[1],o=s.haystackPts[2],a=s.haystackPts[3]):(r=s.arrowStartX,i=s.arrowStartY,o=s.arrowEndX,a=s.arrowEndY),v=s.midX,g=s.midY,d)t=r-s.segpts[0],n=i-s.segpts[1];else if(c||h||p||l){var f=s.allpts;t=r-et(f[0],f[2],f[4],.1),n=i-et(f[1],f[3],f[5],.1)}else t=r-v,n=i-g;s.srcArrowAngle=Ue(t,n);var v=s.midX,g=s.midY;if(u&&(v=(r+o)/2,g=(i+a)/2),t=o-r,n=a-i,d)if((f=s.allpts).length/2%2==0){var y=(m=f.length/2)-2;t=f[m]-f[y],n=f[m+1]-f[y+1]}else{y=(m=f.length/2-1)-2;var m,b=m+2;t=f[m]-f[y],n=f[m+1]-f[y+1]}else if(c||h||p){var x,w,E,k,f=s.allpts;if(s.ctrlpts.length/2%2==0){var P=(S=(C=f.length/2-1)+2)+2;x=et(f[C],f[S],f[P],0),w=et(f[C+1],f[S+1],f[P+1],0),E=et(f[C],f[S],f[P],1e-4),k=et(f[C+1],f[S+1],f[P+1],1e-4)}else{var S,C;P=(S=f.length/2-1)+2;x=et(f[C=S-2],f[S],f[P],.4999),w=et(f[C+1],f[S+1],f[P+1],.4999),E=et(f[C],f[S],f[P],.5),k=et(f[C+1],f[S+1],f[P+1],.5)}t=E-x,n=k-w}(s.midtgtArrowAngle=Ue(t,n),s.midDispX=t,s.midDispY=n,t*=-1,n*=-1,d)&&((f=s.allpts).length/2%2==0||(t=-(f[b=(m=f.length/2-1)+2]-f[m]),n=-(f[b+1]-f[m+1])));if(s.midsrcArrowAngle=Ue(t,n),d)t=o-s.segpts[s.segpts.length-2],n=a-s.segpts[s.segpts.length-1];else if(c||h||p||l){var _=(f=s.allpts).length;t=o-et(f[_-6],f[_-4],f[_-2],.9),n=a-et(f[_-5],f[_-3],f[_-1],.9)}else t=o-v,n=a-g;s.tgtArrowAngle=Ue(t,n)}};Va.getArrowWidth=Va.getArrowHeight=function(e,t){var n=this.arrowWidthCache=this.arrowWidthCache||{},r=n[e+", "+t];return r||(r=Math.max(Math.pow(13.37*e,.9),29)*t,n[e+", "+t]=r,r)};var qa={};function Ya(e){var t=[];if(null!=e){for(var n=0;n<e.length;n+=2){var r=e[n],i=e[n+1];t.push({x:r,y:i})}return t}}qa.findHaystackPoints=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=n._private,i=r.rscratch;if(!i.haystack){var o=2*Math.random()*Math.PI;i.source={x:Math.cos(o),y:Math.sin(o)},o=2*Math.random()*Math.PI,i.target={x:Math.cos(o),y:Math.sin(o)}}var a=r.source,s=r.target,u=a.position(),l=s.position(),c=a.width(),d=s.width(),h=a.height(),p=s.height(),f=n.pstyle("haystack-radius").value/2;i.haystackPts=i.allpts=[i.source.x*c*f+u.x,i.source.y*h*f+u.y,i.target.x*d*f+l.x,i.target.y*p*f+l.y],i.midX=(i.allpts[0]+i.allpts[2])/2,i.midY=(i.allpts[1]+i.allpts[3])/2,i.edgeType="haystack",i.haystack=!0,this.storeEdgeProjections(n),this.calculateArrowAngles(n),this.recalculateEdgeLabelProjections(n),this.calculateLabelAngles(n)}},qa.findSegmentsPoints=function(e,t){var n=e._private.rscratch,r=t.posPts,i=t.intersectionPts,o=t.vectorNormInverse,a=e.pstyle("edge-distances").value,s=e.pstyle("segment-weights"),u=e.pstyle("segment-distances"),l=Math.min(s.pfValue.length,u.pfValue.length);n.edgeType="segments",n.segpts=[];for(var c=0;c<l;c++){var d=s.pfValue[c],h=u.pfValue[c],p=1-d,f=d,v="node-position"===a?r:i,g={x:v.x1*p+v.x2*f,y:v.y1*p+v.y2*f};n.segpts.push(g.x+o.x*h,g.y+o.y*h)}},qa.findLoopPoints=function(e,t,n,r){var i=e._private.rscratch,o=t.dirCounts,a=t.srcPos,s=e.pstyle("control-point-distances"),u=s?s.pfValue[0]:void 0,l=e.pstyle("loop-direction").pfValue,c=e.pstyle("loop-sweep").pfValue,d=e.pstyle("control-point-step-size").pfValue;i.edgeType="self";var h=n,p=d;r&&(h=0,p=u);var f=l-Math.PI/2,v=f-c/2,g=f+c/2,y=String(l+"_"+c);h=void 0===o[y]?o[y]=0:++o[y],i.ctrlpts=[a.x+1.4*Math.cos(v)*p*(h/3+1),a.y+1.4*Math.sin(v)*p*(h/3+1),a.x+1.4*Math.cos(g)*p*(h/3+1),a.y+1.4*Math.sin(g)*p*(h/3+1)]},qa.findCompoundLoopPoints=function(e,t,n,r){var i=e._private.rscratch;i.edgeType="compound";var o=t.srcPos,a=t.tgtPos,s=t.srcW,u=t.srcH,l=t.tgtW,c=t.tgtH,d=e.pstyle("control-point-step-size").pfValue,h=e.pstyle("control-point-distances"),p=h?h.pfValue[0]:void 0,f=n,v=d;r&&(f=0,v=p);var g={x:o.x-s/2,y:o.y-u/2},y={x:a.x-l/2,y:a.y-c/2},m={x:Math.min(g.x,y.x),y:Math.min(g.y,y.y)},b=Math.max(.5,Math.log(.01*s)),x=Math.max(.5,Math.log(.01*l));i.ctrlpts=[m.x,m.y-(1+Math.pow(50,1.12)/100)*v*(f/3+1)*b,m.x-(1+Math.pow(50,1.12)/100)*v*(f/3+1)*x,m.y]},qa.findStraightEdgePoints=function(e){e._private.rscratch.edgeType="straight"},qa.findBezierPoints=function(e,t,n,r,i){var o=e._private.rscratch,a=t.vectorNormInverse,s=t.posPts,u=t.intersectionPts,l=e.pstyle("edge-distances").value,c=e.pstyle("control-point-step-size").pfValue,d=e.pstyle("control-point-distances"),h=e.pstyle("control-point-weights"),p=d&&h?Math.min(d.value.length,h.value.length):1,f=d?d.pfValue[0]:void 0,v=h.value[0],g=r;o.edgeType=g?"multibezier":"bezier",o.ctrlpts=[];for(var y=0;y<p;y++){var m=(.5-t.eles.length/2+n)*c*(i?-1:1),b=void 0,x=Ze(m);g&&(f=d?d.pfValue[y]:c,v=h.value[y]);var w=void 0!==(b=r?f:void 0!==f?x*f:void 0)?b:m,E=1-v,k=v,P="node-position"===l?s:u,S={x:P.x1*E+P.x2*k,y:P.y1*E+P.y2*k};o.ctrlpts.push(S.x+a.x*w,S.y+a.y*w)}},qa.findTaxiPoints=function(e,t){var n=e._private.rscratch;n.edgeType="segments";var r="vertical",i="horizontal",o="leftward",a="rightward",s="downward",u="upward",l=t.posPts,c=t.srcW,d=t.srcH,h=t.tgtW,p=t.tgtH,f="node-position"!==e.pstyle("edge-distances").value,v=e.pstyle("taxi-direction").value,g=v,y=e.pstyle("taxi-turn"),m="%"===y.units,b=y.pfValue,x=b<0,w=e.pstyle("taxi-turn-min-distance").pfValue,E=f?(c+h)/2:0,k=f?(d+p)/2:0,P=l.x2-l.x1,S=l.y2-l.y1,C=function(e,t){return e>0?Math.max(e-t,0):Math.min(e+t,0)},_=C(P,E),j=C(S,k),D=!1;"auto"===g?v=Math.abs(_)>Math.abs(j)?i:r:g===u||g===s?(v=r,D=!0):g!==o&&g!==a||(v=i,D=!0);var T,B=v===r,O=B?j:_,M=B?S:P,N=Ze(M),I=!1;(D&&(m||x)||!(g===s&&M<0||g===u&&M>0||g===o&&M>0||g===a&&M<0)||(O=(N*=-1)*Math.abs(O),I=!0),m)?T=(b<0?1+b:b)*O:T=(b<0?O:0)+b*N;var L=function(e){return Math.abs(e)<w||Math.abs(e)>=Math.abs(O)},A=L(T),z=L(Math.abs(O)-Math.abs(T));if((A||z)&&!I)if(B){var R=Math.abs(M)<=d/2,F=Math.abs(P)<=h/2;if(R){var V=(l.x1+l.x2)/2,q=l.y1,Y=l.y2;n.segpts=[V,q,V,Y]}else if(F){var X=(l.y1+l.y2)/2,H=l.x1,W=l.x2;n.segpts=[H,X,W,X]}else n.segpts=[l.x1,l.y2]}else{var G=Math.abs(M)<=c/2,U=Math.abs(S)<=p/2;if(G){var K=(l.y1+l.y2)/2,Z=l.x1,Q=l.x2;n.segpts=[Z,K,Q,K]}else if(U){var $=(l.x1+l.x2)/2,J=l.y1,ee=l.y2;n.segpts=[$,J,$,ee]}else n.segpts=[l.x2,l.y1]}else if(B){var te=l.y1+T+(f?d/2*N:0),ne=l.x1,re=l.x2;n.segpts=[ne,te,re,te]}else{var ie=l.x1+T+(f?c/2*N:0),oe=l.y1,ae=l.y2;n.segpts=[ie,oe,ie,ae]}},qa.tryToCorrectInvalidPoints=function(e,t){var n=e._private.rscratch;if("bezier"===n.edgeType){var r=t.srcPos,i=t.tgtPos,o=t.srcW,a=t.srcH,s=t.tgtW,u=t.tgtH,l=t.srcShape,c=t.tgtShape,d=!k(n.startX)||!k(n.startY),h=!k(n.arrowStartX)||!k(n.arrowStartY),p=!k(n.endX)||!k(n.endY),f=!k(n.arrowEndX)||!k(n.arrowEndY),v=3*(this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth),g=Qe({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),y=g<v,m=Qe({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.endX,y:n.endY}),b=m<v,x=!1;if(d||h||y){x=!0;var w={x:n.ctrlpts[0]-r.x,y:n.ctrlpts[1]-r.y},E=Math.sqrt(w.x*w.x+w.y*w.y),P={x:w.x/E,y:w.y/E},S=Math.max(o,a),C={x:n.ctrlpts[0]+2*P.x*S,y:n.ctrlpts[1]+2*P.y*S},_=l.intersectLine(r.x,r.y,o,a,C.x,C.y,0);y?(n.ctrlpts[0]=n.ctrlpts[0]+P.x*(v-g),n.ctrlpts[1]=n.ctrlpts[1]+P.y*(v-g)):(n.ctrlpts[0]=_[0]+P.x*v,n.ctrlpts[1]=_[1]+P.y*v)}if(p||f||b){x=!0;var j={x:n.ctrlpts[0]-i.x,y:n.ctrlpts[1]-i.y},D=Math.sqrt(j.x*j.x+j.y*j.y),T={x:j.x/D,y:j.y/D},B=Math.max(o,a),O={x:n.ctrlpts[0]+2*T.x*B,y:n.ctrlpts[1]+2*T.y*B},M=c.intersectLine(i.x,i.y,s,u,O.x,O.y,0);b?(n.ctrlpts[0]=n.ctrlpts[0]+T.x*(v-m),n.ctrlpts[1]=n.ctrlpts[1]+T.y*(v-m)):(n.ctrlpts[0]=M[0]+T.x*v,n.ctrlpts[1]=M[1]+T.y*v)}x&&this.findEndpoints(e)}},qa.storeAllpts=function(e){var t=e._private.rscratch;if("multibezier"===t.edgeType||"bezier"===t.edgeType||"self"===t.edgeType||"compound"===t.edgeType){t.allpts=[],t.allpts.push(t.startX,t.startY);for(var n=0;n+1<t.ctrlpts.length;n+=2)t.allpts.push(t.ctrlpts[n],t.ctrlpts[n+1]),n+3<t.ctrlpts.length&&t.allpts.push((t.ctrlpts[n]+t.ctrlpts[n+2])/2,(t.ctrlpts[n+1]+t.ctrlpts[n+3])/2);var r;t.allpts.push(t.endX,t.endY),t.ctrlpts.length/2%2==0?(r=t.allpts.length/2-1,t.midX=t.allpts[r],t.midY=t.allpts[r+1]):(r=t.allpts.length/2-3,.5,t.midX=et(t.allpts[r],t.allpts[r+2],t.allpts[r+4],.5),t.midY=et(t.allpts[r+1],t.allpts[r+3],t.allpts[r+5],.5))}else if("straight"===t.edgeType)t.allpts=[t.startX,t.startY,t.endX,t.endY],t.midX=(t.startX+t.endX+t.arrowStartX+t.arrowEndX)/4,t.midY=(t.startY+t.endY+t.arrowStartY+t.arrowEndY)/4;else if("segments"===t.edgeType)if(t.allpts=[],t.allpts.push(t.startX,t.startY),t.allpts.push.apply(t.allpts,t.segpts),t.allpts.push(t.endX,t.endY),t.segpts.length%4==0){var i=t.segpts.length/2,o=i-2;t.midX=(t.segpts[o]+t.segpts[i])/2,t.midY=(t.segpts[o+1]+t.segpts[i+1])/2}else{var a=t.segpts.length/2-1;t.midX=t.segpts[a],t.midY=t.segpts[a+1]}},qa.checkForInvalidEdgeWarning=function(e){var t=e[0]._private.rscratch;t.nodesOverlap||k(t.startX)&&k(t.startY)&&k(t.endX)&&k(t.endY)?t.loggedErr=!1:t.loggedErr||(t.loggedErr=!0,ge("Edge `"+e.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap."))},qa.findEdgeControlPoints=function(e){var t=this;if(e&&0!==e.length){for(var n=this,r=n.cy.hasCompoundNodes(),i={map:new Ce,get:function(e){var t=this.map.get(e[0]);return null!=t?t.get(e[1]):null},set:function(e,t){var n=this.map.get(e[0]);null==n&&(n=new Ce,this.map.set(e[0],n)),n.set(e[1],t)}},o=[],a=[],s=0;s<e.length;s++){var u=e[s],l=u._private,c=u.pstyle("curve-style").value;if(!u.removed()&&u.takesUpSpace())if("haystack"!==c){var d="unbundled-bezier"===c||"segments"===c||"straight"===c||"straight-triangle"===c||"taxi"===c,h="unbundled-bezier"===c||"bezier"===c,p=l.source,f=l.target,v=[p.poolIndex(),f.poolIndex()].sort(),g=i.get(v);null==g&&(g={eles:[]},i.set(v,g),o.push(v)),g.eles.push(u),d&&(g.hasUnbundled=!0),h&&(g.hasBezier=!0)}else a.push(u)}for(var y=function(e){var a=o[e],s=i.get(a),u=void 0;if(!s.hasUnbundled){var l=s.eles[0].parallelEdges().filter((function(e){return e.isBundledBezier()}));ke(s.eles),l.forEach((function(e){return s.eles.push(e)})),s.eles.sort((function(e,t){return e.poolIndex()-t.poolIndex()}))}var c=s.eles[0],d=c.source(),h=c.target();if(d.poolIndex()>h.poolIndex()){var p=d;d=h,h=p}var f=s.srcPos=d.position(),v=s.tgtPos=h.position(),g=s.srcW=d.outerWidth(),y=s.srcH=d.outerHeight(),m=s.tgtW=h.outerWidth(),b=s.tgtH=h.outerHeight(),x=s.srcShape=n.nodeShapes[t.getNodeShape(d)],w=s.tgtShape=n.nodeShapes[t.getNodeShape(h)];s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var E=0;E<s.eles.length;E++){var P=s.eles[E],S=P[0]._private.rscratch,C=P.pstyle("curve-style").value,_="unbundled-bezier"===C||"segments"===C||"taxi"===C,j=!d.same(P.source());if(!s.calculatedIntersection&&d!==h&&(s.hasBezier||s.hasUnbundled)){s.calculatedIntersection=!0;var D=x.intersectLine(f.x,f.y,g,y,v.x,v.y,0),T=s.srcIntn=D,B=w.intersectLine(v.x,v.y,m,b,f.x,f.y,0),O=s.tgtIntn=B,M=s.intersectionPts={x1:D[0],x2:B[0],y1:D[1],y2:B[1]},N=s.posPts={x1:f.x,x2:v.x,y1:f.y,y2:v.y},I=B[1]-D[1],L=B[0]-D[0],A=Math.sqrt(L*L+I*I),z=s.vector={x:L,y:I},R=s.vectorNorm={x:z.x/A,y:z.y/A},F={x:-R.y,y:R.x};s.nodesOverlap=!k(A)||w.checkPoint(D[0],D[1],0,m,b,v.x,v.y)||x.checkPoint(B[0],B[1],0,g,y,f.x,f.y),s.vectorNormInverse=F,u={nodesOverlap:s.nodesOverlap,dirCounts:s.dirCounts,calculatedIntersection:!0,hasBezier:s.hasBezier,hasUnbundled:s.hasUnbundled,eles:s.eles,srcPos:v,tgtPos:f,srcW:m,srcH:b,tgtW:g,tgtH:y,srcIntn:O,tgtIntn:T,srcShape:w,tgtShape:x,posPts:{x1:N.x2,y1:N.y2,x2:N.x1,y2:N.y1},intersectionPts:{x1:M.x2,y1:M.y2,x2:M.x1,y2:M.y1},vector:{x:-z.x,y:-z.y},vectorNorm:{x:-R.x,y:-R.y},vectorNormInverse:{x:-F.x,y:-F.y}}}var V=j?u:s;S.nodesOverlap=V.nodesOverlap,S.srcIntn=V.srcIntn,S.tgtIntn=V.tgtIntn,r&&(d.isParent()||d.isChild()||h.isParent()||h.isChild())&&(d.parents().anySame(h)||h.parents().anySame(d)||d.same(h)&&d.isParent())?t.findCompoundLoopPoints(P,V,E,_):d===h?t.findLoopPoints(P,V,E,_):"segments"===C?t.findSegmentsPoints(P,V):"taxi"===C?t.findTaxiPoints(P,V):"straight"===C||!_&&s.eles.length%2==1&&E===Math.floor(s.eles.length/2)?t.findStraightEdgePoints(P):t.findBezierPoints(P,V,E,_,j),t.findEndpoints(P),t.tryToCorrectInvalidPoints(P,V),t.checkForInvalidEdgeWarning(P),t.storeAllpts(P),t.storeEdgeProjections(P),t.calculateArrowAngles(P),t.recalculateEdgeLabelProjections(P),t.calculateLabelAngles(P)}},m=0;m<o.length;m++)y(m);this.findHaystackPoints(a)}},qa.getSegmentPoints=function(e){var t=e[0]._private.rscratch;if("segments"===t.edgeType)return this.recalculateRenderedStyle(e),Ya(t.segpts)},qa.getControlPoints=function(e){var t=e[0]._private.rscratch,n=t.edgeType;if("bezier"===n||"multibezier"===n||"self"===n||"compound"===n)return this.recalculateRenderedStyle(e),Ya(t.ctrlpts)},qa.getEdgeMidpoint=function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),{x:t.midX,y:t.midY}};var Xa={manualEndptToPx:function(e,t){var n=e.position(),r=e.outerWidth(),i=e.outerHeight();if(2===t.value.length){var o=[t.pfValue[0],t.pfValue[1]];return"%"===t.units[0]&&(o[0]=o[0]*r),"%"===t.units[1]&&(o[1]=o[1]*i),o[0]+=n.x,o[1]+=n.y,o}var a=t.pfValue[0];a=-Math.PI/2+a;var s=2*Math.max(r,i),u=[n.x+Math.cos(a)*s,n.y+Math.sin(a)*s];return this.nodeShapes[this.getNodeShape(e)].intersectLine(n.x,n.y,r,i,u[0],u[1],0)},findEndpoints:function(e){var t,n,r,i,o,a=this,s=e.source()[0],u=e.target()[0],l=s.position(),c=u.position(),d=e.pstyle("target-arrow-shape").value,h=e.pstyle("source-arrow-shape").value,p=e.pstyle("target-distance-from-node").pfValue,f=e.pstyle("source-distance-from-node").pfValue,v=e.pstyle("curve-style").value,g=e._private.rscratch,y=g.edgeType,m="self"===y||"compound"===y,b="bezier"===y||"multibezier"===y||m,x="bezier"!==y,w="straight"===y||"segments"===y,E="segments"===y,P=b||x||w,S=m||"taxi"===v,C=e.pstyle("source-endpoint"),_=S?"outside-to-node":C.value,j=e.pstyle("target-endpoint"),D=S?"outside-to-node":j.value;if(g.srcManEndpt=C,g.tgtManEndpt=j,b){var T=[g.ctrlpts[0],g.ctrlpts[1]];n=x?[g.ctrlpts[g.ctrlpts.length-2],g.ctrlpts[g.ctrlpts.length-1]]:T,r=T}else if(w){var B=E?g.segpts.slice(0,2):[c.x,c.y];n=E?g.segpts.slice(g.segpts.length-2):[l.x,l.y],r=B}if("inside-to-node"===D)t=[c.x,c.y];else if(j.units)t=this.manualEndptToPx(u,j);else if("outside-to-line"===D)t=g.tgtIntn;else if("outside-to-node"===D||"outside-to-node-or-label"===D?i=n:"outside-to-line"!==D&&"outside-to-line-or-label"!==D||(i=[l.x,l.y]),t=a.nodeShapes[this.getNodeShape(u)].intersectLine(c.x,c.y,u.outerWidth(),u.outerHeight(),i[0],i[1],0),"outside-to-node-or-label"===D||"outside-to-line-or-label"===D){var O=u._private.rscratch,M=O.labelWidth,N=O.labelHeight,I=O.labelX,L=O.labelY,A=M/2,z=N/2,R=u.pstyle("text-valign").value;"top"===R?L-=z:"bottom"===R&&(L+=z);var F=u.pstyle("text-halign").value;"left"===F?I-=A:"right"===F&&(I+=A);var V=Pt(i[0],i[1],[I-A,L-z,I+A,L-z,I+A,L+z,I-A,L+z],c.x,c.y);if(V.length>0){var q=l,Y=$e(q,Ge(t)),X=$e(q,Ge(V)),H=Y;if(X<Y&&(t=V,H=X),V.length>2)$e(q,{x:V[2],y:V[3]})<H&&(t=[V[2],V[3]])}}var W=St(t,n,a.arrowShapes[d].spacing(e)+p),G=St(t,n,a.arrowShapes[d].gap(e)+p);if(g.endX=G[0],g.endY=G[1],g.arrowEndX=W[0],g.arrowEndY=W[1],"inside-to-node"===_)t=[l.x,l.y];else if(C.units)t=this.manualEndptToPx(s,C);else if("outside-to-line"===_)t=g.srcIntn;else if("outside-to-node"===_||"outside-to-node-or-label"===_?o=r:"outside-to-line"!==_&&"outside-to-line-or-label"!==_||(o=[c.x,c.y]),t=a.nodeShapes[this.getNodeShape(s)].intersectLine(l.x,l.y,s.outerWidth(),s.outerHeight(),o[0],o[1],0),"outside-to-node-or-label"===_||"outside-to-line-or-label"===_){var U=s._private.rscratch,K=U.labelWidth,Z=U.labelHeight,Q=U.labelX,$=U.labelY,J=K/2,ee=Z/2,te=s.pstyle("text-valign").value;"top"===te?$-=ee:"bottom"===te&&($+=ee);var ne=s.pstyle("text-halign").value;"left"===ne?Q-=J:"right"===ne&&(Q+=J);var re=Pt(o[0],o[1],[Q-J,$-ee,Q+J,$-ee,Q+J,$+ee,Q-J,$+ee],l.x,l.y);if(re.length>0){var ie=c,oe=$e(ie,Ge(t)),ae=$e(ie,Ge(re)),se=oe;if(ae<oe&&(t=[re[0],re[1]],se=ae),re.length>2)$e(ie,{x:re[2],y:re[3]})<se&&(t=[re[2],re[3]])}}var ue=St(t,r,a.arrowShapes[h].spacing(e)+f),le=St(t,r,a.arrowShapes[h].gap(e)+f);g.startX=le[0],g.startY=le[1],g.arrowStartX=ue[0],g.arrowStartY=ue[1],P&&(k(g.startX)&&k(g.startY)&&k(g.endX)&&k(g.endY)?g.badLine=!1:g.badLine=!0)},getSourceEndpoint:function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),"haystack"===t.edgeType?{x:t.haystackPts[0],y:t.haystackPts[1]}:{x:t.arrowStartX,y:t.arrowStartY}},getTargetEndpoint:function(e){var t=e[0]._private.rscratch;return this.recalculateRenderedStyle(e),"haystack"===t.edgeType?{x:t.haystackPts[2],y:t.haystackPts[3]}:{x:t.arrowEndX,y:t.arrowEndY}}},Ha={};function Wa(e,t,n){for(var r=function(e,t,n,r){return et(e,t,n,r)},i=t._private.rstyle.bezierPts,o=0;o<e.bezierProjPcts.length;o++){var a=e.bezierProjPcts[o];i.push({x:r(n[0],n[2],n[4],a),y:r(n[1],n[3],n[5],a)})}}Ha.storeEdgeProjections=function(e){var t=e._private,n=t.rscratch,r=n.edgeType;if(t.rstyle.bezierPts=null,t.rstyle.linePts=null,t.rstyle.haystackPts=null,"multibezier"===r||"bezier"===r||"self"===r||"compound"===r){t.rstyle.bezierPts=[];for(var i=0;i+5<n.allpts.length;i+=4)Wa(this,e,n.allpts.slice(i,i+6))}else if("segments"===r){var o=t.rstyle.linePts=[];for(i=0;i+1<n.allpts.length;i+=2)o.push({x:n.allpts[i],y:n.allpts[i+1]})}else if("haystack"===r){var a=n.haystackPts;t.rstyle.haystackPts=[{x:a[0],y:a[1]},{x:a[2],y:a[3]}]}t.rstyle.arrowWidth=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth},Ha.recalculateEdgeProjections=function(e){this.findEdgeControlPoints(e)};var Ga={recalculateNodeLabelProjection:function(e){var t=e.pstyle("label").strValue;if(!T(t)){var n,r,i=e._private,o=e.width(),a=e.height(),s=e.padding(),u=e.position(),l=e.pstyle("text-halign").strValue,c=e.pstyle("text-valign").strValue,d=i.rscratch,h=i.rstyle;switch(l){case"left":n=u.x-o/2-s;break;case"right":n=u.x+o/2+s;break;default:n=u.x}switch(c){case"top":r=u.y-a/2-s;break;case"bottom":r=u.y+a/2+s;break;default:r=u.y}d.labelX=n,d.labelY=r,h.labelX=n,h.labelY=r,this.calculateLabelAngles(e),this.applyLabelDimensions(e)}}},Ua=function(e,t){var n=Math.atan(t/e);return 0===e&&n<0&&(n*=-1),n},Ka=function(e,t){var n=t.x-e.x,r=t.y-e.y;return Ua(n,r)};Ga.recalculateEdgeLabelProjections=function(e){var t,n=e._private,r=n.rscratch,i=this,o={mid:e.pstyle("label").strValue,source:e.pstyle("source-label").strValue,target:e.pstyle("target-label").strValue};if(o.mid||o.source||o.target){t={x:r.midX,y:r.midY};var a=function(e,t,r){Se(n.rscratch,e,t,r),Se(n.rstyle,e,t,r)};a("labelX",null,t.x),a("labelY",null,t.y);var s=Ua(r.midDispX,r.midDispY);a("labelAutoAngle",null,s);var u=function e(){if(e.cache)return e.cache;for(var t=[],o=0;o+5<r.allpts.length;o+=4){var a={x:r.allpts[o],y:r.allpts[o+1]},s={x:r.allpts[o+2],y:r.allpts[o+3]},u={x:r.allpts[o+4],y:r.allpts[o+5]};t.push({p0:a,p1:s,p2:u,startDist:0,length:0,segments:[]})}var l=n.rstyle.bezierPts,c=i.bezierProjPcts.length;function d(e,t,n,r,i){var o=Qe(t,n),a=e.segments[e.segments.length-1],s={p0:t,p1:n,t0:r,t1:i,startDist:a?a.startDist+a.length:0,length:o};e.segments.push(s),e.length+=o}for(var h=0;h<t.length;h++){var p=t[h],f=t[h-1];f&&(p.startDist=f.startDist+f.length),d(p,p.p0,l[h*c],0,i.bezierProjPcts[0]);for(var v=0;v<c-1;v++)d(p,l[h*c+v],l[h*c+v+1],i.bezierProjPcts[v],i.bezierProjPcts[v+1]);d(p,l[h*c+c-1],p.p2,i.bezierProjPcts[c-1],1)}return e.cache=t},l=function(n){var i,s="source"===n;if(o[n]){var l=e.pstyle(n+"-text-offset").pfValue;switch(r.edgeType){case"self":case"compound":case"bezier":case"multibezier":for(var c,d=u(),h=0,p=0,f=0;f<d.length;f++){for(var v=d[s?f:d.length-1-f],g=0;g<v.segments.length;g++){var y=v.segments[s?g:v.segments.length-1-g],m=f===d.length-1&&g===v.segments.length-1;if(h=p,(p+=y.length)>=l||m){c={cp:v,segment:y};break}}if(c)break}var b=c.cp,x=c.segment,w=(l-h)/x.length,E=x.t1-x.t0,k=s?x.t0+E*w:x.t1-E*w;k=nt(0,k,1),t=tt(b.p0,b.p1,b.p2,k),i=function(e,t,n,r){var i=nt(0,r-.001,1),o=nt(0,r+.001,1),a=tt(e,t,n,i),s=tt(e,t,n,o);return Ka(a,s)}(b.p0,b.p1,b.p2,k);break;case"straight":case"segments":case"haystack":for(var P,S,C,_,j=0,D=r.allpts.length,T=0;T+3<D&&(s?(C={x:r.allpts[T],y:r.allpts[T+1]},_={x:r.allpts[T+2],y:r.allpts[T+3]}):(C={x:r.allpts[D-2-T],y:r.allpts[D-1-T]},_={x:r.allpts[D-4-T],y:r.allpts[D-3-T]}),S=j,!((j+=P=Qe(C,_))>=l));T+=2);var B=(l-S)/P;B=nt(0,B,1),t=function(e,t,n,r){var i=t.x-e.x,o=t.y-e.y,a=Qe(e,t),s=i/a,u=o/a;return n=null==n?0:n,r=null!=r?r:n*a,{x:e.x+s*r,y:e.y+u*r}}(C,_,B),i=Ka(C,_)}a("labelX",n,t.x),a("labelY",n,t.y),a("labelAutoAngle",n,i)}};l("source"),l("target"),this.applyLabelDimensions(e)}},Ga.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))},Ga.applyPrefixedLabelDimensions=function(e,t){var n=e._private,r=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,r),o=e.pstyle("line-height").pfValue,a=e.pstyle("text-wrap").strValue,s=Pe(n.rscratch,"labelWrapCachedLines",t)||[],u="wrap"!==a?1:Math.max(s.length,1),l=i.height/u,c=l*o,d=i.width,h=i.height+(u-1)*(o-1)*l;Se(n.rstyle,"labelWidth",t,d),Se(n.rscratch,"labelWidth",t,d),Se(n.rstyle,"labelHeight",t,h),Se(n.rscratch,"labelHeight",t,h),Se(n.rscratch,"labelLineHeight",t,c)},Ga.getLabelText=function(e,t){var n=e._private,r=t?t+"-":"",i=e.pstyle(r+"label").strValue,o=e.pstyle("text-transform").value,a=function(e,r){return r?(Se(n.rscratch,e,t,r),r):Pe(n.rscratch,e,t)};if(!i)return"";"none"==o||("uppercase"==o?i=i.toUpperCase():"lowercase"==o&&(i=i.toLowerCase()));var s=e.pstyle("text-wrap").value;if("wrap"===s){var u=a("labelKey");if(null!=u&&a("labelWrapKey")===u)return a("labelWrapCachedText");for(var l=i.split("\n"),c=e.pstyle("text-max-width").pfValue,d="anywhere"===e.pstyle("text-overflow-wrap").value,h=[],p=/[\s\u200b]+/,f=d?"":" ",v=0;v<l.length;v++){var g=l[v],y=this.calculateLabelDimensions(e,g).width;if(d){var m=g.split("").join("\u200b");g=m}if(y>c){for(var b=g.split(p),x="",w=0;w<b.length;w++){var E=b[w],k=0===x.length?E:x+f+E;this.calculateLabelDimensions(e,k).width<=c?x+=E+f:(x&&h.push(x),x=E+f)}x.match(/^[\s\u200b]+$/)||h.push(x)}else h.push(g)}a("labelWrapCachedLines",h),i=a("labelWrapCachedText",h.join("\n")),a("labelWrapKey",u)}else if("ellipsis"===s){var P=e.pstyle("text-max-width").pfValue,S="",C=!1;if(this.calculateLabelDimensions(e,i).width<P)return i;for(var _=0;_<i.length;_++){if(this.calculateLabelDimensions(e,S+i[_]+"\u2026").width>P)break;S+=i[_],_===i.length-1&&(C=!0)}return C||(S+="\u2026"),S}return i},Ga.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,n=e.pstyle("text-halign").strValue;if("auto"!==t)return t;if(!e.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},Ga.calculateLabelDimensions=function(e,t){var n=re(t,e._private.labelDimsKey),r=this.labelDimCache||(this.labelDimCache=[]),i=r[n];if(null!=i)return i;var o=e.pstyle("font-style").strValue,a=e.pstyle("font-size").pfValue,s=e.pstyle("font-family").strValue,u=e.pstyle("font-weight").strValue,l=this.labelCalcCanvas,c=this.labelCalcCanvasContext;if(!l){l=this.labelCalcCanvas=document.createElement("canvas"),c=this.labelCalcCanvasContext=l.getContext("2d");var d=l.style;d.position="absolute",d.left="-9999px",d.top="-9999px",d.zIndex="-1",d.visibility="hidden",d.pointerEvents="none"}c.font="".concat(o," ").concat(u," ").concat(a,"px ").concat(s);for(var h=0,p=0,f=t.split("\n"),v=0;v<f.length;v++){var g=f[v],y=c.measureText(g),m=Math.ceil(y.width),b=a;h=Math.max(m,h),p+=b}return h+=0,p+=0,r[n]={width:h,height:p}},Ga.calculateLabelAngle=function(e,t){var n=e._private.rscratch,r=e.isEdge(),i=t?t+"-":"",o=e.pstyle(i+"text-rotation"),a=o.strValue;return"none"===a?0:r&&"autorotate"===a?n.labelAutoAngle:"autorotate"===a?0:o.pfValue},Ga.calculateLabelAngles=function(e){var t=this,n=e.isEdge(),r=e._private.rscratch;r.labelAngle=t.calculateLabelAngle(e),n&&(r.sourceLabelAngle=t.calculateLabelAngle(e,"source"),r.targetLabelAngle=t.calculateLabelAngle(e,"target"))};var Za={},Qa=!1;Za.getNodeShape=function(e){var t=e.pstyle("shape").value;if("cutrectangle"===t&&(e.width()<28||e.height()<28))return Qa||(ge("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),Qa=!0),"rectangle";if(e.isParent())return"rectangle"===t||"roundrectangle"===t||"round-rectangle"===t||"cutrectangle"===t||"cut-rectangle"===t||"barrel"===t?t:"rectangle";if("polygon"===t){var n=e.pstyle("shape-polygon-points").value;return this.nodeShapes.makePolygon(n).name}return t};var $a={registerCalculationListeners:function(){var e=this.cy,t=e.collection(),n=this,r=function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(t.merge(e),n)for(var r=0;r<e.length;r++){var i=e[r],o=i._private,a=o.rstyle;a.clean=!1,a.cleanConnected=!1}};n.binder(e).on("bounds.* dirty.*",(function(e){var t=e.target;r(t)})).on("style.* background.*",(function(e){var t=e.target;r(t,!1)}));var i=function(i){if(i){var o=n.onUpdateEleCalcsFns;t.cleanStyle();for(var a=0;a<t.length;a++){var s=t[a],u=s._private.rstyle;s.isNode()&&!u.cleanConnected&&(r(s.connectedEdges()),u.cleanConnected=!0)}if(o)for(var l=0;l<o.length;l++){(0,o[l])(i,t)}n.recalculateRenderedStyle(t),t=e.collection()}};n.flushRenderedStyleQueue=function(){i(!0)},n.beforeRender(i,n.beforeRenderPriorities.eleCalcs)},onUpdateEleCalcs:function(e){(this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[]).push(e)},recalculateRenderedStyle:function(e,t){var n=function(e){return e._private.rstyle.cleanConnected},r=[],i=[];if(!this.destroyed){void 0===t&&(t=!0);for(var o=0;o<e.length;o++){var a=e[o],s=a._private,u=s.rstyle;!a.isEdge()||n(a.source())&&n(a.target())||(u.clean=!1),t&&u.clean||a.removed()||"none"!==a.pstyle("display").value&&("nodes"===s.group?i.push(a):r.push(a),u.clean=!0)}for(var l=0;l<i.length;l++){var c=i[l],d=c._private.rstyle,h=c.position();this.recalculateNodeLabelProjection(c),d.nodeX=h.x,d.nodeY=h.y,d.nodeW=c.pstyle("width").pfValue,d.nodeH=c.pstyle("height").pfValue}this.recalculateEdgeProjections(r);for(var p=0;p<r.length;p++){var f=r[p]._private,v=f.rstyle,g=f.rscratch;v.srcX=g.arrowStartX,v.srcY=g.arrowStartY,v.tgtX=g.arrowEndX,v.tgtY=g.arrowEndY,v.midX=g.midX,v.midY=g.midY,v.labelAngle=g.labelAngle,v.sourceLabelAngle=g.sourceLabelAngle,v.targetLabelAngle=g.targetLabelAngle}}}},Ja={updateCachedGrabbedEles:function(){var e=this.cachedZSortedEles;if(e){e.drag=[],e.nondrag=[];for(var t=[],n=0;n<e.length;n++){var r=(i=e[n])._private.rscratch;i.grabbed()&&!i.isParent()?t.push(i):r.inDragLayer?e.drag.push(i):e.nondrag.push(i)}for(n=0;n<t.length;n++){var i=t[n];e.drag.push(i)}}},invalidateCachedZSortedEles:function(){this.cachedZSortedEles=null},getCachedZSortedEles:function(e){if(e||!this.cachedZSortedEles){var t=this.cy.mutableElements().toArray();t.sort(Ri),t.interactive=t.filter((function(e){return e.interactive()})),this.cachedZSortedEles=t,this.updateCachedGrabbedEles()}else t=this.cachedZSortedEles;return t}},es={};[Fa,Va,qa,Xa,Ha,Ga,Za,$a,Ja].forEach((function(e){R(es,e)}));var ts={getCachedImage:function(e,t,n){var r=this.imageCache=this.imageCache||{},i=r[e];if(i)return i.image.complete||i.image.addEventListener("load",n),i.image;var o=(i=r[e]=r[e]||{}).image=new Image;o.addEventListener("load",n),o.addEventListener("error",(function(){o.error=!0}));var a="data:";return e.substring(0,a.length).toLowerCase()===a||(o.crossOrigin=t),o.src=e,o}},ns={registerBinding:function(e,t,n,r){var i=Array.prototype.slice.apply(arguments,[1]),o=this.binder(e);return o.on.apply(o,i)}};ns.binder=function(e){var t,n=this,r=e===window||e===document||e===document.body||(t=e,"undefined"!=typeof HTMLElement&&t instanceof HTMLElement);if(null==n.supportsPassiveEvents){var i=!1;try{var o=Object.defineProperty({},"passive",{get:function(){return i=!0,!0}});window.addEventListener("test",null,o)}catch(s){}n.supportsPassiveEvents=i}var a=function(t,i,o){var a=Array.prototype.slice.call(arguments);return r&&n.supportsPassiveEvents&&(a[2]={capture:null!=o&&o,passive:!1,once:!1}),n.bindings.push({target:e,args:a}),(e.addEventListener||e.on).apply(e,a),this};return{on:a,addEventListener:a,addListener:a,bind:a}},ns.nodeIsDraggable=function(e){return e&&e.isNode()&&!e.locked()&&e.grabbable()},ns.nodeIsGrabbable=function(e){return this.nodeIsDraggable(e)&&e.interactive()},ns.load=function(){var e=this,t=function(e){return e.selected()},n=function(t,n,r,i){null==t&&(t=e.cy);for(var o=0;o<n.length;o++){var a=n[o];t.emit({originalEvent:r,type:a,position:i})}},r=function(e){return e.shiftKey||e.metaKey||e.ctrlKey},o=function(t,n){var r=!0;if(e.cy.hasCompoundNodes()&&t&&t.pannable())for(var i=0;n&&i<n.length;i++){if((t=n[i]).isNode()&&t.isParent()&&!t.pannable()){r=!1;break}}else r=!0;return r},a=function(e){e[0]._private.rscratch.inDragLayer=!0},s=function(e){e[0]._private.rscratch.isGrabTarget=!0},u=function(e,t){var n=t.addToList;n.has(e)||(n.merge(e),function(e){e[0]._private.grabbed=!0}(e))},l=function(t,n){n=n||{};var r=t.cy().hasCompoundNodes();n.inDragLayer&&(t.forEach(a),t.neighborhood().stdFilter((function(e){return!r||e.isEdge()})).forEach(a)),n.addToList&&t.forEach((function(e){u(e,n)})),function(e,t){if(e.cy().hasCompoundNodes()&&(null!=t.inDragLayer||null!=t.addToList)){var n=e.descendants();t.inDragLayer&&(n.forEach(a),n.connectedEdges().forEach(a)),t.addToList&&t.addToList.unmerge(n)}}(t,n),h(t,{inDragLayer:n.inDragLayer}),e.updateCachedGrabbedEles()},c=l,d=function(t){t&&(e.getCachedZSortedEles().forEach((function(e){!function(e){e[0]._private.grabbed=!1}(e),function(e){e[0]._private.rscratch.inDragLayer=!1}(e),function(e){e[0]._private.rscratch.isGrabTarget=!1}(e)})),e.updateCachedGrabbedEles())},h=function(e,t){if((null!=t.inDragLayer||null!=t.addToList)&&e.cy().hasCompoundNodes()){var n=e.ancestors().orphans();if(!n.same(e)){var r=n.descendants().spawnSelf().merge(n).unmerge(e).unmerge(e.descendants()),i=r.connectedEdges();t.inDragLayer&&(i.forEach(a),r.forEach(a)),t.addToList&&r.forEach((function(e){u(e,t)}))}}},p=function(){null!=document.activeElement&&null!=document.activeElement.blur&&document.activeElement.blur()},f="undefined"!=typeof MutationObserver,v="undefined"!=typeof ResizeObserver;f?(e.removeObserver=new MutationObserver((function(t){for(var n=0;n<t.length;n++){var r=t[n].removedNodes;if(r)for(var i=0;i<r.length;i++){if(r[i]===e.container){e.destroy();break}}}})),e.container.parentNode&&e.removeObserver.observe(e.container.parentNode,{childList:!0})):e.registerBinding(e.container,"DOMNodeRemoved",(function(t){e.destroy()}));var g=i((function(){e.cy.resize()}),100);f&&(e.styleObserver=new MutationObserver(g),e.styleObserver.observe(e.container,{attributes:!0})),e.registerBinding(window,"resize",g),v&&(e.resizeObserver=new ResizeObserver(g),e.resizeObserver.observe(e.container));var y=function(){e.invalidateContainerClientCoordsCache()};!function(e,t){for(;null!=e;)t(e),e=e.parentNode}(e.container,(function(t){e.registerBinding(t,"transitionend",y),e.registerBinding(t,"animationend",y),e.registerBinding(t,"scroll",y)})),e.registerBinding(e.container,"contextmenu",(function(e){e.preventDefault()}));var m,b,x,w=function(t){for(var n=e.findContainerClientCoords(),r=n[0],i=n[1],o=n[2],a=n[3],s=t.touches?t.touches:[t],u=!1,l=0;l<s.length;l++){var c=s[l];if(r<=c.clientX&&c.clientX<=r+o&&i<=c.clientY&&c.clientY<=i+a){u=!0;break}}if(!u)return!1;for(var d=e.container,h=t.target.parentNode,p=!1;h;){if(h===d){p=!0;break}h=h.parentNode}return!!p};e.registerBinding(e.container,"mousedown",(function(t){if(w(t)){t.preventDefault(),p(),e.hoverData.capture=!0,e.hoverData.which=t.which;var r=e.cy,i=[t.clientX,t.clientY],o=e.projectIntoViewport(i[0],i[1]),a=e.selection,u=e.findNearestElements(o[0],o[1],!0,!1),d=u[0],h=e.dragData.possibleDragElements;e.hoverData.mdownPos=o,e.hoverData.mdownGPos=i;if(3==t.which){e.hoverData.cxtStarted=!0;var f={originalEvent:t,type:"cxttapstart",position:{x:o[0],y:o[1]}};d?(d.activate(),d.emit(f),e.hoverData.down=d):r.emit(f),e.hoverData.downTime=(new Date).getTime(),e.hoverData.cxtDragged=!1}else if(1==t.which){if(d&&d.activate(),null!=d&&e.nodeIsGrabbable(d)){var v=function(e){return{originalEvent:t,type:e,position:{x:o[0],y:o[1]}}};if(s(d),d.selected()){h=e.dragData.possibleDragElements=r.collection();var g=r.$((function(t){return t.isNode()&&t.selected()&&e.nodeIsGrabbable(t)}));l(g,{addToList:h}),d.emit(v("grabon")),g.forEach((function(e){e.emit(v("grab"))}))}else h=e.dragData.possibleDragElements=r.collection(),c(d,{addToList:h}),d.emit(v("grabon")).emit(v("grab"));e.redrawHint("eles",!0),e.redrawHint("drag",!0)}e.hoverData.down=d,e.hoverData.downs=u,e.hoverData.downTime=(new Date).getTime(),n(d,["mousedown","tapstart","vmousedown"],t,{x:o[0],y:o[1]}),null==d?(a[4]=1,e.data.bgActivePosistion={x:o[0],y:o[1]},e.redrawHint("select",!0),e.redraw()):d.pannable()&&(a[4]=1),e.hoverData.tapholdCancelled=!1,clearTimeout(e.hoverData.tapholdTimeout),e.hoverData.tapholdTimeout=setTimeout((function(){if(!e.hoverData.tapholdCancelled){var n=e.hoverData.down;n?n.emit({originalEvent:t,type:"taphold",position:{x:o[0],y:o[1]}}):r.emit({originalEvent:t,type:"taphold",position:{x:o[0],y:o[1]}})}}),e.tapholdDuration)}a[0]=a[2]=o[0],a[1]=a[3]=o[1]}}),!1),e.registerBinding(window,"mousemove",(function(t){if(e.hoverData.capture||w(t)){var i=!1,a=e.cy,s=a.zoom(),u=[t.clientX,t.clientY],c=e.projectIntoViewport(u[0],u[1]),h=e.hoverData.mdownPos,p=e.hoverData.mdownGPos,f=e.selection,v=null;e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.selecting||(v=e.findNearestElement(c[0],c[1],!0,!1));var g,y=e.hoverData.last,m=e.hoverData.down,b=[c[0]-f[2],c[1]-f[3]],x=e.dragData.possibleDragElements;if(p){var E=u[0]-p[0],P=E*E,S=u[1]-p[1],C=P+S*S;e.hoverData.isOverThresholdDrag=g=C>=e.desktopTapThreshold2}var _=r(t);g&&(e.hoverData.tapholdCancelled=!0);i=!0,n(v,["mousemove","vmousemove","tapdrag"],t,{x:c[0],y:c[1]});var j=function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||a.emit({originalEvent:t,type:"boxstart",position:{x:c[0],y:c[1]}}),f[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()};if(3===e.hoverData.which){if(g){var D={originalEvent:t,type:"cxtdrag",position:{x:c[0],y:c[1]}};m?m.emit(D):a.emit(D),e.hoverData.cxtDragged=!0,e.hoverData.cxtOver&&v===e.hoverData.cxtOver||(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:c[0],y:c[1]}}),e.hoverData.cxtOver=v,v&&v.emit({originalEvent:t,type:"cxtdragover",position:{x:c[0],y:c[1]}}))}}else if(e.hoverData.dragging){if(i=!0,a.panningEnabled()&&a.userPanningEnabled()){var T;if(e.hoverData.justStartedPan){var B=e.hoverData.mdownPos;T={x:(c[0]-B[0])*s,y:(c[1]-B[1])*s},e.hoverData.justStartedPan=!1}else T={x:b[0]*s,y:b[1]*s};a.panBy(T),a.emit("dragpan"),e.hoverData.dragged=!0}c=e.projectIntoViewport(t.clientX,t.clientY)}else if(1!=f[4]||null!=m&&!m.pannable()){if(m&&m.pannable()&&m.active()&&m.unactivate(),m&&m.grabbed()||v==y||(y&&n(y,["mouseout","tapdragout"],t,{x:c[0],y:c[1]}),v&&n(v,["mouseover","tapdragover"],t,{x:c[0],y:c[1]}),e.hoverData.last=v),m)if(g){if(a.boxSelectionEnabled()&&_)m&&m.grabbed()&&(d(x),m.emit("freeon"),x.emit("free"),e.dragData.didDrag&&(m.emit("dragfreeon"),x.emit("dragfree"))),j();else if(m&&m.grabbed()&&e.nodeIsDraggable(m)){var O=!e.dragData.didDrag;O&&e.redrawHint("eles",!0),e.dragData.didDrag=!0;var M=a.collection();e.hoverData.draggingEles||l(x,{inDragLayer:!0});var N={x:0,y:0};if(k(b[0])&&k(b[1])&&(N.x+=b[0],N.y+=b[1],O)){var I=e.hoverData.dragDelta;I&&k(I[0])&&k(I[1])&&(N.x+=I[0],N.y+=I[1])}for(var L=0;L<x.length;L++){var A=x[L];e.nodeIsDraggable(A)&&A.grabbed()&&M.push(A)}e.hoverData.draggingEles=!0,M.silentShift(N).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else!function(){var t=e.hoverData.dragDelta=e.hoverData.dragDelta||[];0===t.length?(t.push(b[0]),t.push(b[1])):(t[0]+=b[0],t[1]+=b[1])}();i=!0}else if(g){if(e.hoverData.dragging||!a.boxSelectionEnabled()||!_&&a.panningEnabled()&&a.userPanningEnabled()){if(!e.hoverData.selecting&&a.panningEnabled()&&a.userPanningEnabled()){o(m,e.hoverData.downs)&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,f[4]=0,e.data.bgActivePosistion=Ge(h),e.redrawHint("select",!0),e.redraw())}}else j();m&&m.pannable()&&m.active()&&m.unactivate()}return f[2]=c[0],f[3]=c[1],i?(t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),!1):void 0}}),!1),e.registerBinding(window,"mouseup",(function(i){if(e.hoverData.capture){e.hoverData.capture=!1;var o=e.cy,a=e.projectIntoViewport(i.clientX,i.clientY),s=e.selection,u=e.findNearestElement(a[0],a[1],!0,!1),l=e.dragData.possibleDragElements,c=e.hoverData.down,h=r(i);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,c&&c.unactivate(),3===e.hoverData.which){var p={originalEvent:i,type:"cxttapend",position:{x:a[0],y:a[1]}};if(c?c.emit(p):o.emit(p),!e.hoverData.cxtDragged){var f={originalEvent:i,type:"cxttap",position:{x:a[0],y:a[1]}};c?c.emit(f):o.emit(f)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(1===e.hoverData.which){if(n(u,["mouseup","tapend","vmouseup"],i,{x:a[0],y:a[1]}),e.dragData.didDrag||e.hoverData.dragged||e.hoverData.selecting||e.hoverData.isOverThresholdDrag||(n(c,["click","tap","vclick"],i,{x:a[0],y:a[1]}),b=!1,i.timeStamp-x<=o.multiClickDebounceTime()?(m&&clearTimeout(m),b=!0,x=null,n(c,["dblclick","dbltap","vdblclick"],i,{x:a[0],y:a[1]})):(m=setTimeout((function(){b||n(c,["oneclick","onetap","voneclick"],i,{x:a[0],y:a[1]})}),o.multiClickDebounceTime()),x=i.timeStamp)),null!=c||e.dragData.didDrag||e.hoverData.selecting||e.hoverData.dragged||r(i)||(o.$(t).unselect(["tapunselect"]),l.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=l=o.collection()),u!=c||e.dragData.didDrag||e.hoverData.selecting||null!=u&&u._private.selectable&&(e.hoverData.dragging||("additive"===o.selectionType()||h?u.selected()?u.unselect(["tapunselect"]):u.select(["tapselect"]):h||(o.$(t).unmerge(u).unselect(["tapunselect"]),u.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var v=o.collection(e.getAllInBox(s[0],s[1],s[2],s[3]));e.redrawHint("select",!0),v.length>0&&e.redrawHint("eles",!0),o.emit({type:"boxend",originalEvent:i,position:{x:a[0],y:a[1]}});var g=function(e){return e.selectable()&&!e.selected()};"additive"===o.selectionType()||h||o.$(t).unmerge(v).unselect(),v.emit("box").stdFilter(g).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!s[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var y=c&&c.grabbed();d(l),y&&(c.emit("freeon"),l.emit("free"),e.dragData.didDrag&&(c.emit("dragfreeon"),l.emit("dragfree")))}}s[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null}}),!1);var E,P,S,C,_,j,D,T,B,O,M,N,I,L=function(t){if(!e.scrollingPage){var n=e.cy,r=n.zoom(),i=n.pan(),o=e.projectIntoViewport(t.clientX,t.clientY),a=[o[0]*r+i.x,o[1]*r+i.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||0!==e.selection[4])t.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;t.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout((function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()}),150),s=null!=t.deltaY?t.deltaY/-250:null!=t.wheelDeltaY?t.wheelDeltaY/1e3:t.wheelDelta/1e3,s*=e.wheelSensitivity,1===t.deltaMode&&(s*=33);var u=n.zoom()*Math.pow(10,s);"gesturechange"===t.type&&(u=e.gestureStartZoom*t.scale),n.zoom({level:u,renderedPosition:{x:a[0],y:a[1]}}),n.emit("gesturechange"===t.type?"pinchzoom":"scrollzoom")}}};e.registerBinding(e.container,"wheel",L,!0),e.registerBinding(window,"scroll",(function(t){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout((function(){e.scrollingPage=!1}),250)}),!0),e.registerBinding(e.container,"gesturestart",(function(t){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||t.preventDefault()}),!0),e.registerBinding(e.container,"gesturechange",(function(t){e.hasTouchStarted||L(t)}),!0),e.registerBinding(e.container,"mouseout",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),e.registerBinding(e.container,"mouseover",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var A,z,R,F,V,q,Y,X=function(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))},H=function(e,t,n,r){return(n-e)*(n-e)+(r-t)*(r-t)};if(e.registerBinding(e.container,"touchstart",A=function(t){if(e.hasTouchStarted=!0,w(t)){p(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var r=e.cy,i=e.touchData.now,o=e.touchData.earlier;if(t.touches[0]){var a=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);i[0]=a[0],i[1]=a[1]}if(t.touches[1]){a=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);i[2]=a[0],i[3]=a[1]}if(t.touches[2]){a=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);i[4]=a[0],i[5]=a[1]}if(t.touches[1]){e.touchData.singleTouchMoved=!0,d(e.dragData.touchDragEles);var u=e.findContainerClientCoords();B=u[0],O=u[1],M=u[2],N=u[3],E=t.touches[0].clientX-B,P=t.touches[0].clientY-O,S=t.touches[1].clientX-B,C=t.touches[1].clientY-O,I=0<=E&&E<=M&&0<=S&&S<=M&&0<=P&&P<=N&&0<=C&&C<=N;var h=r.pan(),f=r.zoom();_=X(E,P,S,C),j=H(E,P,S,C),T=[((D=[(E+S)/2,(P+C)/2])[0]-h.x)/f,(D[1]-h.y)/f];if(j<4e4&&!t.touches[2]){var v=e.findNearestElement(i[0],i[1],!0,!0),g=e.findNearestElement(i[2],i[3],!0,!0);return v&&v.isNode()?(v.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=v):g&&g.isNode()?(g.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=g):r.emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!0,e.touchData.cxtDragged=!1,e.data.bgActivePosistion=void 0,void e.redraw()}}if(t.touches[2])r.boxSelectionEnabled()&&t.preventDefault();else if(t.touches[1]);else if(t.touches[0]){var y=e.findNearestElements(i[0],i[1],!0,!0),m=y[0];if(null!=m&&(m.activate(),e.touchData.start=m,e.touchData.starts=y,e.nodeIsGrabbable(m))){var b=e.dragData.touchDragEles=r.collection(),x=null;e.redrawHint("eles",!0),e.redrawHint("drag",!0),m.selected()?(x=r.$((function(t){return t.selected()&&e.nodeIsGrabbable(t)})),l(x,{addToList:b})):c(m,{addToList:b}),s(m);var k=function(e){return{originalEvent:t,type:e,position:{x:i[0],y:i[1]}}};m.emit(k("grabon")),x?x.forEach((function(e){e.emit(k("grab"))})):m.emit(k("grab"))}n(m,["touchstart","tapstart","vmousedown"],t,{x:i[0],y:i[1]}),null==m&&(e.data.bgActivePosistion={x:a[0],y:a[1]},e.redrawHint("select",!0),e.redraw()),e.touchData.singleTouchMoved=!1,e.touchData.singleTouchStartTime=+new Date,clearTimeout(e.touchData.tapholdTimeout),e.touchData.tapholdTimeout=setTimeout((function(){!1!==e.touchData.singleTouchMoved||e.pinching||e.touchData.selecting||n(e.touchData.start,["taphold"],t,{x:i[0],y:i[1]})}),e.tapholdDuration)}if(t.touches.length>=1){for(var L=e.touchData.startPosition=[],A=0;A<i.length;A++)L[A]=o[A]=i[A];var z=t.touches[0];e.touchData.startGPosition=[z.clientX,z.clientY]}}},!1),e.registerBinding(window,"touchmove",z=function(t){var r=e.touchData.capture;if(r||w(t)){var i=e.selection,a=e.cy,s=e.touchData.now,u=e.touchData.earlier,c=a.zoom();if(t.touches[0]){var h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}if(t.touches[1]){h=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);s[2]=h[0],s[3]=h[1]}if(t.touches[2]){h=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);s[4]=h[0],s[5]=h[1]}var p,f=e.touchData.startGPosition;if(r&&t.touches[0]&&f){for(var v=[],g=0;g<s.length;g++)v[g]=s[g]-u[g];var y=t.touches[0].clientX-f[0],m=y*y,b=t.touches[0].clientY-f[1];p=m+b*b>=e.touchTapThreshold2}if(r&&e.touchData.cxt){t.preventDefault();var x=t.touches[0].clientX-B,D=t.touches[0].clientY-O,M=t.touches[1].clientX-B,N=t.touches[1].clientY-O,L=H(x,D,M,N);if(L/j>=2.25||L>=22500){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var A={originalEvent:t,type:"cxttapend",position:{x:s[0],y:s[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(A),e.touchData.start=null):a.emit(A)}}if(r&&e.touchData.cxt){A={originalEvent:t,type:"cxtdrag",position:{x:s[0],y:s[1]}};e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(A):a.emit(A),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var z=e.findNearestElement(s[0],s[1],!0,!0);e.touchData.cxtOver&&z===e.touchData.cxtOver||(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:s[0],y:s[1]}}),e.touchData.cxtOver=z,z&&z.emit({originalEvent:t,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(r&&t.touches[2]&&a.boxSelectionEnabled())t.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||a.emit({originalEvent:t,type:"boxstart",position:{x:s[0],y:s[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,i[4]=1,i&&0!==i.length&&void 0!==i[0]?(i[2]=(s[0]+s[2]+s[4])/3,i[3]=(s[1]+s[3]+s[5])/3):(i[0]=(s[0]+s[2]+s[4])/3,i[1]=(s[1]+s[3]+s[5])/3,i[2]=(s[0]+s[2]+s[4])/3+1,i[3]=(s[1]+s[3]+s[5])/3+1),e.redrawHint("select",!0),e.redraw();else if(r&&t.touches[1]&&!e.touchData.didSelect&&a.zoomingEnabled()&&a.panningEnabled()&&a.userZoomingEnabled()&&a.userPanningEnabled()){if(t.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),ee=e.dragData.touchDragEles){e.redrawHint("drag",!0);for(var R=0;R<ee.length;R++){var F=ee[R]._private;F.grabbed=!1,F.rscratch.inDragLayer=!1}}var V=e.touchData.start,q=(x=t.touches[0].clientX-B,D=t.touches[0].clientY-O,M=t.touches[1].clientX-B,N=t.touches[1].clientY-O,X(x,D,M,N)),Y=q/_;if(I){var W=(x-E+(M-S))/2,G=(D-P+(N-C))/2,U=a.zoom(),K=U*Y,Z=a.pan(),Q=T[0]*U+Z.x,$=T[1]*U+Z.y,J={x:-K/U*(Q-Z.x-W)+Q,y:-K/U*($-Z.y-G)+$};if(V&&V.active()){var ee=e.dragData.touchDragEles;d(ee),e.redrawHint("drag",!0),e.redrawHint("eles",!0),V.unactivate().emit("freeon"),ee.emit("free"),e.dragData.didDrag&&(V.emit("dragfreeon"),ee.emit("dragfree"))}a.viewport({zoom:K,pan:J,cancelOnFailedZoom:!0}),a.emit("pinchzoom"),_=q,E=x,P=D,S=M,C=N,e.pinching=!0}if(t.touches[0]){h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}if(t.touches[1]){h=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);s[2]=h[0],s[3]=h[1]}if(t.touches[2]){h=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);s[4]=h[0],s[5]=h[1]}}else if(t.touches[0]&&!e.touchData.didSelect){var te=e.touchData.start,ne=e.touchData.last;if(e.hoverData.draggingEles||e.swipePanning||(z=e.findNearestElement(s[0],s[1],!0,!0)),r&&null!=te&&t.preventDefault(),r&&null!=te&&e.nodeIsDraggable(te))if(p){ee=e.dragData.touchDragEles;var re=!e.dragData.didDrag;re&&l(ee,{inDragLayer:!0}),e.dragData.didDrag=!0;var ie={x:0,y:0};if(k(v[0])&&k(v[1]))if(ie.x+=v[0],ie.y+=v[1],re)e.redrawHint("eles",!0),(oe=e.touchData.dragDelta)&&k(oe[0])&&k(oe[1])&&(ie.x+=oe[0],ie.y+=oe[1]);e.hoverData.draggingEles=!0,ee.silentShift(ie).emit("position drag"),e.redrawHint("drag",!0),e.touchData.startPosition[0]==u[0]&&e.touchData.startPosition[1]==u[1]&&e.redrawHint("eles",!0),e.redraw()}else{var oe;0===(oe=e.touchData.dragDelta=e.touchData.dragDelta||[]).length?(oe.push(v[0]),oe.push(v[1])):(oe[0]+=v[0],oe[1]+=v[1])}if(n(te||z,["touchmove","tapdrag","vmousemove"],t,{x:s[0],y:s[1]}),te&&te.grabbed()||z==ne||(ne&&ne.emit({originalEvent:t,type:"tapdragout",position:{x:s[0],y:s[1]}}),z&&z.emit({originalEvent:t,type:"tapdragover",position:{x:s[0],y:s[1]}})),e.touchData.last=z,r)for(R=0;R<s.length;R++)s[R]&&e.touchData.startPosition[R]&&p&&(e.touchData.singleTouchMoved=!0);if(r&&(null==te||te.pannable())&&a.panningEnabled()&&a.userPanningEnabled()){o(te,e.touchData.starts)&&(t.preventDefault(),e.data.bgActivePosistion||(e.data.bgActivePosistion=Ge(e.touchData.startPosition)),e.swipePanning?(a.panBy({x:v[0]*c,y:v[1]*c}),a.emit("dragpan")):p&&(e.swipePanning=!0,a.panBy({x:y*c,y:b*c}),a.emit("dragpan"),te&&(te.unactivate(),e.redrawHint("select",!0),e.touchData.start=null)));h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);s[0]=h[0],s[1]=h[1]}}for(g=0;g<s.length;g++)u[g]=s[g];r&&t.touches.length>0&&!e.hoverData.draggingEles&&!e.swipePanning&&null!=e.data.bgActivePosistion&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},!1),e.registerBinding(window,"touchcancel",R=function(t){var n=e.touchData.start;e.touchData.capture=!1,n&&n.unactivate()}),e.registerBinding(window,"touchend",F=function(r){var i=e.touchData.start;if(e.touchData.capture){0===r.touches.length&&(e.touchData.capture=!1),r.preventDefault();var o=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var a,s=e.cy,u=s.zoom(),l=e.touchData.now,c=e.touchData.earlier;if(r.touches[0]){var h=e.projectIntoViewport(r.touches[0].clientX,r.touches[0].clientY);l[0]=h[0],l[1]=h[1]}if(r.touches[1]){h=e.projectIntoViewport(r.touches[1].clientX,r.touches[1].clientY);l[2]=h[0],l[3]=h[1]}if(r.touches[2]){h=e.projectIntoViewport(r.touches[2].clientX,r.touches[2].clientY);l[4]=h[0],l[5]=h[1]}if(i&&i.unactivate(),e.touchData.cxt){if(a={originalEvent:r,type:"cxttapend",position:{x:l[0],y:l[1]}},i?i.emit(a):s.emit(a),!e.touchData.cxtDragged){var p={originalEvent:r,type:"cxttap",position:{x:l[0],y:l[1]}};i?i.emit(p):s.emit(p)}return e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,void e.redraw()}if(!r.touches[2]&&s.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var f=s.collection(e.getAllInBox(o[0],o[1],o[2],o[3]));o[0]=void 0,o[1]=void 0,o[2]=void 0,o[3]=void 0,o[4]=0,e.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:r,position:{x:l[0],y:l[1]}});f.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),f.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(null!=i&&i.unactivate(),r.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(r.touches[1]);else if(r.touches[0]);else if(!r.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var v=e.dragData.touchDragEles;if(null!=i){var g=i._private.grabbed;d(v),e.redrawHint("drag",!0),e.redrawHint("eles",!0),g&&(i.emit("freeon"),v.emit("free"),e.dragData.didDrag&&(i.emit("dragfreeon"),v.emit("dragfree"))),n(i,["touchend","tapend","vmouseup","tapdragout"],r,{x:l[0],y:l[1]}),i.unactivate(),e.touchData.start=null}else{var y=e.findNearestElement(l[0],l[1],!0,!0);n(y,["touchend","tapend","vmouseup","tapdragout"],r,{x:l[0],y:l[1]})}var m=e.touchData.startPosition[0]-l[0],b=m*m,x=e.touchData.startPosition[1]-l[1],w=(b+x*x)*u*u;e.touchData.singleTouchMoved||(i||s.$(":selected").unselect(["tapunselect"]),n(i,["tap","vclick"],r,{x:l[0],y:l[1]}),V=!1,r.timeStamp-Y<=s.multiClickDebounceTime()?(q&&clearTimeout(q),V=!0,Y=null,n(i,["dbltap","vdblclick"],r,{x:l[0],y:l[1]})):(q=setTimeout((function(){V||n(i,["onetap","voneclick"],r,{x:l[0],y:l[1]})}),s.multiClickDebounceTime()),Y=r.timeStamp)),null!=i&&!e.dragData.didDrag&&i._private.selectable&&w<e.touchTapThreshold2&&!e.pinching&&("single"===s.selectionType()?(s.$(t).unmerge(i).unselect(["tapunselect"]),i.select(["tapselect"])):i.selected()?i.unselect(["tapunselect"]):i.select(["tapselect"]),e.redrawHint("eles",!0)),e.touchData.singleTouchMoved=!0}for(var E=0;E<l.length;E++)c[E]=l[E];e.dragData.didDrag=!1,0===r.touches.length&&(e.touchData.dragDelta=[],e.touchData.startPosition=null,e.touchData.startGPosition=null,e.touchData.didSelect=!1),r.touches.length<2&&(1===r.touches.length&&(e.touchData.startGPosition=[r.touches[0].clientX,r.touches[0].clientY]),e.pinching=!1,e.redrawHint("eles",!0),e.redraw())}},!1),"undefined"==typeof TouchEvent){var W=[],G=function(e){return{clientX:e.clientX,clientY:e.clientY,force:1,identifier:e.pointerId,pageX:e.pageX,pageY:e.pageY,radiusX:e.width/2,radiusY:e.height/2,screenX:e.screenX,screenY:e.screenY,target:e.target}},U=function(e){W.push(function(e){return{event:e,touch:G(e)}}(e))},K=function(e){for(var t=0;t<W.length;t++){if(W[t].event.pointerId===e.pointerId)return void W.splice(t,1)}},Z=function(e){e.touches=W.map((function(e){return e.touch}))},Q=function(e){return"mouse"===e.pointerType||4===e.pointerType};e.registerBinding(e.container,"pointerdown",(function(e){Q(e)||(e.preventDefault(),U(e),Z(e),A(e))})),e.registerBinding(e.container,"pointerup",(function(e){Q(e)||(K(e),Z(e),F(e))})),e.registerBinding(e.container,"pointercancel",(function(e){Q(e)||(K(e),Z(e),R())})),e.registerBinding(e.container,"pointermove",(function(e){Q(e)||(e.preventDefault(),function(e){var t=W.filter((function(t){return t.event.pointerId===e.pointerId}))[0];t.event=e,t.touch=G(e)}(e),Z(e),z(e))}))}};var rs={generatePolygon:function(e,t){return this.nodeShapes[e]={renderer:this,name:e,points:t,draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl("polygon",e,t,n,r,i,this.points)},intersectLine:function(e,t,n,r,i,o,a){return Pt(i,o,this.points,e,t,n/2,r/2,a)},checkPoint:function(e,t,n,r,i,o,a){return yt(e,t,this.points,o,a,r,i,[0,-1],n)}}}};rs.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o){var a=n-e,s=r-t;a/=i,s/=o;var u=Math.sqrt(a*a+s*s),l=u-1;if(l<0)return[];var c=l/u;return[(n-e)*c+e,(r-t)*c+t]}(i,o,e,t,n/2+a,r/2+a)},checkPoint:function(e,t,n,r,i,o,a){return xt(e,t,r,i,o,a,n)}}},rs.generateRoundPolygon=function(e,t){for(var n=new Array(2*t.length),r=0;r<t.length/2;r++){var i=2*r,o=void 0;o=r<t.length/2-1?2*(r+1):0,n[4*r]=t[i],n[4*r+1]=t[i+1];var a=t[o]-t[i],s=t[o+1]-t[i+1],u=Math.sqrt(a*a+s*s);n[4*r+2]=a/u,n[4*r+3]=s/u}return this.nodeShapes[e]={renderer:this,name:e,points:n,draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl("round-polygon",e,t,n,r,i,this.points)},intersectLine:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o,a,s){for(var u,l=[],c=new Array(n.length),d=o/2,h=a/2,p=Tt(o,a),f=0;f<n.length/4;f++){var v,g=void 0;g=0===f?n.length-2:4*f-2,v=4*f+2;var y=r+d*n[4*f],m=i+h*n[4*f+1],b=-n[g]*n[v]-n[g+1]*n[v+1],x=p/Math.tan(Math.acos(b)/2),w=y-x*n[g],E=m-x*n[g+1],k=y+x*n[v],P=m+x*n[v+1];0===f?(c[n.length-2]=w,c[n.length-1]=E):(c[4*f-2]=w,c[4*f-1]=E),c[4*f]=k,c[4*f+1]=P;var S=n[g+1],C=-n[g];S*n[v]+C*n[v+1]<0&&(S*=-1,C*=-1),0!==(u=wt(e,t,r,i,w+S*p,E+C*p,p)).length&&l.push(u[0],u[1])}for(var _=0;_<c.length/4;_++)0!==(u=kt(e,t,r,i,c[4*_],c[4*_+1],c[4*_+2],c[4*_+3],!1)).length&&l.push(u[0],u[1]);if(l.length>2){for(var j=[l[0],l[1]],D=Math.pow(j[0]-e,2)+Math.pow(j[1]-t,2),T=1;T<l.length/2;T++){var B=Math.pow(l[2*T]-e,2)+Math.pow(l[2*T+1]-t,2);B<=D&&(j[0]=l[2*T],j[1]=l[2*T+1],D=B)}return j}return l}(i,o,this.points,e,t,n,r)},checkPoint:function(e,t,n,r,i,o,a){return function(e,t,n,r,i,o,a){for(var s=new Array(n.length),u=o/2,l=a/2,c=Tt(o,a),d=c*c,h=0;h<n.length/4;h++){var p,f=void 0;f=0===h?n.length-2:4*h-2,p=4*h+2;var v=r+u*n[4*h],g=i+l*n[4*h+1],y=-n[f]*n[p]-n[f+1]*n[p+1],m=c/Math.tan(Math.acos(y)/2),b=v-m*n[f],x=g-m*n[f+1],w=v+m*n[p],E=g+m*n[p+1];s[4*h]=b,s[4*h+1]=x,s[4*h+2]=w,s[4*h+3]=E;var k=n[f+1],P=-n[f];k*n[p]+P*n[p+1]<0&&(k*=-1,P*=-1);var S=b+k*c,C=x+P*c;if(Math.pow(S-e,2)+Math.pow(C-t,2)<=d)return!0}return gt(e,t,s)}(e,t,this.points,o,a,r,i)}}},rs.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){return dt(i,o,e,t,n,r,a)},checkPoint:function(e,t,n,r,i,o,a){var s=Dt(r,i),u=2*s;return!!yt(e,t,this.points,o,a,r,i-u,[0,-1],n)||(!!yt(e,t,this.points,o,a,r-u,i,[0,-1],n)||(!!xt(e,t,u,u,o-r/2+s,a-i/2+s,n)||(!!xt(e,t,u,u,o+r/2-s,a-i/2+s,n)||(!!xt(e,t,u,u,o+r/2-s,a+i/2-s,n)||!!xt(e,t,u,u,o-r/2+s,a+i/2-s,n)))))}}},rs.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:8,points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},generateCutTrianglePts:function(e,t,n,r){var i=this.cornerLength,o=t/2,a=e/2,s=n-a,u=n+a,l=r-o,c=r+o;return{topLeft:[s,l+i,s+i,l,s+i,l+i],topRight:[u-i,l,u,l+i,u-i,l+i],bottomRight:[u,c-i,u-i,c,u-i,c-i],bottomLeft:[s+i,c,s,c-i,s+i,c-i]}},intersectLine:function(e,t,n,r,i,o,a){var s=this.generateCutTrianglePts(n+2*a,r+2*a,e,t),u=[].concat.apply([],[s.topLeft.splice(0,4),s.topRight.splice(0,4),s.bottomRight.splice(0,4),s.bottomLeft.splice(0,4)]);return Pt(i,o,u,e,t)},checkPoint:function(e,t,n,r,i,o,a){if(yt(e,t,this.points,o,a,r,i-2*this.cornerLength,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-2*this.cornerLength,i,[0,-1],n))return!0;var s=this.generateCutTrianglePts(r,i,o,a);return gt(e,t,s.topLeft)||gt(e,t,s.topRight)||gt(e,t,s.bottomRight)||gt(e,t,s.bottomLeft)}}},rs.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){var s=this.generateBarrelBezierPts(n+2*a,r+2*a,e,t),u=function(e){var t=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.15),n=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.5),r=tt({x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},.85);return[e[0],e[1],t.x,t.y,n.x,n.y,r.x,r.y,e[4],e[5]]},l=[].concat(u(s.topLeft),u(s.topRight),u(s.bottomRight),u(s.bottomLeft));return Pt(i,o,l,e,t)},generateBarrelBezierPts:function(e,t,n,r){var i=t/2,o=e/2,a=n-o,s=n+o,u=r-i,l=r+i,c=Bt(e,t),d=c.heightOffset,h=c.widthOffset,p=c.ctrlPtOffsetPct*e,f={topLeft:[a,u+d,a+p,u,a+h,u],topRight:[s-h,u,s-p,u,s,u+d],bottomRight:[s,l-d,s-p,l,s-h,l],bottomLeft:[a+h,l,a+p,l,a,l-d]};return f.topLeft.isTop=!0,f.topRight.isTop=!0,f.bottomLeft.isBottom=!0,f.bottomRight.isBottom=!0,f},checkPoint:function(e,t,n,r,i,o,a){var s=Bt(r,i),u=s.heightOffset,l=s.widthOffset;if(yt(e,t,this.points,o,a,r,i-2*u,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-2*l,i,[0,-1],n))return!0;for(var c=this.generateBarrelBezierPts(r,i,o,a),d=function(e,t,n){var r,i,o=n[4],a=n[2],s=n[0],u=n[5],l=n[1],c=Math.min(o,s),d=Math.max(o,s),h=Math.min(u,l),p=Math.max(u,l);if(c<=e&&e<=d&&h<=t&&t<=p){var f=[(r=o)-2*(i=a)+s,2*(i-r),r],v=function(e,t,n,r){var i=t*t-4*e*(n-=r);if(i<0)return[];var o=Math.sqrt(i),a=2*e;return[(-t+o)/a,(-t-o)/a]}(f[0],f[1],f[2],e).filter((function(e){return 0<=e&&e<=1}));if(v.length>0)return v[0]}return null},h=Object.keys(c),p=0;p<h.length;p++){var f=c[h[p]],v=d(e,t,f);if(null!=v){var g=f[5],y=f[3],m=f[1],b=et(g,y,m,v);if(f.isTop&&b<=t)return!0;if(f.isBottom&&t<=b)return!0}}return!1}}},rs.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:Ct(4,0),draw:function(e,t,n,r,i){this.renderer.nodeShapeImpl(this.name,e,t,n,r,i)},intersectLine:function(e,t,n,r,i,o,a){var s=t-(r/2+a),u=kt(i,o,e,t,e-(n/2+a),s,e+(n/2+a),s,!1);return u.length>0?u:dt(i,o,e,t,n,r,a)},checkPoint:function(e,t,n,r,i,o,a){var s=Dt(r,i),u=2*s;if(yt(e,t,this.points,o,a,r,i-u,[0,-1],n))return!0;if(yt(e,t,this.points,o,a,r-u,i,[0,-1],n))return!0;var l=r/2+2*n,c=i/2+2*n;return!!gt(e,t,[o-l,a-c,o-l,a,o+l,a,o+l,a-c])||(!!xt(e,t,u,u,o+r/2-s,a+i/2-s,n)||!!xt(e,t,u,u,o-r/2+s,a+i/2-s,n))}}},rs.registerNodeShapes=function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",Ct(3,0)),this.generateRoundPolygon("round-triangle",Ct(3,0)),this.generatePolygon("rectangle",Ct(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",Ct(5,0)),this.generateRoundPolygon("round-pentagon",Ct(5,0)),this.generatePolygon("hexagon",Ct(6,0)),this.generateRoundPolygon("round-hexagon",Ct(6,0)),this.generatePolygon("heptagon",Ct(7,0)),this.generateRoundPolygon("round-heptagon",Ct(7,0)),this.generatePolygon("octagon",Ct(8,0)),this.generateRoundPolygon("round-octagon",Ct(8,0));var r=new Array(20),i=jt(5,0),o=jt(5,Math.PI/5),a=.5*(3-Math.sqrt(5));a*=1.57;for(var s=0;s<o.length/2;s++)o[2*s]*=a,o[2*s+1]*=a;for(s=0;s<5;s++)r[4*s]=i[2*s],r[4*s+1]=i[2*s+1],r[4*s+2]=o[2*s],r[4*s+3]=o[2*s+1];r=_t(r),this.generatePolygon("star",r),this.generatePolygon("vee",[-1,-1,0,-.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,.333,-1,1,1,-.333,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-.95,-.75,0,-1,.95,1,.95,.75,0,1,-.95]);var u=[-1,-1,.25,-1,1,0,.25,1,-1,1];this.generatePolygon("tag",u),this.generateRoundPolygon("round-tag",u),e.makePolygon=function(e){var n,r="polygon-"+e.join("$");return(n=this[r])?n:t.generatePolygon(r,e)}};var is={timeToRender:function(){return this.redrawTotalTime/this.redrawCount},redraw:function(e){e=e||xe();var t=this;void 0===t.averageRedrawTime&&(t.averageRedrawTime=0),void 0===t.lastRedrawTime&&(t.lastRedrawTime=0),void 0===t.lastDrawTime&&(t.lastDrawTime=0),t.requestedFrame=!0,t.renderOptions=e},beforeRender:function(e,t){if(!this.destroyed){null==t&&fe("Priority is not optional for beforeRender");var n=this.beforeRenderCallbacks;n.push({fn:e,priority:t}),n.sort((function(e,t){return t.priority-e.priority}))}}},os=function(e,t,n){for(var r=e.beforeRenderCallbacks,i=0;i<r.length;i++)r[i].fn(t,n)};is.startRenderLoop=function(){var e=this,t=e.cy;if(!e.renderLoopStarted){e.renderLoopStarted=!0;G((function n(r){if(!e.destroyed){if(t.batching());else if(e.requestedFrame&&!e.skipFrame){os(e,!0,r);var i=U();e.render(e.renderOptions);var o=e.lastDrawTime=U();void 0===e.averageRedrawTime&&(e.averageRedrawTime=o-i),void 0===e.redrawCount&&(e.redrawCount=0),e.redrawCount++,void 0===e.redrawTotalTime&&(e.redrawTotalTime=0);var a=o-i;e.redrawTotalTime+=a,e.lastRedrawTime=a,e.averageRedrawTime=e.averageRedrawTime/2+a/2,e.requestedFrame=!1}else os(e,!1,r);e.skipFrame=!1,G(n)}}))}};var as=function(e){this.init(e)},ss=as.prototype;ss.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"],ss.init=function(e){var t=this;t.options=e,t.cy=e.cy;var n=t.container=e.cy.container();if(h){var r=h.document,i=r.head,o="__________cytoscape_stylesheet",a="__________cytoscape_container",s=null!=r.getElementById(o);if(n.className.indexOf(a)<0&&(n.className=(n.className||"")+" "+a),!s){var u=r.createElement("style");u.id=o,u.innerHTML="."+a+" { position: relative; }",i.insertBefore(u,i.children[0])}"static"===h.getComputedStyle(n).getPropertyValue("position")&&ge("A Cytoscape container has style position:static and so can not use UI extensions properly")}t.selection=[void 0,void 0,void 0,void 0,0],t.bezierProjPcts=[.05,.225,.4,.5,.6,.775,.95],t.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},t.dragData={possibleDragElements:[]},t.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},t.redraws=0,t.showFps=e.showFps,t.debug=e.debug,t.hideEdgesOnViewport=e.hideEdgesOnViewport,t.textureOnViewport=e.textureOnViewport,t.wheelSensitivity=e.wheelSensitivity,t.motionBlurEnabled=e.motionBlur,t.forcedPixelRatio=k(e.pixelRatio)?e.pixelRatio:null,t.motionBlur=e.motionBlur,t.motionBlurOpacity=e.motionBlurOpacity,t.motionBlurTransparency=1-t.motionBlurOpacity,t.motionBlurPxRatio=1,t.mbPxRBlurry=1,t.minMbLowQualFrames=4,t.fullQualityMb=!1,t.clearedForMotionBlur=[],t.desktopTapThreshold=e.desktopTapThreshold,t.desktopTapThreshold2=e.desktopTapThreshold*e.desktopTapThreshold,t.touchTapThreshold=e.touchTapThreshold,t.touchTapThreshold2=e.touchTapThreshold*e.touchTapThreshold,t.tapholdDuration=500,t.bindings=[],t.beforeRenderCallbacks=[],t.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},t.registerNodeShapes(),t.registerArrowShapes(),t.registerCalculationListeners()},ss.notify=function(e,t){var n=this,r=n.cy;this.destroyed||("init"!==e?"destroy"!==e?(("add"===e||"remove"===e||"move"===e&&r.hasCompoundNodes()||"load"===e||"zorder"===e||"mount"===e)&&n.invalidateCachedZSortedEles(),"viewport"===e&&n.redrawHint("select",!0),"load"!==e&&"resize"!==e&&"mount"!==e||(n.invalidateContainerClientCoordsCache(),n.matchCanvasSize(n.container)),n.redrawHint("eles",!0),n.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()):n.destroy():n.load())},ss.destroy=function(){var e=this;e.destroyed=!0,e.cy.stopAnimationLoop();for(var t=0;t<e.bindings.length;t++){var n=e.bindings[t],r=n.target;(r.off||r.removeEventListener).apply(r,n.args)}if(e.bindings=[],e.beforeRenderCallbacks=[],e.onUpdateEleCalcsFns=[],e.removeObserver&&e.removeObserver.disconnect(),e.styleObserver&&e.styleObserver.disconnect(),e.resizeObserver&&e.resizeObserver.disconnect(),e.labelCalcDiv)try{document.body.removeChild(e.labelCalcDiv)}catch(i){}},ss.isHeadless=function(){return!1},[Ra,es,ts,ns,rs,is].forEach((function(e){R(ss,e)}));var us=1e3/60,ls=function(e){return function(){var t=this,n=this.renderer;if(!t.dequeueingSetup){t.dequeueingSetup=!0;var r=i((function(){n.redrawHint("eles",!0),n.redrawHint("drag",!0),n.redraw()}),e.deqRedrawThreshold),o=e.priority||pe;n.beforeRender((function(i,o){var a=U(),s=n.averageRedrawTime,u=n.lastRedrawTime,l=[],c=n.cy.extent(),d=n.getPixelRatio();for(i||n.flushRenderedStyleQueue();;){var h=U(),p=h-a,f=h-o;if(u<us){var v=us-(i?s:0);if(f>=e.deqFastCost*v)break}else if(i){if(p>=e.deqCost*u||p>=e.deqAvgCost*s)break}else if(f>=e.deqNoDrawCost*us)break;var g=e.deq(t,d,c);if(!(g.length>0))break;for(var y=0;y<g.length;y++)l.push(g[y])}l.length>0&&(e.onDeqd(t,l),!i&&e.shouldRedraw(t,l,d,c)&&r())}),o(t))}}},cs=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:de;s(this,e),this.idsByKey=new Ce,this.keyForId=new Ce,this.cachesByLvl=new Ce,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=n}return l(e,[{key:"getIdsFor",value:function(e){null==e&&fe("Can not get id list for null key");var t=this.idsByKey,n=this.idsByKey.get(e);return n||(n=new je,t.set(e,n)),n}},{key:"addIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).add(t)}},{key:"deleteIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).delete(t)}},{key:"getNumberOfIdsForKey",value:function(e){return null==e?0:this.getIdsFor(e).size}},{key:"updateKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t),r=this.getKey(e);this.deleteIdForKey(n,t),this.addIdForKey(r,t),this.keyForId.set(t,r)}},{key:"deleteKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteIdForKey(n,t),this.keyForId.delete(t)}},{key:"keyHasChangedFor",value:function(e){var t=e.id();return this.keyForId.get(t)!==this.getKey(e)}},{key:"isInvalid",value:function(e){return this.keyHasChangedFor(e)||this.doesEleInvalidateKey(e)}},{key:"getCachesAt",value:function(e){var t=this.cachesByLvl,n=this.lvls,r=t.get(e);return r||(r=new Ce,t.set(e,r),n.push(e)),r}},{key:"getCache",value:function(e,t){return this.getCachesAt(t).get(e)}},{key:"get",value:function(e,t){var n=this.getKey(e),r=this.getCache(n,t);return null!=r&&this.updateKeyMappingFor(e),r}},{key:"getForCachedKey",value:function(e,t){var n=this.keyForId.get(e.id());return this.getCache(n,t)}},{key:"hasCache",value:function(e,t){return this.getCachesAt(t).has(e)}},{key:"has",value:function(e,t){var n=this.getKey(e);return this.hasCache(n,t)}},{key:"setCache",value:function(e,t,n){n.key=e,this.getCachesAt(t).set(e,n)}},{key:"set",value:function(e,t,n){var r=this.getKey(e);this.setCache(r,t,n),this.updateKeyMappingFor(e)}},{key:"deleteCache",value:function(e,t){this.getCachesAt(t).delete(e)}},{key:"delete",value:function(e,t){var n=this.getKey(e);this.deleteCache(n,t)}},{key:"invalidateKey",value:function(e){var t=this;this.lvls.forEach((function(n){return t.deleteCache(e,n)}))}},{key:"invalidate",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteKeyMappingFor(e);var r=this.doesEleInvalidateKey(e);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),e}(),ds={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},hs=we({getKey:null,doesEleInvalidateKey:de,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:ce,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),ps=function(e,t){var n=this;n.renderer=e,n.onDequeues=[];var r=hs(t);R(n,r),n.lookup=new cs(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},fs=ps.prototype;fs.reasons=ds,fs.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]},fs.getRetiredTextureQueue=function(e){var t=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return t[e]=t[e]||[]},fs.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new o((function(e,t){return t.reqs-e.reqs}))},fs.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},fs.getElement=function(e,t,n,r,i){var o=this,a=this.renderer,s=a.cy.zoom(),u=this.lookup;if(!t||0===t.w||0===t.h||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed())return null;if(!o.allowEdgeTxrCaching&&e.isEdge()||!o.allowParentTxrCaching&&e.isParent())return null;if(null==r&&(r=Math.ceil(Ke(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var l=Math.pow(2,r),c=t.h*l,d=t.w*l,h=a.eleTextBiggerThanMin(e,l);if(!this.isVisible(e,h))return null;var p,f=u.get(e,r);if(f&&f.invalidated&&(f.invalidated=!1,f.texture.invalidatedWidth-=f.width),f)return f;if(p=c<=25?25:c<=50?50:50*Math.ceil(c/50),c>1024||d>1024)return null;var v=o.getTextureQueue(p),g=v[v.length-2],y=function(){return o.recycleTexture(p,d)||o.addTexture(p,d)};g||(g=v[v.length-1]),g||(g=y()),g.width-g.usedWidth<d&&(g=y());for(var m,b=function(e){return e&&e.scaledLabelShown===h},x=i&&i===ds.dequeue,w=i&&i===ds.highQuality,E=i&&i===ds.downscale,k=r+1;k<=3;k++){var P=u.get(e,k);if(P){m=P;break}}var S=m&&m.level===r+1?m:null,C=function(){g.context.drawImage(S.texture.canvas,S.x,0,S.width,S.height,g.usedWidth,0,d,c)};if(g.context.setTransform(1,0,0,1,0,0),g.context.clearRect(g.usedWidth,0,d,p),b(S))C();else if(b(m)){if(!w)return o.queueElement(e,m.level-1),m;for(var _=m.level;_>r;_--)S=o.getElement(e,t,n,_,ds.downscale);C()}else{var j;if(!x&&!w&&!E)for(var D=r-1;D>=-4;D--){var T=u.get(e,D);if(T){j=T;break}}if(b(j))return o.queueElement(e,r),j;g.context.translate(g.usedWidth,0),g.context.scale(l,l),this.drawElement(g.context,e,t,h,!1),g.context.scale(1/l,1/l),g.context.translate(-g.usedWidth,0)}return f={x:g.usedWidth,texture:g,level:r,scale:l,width:d,height:c,scaledLabelShown:h},g.usedWidth+=Math.ceil(d+8),g.eleCaches.push(f),u.set(e,r,f),o.checkTextureFullness(g),f},fs.invalidateElements=function(e){for(var t=0;t<e.length;t++)this.invalidateElement(e[t])},fs.invalidateElement=function(e){var t=this,n=t.lookup,r=[];if(n.isInvalid(e)){for(var i=-4;i<=3;i++){var o=n.getForCachedKey(e,i);o&&r.push(o)}if(n.invalidate(e))for(var a=0;a<r.length;a++){var s=r[a],u=s.texture;u.invalidatedWidth+=s.width,s.invalidated=!0,t.checkTextureUtility(u)}t.removeFromQueue(e)}},fs.checkTextureUtility=function(e){e.invalidatedWidth>=.2*e.width&&this.retireTexture(e)},fs.checkTextureFullness=function(e){var t=this.getTextureQueue(e.height);e.usedWidth/e.width>.8&&e.fullnessChecks>=10?Ee(t,e):e.fullnessChecks++},fs.retireTexture=function(e){var t=e.height,n=this.getTextureQueue(t),r=this.lookup;Ee(n,e),e.retired=!0;for(var i=e.eleCaches,o=0;o<i.length;o++){var a=i[o];r.deleteCache(a.key,a.level)}ke(i),this.getRetiredTextureQueue(t).push(e)},fs.addTexture=function(e,t){var n={};return this.getTextureQueue(e).push(n),n.eleCaches=[],n.height=e,n.width=Math.max(1024,t),n.usedWidth=0,n.invalidatedWidth=0,n.fullnessChecks=0,n.canvas=this.renderer.makeOffscreenCanvas(n.width,n.height),n.context=n.canvas.getContext("2d"),n},fs.recycleTexture=function(e,t){for(var n=this.getTextureQueue(e),r=this.getRetiredTextureQueue(e),i=0;i<r.length;i++){var o=r[i];if(o.width>=t)return o.retired=!1,o.usedWidth=0,o.invalidatedWidth=0,o.fullnessChecks=0,ke(o.eleCaches),o.context.setTransform(1,0,0,1,0,0),o.context.clearRect(0,0,o.width,o.height),Ee(r,o),n.push(o),o}},fs.queueElement=function(e,t){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),i=this.getKey(e),o=r[i];if(o)o.level=Math.max(o.level,t),o.eles.merge(e),o.reqs++,n.updateItem(o);else{var a={eles:e.spawn().merge(e),level:t,reqs:1,key:i};n.push(a),r[i]=a}},fs.dequeue=function(e){for(var t=this,n=t.getElementQueue(),r=t.getElementKeyToQueue(),i=[],o=t.lookup,a=0;a<1&&n.size()>0;a++){var s=n.pop(),u=s.key,l=s.eles[0],c=o.hasCache(l,s.level);if(r[u]=null,!c){i.push(s);var d=t.getBoundingBox(l);t.getElement(l,d,e,s.level,ds.dequeue)}}return i},fs.removeFromQueue=function(e){var t=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(e),i=n[r];null!=i&&(1===i.eles.length?(i.reqs=le,t.updateItem(i),t.pop(),n[r]=null):i.eles.unmerge(e))},fs.onDequeue=function(e){this.onDequeues.push(e)},fs.offDequeue=function(e){Ee(this.onDequeues,e)},fs.setupDequeueing=ls({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t,n){return e.dequeue(t,n)},onDeqd:function(e,t){for(var n=0;n<e.onDequeues.length;n++){(0,e.onDequeues[n])(t)}},shouldRedraw:function(e,t,n,r){for(var i=0;i<t.length;i++)for(var o=t[i].eles,a=0;a<o.length;a++){var s=o[a].boundingBox();if(ut(s,r))return!0}return!1},priority:function(e){return e.renderer.beforeRenderPriorities.eleTxrDeq}});var vs=function(e){var t=this,n=t.renderer=e,r=n.cy;t.layersByLevel={},t.firstGet=!0,t.lastInvalidationTime=U()-500,t.skipping=!1,t.eleTxrDeqs=r.collection(),t.scheduleElementRefinement=i((function(){t.refineElementTextures(t.eleTxrDeqs),t.eleTxrDeqs.unmerge(t.eleTxrDeqs)}),50),n.beforeRender((function(e,n){n-t.lastInvalidationTime<=250?t.skipping=!0:t.skipping=!1}),n.beforeRenderPriorities.lyrTxrSkip);t.layersQueue=new o((function(e,t){return t.reqs-e.reqs})),t.setupDequeueing()},gs=vs.prototype,ys=0,ms=Math.pow(2,53)-1;gs.makeLayer=function(e,t){var n=Math.pow(2,t),r=Math.ceil(e.w*n),i=Math.ceil(e.h*n),o=this.renderer.makeOffscreenCanvas(r,i),a={id:ys=++ys%ms,bb:e,level:t,width:r,height:i,canvas:o,context:o.getContext("2d"),eles:[],elesQueue:[],reqs:0},s=a.context,u=-a.bb.x1,l=-a.bb.y1;return s.scale(n,n),s.translate(u,l),a},gs.getLayers=function(e,t,n){var r=this,i=r.renderer.cy.zoom(),o=r.firstGet;if(r.firstGet=!1,null==n)if((n=Math.ceil(Ke(i*t)))<-4)n=-4;else if(i>=3.99||n>2)return null;r.validateLayersElesOrdering(n,e);var a,s,u=r.layersByLevel,l=Math.pow(2,n),c=u[n]=u[n]||[];if(r.levelIsComplete(n,e))return c;!function(){var t=function(t){if(r.validateLayersElesOrdering(t,e),r.levelIsComplete(t,e))return s=u[t],!0},i=function(e){if(!s)for(var r=n+e;-4<=r&&r<=2&&!t(r);r+=e);};i(1),i(-1);for(var o=c.length-1;o>=0;o--){var a=c[o];a.invalid&&Ee(c,a)}}();var d=function(t){var i=(t=t||{}).after;if(function(){if(!a){a=rt();for(var t=0;t<e.length;t++)n=a,r=e[t].boundingBox(),n.x1=Math.min(n.x1,r.x1),n.x2=Math.max(n.x2,r.x2),n.w=n.x2-n.x1,n.y1=Math.min(n.y1,r.y1),n.y2=Math.max(n.y2,r.y2),n.h=n.y2-n.y1}var n,r}(),a.w*l*(a.h*l)>16e6)return null;var o=r.makeLayer(a,n);if(null!=i){var s=c.indexOf(i)+1;c.splice(s,0,o)}else(void 0===t.insert||t.insert)&&c.unshift(o);return o};if(r.skipping&&!o)return null;for(var h=null,p=e.length/1,f=!o,v=0;v<e.length;v++){var g=e[v],y=g._private.rscratch,m=y.imgLayerCaches=y.imgLayerCaches||{},b=m[n];if(b)h=b;else{if((!h||h.eles.length>=p||!ct(h.bb,g.boundingBox()))&&!(h=d({insert:!0,after:h})))return null;s||f?r.queueLayer(h,g):r.drawEleInLayer(h,g,n,t),h.eles.push(g),m[n]=h}}return s||(f?null:c)},gs.getEleLevelForLayerLevel=function(e,t){return e},gs.drawEleInLayer=function(e,t,n,r){var i=this.renderer,o=e.context,a=t.boundingBox();0!==a.w&&0!==a.h&&t.visible()&&(n=this.getEleLevelForLayerLevel(n,r),i.setImgSmoothing(o,!1),i.drawCachedElement(o,t,null,null,n,true),i.setImgSmoothing(o,!0))},gs.levelIsComplete=function(e,t){var n=this.layersByLevel[e];if(!n||0===n.length)return!1;for(var r=0,i=0;i<n.length;i++){var o=n[i];if(o.reqs>0)return!1;if(o.invalid)return!1;r+=o.eles.length}return r===t.length},gs.validateLayersElesOrdering=function(e,t){var n=this.layersByLevel[e];if(n)for(var r=0;r<n.length;r++){for(var i=n[r],o=-1,a=0;a<t.length;a++)if(i.eles[0]===t[a]){o=a;break}if(o<0)this.invalidateLayer(i);else{var s=o;for(a=0;a<i.eles.length;a++)if(i.eles[a]!==t[s+a]){this.invalidateLayer(i);break}}}},gs.updateElementsInLayers=function(e,t){for(var n=C(e[0]),r=0;r<e.length;r++)for(var i=n?null:e[r],o=n?e[r]:e[r].ele,a=o._private.rscratch,s=a.imgLayerCaches=a.imgLayerCaches||{},u=-4;u<=2;u++){var l=s[u];l&&(i&&this.getEleLevelForLayerLevel(l.level)!==i.level||t(l,o,i))}},gs.haveLayers=function(){for(var e=!1,t=-4;t<=2;t++){var n=this.layersByLevel[t];if(n&&n.length>0){e=!0;break}}return e},gs.invalidateElements=function(e){var t=this;0!==e.length&&(t.lastInvalidationTime=U(),0!==e.length&&t.haveLayers()&&t.updateElementsInLayers(e,(function(e,n,r){t.invalidateLayer(e)})))},gs.invalidateLayer=function(e){if(this.lastInvalidationTime=U(),!e.invalid){var t=e.level,n=e.eles,r=this.layersByLevel[t];Ee(r,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var i=0;i<n.length;i++){var o=n[i]._private.rscratch.imgLayerCaches;o&&(o[t]=null)}}},gs.refineElementTextures=function(e){var t=this;t.updateElementsInLayers(e,(function(e,n,r){var i=e.replacement;if(i||((i=e.replacement=t.makeLayer(e.bb,e.level)).replaces=e,i.eles=e.eles),!i.reqs)for(var o=0;o<i.eles.length;o++)t.queueLayer(i,i.eles[o])}))},gs.enqueueElementRefinement=function(e){this.eleTxrDeqs.merge(e),this.scheduleElementRefinement()},gs.queueLayer=function(e,t){var n=this.layersQueue,r=e.elesQueue,i=r.hasId=r.hasId||{};if(!e.replacement){if(t){if(i[t.id()])return;r.push(t),i[t.id()]=!0}e.reqs?(e.reqs++,n.updateItem(e)):(e.reqs=1,n.push(e))}},gs.dequeue=function(e){for(var t=this,n=t.layersQueue,r=[],i=0;i<1&&0!==n.size();){var o=n.peek();if(o.replacement)n.pop();else if(o.replaces&&o!==o.replaces.replacement)n.pop();else if(o.invalid)n.pop();else{var a=o.elesQueue.shift();a&&(t.drawEleInLayer(o,a,o.level,e),i++),0===r.length&&r.push(!0),0===o.elesQueue.length&&(n.pop(),o.reqs=0,o.replaces&&t.applyLayerReplacement(o),t.requestRedraw())}}return r},gs.applyLayerReplacement=function(e){var t=this.layersByLevel[e.level],n=e.replaces,r=t.indexOf(n);if(!(r<0||n.invalid)){t[r]=e;for(var i=0;i<e.eles.length;i++){var o=e.eles[i]._private,a=o.imgLayerCaches=o.imgLayerCaches||{};a&&(a[e.level]=e)}this.requestRedraw()}},gs.requestRedraw=i((function(){var e=this.renderer;e.redrawHint("eles",!0),e.redrawHint("drag",!0),e.redraw()}),100),gs.setupDequeueing=ls({deqRedrawThreshold:50,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t){return e.dequeue(t)},onDeqd:pe,shouldRedraw:ce,priority:function(e){return e.renderer.beforeRenderPriorities.lyrTxrDeq}});var bs,xs={};function ws(e,t){for(var n=0;n<t.length;n++){var r=t[n];e.lineTo(r.x,r.y)}}function Es(e,t,n){for(var r,i=0;i<t.length;i++){var o=t[i];0===i&&(r=o),e.lineTo(o.x,o.y)}e.quadraticCurveTo(n.x,n.y,r.x,r.y)}function ks(e,t,n){e.beginPath&&e.beginPath();for(var r=t,i=0;i<r.length;i++){var o=r[i];e.lineTo(o.x,o.y)}var a=n,s=n[0];e.moveTo(s.x,s.y);for(i=1;i<a.length;i++){o=a[i];e.lineTo(o.x,o.y)}e.closePath&&e.closePath()}function Ps(e,t,n,r,i){e.beginPath&&e.beginPath(),e.arc(n,r,i,0,2*Math.PI,!1);var o=t,a=o[0];e.moveTo(a.x,a.y);for(var s=0;s<o.length;s++){var u=o[s];e.lineTo(u.x,u.y)}e.closePath&&e.closePath()}function Ss(e,t,n,r){e.arc(t,n,r,0,2*Math.PI,!1)}xs.arrowShapeImpl=function(e){return(bs||(bs={polygon:ws,"triangle-backcurve":Es,"triangle-tee":ks,"circle-triangle":Ps,"triangle-cross":ks,circle:Ss}))[e]};var Cs={drawElement:function(e,t,n,r,i,o){t.isNode()?this.drawNode(e,t,n,r,i,o):this.drawEdge(e,t,n,r,i,o)},drawElementOverlay:function(e,t){t.isNode()?this.drawNodeOverlay(e,t):this.drawEdgeOverlay(e,t)},drawElementUnderlay:function(e,t){t.isNode()?this.drawNodeUnderlay(e,t):this.drawEdgeUnderlay(e,t)},drawCachedElementPortion:function(e,t,n,r,i,o,a,s){var u=this,l=n.getBoundingBox(t);if(0!==l.w&&0!==l.h){var c=n.getElement(t,l,r,i,o);if(null!=c){var d=s(u,t);if(0===d)return;var h,p,f,v,g,y,m=a(u,t),b=l.x1,x=l.y1,w=l.w,E=l.h;if(0!==m){var k=n.getRotationPoint(t);f=k.x,v=k.y,e.translate(f,v),e.rotate(m),(g=u.getImgSmoothing(e))||u.setImgSmoothing(e,!0);var P=n.getRotationOffset(t);h=P.x,p=P.y}else h=b,p=x;1!==d&&(y=e.globalAlpha,e.globalAlpha=y*d),e.drawImage(c.texture.canvas,c.x,0,c.width,c.height,h,p,w,E),1!==d&&(e.globalAlpha=y),0!==m&&(e.rotate(-m),e.translate(-f,-v),g||u.setImgSmoothing(e,!1))}else n.drawElement(e,t)}}},_s=function(){return 0},js=function(e,t){return e.getTextAngle(t,null)},Ds=function(e,t){return e.getTextAngle(t,"source")},Ts=function(e,t){return e.getTextAngle(t,"target")},Bs=function(e,t){return t.effectiveOpacity()},Os=function(e,t){return t.pstyle("text-opacity").pfValue*t.effectiveOpacity()};Cs.drawCachedElement=function(e,t,n,r,i,o){var a=this,s=a.data,u=s.eleTxrCache,l=s.lblTxrCache,c=s.slbTxrCache,d=s.tlbTxrCache,h=t.boundingBox(),p=!0===o?u.reasons.highQuality:null;if(0!==h.w&&0!==h.h&&t.visible()&&(!r||ut(h,r))){var f=t.isEdge(),v=t.element()._private.rscratch.badLine;a.drawElementUnderlay(e,t),a.drawCachedElementPortion(e,t,u,n,i,p,_s,Bs),f&&v||a.drawCachedElementPortion(e,t,l,n,i,p,js,Os),f&&!v&&(a.drawCachedElementPortion(e,t,c,n,i,p,Ds,Os),a.drawCachedElementPortion(e,t,d,n,i,p,Ts,Os)),a.drawElementOverlay(e,t)}},Cs.drawElements=function(e,t){for(var n=0;n<t.length;n++){var r=t[n];this.drawElement(e,r)}},Cs.drawCachedElements=function(e,t,n,r){for(var i=0;i<t.length;i++){var o=t[i];this.drawCachedElement(e,o,n,r)}},Cs.drawCachedNodes=function(e,t,n,r){for(var i=0;i<t.length;i++){var o=t[i];o.isNode()&&this.drawCachedElement(e,o,n,r)}},Cs.drawLayeredElements=function(e,t,n,r){var i=this.data.lyrTxrCache.getLayers(t,n);if(i)for(var o=0;o<i.length;o++){var a=i[o],s=a.bb;0!==s.w&&0!==s.h&&e.drawImage(a.canvas,s.x1,s.y1,s.w,s.h)}else this.drawCachedElements(e,t,n,r)};var Ms={drawEdge:function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],a=this,s=t._private.rscratch;if((!o||t.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var u;n&&(u=n,e.translate(-u.x1,-u.y1));var l=o?t.pstyle("opacity").value:1,c=o?t.pstyle("line-opacity").value:1,d=t.pstyle("curve-style").value,h=t.pstyle("line-style").value,p=t.pstyle("width").pfValue,f=t.pstyle("line-cap").value,v=l*c,g=l*c,y=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v;"straight-triangle"===d?(a.eleStrokeStyle(e,t,n),a.drawEdgeTrianglePath(t,e,s.allpts)):(e.lineWidth=p,e.lineCap=f,a.eleStrokeStyle(e,t,n),a.drawEdgePath(t,e,s.allpts,h),e.lineCap="butt")},m=function(){i&&a.drawEdgeOverlay(e,t)},b=function(){i&&a.drawEdgeUnderlay(e,t)},x=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g;a.drawArrowheads(e,t,n)},w=function(){a.drawElementText(e,t,null,r)};e.lineJoin="round";var E="yes"===t.pstyle("ghost").value;if(E){var k=t.pstyle("ghost-offset-x").pfValue,P=t.pstyle("ghost-offset-y").pfValue,S=t.pstyle("ghost-opacity").value,C=v*S;e.translate(k,P),y(C),x(C),e.translate(-k,-P)}b(),y(),x(),m(),w(),n&&e.translate(u.x1,u.y1)}}},Ns=function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(t,n){if(n.visible()){var r=n.pstyle("".concat(e,"-opacity")).value;if(0!==r){var i=this,o=i.usePaths(),a=n._private.rscratch,s=2*n.pstyle("".concat(e,"-padding")).pfValue,u=n.pstyle("".concat(e,"-color")).value;t.lineWidth=s,"self"!==a.edgeType||o?t.lineCap="round":t.lineCap="butt",i.colorStrokeStyle(t,u[0],u[1],u[2],r),i.drawEdgePath(n,t,a.allpts,"solid")}}}};Ms.drawEdgeOverlay=Ns("overlay"),Ms.drawEdgeUnderlay=Ns("underlay"),Ms.drawEdgePath=function(e,t,n,r){var i,o=e._private.rscratch,a=t,s=!1,u=this.usePaths(),l=e.pstyle("line-dash-pattern").pfValue,c=e.pstyle("line-dash-offset").pfValue;if(u){var d=n.join("$");o.pathCacheKey&&o.pathCacheKey===d?(i=t=o.pathCache,s=!0):(i=t=new Path2D,o.pathCacheKey=d,o.pathCache=i)}if(a.setLineDash)switch(r){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(l),a.lineDashOffset=c;break;case"solid":a.setLineDash([])}if(!s&&!o.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(n[0],n[1]),o.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var h=2;h+3<n.length;h+=4)t.quadraticCurveTo(n[h],n[h+1],n[h+2],n[h+3]);break;case"straight":case"segments":case"haystack":for(var p=2;p+1<n.length;p+=2)t.lineTo(n[p],n[p+1])}t=a,u?t.stroke(i):t.stroke(),t.setLineDash&&t.setLineDash([])},Ms.drawEdgeTrianglePath=function(e,t,n){t.fillStyle=t.strokeStyle;for(var r=e.pstyle("width").pfValue,i=0;i+1<n.length;i+=2){var o=[n[i+2]-n[i],n[i+3]-n[i+1]],a=Math.sqrt(o[0]*o[0]+o[1]*o[1]),s=[o[1]/a,-o[0]/a],u=[s[0]*r/2,s[1]*r/2];t.beginPath(),t.moveTo(n[i]-u[0],n[i+1]-u[1]),t.lineTo(n[i]+u[0],n[i+1]+u[1]),t.lineTo(n[i+2],n[i+3]),t.closePath(),t.fill()}},Ms.drawArrowheads=function(e,t,n){var r=t._private.rscratch,i="haystack"===r.edgeType;i||this.drawArrowhead(e,t,"source",r.arrowStartX,r.arrowStartY,r.srcArrowAngle,n),this.drawArrowhead(e,t,"mid-target",r.midX,r.midY,r.midtgtArrowAngle,n),this.drawArrowhead(e,t,"mid-source",r.midX,r.midY,r.midsrcArrowAngle,n),i||this.drawArrowhead(e,t,"target",r.arrowEndX,r.arrowEndY,r.tgtArrowAngle,n)},Ms.drawArrowhead=function(e,t,n,r,i,o,a){if(!(isNaN(r)||null==r||isNaN(i)||null==i||isNaN(o)||null==o)){var s=this,u=t.pstyle(n+"-arrow-shape").value;if("none"!==u){var l="hollow"===t.pstyle(n+"-arrow-fill").value?"both":"filled",c=t.pstyle(n+"-arrow-fill").value,d=t.pstyle("width").pfValue,h=t.pstyle("opacity").value;void 0===a&&(a=h);var p=e.globalCompositeOperation;1===a&&"hollow"!==c||(e.globalCompositeOperation="destination-out",s.colorFillStyle(e,255,255,255,1),s.colorStrokeStyle(e,255,255,255,1),s.drawArrowShape(t,e,l,d,u,r,i,o),e.globalCompositeOperation=p);var f=t.pstyle(n+"-arrow-color").value;s.colorFillStyle(e,f[0],f[1],f[2],a),s.colorStrokeStyle(e,f[0],f[1],f[2],a),s.drawArrowShape(t,e,c,d,u,r,i,o)}}},Ms.drawArrowShape=function(e,t,n,r,i,o,a,s){var u,l=this,c=this.usePaths()&&"triangle-cross"!==i,d=!1,h=t,p={x:o,y:a},f=e.pstyle("arrow-scale").value,v=this.getArrowWidth(r,f),g=l.arrowShapes[i];if(c){var y=l.arrowPathCache=l.arrowPathCache||[],m=re(i),b=y[m];null!=b?(u=t=b,d=!0):(u=t=new Path2D,y[m]=u)}d||(t.beginPath&&t.beginPath(),c?g.draw(t,1,0,{x:0,y:0},1):g.draw(t,v,s,p,r),t.closePath&&t.closePath()),t=h,c&&(t.translate(o,a),t.rotate(s),t.scale(v,v)),"filled"!==n&&"both"!==n||(c?t.fill(u):t.fill()),"hollow"!==n&&"both"!==n||(t.lineWidth=(g.matchEdgeWidth?r:1)/(c?v:1),t.lineJoin="miter",c?t.stroke(u):t.stroke()),c&&(t.scale(1/v,1/v),t.rotate(-s),t.translate(-o,-a))};var Is={safeDrawImage:function(e,t,n,r,i,o,a,s,u,l){i<=0||o<=0||u<=0||l<=0||e.drawImage(t,n,r,i,o,a,s,u,l)},drawInscribedImage:function(e,t,n,r,i){var o=this,a=n.position(),s=a.x,u=a.y,l=n.cy().style(),c=l.getIndexedStyle.bind(l),d=c(n,"background-fit","value",r),h=c(n,"background-repeat","value",r),p=n.width(),f=n.height(),v=2*n.padding(),g=p+("inner"===c(n,"background-width-relative-to","value",r)?0:v),y=f+("inner"===c(n,"background-height-relative-to","value",r)?0:v),m=n._private.rscratch,b="node"===c(n,"background-clip","value",r),x=c(n,"background-image-opacity","value",r)*i,w=c(n,"background-image-smoothing","value",r),E=t.width||t.cachedW,k=t.height||t.cachedH;null!=E&&null!=k||(document.body.appendChild(t),E=t.cachedW=t.width||t.offsetWidth,k=t.cachedH=t.height||t.offsetHeight,document.body.removeChild(t));var P=E,S=k;if("auto"!==c(n,"background-width","value",r)&&(P="%"===c(n,"background-width","units",r)?c(n,"background-width","pfValue",r)*g:c(n,"background-width","pfValue",r)),"auto"!==c(n,"background-height","value",r)&&(S="%"===c(n,"background-height","units",r)?c(n,"background-height","pfValue",r)*y:c(n,"background-height","pfValue",r)),0!==P&&0!==S){if("contain"===d)P*=C=Math.min(g/P,y/S),S*=C;else if("cover"===d){var C;P*=C=Math.max(g/P,y/S),S*=C}var _=s-g/2,j=c(n,"background-position-x","units",r),D=c(n,"background-position-x","pfValue",r);_+="%"===j?(g-P)*D:D;var T=c(n,"background-offset-x","units",r),B=c(n,"background-offset-x","pfValue",r);_+="%"===T?(g-P)*B:B;var O=u-y/2,M=c(n,"background-position-y","units",r),N=c(n,"background-position-y","pfValue",r);O+="%"===M?(y-S)*N:N;var I=c(n,"background-offset-y","units",r),L=c(n,"background-offset-y","pfValue",r);O+="%"===I?(y-S)*L:L,m.pathCache&&(_-=s,O-=u,s=0,u=0);var A=e.globalAlpha;e.globalAlpha=x;var z=o.getImgSmoothing(e),R=!1;if("no"===w&&z?(o.setImgSmoothing(e,!1),R=!0):"yes"!==w||z||(o.setImgSmoothing(e,!0),R=!0),"no-repeat"===h)b&&(e.save(),m.pathCache?e.clip(m.pathCache):(o.nodeShapes[o.getNodeShape(n)].draw(e,s,u,g,y),e.clip())),o.safeDrawImage(e,t,0,0,E,k,_,O,P,S),b&&e.restore();else{var F=e.createPattern(t,h);e.fillStyle=F,o.nodeShapes[o.getNodeShape(n)].draw(e,s,u,g,y),e.translate(_,O),e.fill(),e.translate(-_,-O)}e.globalAlpha=A,R&&o.setImgSmoothing(e,z)}}},Ls={};function As(e,t,n,r,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:5;e.beginPath(),e.moveTo(t+o,n),e.lineTo(t+r-o,n),e.quadraticCurveTo(t+r,n,t+r,n+o),e.lineTo(t+r,n+i-o),e.quadraticCurveTo(t+r,n+i,t+r-o,n+i),e.lineTo(t+o,n+i),e.quadraticCurveTo(t,n+i,t,n+i-o),e.lineTo(t,n+o),e.quadraticCurveTo(t,n,t+o,n),e.closePath(),e.fill()}Ls.eleTextBiggerThanMin=function(e,t){if(!t){var n=e.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(Ke(n*r));t=Math.pow(2,i)}return!(e.pstyle("font-size").pfValue*t<e.pstyle("min-zoomed-font-size").pfValue)},Ls.drawElementText=function(e,t,n,r,i){var o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],a=this;if(null==r){if(o&&!a.eleTextBiggerThanMin(t))return}else if(!1===r)return;if(t.isNode()){var s=t.pstyle("label");if(!s||!s.value)return;var u=a.getLabelJustification(t);e.textAlign=u,e.textBaseline="bottom"}else{var l=t.element()._private.rscratch.badLine,c=t.pstyle("label"),d=t.pstyle("source-label"),h=t.pstyle("target-label");if(l||(!c||!c.value)&&(!d||!d.value)&&(!h||!h.value))return;e.textAlign="center",e.textBaseline="bottom"}var p,f=!n;n&&(p=n,e.translate(-p.x1,-p.y1)),null==i?(a.drawText(e,t,null,f,o),t.isEdge()&&(a.drawText(e,t,"source",f,o),a.drawText(e,t,"target",f,o))):a.drawText(e,t,i,f,o),n&&e.translate(p.x1,p.y1)},Ls.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var n=0;n<this.fontCaches.length;n++)if((t=this.fontCaches[n]).context===e)return t;return t={context:e},this.fontCaches.push(t),t},Ls.setupTextStyle=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",o=t.pstyle("font-family").strValue,a=t.pstyle("font-weight").strValue,s=n?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,u=t.pstyle("text-outline-opacity").value*s,l=t.pstyle("color").value,c=t.pstyle("text-outline-color").value;e.font=r+" "+a+" "+i+" "+o,e.lineJoin="round",this.colorFillStyle(e,l[0],l[1],l[2],s),this.colorStrokeStyle(e,c[0],c[1],c[2],u)},Ls.getTextAngle=function(e,t){var n=e._private.rscratch,r=t?t+"-":"",i=e.pstyle(r+"text-rotation"),o=Pe(n,"labelAngle",t);return"autorotate"===i.strValue?e.isEdge()?o:0:"none"===i.strValue?0:i.pfValue},Ls.drawText=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=t._private,a=o.rscratch,s=i?t.effectiveOpacity():1;if(!i||0!==s&&0!==t.pstyle("text-opacity").value){"main"===n&&(n=null);var u,l,c=Pe(a,"labelX",n),d=Pe(a,"labelY",n),h=this.getLabelText(t,n);if(null!=h&&""!==h&&!isNaN(c)&&!isNaN(d)){this.setupTextStyle(e,t,i);var p,f=n?n+"-":"",v=Pe(a,"labelWidth",n),g=Pe(a,"labelHeight",n),y=t.pstyle(f+"text-margin-x").pfValue,m=t.pstyle(f+"text-margin-y").pfValue,b=t.isEdge(),x=t.pstyle("text-halign").value,w=t.pstyle("text-valign").value;switch(b&&(x="center",w="center"),c+=y,d+=m,0!==(p=r?this.getTextAngle(t,n):0)&&(u=c,l=d,e.translate(u,l),e.rotate(p),c=0,d=0),w){case"top":break;case"center":d+=g/2;break;case"bottom":d+=g}var E=t.pstyle("text-background-opacity").value,k=t.pstyle("text-border-opacity").value,P=t.pstyle("text-border-width").pfValue,S=t.pstyle("text-background-padding").pfValue;if(E>0||P>0&&k>0){var C=c-S;switch(x){case"left":C-=v;break;case"center":C-=v/2}var _=d-g-S,j=v+2*S,D=g+2*S;if(E>0){var T=e.fillStyle,B=t.pstyle("text-background-color").value;e.fillStyle="rgba("+B[0]+","+B[1]+","+B[2]+","+E*s+")";var O=t.pstyle("text-background-shape").strValue;0===O.indexOf("round")?As(e,C,_,j,D,2):e.fillRect(C,_,j,D),e.fillStyle=T}if(P>0&&k>0){var M=e.strokeStyle,N=e.lineWidth,I=t.pstyle("text-border-color").value,L=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+I[0]+","+I[1]+","+I[2]+","+k*s+")",e.lineWidth=P,e.setLineDash)switch(L){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=P/4,e.setLineDash([]);break;case"solid":e.setLineDash([])}if(e.strokeRect(C,_,j,D),"double"===L){var A=P/2;e.strokeRect(C+A,_+A,j-2*A,D-2*A)}e.setLineDash&&e.setLineDash([]),e.lineWidth=N,e.strokeStyle=M}}var z=2*t.pstyle("text-outline-width").pfValue;if(z>0&&(e.lineWidth=z),"wrap"===t.pstyle("text-wrap").value){var R=Pe(a,"labelWrapCachedLines",n),F=Pe(a,"labelLineHeight",n),V=v/2,q=this.getLabelJustification(t);switch("auto"===q||("left"===x?"left"===q?c+=-v:"center"===q&&(c+=-V):"center"===x?"left"===q?c+=-V:"right"===q&&(c+=V):"right"===x&&("center"===q?c+=V:"right"===q&&(c+=v))),w){case"top":case"center":case"bottom":d-=(R.length-1)*F}for(var Y=0;Y<R.length;Y++)z>0&&e.strokeText(R[Y],c,d),e.fillText(R[Y],c,d),d+=F}else z>0&&e.strokeText(h,c,d),e.fillText(h,c,d);0!==p&&(e.rotate(-p),e.translate(-u,-l))}}};var zs={drawNode:function(e,t,n){var r,i,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],u=this,l=t._private,c=l.rscratch,d=t.position();if(k(d.x)&&k(d.y)&&(!s||t.visible())){var h,p,f=s?t.effectiveOpacity():1,v=u.usePaths(),g=!1,y=t.padding();r=t.width()+2*y,i=t.height()+2*y,n&&(p=n,e.translate(-p.x1,-p.y1));for(var m=t.pstyle("background-image"),b=m.value,x=new Array(b.length),w=new Array(b.length),E=0,P=0;P<b.length;P++){var S=b[P],C=x[P]=null!=S&&"none"!==S;if(C){var _=t.cy().style().getIndexedStyle(t,"background-image-crossorigin","value",P);E++,w[P]=u.getCachedImage(S,_,(function(){l.backgroundTimestamp=Date.now(),t.emitAndNotify("background")}))}}var j=t.pstyle("background-blacken").value,D=t.pstyle("border-width").pfValue,T=t.pstyle("background-opacity").value*f,B=t.pstyle("border-color").value,O=t.pstyle("border-style").value,M=t.pstyle("border-opacity").value*f;e.lineJoin="miter";var N=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:T;u.eleFillStyle(e,t,n)},I=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:M;u.colorStrokeStyle(e,B[0],B[1],B[2],t)},L=t.pstyle("shape").strValue,A=t.pstyle("shape-polygon-points").pfValue;if(v){e.translate(d.x,d.y);var z=u.nodePathCache=u.nodePathCache||[],R=ie("polygon"===L?L+","+A.join(","):L,""+i,""+r),F=z[R];null!=F?(h=F,g=!0,c.pathCache=h):(h=new Path2D,z[R]=c.pathCache=h)}var V=function(){if(!g){var n=d;v&&(n={x:0,y:0}),u.nodeShapes[u.getNodeShape(t)].draw(h||e,n.x,n.y,r,i)}v?e.fill(h):e.fill()},q=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=l.backgrounding,o=0,a=0;a<w.length;a++){var s=t.cy().style().getIndexedStyle(t,"background-image-containment","value",a);r&&"over"===s||!r&&"inside"===s?o++:x[a]&&w[a].complete&&!w[a].error&&(o++,u.drawInscribedImage(e,w[a],t,a,n))}l.backgrounding=!(o===E),i!==l.backgrounding&&t.updateStyle(!1)},Y=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f;u.hasPie(t)&&(u.drawPie(e,t,o),n&&(v||u.nodeShapes[u.getNodeShape(t)].draw(e,d.x,d.y,r,i)))},X=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,n=(j>0?j:-j)*t,r=j>0?0:255;0!==j&&(u.colorFillStyle(e,r,r,r,n),v?e.fill(h):e.fill())},H=function(){if(D>0){if(e.lineWidth=D,e.lineCap="butt",e.setLineDash)switch(O){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([])}if(v?e.stroke(h):e.stroke(),"double"===O){e.lineWidth=D/3;var t=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",v?e.stroke(h):e.stroke(),e.globalCompositeOperation=t}e.setLineDash&&e.setLineDash([])}},W=function(){a&&u.drawNodeOverlay(e,t,d,r,i)},G=function(){a&&u.drawNodeUnderlay(e,t,d,r,i)},U=function(){u.drawElementText(e,t,null,o)},K="yes"===t.pstyle("ghost").value;if(K){var Z=t.pstyle("ghost-offset-x").pfValue,Q=t.pstyle("ghost-offset-y").pfValue,$=t.pstyle("ghost-opacity").value,J=$*f;e.translate(Z,Q),N($*T),V(),q(J,!0),I($*M),H(),Y(0!==j||0!==D),q(J,!1),X(J),e.translate(-Z,-Q)}v&&e.translate(-d.x,-d.y),G(),v&&e.translate(d.x,d.y),N(),V(),q(f,!0),I(),H(),Y(0!==j||0!==D),q(f,!1),X(),v&&e.translate(-d.x,-d.y),U(),W(),n&&e.translate(p.x1,p.y1)}}},Rs=function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(t,n,r,i,o){if(n.visible()){var a=n.pstyle("".concat(e,"-padding")).pfValue,s=n.pstyle("".concat(e,"-opacity")).value,u=n.pstyle("".concat(e,"-color")).value,l=n.pstyle("".concat(e,"-shape")).value;if(s>0){if(r=r||n.position(),null==i||null==o){var c=n.padding();i=n.width()+2*c,o=n.height()+2*c}this.colorFillStyle(t,u[0],u[1],u[2],s),this.nodeShapes[l].draw(t,r.x,r.y,i+2*a,o+2*a),t.fill()}}}};zs.drawNodeOverlay=Rs("overlay"),zs.drawNodeUnderlay=Rs("underlay"),zs.hasPie=function(e){return(e=e[0])._private.hasPie},zs.drawPie=function(e,t,n,r){t=t[0],r=r||t.position();var i=t.cy().style(),o=t.pstyle("pie-size"),a=r.x,s=r.y,u=t.width(),l=t.height(),c=Math.min(u,l)/2,d=0;this.usePaths()&&(a=0,s=0),"%"===o.units?c*=o.pfValue:void 0!==o.pfValue&&(c=o.pfValue/2);for(var h=1;h<=i.pieBackgroundN;h++){var p=t.pstyle("pie-"+h+"-background-size").value,f=t.pstyle("pie-"+h+"-background-color").value,v=t.pstyle("pie-"+h+"-background-opacity").value*n,g=p/100;g+d>1&&(g=1-d);var y=1.5*Math.PI+2*Math.PI*d,m=y+2*Math.PI*g;0===p||d>=1||d+g>1||(e.beginPath(),e.moveTo(a,s),e.arc(a,s,c,y,m),e.closePath(),this.colorFillStyle(e,f[0],f[1],f[2],v),e.fill(),d+=g)}};var Fs={};Fs.getPixelRatio=function(){var e=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var t=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/t},Fs.paintCache=function(e){for(var t,n=this.paintCaches=this.paintCaches||[],r=!0,i=0;i<n.length;i++)if((t=n[i]).context===e){r=!1;break}return r&&(t={context:e},n.push(t)),t},Fs.createGradientStyleFor=function(e,t,n,r,i){var o,a=this.usePaths(),s=n.pstyle(t+"-gradient-stop-colors").value,u=n.pstyle(t+"-gradient-stop-positions").pfValue;if("radial-gradient"===r)if(n.isEdge()){var l=n.sourceEndpoint(),c=n.targetEndpoint(),d=n.midpoint(),h=Qe(l,d),p=Qe(c,d);o=e.createRadialGradient(d.x,d.y,0,d.x,d.y,Math.max(h,p))}else{var f=a?{x:0,y:0}:n.position(),v=n.paddedWidth(),g=n.paddedHeight();o=e.createRadialGradient(f.x,f.y,0,f.x,f.y,Math.max(v,g))}else if(n.isEdge()){var y=n.sourceEndpoint(),m=n.targetEndpoint();o=e.createLinearGradient(y.x,y.y,m.x,m.y)}else{var b=a?{x:0,y:0}:n.position(),x=n.paddedWidth()/2,w=n.paddedHeight()/2;switch(n.pstyle("background-gradient-direction").value){case"to-bottom":o=e.createLinearGradient(b.x,b.y-w,b.x,b.y+w);break;case"to-top":o=e.createLinearGradient(b.x,b.y+w,b.x,b.y-w);break;case"to-left":o=e.createLinearGradient(b.x+x,b.y,b.x-x,b.y);break;case"to-right":o=e.createLinearGradient(b.x-x,b.y,b.x+x,b.y);break;case"to-bottom-right":case"to-right-bottom":o=e.createLinearGradient(b.x-x,b.y-w,b.x+x,b.y+w);break;case"to-top-right":case"to-right-top":o=e.createLinearGradient(b.x-x,b.y+w,b.x+x,b.y-w);break;case"to-bottom-left":case"to-left-bottom":o=e.createLinearGradient(b.x+x,b.y-w,b.x-x,b.y+w);break;case"to-top-left":case"to-left-top":o=e.createLinearGradient(b.x+x,b.y+w,b.x-x,b.y-w)}}if(!o)return null;for(var E=u.length===s.length,k=s.length,P=0;P<k;P++)o.addColorStop(E?u[P]:P/(k-1),"rgba("+s[P][0]+","+s[P][1]+","+s[P][2]+","+i+")");return o},Fs.gradientFillStyle=function(e,t,n,r){var i=this.createGradientStyleFor(e,"background",t,n,r);if(!i)return null;e.fillStyle=i},Fs.colorFillStyle=function(e,t,n,r,i){e.fillStyle="rgba("+t+","+n+","+r+","+i+")"},Fs.eleFillStyle=function(e,t,n){var r=t.pstyle("background-fill").value;if("linear-gradient"===r||"radial-gradient"===r)this.gradientFillStyle(e,t,r,n);else{var i=t.pstyle("background-color").value;this.colorFillStyle(e,i[0],i[1],i[2],n)}},Fs.gradientStrokeStyle=function(e,t,n,r){var i=this.createGradientStyleFor(e,"line",t,n,r);if(!i)return null;e.strokeStyle=i},Fs.colorStrokeStyle=function(e,t,n,r,i){e.strokeStyle="rgba("+t+","+n+","+r+","+i+")"},Fs.eleStrokeStyle=function(e,t,n){var r=t.pstyle("line-fill").value;if("linear-gradient"===r||"radial-gradient"===r)this.gradientStrokeStyle(e,t,r,n);else{var i=t.pstyle("line-color").value;this.colorStrokeStyle(e,i[0],i[1],i[2],n)}},Fs.matchCanvasSize=function(e){var t=this,n=t.data,r=t.findContainerClientCoords(),i=r[2],o=r[3],a=t.getPixelRatio(),s=t.motionBlurPxRatio;e!==t.data.bufferCanvases[t.MOTIONBLUR_BUFFER_NODE]&&e!==t.data.bufferCanvases[t.MOTIONBLUR_BUFFER_DRAG]||(a=s);var u,l=i*a,c=o*a;if(l!==t.canvasWidth||c!==t.canvasHeight){t.fontCaches=null;var d=n.canvasContainer;d.style.width=i+"px",d.style.height=o+"px";for(var h=0;h<t.CANVAS_LAYERS;h++)(u=n.canvases[h]).width=l,u.height=c,u.style.width=i+"px",u.style.height=o+"px";for(h=0;h<t.BUFFER_COUNT;h++)(u=n.bufferCanvases[h]).width=l,u.height=c,u.style.width=i+"px",u.style.height=o+"px";t.textureMult=1,a<=1&&(u=n.bufferCanvases[t.TEXTURE_BUFFER],t.textureMult=2,u.width=l*t.textureMult,u.height=c*t.textureMult),t.canvasWidth=l,t.canvasHeight=c}},Fs.renderTo=function(e,t,n,r){this.render({forcedContext:e,forcedZoom:t,forcedPan:n,drawAllLayers:!0,forcedPxRatio:r})},Fs.render=function(e){var t=(e=e||xe()).forcedContext,n=e.drawAllLayers,r=e.drawOnlyNodeLayer,i=e.forcedZoom,o=e.forcedPan,a=this,s=void 0===e.forcedPxRatio?this.getPixelRatio():e.forcedPxRatio,u=a.cy,l=a.data,c=l.canvasNeedsRedraw,d=a.textureOnViewport&&!t&&(a.pinching||a.hoverData.dragging||a.swipePanning||a.data.wheelZooming),h=void 0!==e.motionBlur?e.motionBlur:a.motionBlur,p=a.motionBlurPxRatio,f=u.hasCompoundNodes(),v=a.hoverData.draggingEles,g=!(!a.hoverData.selecting&&!a.touchData.selecting),y=h=h&&!t&&a.motionBlurEnabled&&!g;t||(a.prevPxRatio!==s&&(a.invalidateContainerClientCoordsCache(),a.matchCanvasSize(a.container),a.redrawHint("eles",!0),a.redrawHint("drag",!0)),a.prevPxRatio=s),!t&&a.motionBlurTimeout&&clearTimeout(a.motionBlurTimeout),h&&(null==a.mbFrames&&(a.mbFrames=0),a.mbFrames++,a.mbFrames<3&&(y=!1),a.mbFrames>a.minMbLowQualFrames&&(a.motionBlurPxRatio=a.mbPxRBlurry)),a.clearingMotionBlur&&(a.motionBlurPxRatio=1),a.textureDrawLastFrame&&!d&&(c[a.NODE]=!0,c[a.SELECT_BOX]=!0);var m=u.style(),b=u.zoom(),x=void 0!==i?i:b,w=u.pan(),E={x:w.x,y:w.y},k={zoom:b,pan:{x:w.x,y:w.y}},P=a.prevViewport;void 0===P||k.zoom!==P.zoom||k.pan.x!==P.pan.x||k.pan.y!==P.pan.y||v&&!f||(a.motionBlurPxRatio=1),o&&(E=o),x*=s,E.x*=s,E.y*=s;var S=a.getCachedZSortedEles();function C(e,t,n,r,i){var o=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",a.colorFillStyle(e,255,255,255,a.motionBlurTransparency),e.fillRect(t,n,r,i),e.globalCompositeOperation=o}function _(e,r){var s,u,c,d;a.clearingMotionBlur||e!==l.bufferContexts[a.MOTIONBLUR_BUFFER_NODE]&&e!==l.bufferContexts[a.MOTIONBLUR_BUFFER_DRAG]?(s=E,u=x,c=a.canvasWidth,d=a.canvasHeight):(s={x:w.x*p,y:w.y*p},u=b*p,c=a.canvasWidth*p,d=a.canvasHeight*p),e.setTransform(1,0,0,1,0,0),"motionBlur"===r?C(e,0,0,c,d):t||void 0!==r&&!r||e.clearRect(0,0,c,d),n||(e.translate(s.x,s.y),e.scale(u,u)),o&&e.translate(o.x,o.y),i&&e.scale(i,i)}if(d||(a.textureDrawLastFrame=!1),d){if(a.textureDrawLastFrame=!0,!a.textureCache){a.textureCache={},a.textureCache.bb=u.mutableElements().boundingBox(),a.textureCache.texture=a.data.bufferCanvases[a.TEXTURE_BUFFER];var j=a.data.bufferContexts[a.TEXTURE_BUFFER];j.setTransform(1,0,0,1,0,0),j.clearRect(0,0,a.canvasWidth*a.textureMult,a.canvasHeight*a.textureMult),a.render({forcedContext:j,drawOnlyNodeLayer:!0,forcedPxRatio:s*a.textureMult}),(k=a.textureCache.viewport={zoom:u.zoom(),pan:u.pan(),width:a.canvasWidth,height:a.canvasHeight}).mpan={x:(0-k.pan.x)/k.zoom,y:(0-k.pan.y)/k.zoom}}c[a.DRAG]=!1,c[a.NODE]=!1;var D=l.contexts[a.NODE],T=a.textureCache.texture;k=a.textureCache.viewport;D.setTransform(1,0,0,1,0,0),h?C(D,0,0,k.width,k.height):D.clearRect(0,0,k.width,k.height);var B=m.core("outside-texture-bg-color").value,O=m.core("outside-texture-bg-opacity").value;a.colorFillStyle(D,B[0],B[1],B[2],O),D.fillRect(0,0,k.width,k.height);b=u.zoom();_(D,!1),D.clearRect(k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s),D.drawImage(T,k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s)}else a.textureOnViewport&&!t&&(a.textureCache=null);var M=u.extent(),N=a.pinching||a.hoverData.dragging||a.swipePanning||a.data.wheelZooming||a.hoverData.draggingEles||a.cy.animated(),I=a.hideEdgesOnViewport&&N,L=[];if(L[a.NODE]=!c[a.NODE]&&h&&!a.clearedForMotionBlur[a.NODE]||a.clearingMotionBlur,L[a.NODE]&&(a.clearedForMotionBlur[a.NODE]=!0),L[a.DRAG]=!c[a.DRAG]&&h&&!a.clearedForMotionBlur[a.DRAG]||a.clearingMotionBlur,L[a.DRAG]&&(a.clearedForMotionBlur[a.DRAG]=!0),c[a.NODE]||n||r||L[a.NODE]){var A=h&&!L[a.NODE]&&1!==p;_(D=t||(A?a.data.bufferContexts[a.MOTIONBLUR_BUFFER_NODE]:l.contexts[a.NODE]),h&&!A?"motionBlur":void 0),I?a.drawCachedNodes(D,S.nondrag,s,M):a.drawLayeredElements(D,S.nondrag,s,M),a.debug&&a.drawDebugPoints(D,S.nondrag),n||h||(c[a.NODE]=!1)}if(!r&&(c[a.DRAG]||n||L[a.DRAG])){A=h&&!L[a.DRAG]&&1!==p;_(D=t||(A?a.data.bufferContexts[a.MOTIONBLUR_BUFFER_DRAG]:l.contexts[a.DRAG]),h&&!A?"motionBlur":void 0),I?a.drawCachedNodes(D,S.drag,s,M):a.drawCachedElements(D,S.drag,s,M),a.debug&&a.drawDebugPoints(D,S.drag),n||h||(c[a.DRAG]=!1)}if(a.showFps||!r&&c[a.SELECT_BOX]&&!n){if(_(D=t||l.contexts[a.SELECT_BOX]),1==a.selection[4]&&(a.hoverData.selecting||a.touchData.selecting)){b=a.cy.zoom();var z=m.core("selection-box-border-width").value/b;D.lineWidth=z,D.fillStyle="rgba("+m.core("selection-box-color").value[0]+","+m.core("selection-box-color").value[1]+","+m.core("selection-box-color").value[2]+","+m.core("selection-box-opacity").value+")",D.fillRect(a.selection[0],a.selection[1],a.selection[2]-a.selection[0],a.selection[3]-a.selection[1]),z>0&&(D.strokeStyle="rgba("+m.core("selection-box-border-color").value[0]+","+m.core("selection-box-border-color").value[1]+","+m.core("selection-box-border-color").value[2]+","+m.core("selection-box-opacity").value+")",D.strokeRect(a.selection[0],a.selection[1],a.selection[2]-a.selection[0],a.selection[3]-a.selection[1]))}if(l.bgActivePosistion&&!a.hoverData.selecting){b=a.cy.zoom();var R=l.bgActivePosistion;D.fillStyle="rgba("+m.core("active-bg-color").value[0]+","+m.core("active-bg-color").value[1]+","+m.core("active-bg-color").value[2]+","+m.core("active-bg-opacity").value+")",D.beginPath(),D.arc(R.x,R.y,m.core("active-bg-size").pfValue/b,0,2*Math.PI),D.fill()}var F=a.lastRedrawTime;if(a.showFps&&F){F=Math.round(F);var V=Math.round(1e3/F);D.setTransform(1,0,0,1,0,0),D.fillStyle="rgba(255, 0, 0, 0.75)",D.strokeStyle="rgba(255, 0, 0, 0.75)",D.lineWidth=1,D.fillText("1 frame = "+F+" ms = "+V+" fps",0,20);D.strokeRect(0,30,250,20),D.fillRect(0,30,250*Math.min(V/60,1),20)}n||(c[a.SELECT_BOX]=!1)}if(h&&1!==p){var q=l.contexts[a.NODE],Y=a.data.bufferCanvases[a.MOTIONBLUR_BUFFER_NODE],X=l.contexts[a.DRAG],H=a.data.bufferCanvases[a.MOTIONBLUR_BUFFER_DRAG],W=function(e,t,n){e.setTransform(1,0,0,1,0,0),n||!y?e.clearRect(0,0,a.canvasWidth,a.canvasHeight):C(e,0,0,a.canvasWidth,a.canvasHeight);var r=p;e.drawImage(t,0,0,a.canvasWidth*r,a.canvasHeight*r,0,0,a.canvasWidth,a.canvasHeight)};(c[a.NODE]||L[a.NODE])&&(W(q,Y,L[a.NODE]),c[a.NODE]=!1),(c[a.DRAG]||L[a.DRAG])&&(W(X,H,L[a.DRAG]),c[a.DRAG]=!1)}a.prevViewport=k,a.clearingMotionBlur&&(a.clearingMotionBlur=!1,a.motionBlurCleared=!0,a.motionBlur=!0),h&&(a.motionBlurTimeout=setTimeout((function(){a.motionBlurTimeout=null,a.clearedForMotionBlur[a.NODE]=!1,a.clearedForMotionBlur[a.DRAG]=!1,a.motionBlur=!1,a.clearingMotionBlur=!d,a.mbFrames=0,c[a.NODE]=!0,c[a.DRAG]=!0,a.redraw()}),100)),t||u.emit("render")};for(var Vs={drawPolygonPath:function(e,t,n,r,i,o){var a=r/2,s=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+a*o[0],n+s*o[1]);for(var u=1;u<o.length/2;u++)e.lineTo(t+a*o[2*u],n+s*o[2*u+1]);e.closePath()},drawRoundPolygonPath:function(e,t,n,r,i,o){var a=r/2,s=i/2,u=Tt(r,i);e.beginPath&&e.beginPath();for(var l=0;l<o.length/4;l++){var c,d=void 0;d=0===l?o.length-2:4*l-2,c=4*l+2;var h=t+a*o[4*l],p=n+s*o[4*l+1],f=-o[d]*o[c]-o[d+1]*o[c+1],v=u/Math.tan(Math.acos(f)/2),g=h-v*o[d],y=p-v*o[d+1],m=h+v*o[c],b=p+v*o[c+1];0===l?e.moveTo(g,y):e.lineTo(g,y),e.arcTo(h,p,m,b,u)}e.closePath()},drawRoundRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2,s=Dt(r,i);e.beginPath&&e.beginPath(),e.moveTo(t,n-a),e.arcTo(t+o,n-a,t+o,n,s),e.arcTo(t+o,n+a,t,n+a,s),e.arcTo(t-o,n+a,t-o,n,s),e.arcTo(t-o,n-a,t,n-a,s),e.lineTo(t,n-a),e.closePath()},drawBottomRoundRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2,s=Dt(r,i);e.beginPath&&e.beginPath(),e.moveTo(t,n-a),e.lineTo(t+o,n-a),e.lineTo(t+o,n),e.arcTo(t+o,n+a,t,n+a,s),e.arcTo(t-o,n+a,t-o,n,s),e.lineTo(t-o,n-a),e.lineTo(t,n-a),e.closePath()},drawCutRectanglePath:function(e,t,n,r,i){var o=r/2,a=i/2;e.beginPath&&e.beginPath(),e.moveTo(t-o+8,n-a),e.lineTo(t+o-8,n-a),e.lineTo(t+o,n-a+8),e.lineTo(t+o,n+a-8),e.lineTo(t+o-8,n+a),e.lineTo(t-o+8,n+a),e.lineTo(t-o,n+a-8),e.lineTo(t-o,n-a+8),e.closePath()},drawBarrelPath:function(e,t,n,r,i){var o=r/2,a=i/2,s=t-o,u=t+o,l=n-a,c=n+a,d=Bt(r,i),h=d.widthOffset,p=d.heightOffset,f=d.ctrlPtOffsetPct*h;e.beginPath&&e.beginPath(),e.moveTo(s,l+p),e.lineTo(s,c-p),e.quadraticCurveTo(s+f,c,s+h,c),e.lineTo(u-h,c),e.quadraticCurveTo(u-f,c,u,c-p),e.lineTo(u,l+p),e.quadraticCurveTo(u-f,l,u-h,l),e.lineTo(s+h,l),e.quadraticCurveTo(s+f,l,s,l+p),e.closePath()}},qs=Math.sin(0),Ys=Math.cos(0),Xs={},Hs={},Ws=Math.PI/40,Gs=0*Math.PI;Gs<2*Math.PI;Gs+=Ws)Xs[Gs]=Math.sin(Gs),Hs[Gs]=Math.cos(Gs);Vs.drawEllipsePath=function(e,t,n,r,i){if(e.beginPath&&e.beginPath(),e.ellipse)e.ellipse(t,n,r/2,i/2,0,0,2*Math.PI);else for(var o,a,s=r/2,u=i/2,l=0*Math.PI;l<2*Math.PI;l+=Ws)o=t-s*Xs[l]*qs+s*Hs[l]*Ys,a=n+u*Hs[l]*qs+u*Xs[l]*Ys,0===l?e.moveTo(o,a):e.lineTo(o,a);e.closePath()};var Us={};function Ks(e){var t=e.indexOf(",");return e.substr(t+1)}function Zs(e,t,n){var r=function(){return t.toDataURL(n,e.quality)};switch(e.output){case"blob-promise":return new Xn((function(r,i){try{t.toBlob((function(e){null!=e?r(e):i(new Error("`canvas.toBlob()` sent a null value in its callback"))}),n,e.quality)}catch(o){i(o)}}));case"blob":return function(e,t){for(var n=atob(e),r=new ArrayBuffer(n.length),i=new Uint8Array(r),o=0;o<n.length;o++)i[o]=n.charCodeAt(o);return new Blob([r],{type:t})}(Ks(r()),n);case"base64":return Ks(r());default:return r()}}Us.createBuffer=function(e,t){var n=document.createElement("canvas");return n.width=e,n.height=t,[n,n.getContext("2d")]},Us.bufferCanvasImage=function(e){var t=this.cy,n=t.mutableElements().boundingBox(),r=this.findContainerClientCoords(),i=e.full?Math.ceil(n.w):r[2],o=e.full?Math.ceil(n.h):r[3],a=k(e.maxWidth)||k(e.maxHeight),s=this.getPixelRatio(),u=1;if(void 0!==e.scale)i*=e.scale,o*=e.scale,u=e.scale;else if(a){var l=1/0,c=1/0;k(e.maxWidth)&&(l=u*e.maxWidth/i),k(e.maxHeight)&&(c=u*e.maxHeight/o),i*=u=Math.min(l,c),o*=u}a||(i*=s,o*=s,u*=s);var d=document.createElement("canvas");d.width=i,d.height=o,d.style.width=i+"px",d.style.height=o+"px";var h=d.getContext("2d");if(i>0&&o>0){h.clearRect(0,0,i,o),h.globalCompositeOperation="source-over";var p=this.getCachedZSortedEles();if(e.full)h.translate(-n.x1*u,-n.y1*u),h.scale(u,u),this.drawElements(h,p),h.scale(1/u,1/u),h.translate(n.x1*u,n.y1*u);else{var f=t.pan(),v={x:f.x*u,y:f.y*u};u*=t.zoom(),h.translate(v.x,v.y),h.scale(u,u),this.drawElements(h,p),h.scale(1/u,1/u),h.translate(-v.x,-v.y)}e.bg&&(h.globalCompositeOperation="destination-over",h.fillStyle=e.bg,h.rect(0,0,i,o),h.fill())}return d},Us.png=function(e){return Zs(e,this.bufferCanvasImage(e),"image/png")},Us.jpg=function(e){return Zs(e,this.bufferCanvasImage(e),"image/jpeg")};var Qs={nodeShapeImpl:function(e,t,n,r,i,o,a){switch(e){case"ellipse":return this.drawEllipsePath(t,n,r,i,o);case"polygon":return this.drawPolygonPath(t,n,r,i,o,a);case"round-polygon":return this.drawRoundPolygonPath(t,n,r,i,o,a);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(t,n,r,i,o);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(t,n,r,i,o);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(t,n,r,i,o);case"barrel":return this.drawBarrelPath(t,n,r,i,o)}}},$s=eu,Js=eu.prototype;function eu(e){var t=this;t.data={canvases:new Array(Js.CANVAS_LAYERS),contexts:new Array(Js.CANVAS_LAYERS),canvasNeedsRedraw:new Array(Js.CANVAS_LAYERS),bufferCanvases:new Array(Js.BUFFER_COUNT),bufferContexts:new Array(Js.CANVAS_LAYERS)};var n="-webkit-tap-highlight-color",r="rgba(0,0,0,0)";t.data.canvasContainer=document.createElement("div");var i=t.data.canvasContainer.style;t.data.canvasContainer.style[n]=r,i.position="relative",i.zIndex="0",i.overflow="hidden";var o=e.cy.container();o.appendChild(t.data.canvasContainer),o.style[n]=r;var a={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};p&&p.userAgent.match(/msie|trident|edge/i)&&(a["-ms-touch-action"]="none",a["touch-action"]="none");for(var s=0;s<Js.CANVAS_LAYERS;s++){var u=t.data.canvases[s]=document.createElement("canvas");t.data.contexts[s]=u.getContext("2d"),Object.keys(a).forEach((function(e){u.style[e]=a[e]})),u.style.position="absolute",u.setAttribute("data-id","layer"+s),u.style.zIndex=String(Js.CANVAS_LAYERS-s),t.data.canvasContainer.appendChild(u),t.data.canvasNeedsRedraw[s]=!1}t.data.topCanvas=t.data.canvases[0],t.data.canvases[Js.NODE].setAttribute("data-id","layer"+Js.NODE+"-node"),t.data.canvases[Js.SELECT_BOX].setAttribute("data-id","layer"+Js.SELECT_BOX+"-selectbox"),t.data.canvases[Js.DRAG].setAttribute("data-id","layer"+Js.DRAG+"-drag");for(s=0;s<Js.BUFFER_COUNT;s++)t.data.bufferCanvases[s]=document.createElement("canvas"),t.data.bufferContexts[s]=t.data.bufferCanvases[s].getContext("2d"),t.data.bufferCanvases[s].style.position="absolute",t.data.bufferCanvases[s].setAttribute("data-id","buffer"+s),t.data.bufferCanvases[s].style.zIndex=String(-s-1),t.data.bufferCanvases[s].style.visibility="hidden";t.pathsEnabled=!0;var l=rt(),c=function(e){return{x:-e.w/2,y:-e.h/2}},d=function(e){return e.boundingBox(),e[0]._private.bodyBounds},h=function(e){return e.boundingBox(),e[0]._private.labelBounds.main||l},f=function(e){return e.boundingBox(),e[0]._private.labelBounds.source||l},v=function(e){return e.boundingBox(),e[0]._private.labelBounds.target||l},g=function(e,t){return t},y=function(e,t,n){var r=e?e+"-":"";return{x:t.x+n.pstyle(r+"text-margin-x").pfValue,y:t.y+n.pstyle(r+"text-margin-y").pfValue}},m=function(e,t,n){var r=e[0]._private.rscratch;return{x:r[t],y:r[n]}},b=t.data.eleTxrCache=new ps(t,{getKey:function(e){return e[0]._private.nodeKey},doesEleInvalidateKey:function(e){var t=e[0]._private;return!(t.oldBackgroundTimestamp===t.backgroundTimestamp)},drawElement:function(e,n,r,i,o){return t.drawElement(e,n,r,!1,!1,o)},getBoundingBox:d,getRotationPoint:function(e){return{x:((t=d(e)).x1+t.x2)/2,y:(t.y1+t.y2)/2};var t},getRotationOffset:function(e){return c(d(e))},allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),x=t.data.lblTxrCache=new ps(t,{getKey:function(e){return e[0]._private.labelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"main",o)},getBoundingBox:h,getRotationPoint:function(e){return y("",m(e,"labelX","labelY"),e)},getRotationOffset:function(e){var t=h(e),n=c(h(e));if(e.isNode()){switch(e.pstyle("text-halign").value){case"left":n.x=-t.w;break;case"right":n.x=0}switch(e.pstyle("text-valign").value){case"top":n.y=-t.h;break;case"bottom":n.y=0}}return n},isVisible:g}),w=t.data.slbTxrCache=new ps(t,{getKey:function(e){return e[0]._private.sourceLabelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"source",o)},getBoundingBox:f,getRotationPoint:function(e){return y("source",m(e,"sourceLabelX","sourceLabelY"),e)},getRotationOffset:function(e){return c(f(e))},isVisible:g}),E=t.data.tlbTxrCache=new ps(t,{getKey:function(e){return e[0]._private.targetLabelStyleKey},drawElement:function(e,n,r,i,o){return t.drawElementText(e,n,r,i,"target",o)},getBoundingBox:v,getRotationPoint:function(e){return y("target",m(e,"targetLabelX","targetLabelY"),e)},getRotationOffset:function(e){return c(v(e))},isVisible:g}),k=t.data.lyrTxrCache=new vs(t);t.onUpdateEleCalcs((function(e,t){b.invalidateElements(t),x.invalidateElements(t),w.invalidateElements(t),E.invalidateElements(t),k.invalidateElements(t);for(var n=0;n<t.length;n++){var r=t[n]._private;r.oldBackgroundTimestamp=r.backgroundTimestamp}}));var P=function(e){for(var t=0;t<e.length;t++)k.enqueueElementRefinement(e[t].ele)};b.onDequeue(P),x.onDequeue(P),w.onDequeue(P),E.onDequeue(P)}Js.CANVAS_LAYERS=3,Js.SELECT_BOX=0,Js.DRAG=1,Js.NODE=2,Js.BUFFER_COUNT=3,Js.TEXTURE_BUFFER=0,Js.MOTIONBLUR_BUFFER_NODE=1,Js.MOTIONBLUR_BUFFER_DRAG=2,Js.redrawHint=function(e,t){var n=this;switch(e){case"eles":n.data.canvasNeedsRedraw[Js.NODE]=t;break;case"drag":n.data.canvasNeedsRedraw[Js.DRAG]=t;break;case"select":n.data.canvasNeedsRedraw[Js.SELECT_BOX]=t}};var tu="undefined"!=typeof Path2D;Js.path2dEnabled=function(e){if(void 0===e)return this.pathsEnabled;this.pathsEnabled=!!e},Js.usePaths=function(){return tu&&this.pathsEnabled},Js.setImgSmoothing=function(e,t){null!=e.imageSmoothingEnabled?e.imageSmoothingEnabled=t:(e.webkitImageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t)},Js.getImgSmoothing=function(e){return null!=e.imageSmoothingEnabled?e.imageSmoothingEnabled:e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled},Js.makeOffscreenCanvas=function(e,t){var n;return"undefined"!==("undefined"==typeof OffscreenCanvas?"undefined":a(OffscreenCanvas))?n=new OffscreenCanvas(e,t):((n=document.createElement("canvas")).width=e,n.height=t),n},[xs,Cs,Ms,Is,Ls,zs,Fs,Vs,Us,Qs].forEach((function(e){R(Js,e)}));var nu=[{type:"layout",extensions:Ia},{type:"renderer",extensions:[{name:"null",impl:La},{name:"base",impl:as},{name:"canvas",impl:$s}]}],ru={},iu={};function ou(e,t,n){var r=n,i=function(n){ge("Can not register `"+t+"` for `"+e+"` since `"+n+"` already exists in the prototype and can not be overridden")};if("core"===e){if(Ko.prototype[t])return i(t);Ko.prototype[t]=n}else if("collection"===e){if(ho.prototype[t])return i(t);ho.prototype[t]=n}else if("layout"===e){for(var o=function(e){this.options=e,n.call(this,e),E(this._private)||(this._private={}),this._private.cy=e.cy,this._private.listeners=[],this.createEmitter()},a=o.prototype=Object.create(n.prototype),s=[],u=0;u<s.length;u++){var l=s[u];a[l]=a[l]||function(){return this}}a.start&&!a.run?a.run=function(){return this.start(),this}:!a.start&&a.run&&(a.start=function(){return this.run(),this});var c=n.prototype.stop;a.stop=function(){var e=this.options;if(e&&e.animate){var t=this.animations;if(t)for(var n=0;n<t.length;n++)t[n].stop()}return c?c.call(this):this.emit("layoutstop"),this},a.destroy||(a.destroy=function(){return this}),a.cy=function(){return this._private.cy};var d=function(e){return e._private.cy},h={addEventFields:function(e,t){t.layout=e,t.cy=d(e),t.target=e},bubble:function(){return!0},parent:function(e){return d(e)}};R(a,{createEmitter:function(){return this._private.emitter=new Di(h,this),this},emitter:function(){return this._private.emitter},on:function(e,t){return this.emitter().on(e,t),this},one:function(e,t){return this.emitter().one(e,t),this},once:function(e,t){return this.emitter().one(e,t),this},removeListener:function(e,t){return this.emitter().removeListener(e,t),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(e,t){return this.emitter().emit(e,t),this}}),Zn.eventAliasesOn(a),r=o}else if("renderer"===e&&"null"!==t&&"base"!==t){var p=au("renderer","base"),f=p.prototype,v=n,g=n.prototype,y=function(){p.apply(this,arguments),v.apply(this,arguments)},m=y.prototype;for(var b in f){var x=f[b];if(null!=g[b])return i(b);m[b]=x}for(var w in g)m[w]=g[w];f.clientFunctions.forEach((function(e){m[e]=m[e]||function(){fe("Renderer does not implement `renderer."+e+"()` on its prototype")}})),r=y}return q({map:ru,keys:[e,t],value:r})}function au(e,t){return Y({map:ru,keys:[e,t]})}function su(e,t,n,r,i){return q({map:iu,keys:[e,t,n,r],value:i})}function uu(e,t,n,r){return Y({map:iu,keys:[e,t,n,r]})}var lu=function(){return 2===arguments.length?au.apply(null,arguments):3===arguments.length?ou.apply(null,arguments):4===arguments.length?uu.apply(null,arguments):5===arguments.length?su.apply(null,arguments):void fe("Invalid extension access syntax")};Ko.prototype.extension=lu,nu.forEach((function(e){e.extensions.forEach((function(t){ou(e.type,t.name,t.impl)}))}));var cu=function e(){if(!(this instanceof e))return new e;this.length=0},du=cu.prototype;du.instanceString=function(){return"stylesheet"},du.selector=function(e){return this[this.length++]={selector:e,properties:[]},this},du.css=function(e,t){var n=this.length-1;if(b(e))this[n].properties.push({name:e,value:t});else if(E(e))for(var r=e,i=Object.keys(r),o=0;o<i.length;o++){var a=i[o],s=r[a];if(null!=s){var u=Xo.properties[a]||Xo.properties[N(a)];if(null!=u){var l=u.name,c=s;this[n].properties.push({name:l,value:c})}}}return this},du.style=du.css,du.generateStyle=function(e){var t=new Xo(e);return this.appendToStyle(t)},du.appendToStyle=function(e){for(var t=0;t<this.length;t++){var n=this[t],r=n.selector,i=n.properties;e.selector(r);for(var o=0;o<i.length;o++){var a=i[o];e.css(a.name,a.value)}}return e};var hu=function(e){return void 0===e&&(e={}),E(e)?new Ko(e):b(e)?lu.apply(lu,arguments):void 0};hu.use=function(e){var t=Array.prototype.slice.call(arguments,1);return t.unshift(hu),e.apply(null,t),this},hu.warnings=function(e){return ve(e)},hu.version="3.20.0",hu.stylesheet=hu.Stylesheet=cu,e.exports=hu},"4e6e":(e,t,n)=>{e.exports={graphlib:n("vC4J"),layout:n("Pivv"),debug:n("zmx7"),util:{time:n("xxjf").time,notime:n("xxjf").notime},version:n("VQMV")}},"1yUy":(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("fd5j");e.exports={run:function(e){var t="greedy"===e.graph().acyclicer?i(e,function(e){return function(t){return e.edge(t).weight}}(e)):function(e){var t=[],n={},i={};function o(a){r.has(i,a)||(i[a]=!0,n[a]=!0,r.forEach(e.outEdges(a),(function(e){r.has(n,e.w)?t.push(e):o(e.w)})),delete n[a])}return r.forEach(e.nodes(),o),t}(e);r.forEach(t,(function(t){var n=e.edge(t);e.removeEdge(t),n.forwardName=t.name,n.reversed=!0,e.setEdge(t.w,t.v,n,r.uniqueId("rev"))}))},undo:function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.reversed){e.removeEdge(t);var r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}}))}}},"0gKz":(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n,r,o,a){var s={width:0,height:0,rank:a,borderType:t},u=o[t][a-1],l=i.addDummyNode(e,"border",s,n);o[t][a]=l,e.setParent(l,r),u&&e.setEdge(u,l,{weight:1})}e.exports=function(e){r.forEach(e.children(),(function t(n){var i=e.children(n),a=e.node(n);if(i.length&&r.forEach(i,t),r.has(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(var s=a.minRank,u=a.maxRank+1;s<u;++s)o(e,"borderLeft","_bl",n,a,s),o(e,"borderRight","_br",n,a,s)}}))}},"+jFT":(e,t,n)=>{"use strict";var r=n("gjtd");function i(e){r.forEach(e.nodes(),(function(t){o(e.node(t))})),r.forEach(e.edges(),(function(t){o(e.edge(t))}))}function o(e){var t=e.width;e.width=e.height,e.height=t}function a(e){e.y=-e.y}function s(e){var t=e.x;e.x=e.y,e.y=t}e.exports={adjust:function(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||i(e)},undo:function(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||function(e){r.forEach(e.nodes(),(function(t){a(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,a),r.has(n,"y")&&a(n)}))}(e);"lr"!==t&&"rl"!==t||(!function(e){r.forEach(e.nodes(),(function(t){s(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,s),r.has(n,"x")&&s(n)}))}(e),i(e))}}},"ge/d":e=>{function t(){var e={};e._next=e._prev=e,this._sentinel=e}function n(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function r(e,t){if("_next"!==e&&"_prev"!==e)return t}e.exports=t,t.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return n(t),t},t.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t},t.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,r)),n=n._prev;return"["+e.join(", ")+"]"}},zmx7:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf"),o=n("vC4J").Graph;e.exports={debugOrdering:function(e){var t=i.buildLayerMatrix(e),n=new o({compound:!0,multigraph:!0}).setGraph({});return r.forEach(e.nodes(),(function(t){n.setNode(t,{label:t}),n.setParent(t,"layer"+e.node(t).rank)})),r.forEach(e.edges(),(function(e){n.setEdge(e.v,e.w,{},e.name)})),r.forEach(t,(function(e,t){var i="layer"+t;n.setNode(i,{rank:"same"}),r.reduce(e,(function(e,t){return n.setEdge(e,t,{style:"invis"}),t}))})),n}}},vC4J:(e,t,n)=>{var r;try{r=n("YlUH")}catch(i){}r||(r=window.graphlib),e.exports=r},fd5j:(e,t,n)=>{var r=n("gjtd"),i=n("vC4J").Graph,o=n("ge/d");e.exports=function(e,t){if(e.nodeCount()<=1)return[];var n=function(e,t){var n=new i,a=0,s=0;r.forEach(e.nodes(),(function(e){n.setNode(e,{v:e,in:0,out:0})})),r.forEach(e.edges(),(function(e){var r=n.edge(e.v,e.w)||0,i=t(e),o=r+i;n.setEdge(e.v,e.w,o),s=Math.max(s,n.node(e.v).out+=i),a=Math.max(a,n.node(e.w).in+=i)}));var l=r.range(s+a+3).map((function(){return new o})),c=a+1;return r.forEach(n.nodes(),(function(e){u(l,c,n.node(e))})),{graph:n,buckets:l,zeroIdx:c}}(e,t||a),l=function(e,t,n){var r,i=[],o=t[t.length-1],a=t[0];for(;e.nodeCount();){for(;r=a.dequeue();)s(e,t,n,r);for(;r=o.dequeue();)s(e,t,n,r);if(e.nodeCount())for(var u=t.length-2;u>0;--u)if(r=t[u].dequeue()){i=i.concat(s(e,t,n,r,!0));break}}return i}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(l,(function(t){return e.outEdges(t.v,t.w)})),!0)};var a=r.constant(1);function s(e,t,n,i,o){var a=o?[]:void 0;return r.forEach(e.inEdges(i.v),(function(r){var i=e.edge(r),s=e.node(r.v);o&&a.push({v:r.v,w:r.w}),s.out-=i,u(t,n,s)})),r.forEach(e.outEdges(i.v),(function(r){var i=e.edge(r),o=r.w,a=e.node(o);a.in-=i,u(t,n,a)})),e.removeNode(i.v),a}function u(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}},Pivv:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("1yUy"),o=n("RmLA"),a=n("4DVH"),s=n("xxjf").normalizeRanks,u=n("JUZX"),l=n("xxjf").removeEmptyRanks,c=n("wHMW"),d=n("0gKz"),h=n("+jFT"),p=n("erCh"),f=n("Nebv"),v=n("xxjf"),g=n("vC4J").Graph;e.exports=function(e,t){var n=t&&t.debugTiming?v.time:v.notime;n("layout",(function(){var t=n(" buildLayoutGraph",(function(){return function(e){var t=new g({multigraph:!0,compound:!0}),n=C(e.graph());return t.setGraph(r.merge({},m,S(n,y),r.pick(n,b))),r.forEach(e.nodes(),(function(n){var i=C(e.node(n));t.setNode(n,r.defaults(S(i,x),w)),t.setParent(n,e.parent(n))})),r.forEach(e.edges(),(function(n){var i=C(e.edge(n));t.setEdge(n,r.merge({},k,S(i,E),r.pick(i,P)))})),t}(e)}));n(" runLayout",(function(){!function(e,t){t(" makeSpaceForEdgeLabels",(function(){!function(e){var t=e.graph();t.ranksep/=2,r.forEach(e.edges(),(function(n){var r=e.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===t.rankdir||"BT"===t.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(e)})),t(" removeSelfEdges",(function(){!function(e){r.forEach(e.edges(),(function(t){if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}}))}(e)})),t(" acyclic",(function(){i.run(e)})),t(" nestingGraph.run",(function(){c.run(e)})),t(" rank",(function(){a(v.asNonCompoundGraph(e))})),t(" injectEdgeLabelProxies",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.width&&n.height){var r=e.node(t.v),i={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};v.addDummyNode(e,"edge-proxy",i,"_ep")}}))}(e)})),t(" removeEmptyRanks",(function(){l(e)})),t(" nestingGraph.cleanup",(function(){c.cleanup(e)})),t(" normalizeRanks",(function(){s(e)})),t(" assignRankMinMax",(function(){!function(e){var t=0;r.forEach(e.nodes(),(function(n){var i=e.node(n);i.borderTop&&(i.minRank=e.node(i.borderTop).rank,i.maxRank=e.node(i.borderBottom).rank,t=r.max(t,i.maxRank))})),e.graph().maxRank=t}(e)})),t(" removeEdgeLabelProxies",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);"edge-proxy"===n.dummy&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))}))}(e)})),t(" normalize.run",(function(){o.run(e)})),t(" parentDummyChains",(function(){u(e)})),t(" addBorderSegments",(function(){d(e)})),t(" order",(function(){p(e)})),t(" insertSelfEdges",(function(){!function(e){var t=v.buildLayerMatrix(e);r.forEach(t,(function(t){var n=0;r.forEach(t,(function(t,i){var o=e.node(t);o.order=i+n,r.forEach(o.selfEdges,(function(t){v.addDummyNode(e,"selfedge",{width:t.label.width,height:t.label.height,rank:o.rank,order:i+ ++n,e:t.e,label:t.label},"_se")})),delete o.selfEdges}))}))}(e)})),t(" adjustCoordinateSystem",(function(){h.adjust(e)})),t(" position",(function(){f(e)})),t(" positionSelfEdges",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);if("selfedge"===n.dummy){var r=e.node(n.e.v),i=r.x+r.width/2,o=r.y,a=n.x-i,s=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:i+2*a/3,y:o-s},{x:i+5*a/6,y:o-s},{x:i+a,y:o},{x:i+5*a/6,y:o+s},{x:i+2*a/3,y:o+s}],n.label.x=n.x,n.label.y=n.y}}))}(e)})),t(" removeBorderNodes",(function(){!function(e){r.forEach(e.nodes(),(function(t){if(e.children(t).length){var n=e.node(t),i=e.node(n.borderTop),o=e.node(n.borderBottom),a=e.node(r.last(n.borderLeft)),s=e.node(r.last(n.borderRight));n.width=Math.abs(s.x-a.x),n.height=Math.abs(o.y-i.y),n.x=a.x+n.width/2,n.y=i.y+n.height/2}})),r.forEach(e.nodes(),(function(t){"border"===e.node(t).dummy&&e.removeNode(t)}))}(e)})),t(" normalize.undo",(function(){o.undo(e)})),t(" fixupEdgeLabelCoords",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(e)})),t(" undoCoordinateSystem",(function(){h.undo(e)})),t(" translateGraph",(function(){!function(e){var t=Number.POSITIVE_INFINITY,n=0,i=Number.POSITIVE_INFINITY,o=0,a=e.graph(),s=a.marginx||0,u=a.marginy||0;function l(e){var r=e.x,a=e.y,s=e.width,u=e.height;t=Math.min(t,r-s/2),n=Math.max(n,r+s/2),i=Math.min(i,a-u/2),o=Math.max(o,a+u/2)}r.forEach(e.nodes(),(function(t){l(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.has(n,"x")&&l(n)})),t-=s,i-=u,r.forEach(e.nodes(),(function(n){var r=e.node(n);r.x-=t,r.y-=i})),r.forEach(e.edges(),(function(n){var o=e.edge(n);r.forEach(o.points,(function(e){e.x-=t,e.y-=i})),r.has(o,"x")&&(o.x-=t),r.has(o,"y")&&(o.y-=i)})),a.width=n-t+s,a.height=o-i+u}(e)})),t(" assignNodeIntersects",(function(){!function(e){r.forEach(e.edges(),(function(t){var n,r,i=e.edge(t),o=e.node(t.v),a=e.node(t.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=a,r=o),i.points.unshift(v.intersectRect(o,n)),i.points.push(v.intersectRect(a,r))}))}(e)})),t(" reversePoints",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);n.reversed&&n.points.reverse()}))}(e)})),t(" acyclic.undo",(function(){i.undo(e)}))}(t,n)})),n(" updateInputGraph",(function(){!function(e,t){r.forEach(e.nodes(),(function(n){var r=e.node(n),i=t.node(n);r&&(r.x=i.x,r.y=i.y,t.children(n).length&&(r.width=i.width,r.height=i.height))})),r.forEach(e.edges(),(function(n){var i=e.edge(n),o=t.edge(n);i.points=o.points,r.has(o,"x")&&(i.x=o.x,i.y=o.y)})),e.graph().width=t.graph().width,e.graph().height=t.graph().height}(e,t)}))}))};var y=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},b=["acyclicer","ranker","rankdir","align"],x=["width","height"],w={width:0,height:0},E=["minlen","weight","width","height","labeloffset"],k={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},P=["labelpos"];function S(e,t){return r.mapValues(r.pick(e,t),Number)}function C(e){var t={};return r.forEach(e,(function(e,n){t[n.toLowerCase()]=e})),t}},gjtd:(e,t,n)=>{var r;try{r={cloneDeep:n("c2re"),constant:n("eN33"),defaults:n("WHWN"),each:n("h4um"),filter:n("+DnP"),find:n("6R5o"),flatten:n("1xil"),forEach:n("9SCj"),forIn:n("ZVKf"),has:n("1mr4"),isUndefined:n("CZlo"),last:n("p1C/"),map:n("mbB6"),mapValues:n("y2Ah"),max:n("LPC+"),merge:n("H8sf"),min:n("Z3AG"),minBy:n("PKEM"),now:n("ENE1"),pick:n("//nZ"),range:n("Cmkl"),reduce:n("veKZ"),sortBy:n("u6DZ"),uniqueId:n("w0mW"),values:n("0iyY"),zipObject:n("OUo6")}}catch(i){}r||(r=window._),e.exports=r},wHMW:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n,a,s,u,l){var c=e.children(l);if(c.length){var d=i.addBorderNode(e,"_bt"),h=i.addBorderNode(e,"_bb"),p=e.node(l);e.setParent(d,l),p.borderTop=d,e.setParent(h,l),p.borderBottom=h,r.forEach(c,(function(r){o(e,t,n,a,s,u,r);var i=e.node(r),c=i.borderTop?i.borderTop:r,p=i.borderBottom?i.borderBottom:r,f=i.borderTop?a:2*a,v=c!==p?1:s-u[l]+1;e.setEdge(d,c,{weight:f,minlen:v,nestingEdge:!0}),e.setEdge(p,h,{weight:f,minlen:v,nestingEdge:!0})})),e.parent(l)||e.setEdge(t,d,{weight:0,minlen:s+u[l]})}else l!==t&&e.setEdge(t,l,{weight:0,minlen:n})}e.exports={run:function(e){var t=i.addDummyNode(e,"root",{},"_root"),n=function(e){var t={};function n(i,o){var a=e.children(i);a&&a.length&&r.forEach(a,(function(e){n(e,o+1)})),t[i]=o}return r.forEach(e.children(),(function(e){n(e,1)})),t}(e),a=r.max(r.values(n))-1,s=2*a+1;e.graph().nestingRoot=t,r.forEach(e.edges(),(function(t){e.edge(t).minlen*=s}));var u=function(e){return r.reduce(e.edges(),(function(t,n){return t+e.edge(n).weight}),0)}(e)+1;r.forEach(e.children(),(function(r){o(e,t,s,u,a,n,r)})),e.graph().nodeRankFactor=s},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,r.forEach(e.edges(),(function(t){e.edge(t).nestingEdge&&e.removeEdge(t)}))}}},RmLA:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("xxjf");e.exports={run:function(e){e.graph().dummyChains=[],r.forEach(e.edges(),(function(t){!function(e,t){var n,r,o,a=t.v,s=e.node(a).rank,u=t.w,l=e.node(u).rank,c=t.name,d=e.edge(t),h=d.labelRank;if(l===s+1)return;for(e.removeEdge(t),o=0,++s;s<l;++o,++s)d.points=[],r={width:0,height:0,edgeLabel:d,edgeObj:t,rank:s},n=i.addDummyNode(e,"edge",r,"_d"),s===h&&(r.width=d.width,r.height=d.height,r.dummy="edge-label",r.labelpos=d.labelpos),e.setEdge(a,n,{weight:d.weight},c),0===o&&e.graph().dummyChains.push(n),a=n;e.setEdge(a,u,{weight:d.weight},c)}(e,t)}))},undo:function(e){r.forEach(e.graph().dummyChains,(function(t){var n,r=e.node(t),i=r.edgeLabel;for(e.setEdge(r.edgeObj,i);r.dummy;)n=e.successors(t)[0],e.removeNode(t),i.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(i.x=r.x,i.y=r.y,i.width=r.width,i.height=r.height),t=n,r=e.node(t)}))}}},DzXQ:(e,t,n)=>{var r=n("gjtd");e.exports=function(e,t,n){var i,o={};r.forEach(n,(function(n){for(var r,a,s=e.parent(n);s;){if((r=e.parent(s))?(a=o[r],o[r]=s):(a=i,i=s),a&&a!==s)return void t.setEdge(a,s);s=r}}))}},gP9q:(e,t,n)=>{var r=n("gjtd");e.exports=function(e,t){return r.map(t,(function(t){var n=e.inEdges(t);if(n.length){var i=r.reduce(n,(function(t,n){var r=e.edge(n),i=e.node(n.v);return{sum:t.sum+r.weight*i.order,weight:t.weight+r.weight}}),{sum:0,weight:0});return{v:t,barycenter:i.sum/i.weight,weight:i.weight}}return{v:t}}))}},D5rW:(e,t,n)=>{var r=n("gjtd"),i=n("vC4J").Graph;e.exports=function(e,t,n){var o=function(e){var t;for(;e.hasNode(t=r.uniqueId("_root")););return t}(e),a=new i({compound:!0}).setGraph({root:o}).setDefaultNodeLabel((function(t){return e.node(t)}));return r.forEach(e.nodes(),(function(i){var s=e.node(i),u=e.parent(i);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(a.setNode(i),a.setParent(i,u||o),r.forEach(e[n](i),(function(t){var n=t.v===i?t.w:t.v,o=a.edge(n,i),s=r.isUndefined(o)?0:o.weight;a.setEdge(n,i,{weight:e.edge(t).weight+s})})),r.has(s,"minRank")&&a.setNode(i,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))})),a}},YZb2:(e,t,n)=>{"use strict";var r=n("gjtd");function i(e,t,n){for(var i=r.zipObject(n,r.map(n,(function(e,t){return t}))),o=r.flatten(r.map(t,(function(t){return r.sortBy(r.map(e.outEdges(t),(function(t){return{pos:i[t.w],weight:e.edge(t).weight}})),"pos")})),!0),a=1;a<n.length;)a<<=1;var s=2*a-1;a-=1;var u=r.map(new Array(s),(function(){return 0})),l=0;return r.forEach(o.forEach((function(e){var t=e.pos+a;u[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=u[t+1]),u[t=t-1>>1]+=e.weight;l+=e.weight*n}))),l}e.exports=function(e,t){for(var n=0,r=1;r<t.length;++r)n+=i(e,t[r-1],t[r]);return n}},erCh:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("NI55"),o=n("YZb2"),a=n("Qsja"),s=n("D5rW"),u=n("DzXQ"),l=n("vC4J").Graph,c=n("xxjf");function d(e,t,n){return r.map(t,(function(t){return s(e,t,n)}))}function h(e,t){var n=new l;r.forEach(e,(function(e){var i=e.graph().root,o=a(e,i,n,t);r.forEach(o.vs,(function(t,n){e.node(t).order=n})),u(e,n,o.vs)}))}function p(e,t){r.forEach(t,(function(t){r.forEach(t,(function(t,n){e.node(t).order=n}))}))}e.exports=function(e){var t=c.maxRank(e),n=d(e,r.range(1,t+1),"inEdges"),a=d(e,r.range(t-1,-1,-1),"outEdges"),s=i(e);p(e,s);for(var u,l=Number.POSITIVE_INFINITY,f=0,v=0;v<4;++f,++v){h(f%2?n:a,f%4>=2),s=c.buildLayerMatrix(e);var g=o(e,s);g<l&&(v=0,u=r.cloneDeep(s),l=g)}p(e,u)}},NI55:(e,t,n)=>{"use strict";var r=n("gjtd");e.exports=function(e){var t={},n=r.filter(e.nodes(),(function(t){return!e.children(t).length})),i=r.max(r.map(n,(function(t){return e.node(t).rank}))),o=r.map(r.range(i+1),(function(){return[]}));var a=r.sortBy(n,(function(t){return e.node(t).rank}));return r.forEach(a,(function n(i){if(r.has(t,i))return;t[i]=!0;var a=e.node(i);o[a.rank].push(i),r.forEach(e.successors(i),n)})),o}},Hp3j:(e,t,n)=>{"use strict";var r=n("gjtd");e.exports=function(e,t){var n={};return r.forEach(e,(function(e,t){var i=n[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};r.isUndefined(e.barycenter)||(i.barycenter=e.barycenter,i.weight=e.weight)})),r.forEach(t.edges(),(function(e){var t=n[e.v],i=n[e.w];r.isUndefined(t)||r.isUndefined(i)||(i.indegree++,t.out.push(n[e.w]))})),function(e){var t=[];function n(e){return function(t){t.merged||(r.isUndefined(t.barycenter)||r.isUndefined(e.barycenter)||t.barycenter>=e.barycenter)&&function(e,t){var n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight);t.weight&&(n+=t.barycenter*t.weight,r+=t.weight);e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}(e,t)}}function i(t){return function(n){n.in.push(t),0==--n.indegree&&e.push(n)}}for(;e.length;){var o=e.pop();t.push(o),r.forEach(o.in.reverse(),n(o)),r.forEach(o.out,i(o))}return r.map(r.filter(t,(function(e){return!e.merged})),(function(e){return r.pick(e,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(e){return!e.indegree})))}},Qsja:(e,t,n)=>{var r=n("gjtd"),i=n("gP9q"),o=n("Hp3j"),a=n("zBPj");e.exports=function e(t,n,s,u){var l=t.children(n),c=t.node(n),d=c?c.borderLeft:void 0,h=c?c.borderRight:void 0,p={};d&&(l=r.filter(l,(function(e){return e!==d&&e!==h})));var f=i(t,l);r.forEach(f,(function(n){if(t.children(n.v).length){var i=e(t,n.v,s,u);p[n.v]=i,r.has(i,"barycenter")&&(o=n,a=i,r.isUndefined(o.barycenter)?(o.barycenter=a.barycenter,o.weight=a.weight):(o.barycenter=(o.barycenter*o.weight+a.barycenter*a.weight)/(o.weight+a.weight),o.weight+=a.weight))}var o,a}));var v=o(f,s);!function(e,t){r.forEach(e,(function(e){e.vs=r.flatten(e.vs.map((function(e){return t[e]?t[e].vs:e})),!0)}))}(v,p);var g=a(v,u);if(d&&(g.vs=r.flatten([d,g.vs,h],!0),t.predecessors(d).length)){var y=t.node(t.predecessors(d)[0]),m=t.node(t.predecessors(h)[0]);r.has(g,"barycenter")||(g.barycenter=0,g.weight=0),g.barycenter=(g.barycenter*g.weight+y.order+m.order)/(g.weight+2),g.weight+=2}return g}},zBPj:(e,t,n)=>{var r=n("gjtd"),i=n("xxjf");function o(e,t,n){for(var i;t.length&&(i=r.last(t)).i<=n;)t.pop(),e.push(i.vs),n++;return n}e.exports=function(e,t){var n=i.partition(e,(function(e){return r.has(e,"barycenter")})),a=n.lhs,s=r.sortBy(n.rhs,(function(e){return-e.i})),u=[],l=0,c=0,d=0;a.sort((h=!!t,function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:h?t.i-e.i:e.i-t.i})),d=o(u,s,d),r.forEach(a,(function(e){d+=e.vs.length,u.push(e.vs),l+=e.barycenter*e.weight,c+=e.weight,d=o(u,s,d)}));var h;var p={vs:r.flatten(u,!0)};c&&(p.barycenter=l/c,p.weight=c);return p}},JUZX:(e,t,n)=>{var r=n("gjtd");e.exports=function(e){var t=function(e){var t={},n=0;function i(o){var a=n;r.forEach(e.children(o),i),t[o]={low:a,lim:n++}}return r.forEach(e.children(),i),t}(e);r.forEach(e.graph().dummyChains,(function(n){for(var r=e.node(n),i=r.edgeObj,o=function(e,t,n,r){var i,o,a=[],s=[],u=Math.min(t[n].low,t[r].low),l=Math.max(t[n].lim,t[r].lim);i=n;do{i=e.parent(i),a.push(i)}while(i&&(t[i].low>u||l>t[i].lim));o=i,i=r;for(;(i=e.parent(i))!==o;)s.push(i);return{path:a.concat(s.reverse()),lca:o}}(e,t,i.v,i.w),a=o.path,s=o.lca,u=0,l=a[u],c=!0;n!==i.w;){if(r=e.node(n),c){for(;(l=a[u])!==s&&e.node(l).maxRank<r.rank;)u++;l===s&&(c=!1)}if(!c){for(;u<a.length-1&&e.node(l=a[u+1]).minRank<=r.rank;)u++;l=a[u]}e.setParent(n,l),n=e.successors(n)[0]}}))}},xaOS:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph,o=n("xxjf");function a(e,t){var n={};return r.reduce(t,(function(t,i){var o=0,a=0,s=t.length,l=r.last(i);return r.forEach(i,(function(t,c){var d=function(e,t){if(e.node(t).dummy)return r.find(e.predecessors(t),(function(t){return e.node(t).dummy}))}(e,t),h=d?e.node(d).order:s;(d||t===l)&&(r.forEach(i.slice(a,c+1),(function(t){r.forEach(e.predecessors(t),(function(r){var i=e.node(r),a=i.order;!(a<o||h<a)||i.dummy&&e.node(t).dummy||u(n,r,t)}))})),a=c+1,o=h)})),i})),n}function s(e,t){var n={};function i(t,i,o,a,s){var l;r.forEach(r.range(i,o),(function(i){l=t[i],e.node(l).dummy&&r.forEach(e.predecessors(l),(function(t){var r=e.node(t);r.dummy&&(r.order<a||r.order>s)&&u(n,t,l)}))}))}return r.reduce(t,(function(t,n){var o,a=-1,s=0;return r.forEach(n,(function(r,u){if("border"===e.node(r).dummy){var l=e.predecessors(r);l.length&&(o=e.node(l[0]).order,i(n,s,u,a,o),s=u,a=o)}i(n,s,n.length,o,t.length)})),n})),n}function u(e,t,n){if(t>n){var r=t;t=n,n=r}var i=e[t];i||(e[t]=i={}),i[n]=!0}function l(e,t,n){if(t>n){var i=t;t=n,n=i}return r.has(e[t],n)}function c(e,t,n,i){var o={},a={},s={};return r.forEach(t,(function(e){r.forEach(e,(function(e,t){o[e]=e,a[e]=e,s[e]=t}))})),r.forEach(t,(function(e){var t=-1;r.forEach(e,(function(e){var u=i(e);if(u.length){u=r.sortBy(u,(function(e){return s[e]}));for(var c=(u.length-1)/2,d=Math.floor(c),h=Math.ceil(c);d<=h;++d){var p=u[d];a[e]===e&&t<s[p]&&!l(n,e,p)&&(a[p]=e,a[e]=o[e]=o[p],t=s[p])}}}))})),{root:o,align:a}}function d(e,t,n,o,a){var s={},u=function(e,t,n,o){var a=new i,s=e.graph(),u=function(e,t,n){return function(i,o,a){var s,u=i.node(o),l=i.node(a),c=0;if(c+=u.width/2,r.has(u,"labelpos"))switch(u.labelpos.toLowerCase()){case"l":s=-u.width/2;break;case"r":s=u.width/2}if(s&&(c+=n?s:-s),s=0,c+=(u.dummy?t:e)/2,c+=(l.dummy?t:e)/2,c+=l.width/2,r.has(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":s=l.width/2;break;case"r":s=-l.width/2}return s&&(c+=n?s:-s),s=0,c}}(s.nodesep,s.edgesep,o);return r.forEach(t,(function(t){var i;r.forEach(t,(function(t){var r=n[t];if(a.setNode(r),i){var o=n[i],s=a.edge(o,r);a.setEdge(o,r,Math.max(u(e,t,i),s||0))}i=t}))})),a}(e,t,n,a),l=a?"borderLeft":"borderRight";function c(e,t){for(var n=u.nodes(),r=n.pop(),i={};r;)i[r]?e(r):(i[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}return c((function(e){s[e]=u.inEdges(e).reduce((function(e,t){return Math.max(e,s[t.v]+u.edge(t))}),0)}),u.predecessors.bind(u)),c((function(t){var n=u.outEdges(t).reduce((function(e,t){return Math.min(e,s[t.w]-u.edge(t))}),Number.POSITIVE_INFINITY),r=e.node(t);n!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(s[t]=Math.max(s[t],n))}),u.successors.bind(u)),r.forEach(o,(function(e){s[e]=s[n[e]]})),s}function h(e,t){return r.minBy(r.values(t),(function(t){var n=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY;return r.forIn(t,(function(t,r){var o=function(e,t){return e.node(t).width}(e,r)/2;n=Math.max(t+o,n),i=Math.min(t-o,i)})),n-i}))}function p(e,t){var n=r.values(t),i=r.min(n),o=r.max(n);r.forEach(["u","d"],(function(n){r.forEach(["l","r"],(function(a){var s,u=n+a,l=e[u];if(l!==t){var c=r.values(l);(s="l"===a?i-r.min(c):o-r.max(c))&&(e[u]=r.mapValues(l,(function(e){return e+s})))}}))}))}function f(e,t){return r.mapValues(e.ul,(function(n,i){if(t)return e[t.toLowerCase()][i];var o=r.sortBy(r.map(e,i));return(o[1]+o[2])/2}))}e.exports={positionX:function(e){var t,n=o.buildLayerMatrix(e),i=r.merge(a(e,n),s(e,n)),u={};r.forEach(["u","d"],(function(o){t="u"===o?n:r.values(n).reverse(),r.forEach(["l","r"],(function(n){"r"===n&&(t=r.map(t,(function(e){return r.values(e).reverse()})));var a=("u"===o?e.predecessors:e.successors).bind(e),s=c(e,t,i,a),l=d(e,t,s.root,s.align,"r"===n);"r"===n&&(l=r.mapValues(l,(function(e){return-e}))),u[o+n]=l}))}));var l=h(e,u);return p(u,l),f(u,e.graph().align)},findType1Conflicts:a,findType2Conflicts:s,addConflict:u,hasConflict:l,verticalAlignment:c,horizontalCompaction:d,alignCoordinates:p,findSmallestWidthAlignment:h,balance:f}},Nebv:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("xxjf"),o=n("xaOS").positionX;e.exports=function(e){(function(e){var t=i.buildLayerMatrix(e),n=e.graph().ranksep,o=0;r.forEach(t,(function(t){var i=r.max(r.map(t,(function(t){return e.node(t).height})));r.forEach(t,(function(t){e.node(t).y=o+i/2})),o+=i+n}))})(e=i.asNonCompoundGraph(e)),r.forEach(o(e),(function(t,n){e.node(n).x=t}))}},"58Ui":(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph,o=n("K8/D").slack;function a(e,t){return r.forEach(e.nodes(),(function n(i){r.forEach(t.nodeEdges(i),(function(r){var a=r.v,s=i===a?r.w:a;e.hasNode(s)||o(t,r)||(e.setNode(s,{}),e.setEdge(i,s,{}),n(s))}))})),e.nodeCount()}function s(e,t){return r.minBy(t.edges(),(function(n){if(e.hasNode(n.v)!==e.hasNode(n.w))return o(t,n)}))}function u(e,t,n){r.forEach(e.nodes(),(function(e){t.node(e).rank+=n}))}e.exports=function(e){var t,n,r=new i({directed:!1}),l=e.nodes()[0],c=e.nodeCount();r.setNode(l,{});for(;a(r,e)<c;)t=s(r,e),n=r.hasNode(t.v)?o(e,t):-o(e,t),u(r,e,n);return r}},"4DVH":(e,t,n)=>{"use strict";var r=n("K8/D").longestPath,i=n("58Ui"),o=n("EMSI");e.exports=function(e){switch(e.graph().ranker){default:s(e);break;case"tight-tree":!function(e){r(e),i(e)}(e);break;case"longest-path":a(e)}};var a=r;function s(e){o(e)}},EMSI:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("58Ui"),o=n("K8/D").slack,a=n("K8/D").longestPath,s=n("vC4J").alg.preorder,u=n("vC4J").alg.postorder,l=n("xxjf").simplify;function c(e){e=l(e),a(e);var t,n=i(e);for(p(n),d(n,e);t=v(n);)y(n,e,t,g(n,e,t))}function d(e,t){var n=u(e,e.nodes());n=n.slice(0,n.length-1),r.forEach(n,(function(n){!function(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=h(e,t,n)}(e,t,n)}))}function h(e,t,n){var i=e.node(n).parent,o=!0,a=t.edge(n,i),s=0;return a||(o=!1,a=t.edge(i,n)),s=a.weight,r.forEach(t.nodeEdges(n),(function(r){var a,u,l=r.v===n,c=l?r.w:r.v;if(c!==i){var d=l===o,h=t.edge(r).weight;if(s+=d?h:-h,a=n,u=c,e.hasEdge(a,u)){var p=e.edge(n,c).cutvalue;s+=d?-p:p}}})),s}function p(e,t){arguments.length<2&&(t=e.nodes()[0]),f(e,{},1,t)}function f(e,t,n,i,o){var a=n,s=e.node(i);return t[i]=!0,r.forEach(e.neighbors(i),(function(o){r.has(t,o)||(n=f(e,t,n,o,i))})),s.low=a,s.lim=n++,o?s.parent=o:delete s.parent,n}function v(e){return r.find(e.edges(),(function(t){return e.edge(t).cutvalue<0}))}function g(e,t,n){var i=n.v,a=n.w;t.hasEdge(i,a)||(i=n.w,a=n.v);var s=e.node(i),u=e.node(a),l=s,c=!1;s.lim>u.lim&&(l=u,c=!0);var d=r.filter(t.edges(),(function(t){return c===m(e,e.node(t.v),l)&&c!==m(e,e.node(t.w),l)}));return r.minBy(d,(function(e){return o(t,e)}))}function y(e,t,n,i){var o=n.v,a=n.w;e.removeEdge(o,a),e.setEdge(i.v,i.w,{}),p(e),d(e,t),function(e,t){var n=r.find(e.nodes(),(function(e){return!t.node(e).parent})),i=s(e,n);i=i.slice(1),r.forEach(i,(function(n){var r=e.node(n).parent,i=t.edge(n,r),o=!1;i||(i=t.edge(r,n),o=!0),t.node(n).rank=t.node(r).rank+(o?i.minlen:-i.minlen)}))}(e,t)}function m(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}e.exports=c,c.initLowLimValues=p,c.initCutValues=d,c.calcCutValue=h,c.leaveEdge=v,c.enterEdge=g,c.exchangeEdges=y},"K8/D":(e,t,n)=>{"use strict";var r=n("gjtd");e.exports={longestPath:function(e){var t={};r.forEach(e.sources(),(function n(i){var o=e.node(i);if(r.has(t,i))return o.rank;t[i]=!0;var a=r.min(r.map(e.outEdges(i),(function(t){return n(t.w)-e.edge(t).minlen})));return a!==Number.POSITIVE_INFINITY&&null!=a||(a=0),o.rank=a}))},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}},xxjf:(e,t,n)=>{"use strict";var r=n("gjtd"),i=n("vC4J").Graph;function o(e,t,n,i){var o;do{o=r.uniqueId(i)}while(e.hasNode(o));return n.dummy=t,e.setNode(o,n),o}function a(e){return r.max(r.map(e.nodes(),(function(t){var n=e.node(t).rank;if(!r.isUndefined(n))return n})))}e.exports={addDummyNode:o,simplify:function(e){var t=(new i).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){var r=t.edge(n.v,n.w)||{weight:0,minlen:1},i=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})})),t},asNonCompoundGraph:function(e){var t=new i({multigraph:e.isMultigraph()}).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){e.children(n).length||t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){t.setEdge(n,e.edge(n))})),t},successorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.outEdges(t),(function(t){n[t.w]=(n[t.w]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},predecessorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.inEdges(t),(function(t){n[t.v]=(n[t.v]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},intersectRect:function(e,t){var n,r,i=e.x,o=e.y,a=t.x-i,s=t.y-o,u=e.width/2,l=e.height/2;if(!a&&!s)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(s)*u>Math.abs(a)*l?(s<0&&(l=-l),n=l*a/s,r=l):(a<0&&(u=-u),n=u,r=u*s/a);return{x:i+n,y:o+r}},buildLayerMatrix:function(e){var t=r.map(r.range(a(e)+1),(function(){return[]}));return r.forEach(e.nodes(),(function(n){var i=e.node(n),o=i.rank;r.isUndefined(o)||(t[o][i.order]=n)})),t},normalizeRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank})));r.forEach(e.nodes(),(function(n){var i=e.node(n);r.has(i,"rank")&&(i.rank-=t)}))},removeEmptyRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank}))),n=[];r.forEach(e.nodes(),(function(r){var i=e.node(r).rank-t;n[i]||(n[i]=[]),n[i].push(r)}));var i=0,o=e.graph().nodeRankFactor;r.forEach(n,(function(t,n){r.isUndefined(t)&&n%o!=0?--i:i&&r.forEach(t,(function(t){e.node(t).rank+=i}))}))},addBorderNode:function(e,t,n,r){var i={width:0,height:0};arguments.length>=4&&(i.rank=n,i.order=r);return o(e,"border",i,t)},maxRank:a,partition:function(e,t){var n={lhs:[],rhs:[]};return r.forEach(e,(function(e){t(e)?n.lhs.push(e):n.rhs.push(e)})),n},time:function(e,t){var n=r.now();try{return t()}finally{console.log(e+" time: "+(r.now()-n)+"ms")}},notime:function(e,t){return t()}}},VQMV:e=>{e.exports="0.8.5"},YlUH:(e,t,n)=>{var r=n("1qSF");e.exports={Graph:r.Graph,json:n("M2c1"),alg:n("ZCKZ"),version:r.version}},qC43:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e){var t,n={},i=[];function o(i){r.has(n,i)||(n[i]=!0,t.push(i),r.each(e.successors(i),o),r.each(e.predecessors(i),o))}return r.each(e.nodes(),(function(e){t=[],o(e),t.length&&i.push(t)})),i}},"5Ck4":(e,t,n)=>{var r=n("Jl0P");function i(e,t,n,o,a,s){r.has(o,t)||(o[t]=!0,n||s.push(t),r.each(a(t),(function(t){i(e,t,n,o,a,s)})),n&&s.push(t))}e.exports=function(e,t,n){r.isArray(t)||(t=[t]);var o=(e.isDirected()?e.successors:e.neighbors).bind(e),a=[],s={};return r.each(t,(function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);i(e,t,"post"===n,s,o,a)})),a}},a271:(e,t,n)=>{var r=n("V9bN"),i=n("Jl0P");e.exports=function(e,t,n){return i.transform(e.nodes(),(function(i,o){i[o]=r(e,o,t,n)}),{})}},V9bN:(e,t,n)=>{var r=n("Jl0P"),i=n("c9kG");e.exports=function(e,t,n,r){return function(e,t,n,r){var o,a,s={},u=new i,l=function(e){var t=e.v!==o?e.v:e.w,r=s[t],i=n(e),l=a.distance+i;if(i<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+i);l<r.distance&&(r.distance=l,r.predecessor=o,u.decrease(t,l))};e.nodes().forEach((function(e){var n=e===t?0:Number.POSITIVE_INFINITY;s[e]={distance:n},u.add(e,n)}));for(;u.size()>0&&(o=u.removeMin(),(a=s[o]).distance!==Number.POSITIVE_INFINITY);)r(o).forEach(l);return s}(e,String(t),n||o,r||function(t){return e.outEdges(t)})};var o=r.constant(1)},W8B9:(e,t,n)=>{var r=n("Jl0P"),i=n("Pa7R");e.exports=function(e){return r.filter(i(e),(function(t){return t.length>1||1===t.length&&e.hasEdge(t[0],t[0])}))}},hq5n:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e,t,n){return function(e,t,n){var r={},i=e.nodes();return i.forEach((function(e){r[e]={},r[e][e]={distance:0},i.forEach((function(t){e!==t&&(r[e][t]={distance:Number.POSITIVE_INFINITY})})),n(e).forEach((function(n){var i=n.v===e?n.w:n.v,o=t(n);r[e][i]={distance:o,predecessor:e}}))})),i.forEach((function(e){var t=r[e];i.forEach((function(n){var o=r[n];i.forEach((function(n){var r=o[e],i=t[n],a=o[n],s=r.distance+i.distance;s<a.distance&&(a.distance=s,a.predecessor=i.predecessor)}))}))})),r}(e,t||i,n||function(t){return e.outEdges(t)})};var i=r.constant(1)},ZCKZ:(e,t,n)=>{e.exports={components:n("qC43"),dijkstra:n("V9bN"),dijkstraAll:n("a271"),findCycles:n("W8B9"),floydWarshall:n("hq5n"),isAcyclic:n("+WAL"),postorder:n("21zJ"),preorder:n("j+bJ"),prim:n("xGdc"),tarjan:n("Pa7R"),topsort:n("0Jj1")}},"+WAL":(e,t,n)=>{var r=n("0Jj1");e.exports=function(e){try{r(e)}catch(t){if(t instanceof r.CycleException)return!1;throw t}return!0}},"21zJ":(e,t,n)=>{var r=n("5Ck4");e.exports=function(e,t){return r(e,t,"post")}},"j+bJ":(e,t,n)=>{var r=n("5Ck4");e.exports=function(e,t){return r(e,t,"pre")}},xGdc:(e,t,n)=>{var r=n("Jl0P"),i=n("buMw"),o=n("c9kG");e.exports=function(e,t){var n,a=new i,s={},u=new o;function l(e){var r=e.v===n?e.w:e.v,i=u.priority(r);if(void 0!==i){var o=t(e);o<i&&(s[r]=n,u.decrease(r,o))}}if(0===e.nodeCount())return a;r.each(e.nodes(),(function(e){u.add(e,Number.POSITIVE_INFINITY),a.setNode(e)})),u.decrease(e.nodes()[0],0);var c=!1;for(;u.size()>0;){if(n=u.removeMin(),r.has(s,n))a.setEdge(n,s[n]);else{if(c)throw new Error("Input graph is not connected: "+e);c=!0}e.nodeEdges(n).forEach(l)}return a}},Pa7R:(e,t,n)=>{var r=n("Jl0P");e.exports=function(e){var t=0,n=[],i={},o=[];function a(s){var u=i[s]={onStack:!0,lowlink:t,index:t++};if(n.push(s),e.successors(s).forEach((function(e){r.has(i,e)?i[e].onStack&&(u.lowlink=Math.min(u.lowlink,i[e].index)):(a(e),u.lowlink=Math.min(u.lowlink,i[e].lowlink))})),u.lowlink===u.index){var l,c=[];do{l=n.pop(),i[l].onStack=!1,c.push(l)}while(s!==l);o.push(c)}}return e.nodes().forEach((function(e){r.has(i,e)||a(e)})),o}},"0Jj1":(e,t,n)=>{var r=n("Jl0P");function i(e){var t={},n={},i=[];if(r.each(e.sinks(),(function a(s){if(r.has(n,s))throw new o;r.has(t,s)||(n[s]=!0,t[s]=!0,r.each(e.predecessors(s),a),delete n[s],i.push(s))})),r.size(t)!==e.nodeCount())throw new o;return i}function o(){}e.exports=i,i.CycleException=o,o.prototype=new Error},c9kG:(e,t,n)=>{var r=n("Jl0P");function i(){this._arr=[],this._keyIndices={}}e.exports=i,i.prototype.size=function(){return this._arr.length},i.prototype.keys=function(){return this._arr.map((function(e){return e.key}))},i.prototype.has=function(e){return r.has(this._keyIndices,e)},i.prototype.priority=function(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority},i.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},i.prototype.add=function(e,t){var n=this._keyIndices;if(e=String(e),!r.has(n,e)){var i=this._arr,o=i.length;return n[e]=o,i.push({key:e,priority:t}),this._decrease(o),!0}return!1},i.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},i.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},i.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,i=e;n<t.length&&(i=t[n].priority<t[i].priority?n:i,r<t.length&&(i=t[r].priority<t[i].priority?r:i),i!==e&&(this._swap(e,i),this._heapify(i)))},i.prototype._decrease=function(e){for(var t,n=this._arr,r=n[e].priority;0!==e&&!(n[t=e>>1].priority<r);)this._swap(e,t),e=t},i.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,i=n[e],o=n[t];n[e]=o,n[t]=i,r[o.key]=e,r[i.key]=t}},buMw:(e,t,n)=>{"use strict";var r=n("Jl0P");e.exports=o;var i="\0";function o(e){this._isDirected=!r.has(e,"directed")||e.directed,this._isMultigraph=!!r.has(e,"multigraph")&&e.multigraph,this._isCompound=!!r.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children["\0"]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function a(e,t){e[t]?e[t]++:e[t]=1}function s(e,t){--e[t]||delete e[t]}function u(e,t,n,i){var o=""+t,a=""+n;if(!e&&o>a){var s=o;o=a,a=s}return o+"\x01"+a+"\x01"+(r.isUndefined(i)?"\0":i)}function l(e,t,n,r){var i=""+t,o=""+n;if(!e&&i>o){var a=i;i=o,o=a}var s={v:i,w:o};return r&&(s.name=r),s}function c(e,t){return u(e,t.v,t.w,t.name)}o.prototype._nodeCount=0,o.prototype._edgeCount=0,o.prototype.isDirected=function(){return this._isDirected},o.prototype.isMultigraph=function(){return this._isMultigraph},o.prototype.isCompound=function(){return this._isCompound},o.prototype.setGraph=function(e){return this._label=e,this},o.prototype.graph=function(){return this._label},o.prototype.setDefaultNodeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultNodeLabelFn=e,this},o.prototype.nodeCount=function(){return this._nodeCount},o.prototype.nodes=function(){return r.keys(this._nodes)},o.prototype.sources=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._in[t])}))},o.prototype.sinks=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._out[t])}))},o.prototype.setNodes=function(e,t){var n=arguments,i=this;return r.each(e,(function(e){n.length>1?i.setNode(e,t):i.setNode(e)})),this},o.prototype.setNode=function(e,t){return r.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=i,this._children[e]={},this._children["\0"][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},o.prototype.node=function(e){return this._nodes[e]},o.prototype.hasNode=function(e){return r.has(this._nodes,e)},o.prototype.removeNode=function(e){var t=this;if(r.has(this._nodes,e)){var n=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],r.each(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),r.each(r.keys(this._in[e]),n),delete this._in[e],delete this._preds[e],r.each(r.keys(this._out[e]),n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},o.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(t))t=i;else{for(var n=t+="";!r.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},o.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},o.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==i)return t}},o.prototype.children=function(e){if(r.isUndefined(e)&&(e=i),this._isCompound){var t=this._children[e];if(t)return r.keys(t)}else{if(e===i)return this.nodes();if(this.hasNode(e))return[]}},o.prototype.predecessors=function(e){var t=this._preds[e];if(t)return r.keys(t)},o.prototype.successors=function(e){var t=this._sucs[e];if(t)return r.keys(t)},o.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return r.union(t,this.successors(e))},o.prototype.isLeaf=function(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length},o.prototype.filterNodes=function(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){e(r)&&t.setNode(r,n)})),r.each(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,n.edge(e))}));var i={};function o(e){var r=n.parent(e);return void 0===r||t.hasNode(r)?(i[e]=r,r):r in i?i[r]:o(r)}return this._isCompound&&r.each(t.nodes(),(function(e){t.setParent(e,o(e))})),t},o.prototype.setDefaultEdgeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultEdgeLabelFn=e,this},o.prototype.edgeCount=function(){return this._edgeCount},o.prototype.edges=function(){return r.values(this._edgeObjs)},o.prototype.setPath=function(e,t){var n=this,i=arguments;return r.reduce(e,(function(e,r){return i.length>1?n.setEdge(e,r,t):n.setEdge(e,r),r})),this},o.prototype.setEdge=function(){var e,t,n,i,o=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(e=s.v,t=s.w,n=s.name,2===arguments.length&&(i=arguments[1],o=!0)):(e=s,t=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),e=""+e,t=""+t,r.isUndefined(n)||(n=""+n);var c=u(this._isDirected,e,t,n);if(r.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=i),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?i:this._defaultEdgeLabelFn(e,t,n);var d=l(this._isDirected,e,t,n);return e=d.v,t=d.w,Object.freeze(d),this._edgeObjs[c]=d,a(this._preds[t],e),a(this._sucs[e],t),this._in[t][c]=d,this._out[e][c]=d,this._edgeCount++,this},o.prototype.edge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n);return this._edgeLabels[r]},o.prototype.hasEdge=function(e,t,n){var i=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n);return r.has(this._edgeLabels,i)},o.prototype.removeEdge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):u(this._isDirected,e,t,n),i=this._edgeObjs[r];return i&&(e=i.v,t=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],s(this._preds[t],e),s(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},o.prototype.inEdges=function(e,t){var n=this._in[e];if(n){var i=r.values(n);return t?r.filter(i,(function(e){return e.v===t})):i}},o.prototype.outEdges=function(e,t){var n=this._out[e];if(n){var i=r.values(n);return t?r.filter(i,(function(e){return e.w===t})):i}},o.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))}},"1qSF":(e,t,n)=>{e.exports={Graph:n("buMw"),version:n("5AdH")}},M2c1:(e,t,n)=>{var r=n("Jl0P"),i=n("buMw");function o(e){return r.map(e.nodes(),(function(t){var n=e.node(t),i=e.parent(t),o={v:t};return r.isUndefined(n)||(o.value=n),r.isUndefined(i)||(o.parent=i),o}))}function a(e){return r.map(e.edges(),(function(t){var n=e.edge(t),i={v:t.v,w:t.w};return r.isUndefined(t.name)||(i.name=t.name),r.isUndefined(n)||(i.value=n),i}))}e.exports={write:function(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:o(e),edges:a(e)};r.isUndefined(e.graph())||(t.value=r.clone(e.graph()));return t},read:function(e){var t=new i(e.options).setGraph(e.value);return r.each(e.nodes,(function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)})),r.each(e.edges,(function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)})),t}}},Jl0P:(e,t,n)=>{var r;try{r={clone:n("zr3P"),constant:n("eN33"),each:n("h4um"),filter:n("+DnP"),has:n("1mr4"),isArray:n("wxYD"),isEmpty:n("MwrP"),isFunction:n("2q8g"),isUndefined:n("CZlo"),keys:n("BlJA"),map:n("mbB6"),reduce:n("veKZ"),size:n("7seP"),transform:n("cZX/"),union:n("aGtI"),values:n("0iyY")}}catch(i){}r||(r=window._),e.exports=r},"5AdH":e=>{e.exports="2.1.8"},"3Ssf":(e,t,n)=>{e.exports=n("pvAv")},pvAv:function(e,t){var n,r,i;(function(){var o,a,s,u,l,c,d,h,p,f,v,g,y,m,b;s=Math.floor,f=Math.min,a=function(e,t){return e<t?-1:e>t?1:0},p=function(e,t,n,r,i){var o;if(null==n&&(n=0),null==i&&(i=a),n<0)throw new Error("lo must be non-negative");for(null==r&&(r=e.length);n<r;)i(t,e[o=s((n+r)/2)])<0?r=o:n=o+1;return[].splice.apply(e,[n,n-n].concat(t)),t},c=function(e,t,n){return null==n&&(n=a),e.push(t),m(e,0,e.length-1,n)},l=function(e,t){var n,r;return null==t&&(t=a),n=e.pop(),e.length?(r=e[0],e[0]=n,b(e,0,t)):r=n,r},h=function(e,t,n){var r;return null==n&&(n=a),r=e[0],e[0]=t,b(e,0,n),r},d=function(e,t,n){var r;return null==n&&(n=a),e.length&&n(e[0],t)<0&&(t=(r=[e[0],t])[0],e[0]=r[1],b(e,0,n)),t},u=function(e,t){var n,r,i,o,u,l;for(null==t&&(t=a),o=(function(){l=[];for(var t=0,n=s(e.length/2);0<=n?t<n:t>n;0<=n?t++:t--)l.push(t);return l}).apply(this).reverse(),u=[],r=0,i=o.length;r<i;r++)n=o[r],u.push(b(e,n,t));return u},y=function(e,t,n){var r;if(null==n&&(n=a),-1!==(r=e.indexOf(t)))return m(e,0,r,n),b(e,r,n)},v=function(e,t,n){var r,i,o,s,l;if(null==n&&(n=a),!(i=e.slice(0,t)).length)return i;for(u(i,n),o=0,s=(l=e.slice(t)).length;o<s;o++)r=l[o],d(i,r,n);return i.sort(n).reverse()},g=function(e,t,n){var r,i,o,s,c,d,h,v,g;if(null==n&&(n=a),10*t<=e.length){if(!(o=e.slice(0,t).sort(n)).length)return o;for(i=o[o.length-1],s=0,d=(h=e.slice(t)).length;s<d;s++)n(r=h[s],i)<0&&(p(o,r,0,null,n),o.pop(),i=o[o.length-1]);return o}for(u(e,n),g=[],c=0,v=f(t,e.length);0<=v?c<v:c>v;0<=v?++c:--c)g.push(l(e,n));return g},m=function(e,t,n,r){var i,o,s;for(null==r&&(r=a),i=e[n];n>t&&r(i,o=e[s=n-1>>1])<0;)e[n]=o,n=s;return e[n]=i},b=function(e,t,n){var r,i,o,s,u;for(null==n&&(n=a),i=e.length,u=t,o=e[t],r=2*t+1;r<i;)(s=r+1)<i&&!(n(e[r],e[s])<0)&&(r=s),e[t]=e[r],r=2*(t=r)+1;return e[t]=o,m(e,u,t,n)},o=function(){function e(e){this.cmp=null!=e?e:a,this.nodes=[]}return e.push=c,e.pop=l,e.replace=h,e.pushpop=d,e.heapify=u,e.updateItem=y,e.nlargest=v,e.nsmallest=g,e.prototype.push=function(e){return c(this.nodes,e,this.cmp)},e.prototype.pop=function(){return l(this.nodes,this.cmp)},e.prototype.peek=function(){return this.nodes[0]},e.prototype.contains=function(e){return-1!==this.nodes.indexOf(e)},e.prototype.replace=function(e){return h(this.nodes,e,this.cmp)},e.prototype.pushpop=function(e){return d(this.nodes,e,this.cmp)},e.prototype.heapify=function(){return u(this.nodes,this.cmp)},e.prototype.updateItem=function(e){return y(this.nodes,e,this.cmp)},e.prototype.clear=function(){return this.nodes=[]},e.prototype.empty=function(){return 0===this.nodes.length},e.prototype.size=function(){return this.nodes.length},e.prototype.clone=function(){var t;return(t=new e).nodes=this.nodes.slice(0),t},e.prototype.toArray=function(){return this.nodes.slice(0)},e.prototype.insert=e.prototype.push,e.prototype.top=e.prototype.peek,e.prototype.front=e.prototype.peek,e.prototype.has=e.prototype.contains,e.prototype.copy=e.prototype.clone,e}(),r=[],void 0===(i="function"==typeof(n=function(){return o})?n.apply(t,r):n)||(e.exports=i)}).call(this)},"E/ZA":e=>{var t=/^\s+|\s+$/g,n=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,o=parseInt,a="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self,u=a||s||Function("return this")(),l=Object.prototype.toString,c=Math.max,d=Math.min,h=function(){return u.Date.now()};function p(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function f(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==l.call(e)}(e))return NaN;if(p(e)){var a="function"==typeof e.valueOf?e.valueOf():e;e=p(a)?a+"":a}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(t,"");var s=r.test(e);return s||i.test(e)?o(e.slice(2),s?2:8):n.test(e)?NaN:+e}e.exports=function(e,t,n){var r,i,o,a,s,u,l=0,v=!1,g=!1,y=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(t){var n=r,o=i;return r=i=void 0,l=t,a=e.apply(o,n)}function b(e){return l=e,s=setTimeout(w,t),v?m(e):a}function x(e){var n=e-u;return void 0===u||n>=t||n<0||g&&e-l>=o}function w(){var e=h();if(x(e))return E(e);s=setTimeout(w,function(e){var n=t-(e-u);return g?d(n,o-(e-l)):n}(e))}function E(e){return s=void 0,y&&r?m(e):(r=i=void 0,a)}function k(){var e=h(),n=x(e);if(r=arguments,i=this,u=e,n){if(void 0===s)return b(u);if(g)return s=setTimeout(w,t),m(u)}return void 0===s&&(s=setTimeout(w,t)),a}return t=f(t)||0,p(n)&&(v=!!n.leading,o=(g="maxWait"in n)?c(f(n.maxWait)||0,t):o,y="trailing"in n?!!n.trailing:y),k.cancel=function(){void 0!==s&&clearTimeout(s),l=0,r=u=i=s=void 0},k.flush=function(){return void 0===s?a:E(h())},k}},QF3D:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"DataView");e.exports=r},Tv3l:(e,t,n)=>{var r=n("2Fbm"),i=n("VPai"),o=n("+fUG"),a=n("QMz8"),s=n("mUsV");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},"+ooz":(e,t,n)=>{var r=n("8Zrg"),i=n("kwr2"),o=n("5VYK"),a=n("Coc+"),s=n("LzM7");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},qeCs:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Map");e.exports=r},hyzI:(e,t,n)=>{var r=n("m5o6"),i=n("d0UJ"),o=n("eask"),a=n("9SKQ"),s=n("e63W");function u(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}u.prototype.clear=r,u.prototype.delete=i,u.prototype.get=o,u.prototype.has=a,u.prototype.set=s,e.exports=u},IS0S:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Promise");e.exports=r},OBn4:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Set");e.exports=r},"JBn+":(e,t,n)=>{var r=n("hyzI"),i=n("qjF7"),o=n("cEmw");function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=i,a.prototype.has=o,e.exports=a},HsnV:(e,t,n)=>{var r=n("+ooz"),i=n("RNlM"),o=n("E4ao"),a=n("BSqe"),s=n("L6um"),u=n("4/ik");function l(e){var t=this.__data__=new r(e);this.size=t.size}l.prototype.clear=i,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=s,l.prototype.set=u,e.exports=l},Syyo:(e,t,n)=>{var r=n("IBsm").Symbol;e.exports=r},mGzy:(e,t,n)=>{var r=n("IBsm").Uint8Array;e.exports=r},"4+Vk":(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"WeakMap");e.exports=r},zaNA:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},LmOH:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},W0vE:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[i++]=a)}return o}},OfKG:(e,t,n)=>{var r=n("c7Qd");e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},"sCL+":e=>{e.exports=function(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}},rmhs:(e,t,n)=>{var r=n("2ZvR"),i=n("bvyN"),o=n("wxYD"),a=n("3ajY"),s=n("pnw1"),u=n("Qd2C"),l=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),c=!n&&i(e),d=!n&&!c&&a(e),h=!n&&!c&&!d&&u(e),p=n||c||d||h,f=p?r(e.length,String):[],v=f.length;for(var g in e)!t&&!l.call(e,g)||p&&("length"==g||d&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,v))||f.push(g);return f}},H87J:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}},"y/9h":e=>{e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}},cPMt:e=>{e.exports=function(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}},myUI:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},"2wsP":(e,t,n)=>{var r=n("EI7Z")("length");e.exports=r},amiU:(e,t,n)=>{var r=n("wC3K"),i=n("pPzx");e.exports=function(e,t,n){(void 0!==n&&!i(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},c72w:(e,t,n)=>{var r=n("wC3K"),i=n("pPzx"),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];o.call(e,t)&&i(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},"6QIk":(e,t,n)=>{var r=n("pPzx");e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},tPQG:(e,t,n)=>{var r=n("LtXa"),i=n("BlJA");e.exports=function(e,t){return e&&r(t,i(t),e)}},QrYh:(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e,t){return e&&r(t,i(t),e)}},wC3K:(e,t,n)=>{var r=n("Pz+s");e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},kn3Q:(e,t,n)=>{var r=n("HsnV"),i=n("LmOH"),o=n("c72w"),a=n("tPQG"),s=n("QrYh"),u=n("Grae"),l=n("QT01"),c=n("AjPR"),d=n("BjSP"),h=n("tlBq"),p=n("zF5n"),f=n("kkM+"),v=n("3Qlq"),g=n("7No3"),y=n("sD1O"),m=n("wxYD"),b=n("3ajY"),x=n("NbvU"),w=n("tQYX"),E=n("/iLo"),k=n("BlJA"),P=n("zH+d"),S="[object Arguments]",C="[object Function]",_="[object Object]",j={};j[S]=j["[object Array]"]=j["[object ArrayBuffer]"]=j["[object DataView]"]=j["[object Boolean]"]=j["[object Date]"]=j["[object Float32Array]"]=j["[object Float64Array]"]=j["[object Int8Array]"]=j["[object Int16Array]"]=j["[object Int32Array]"]=j["[object Map]"]=j["[object Number]"]=j[_]=j["[object RegExp]"]=j["[object Set]"]=j["[object String]"]=j["[object Symbol]"]=j["[object Uint8Array]"]=j["[object Uint8ClampedArray]"]=j["[object Uint16Array]"]=j["[object Uint32Array]"]=!0,j["[object Error]"]=j[C]=j["[object WeakMap]"]=!1,e.exports=function e(t,n,D,T,B,O){var M,N=1&n,I=2&n,L=4&n;if(D&&(M=B?D(t,T,B,O):D(t)),void 0!==M)return M;if(!w(t))return t;var A=m(t);if(A){if(M=v(t),!N)return l(t,M)}else{var z=f(t),R=z==C||"[object GeneratorFunction]"==z;if(b(t))return u(t,N);if(z==_||z==S||R&&!B){if(M=I||R?{}:y(t),!N)return I?d(t,s(M,t)):c(t,a(M,t))}else{if(!j[z])return B?t:{};M=g(t,z,N)}}O||(O=new r);var F=O.get(t);if(F)return F;O.set(t,M),E(t)?t.forEach((function(r){M.add(e(r,n,D,r,t,O))})):x(t)&&t.forEach((function(r,i){M.set(i,e(r,n,D,i,t,O))}));var V=A?void 0:(L?I?p:h:I?P:k)(t);return i(V||t,(function(r,i){V&&(r=t[i=r]),o(M,i,e(r,n,D,i,t,O))})),M}},vGGS:(e,t,n)=>{var r=n("tQYX"),i=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(i)return i(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},Q4oW:(e,t,n)=>{var r=n("zKkv"),i=n("bz5b")(r);e.exports=i},JElN:(e,t,n)=>{var r=n("a88S");e.exports=function(e,t,n){for(var i=-1,o=e.length;++i<o;){var a=e[i],s=t(a);if(null!=s&&(void 0===u?s==s&&!r(s):n(s,u)))var u=s,l=a}return l}},sjzV:(e,t,n)=>{var r=n("Q4oW");e.exports=function(e,t){var n=[];return r(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}},DuXo:e=>{e.exports=function(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}},YpBQ:(e,t,n)=>{var r=n("y/9h"),i=n("oCTG");e.exports=function e(t,n,o,a,s){var u=-1,l=t.length;for(o||(o=i),s||(s=[]);++u<l;){var c=t[u];n>0&&o(c)?n>1?e(c,n-1,o,a,s):r(s,c):a||(s[s.length]=c)}return s}},UdtX:(e,t,n)=>{var r=n("RFxK")();e.exports=r},zKkv:(e,t,n)=>{var r=n("UdtX"),i=n("BlJA");e.exports=function(e,t){return e&&r(e,t,i)}},w2Tz:(e,t,n)=>{var r=n("xoyU"),i=n("Ypsa");e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n<o;)e=e[i(t[n++])];return n&&n==o?e:void 0}},pIod:(e,t,n)=>{var r=n("y/9h"),i=n("wxYD");e.exports=function(e,t,n){var o=t(e);return i(e)?o:r(o,n(e))}},Dhk8:(e,t,n)=>{var r=n("Syyo"),i=n("KCLV"),o=n("kHoZ"),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?i(e):o(e)}},FaiA:e=>{e.exports=function(e,t){return e>t}},SJov:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e,n){return null!=e&&t.call(e,n)}},JYmt:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},c7Qd:(e,t,n)=>{var r=n("DuXo"),i=n("z9Jh"),o=n("n1QJ");e.exports=function(e,t,n){return t==t?o(e,t,n):r(e,i,n)}},"/30y":(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Arguments]"==r(e)}},NYSw:(e,t,n)=>{var r=n("BqUW"),i=n("tLQN");e.exports=function e(t,n,o,a,s){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!=t&&n!=n:r(t,n,o,a,e,s))}},BqUW:(e,t,n)=>{var r=n("HsnV"),i=n("ZZ+W"),o=n("R3gn"),a=n("yZHP"),s=n("kkM+"),u=n("wxYD"),l=n("3ajY"),c=n("Qd2C"),d="[object Arguments]",h="[object Array]",p="[object Object]",f=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,v,g,y){var m=u(e),b=u(t),x=m?h:s(e),w=b?h:s(t),E=(x=x==d?p:x)==p,k=(w=w==d?p:w)==p,P=x==w;if(P&&l(e)){if(!l(t))return!1;m=!0,E=!1}if(P&&!E)return y||(y=new r),m||c(e)?i(e,t,n,v,g,y):o(e,t,x,n,v,g,y);if(!(1&n)){var S=E&&f.call(e,"__wrapped__"),C=k&&f.call(t,"__wrapped__");if(S||C){var _=S?e.value():e,j=C?t.value():t;return y||(y=new r),g(_,j,n,v,y)}}return!!P&&(y||(y=new r),a(e,t,n,v,g,y))}},gEWz:(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Map]"==r(e)}},ZjRn:(e,t,n)=>{var r=n("HsnV"),i=n("NYSw");e.exports=function(e,t,n,o){var a=n.length,s=a,u=!o;if(null==e)return!s;for(e=Object(e);a--;){var l=n[a];if(u&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<s;){var c=(l=n[a])[0],d=e[c],h=l[1];if(u&&l[2]){if(void 0===d&&!(c in e))return!1}else{var p=new r;if(o)var f=o(d,h,c,e,t,p);if(!(void 0===f?i(h,d,3,o,p):f))return!1}}return!0}},z9Jh:e=>{e.exports=function(e){return e!=e}},"5nKN":(e,t,n)=>{var r=n("2q8g"),i=n("9vbJ"),o=n("tQYX"),a=n("c18h"),s=/^\[object .+?Constructor\]$/,u=Function.prototype,l=Object.prototype,c=u.toString,d=l.hasOwnProperty,h=RegExp("^"+c.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||i(e))&&(r(e)?h:s).test(a(e))}},"6I2w":(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Set]"==r(e)}},"7/jS":(e,t,n)=>{var r=n("Dhk8"),i=n("t0L4"),o=n("tLQN"),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&i(e.length)&&!!a[r(e)]}},S3pA:(e,t,n)=>{var r=n("7/we"),i=n("KAo/"),o=n("zWgn"),a=n("wxYD"),s=n("1EDM");e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?a(e)?i(e[0],e[1]):r(e):s(e)}},"4uJK":(e,t,n)=>{var r=n("CbIe"),i=n("OtNC"),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},p2lg:(e,t,n)=>{var r=n("tQYX"),i=n("CbIe"),o=n("/UTG"),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=i(e),n=[];for(var s in e)("constructor"!=s||!t&&a.call(e,s))&&n.push(s);return n}},"n+p3":e=>{e.exports=function(e,t){return e<t}},bFjY:(e,t,n)=>{var r=n("Q4oW"),i=n("9y2L");e.exports=function(e,t){var n=-1,o=i(e)?Array(e.length):[];return r(e,(function(e,r,i){o[++n]=t(e,r,i)})),o}},"7/we":(e,t,n)=>{var r=n("ZjRn"),i=n("hMsr"),o=n("0Ss3");e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},"KAo/":(e,t,n)=>{var r=n("NYSw"),i=n("2srY"),o=n("NW/2"),a=n("i7nn"),s=n("+tCn"),u=n("0Ss3"),l=n("Ypsa");e.exports=function(e,t){return a(e)&&s(t)?u(l(e),t):function(n){var a=i(n,e);return void 0===a&&a===t?o(n,e):r(t,a,3)}}},MzY2:(e,t,n)=>{var r=n("HsnV"),i=n("amiU"),o=n("UdtX"),a=n("cb1R"),s=n("tQYX"),u=n("zH+d"),l=n("LL3N");e.exports=function e(t,n,c,d,h){t!==n&&o(n,(function(o,u){if(h||(h=new r),s(o))a(t,n,u,c,e,d,h);else{var p=d?d(l(t,u),o,u+"",t,n,h):void 0;void 0===p&&(p=o),i(t,u,p)}}),u)}},cb1R:(e,t,n)=>{var r=n("amiU"),i=n("Grae"),o=n("6Rtw"),a=n("QT01"),s=n("sD1O"),u=n("bvyN"),l=n("wxYD"),c=n("Ndl3"),d=n("3ajY"),h=n("2q8g"),p=n("tQYX"),f=n("Kkar"),v=n("Qd2C"),g=n("LL3N"),y=n("4ScB");e.exports=function(e,t,n,m,b,x,w){var E=g(e,n),k=g(t,n),P=w.get(k);if(P)r(e,n,P);else{var S=x?x(E,k,n+"",e,t,w):void 0,C=void 0===S;if(C){var _=l(k),j=!_&&d(k),D=!_&&!j&&v(k);S=k,_||j||D?l(E)?S=E:c(E)?S=a(E):j?(C=!1,S=i(k,!0)):D?(C=!1,S=o(k,!0)):S=[]:f(k)||u(k)?(S=E,u(E)?S=y(E):p(E)&&!h(E)||(S=s(k))):C=!1}C&&(w.set(k,S),b(S,k,m,x,w),w.delete(k)),r(e,n,S)}}},eHpp:(e,t,n)=>{var r=n("H87J"),i=n("w2Tz"),o=n("S3pA"),a=n("bFjY"),s=n("4jPf"),u=n("SU8Q"),l=n("5WP5"),c=n("zWgn"),d=n("wxYD");e.exports=function(e,t,n){t=t.length?r(t,(function(e){return d(e)?function(t){return i(t,1===e.length?e[0]:e)}:e})):[c];var h=-1;t=r(t,u(o));var p=a(e,(function(e,n,i){return{criteria:r(t,(function(t){return t(e)})),index:++h,value:e}}));return s(p,(function(e,t){return l(e,t,n)}))}},QwI6:(e,t,n)=>{var r=n("O1Sc"),i=n("NW/2");e.exports=function(e,t){return r(e,t,(function(t,n){return i(e,n)}))}},O1Sc:(e,t,n)=>{var r=n("w2Tz"),i=n("y4bl"),o=n("xoyU");e.exports=function(e,t,n){for(var a=-1,s=t.length,u={};++a<s;){var l=t[a],c=r(e,l);n(c,l)&&i(u,o(l,e),c)}return u}},EI7Z:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},CEyS:(e,t,n)=>{var r=n("w2Tz");e.exports=function(e){return function(t){return r(t,e)}}},"9au6":e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,i,o){for(var a=-1,s=n(t((r-e)/(i||1)),0),u=Array(s);s--;)u[o?s:++a]=e,e+=i;return u}},"5q8j":e=>{e.exports=function(e,t,n,r,i){return i(e,(function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)})),n}},R3TX:(e,t,n)=>{var r=n("zWgn"),i=n("UAs9"),o=n("7Pat");e.exports=function(e,t){return o(i(e,t,r),e+"")}},y4bl:(e,t,n)=>{var r=n("c72w"),i=n("xoyU"),o=n("pnw1"),a=n("tQYX"),s=n("Ypsa");e.exports=function(e,t,n,u){if(!a(e))return e;for(var l=-1,c=(t=i(t,e)).length,d=c-1,h=e;null!=h&&++l<c;){var p=s(t[l]),f=n;if("__proto__"===p||"constructor"===p||"prototype"===p)return e;if(l!=d){var v=h[p];void 0===(f=u?u(v,p,h):void 0)&&(f=a(v)?v:o(t[l+1])?[]:{})}r(h,p,f),h=h[p]}return e}},"+7q0":(e,t,n)=>{var r=n("eN33"),i=n("Pz+s"),o=n("zWgn"),a=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=a},"4jPf":e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},"2ZvR":e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},JcJ6:(e,t,n)=>{var r=n("Syyo"),i=n("H87J"),o=n("wxYD"),a=n("a88S"),s=r?r.prototype:void 0,u=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return i(t,e)+"";if(a(t))return u?u.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n}},I1fX:(e,t,n)=>{var r=n("6XIJ"),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},SU8Q:e=>{e.exports=function(e){return function(t){return e(t)}}},"s+R0":(e,t,n)=>{var r=n("JBn+"),i=n("OfKG"),o=n("sCL+"),a=n("S0iI"),s=n("9TP6"),u=n("XlL0");e.exports=function(e,t,n){var l=-1,c=i,d=e.length,h=!0,p=[],f=p;if(n)h=!1,c=o;else if(d>=200){var v=t?null:s(e);if(v)return u(v);h=!1,c=a,f=new r}else f=t?[]:p;e:for(;++l<d;){var g=e[l],y=t?t(g):g;if(g=n||0!==g?g:0,h&&y==y){for(var m=f.length;m--;)if(f[m]===y)continue e;t&&f.push(y),p.push(g)}else c(f,y,n)||(f!==p&&f.push(y),p.push(g))}return p}},SJvO:(e,t,n)=>{var r=n("H87J");e.exports=function(e,t){return r(t,(function(t){return e[t]}))}},WvmI:e=>{e.exports=function(e,t,n){for(var r=-1,i=e.length,o=t.length,a={};++r<i;){var s=r<o?t[r]:void 0;n(a,e[r],s)}return a}},S0iI:e=>{e.exports=function(e,t){return e.has(t)}},D49j:(e,t,n)=>{var r=n("zWgn");e.exports=function(e){return"function"==typeof e?e:r}},xoyU:(e,t,n)=>{var r=n("wxYD"),i=n("i7nn"),o=n("SoOq"),a=n("dw5g");e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:o(a(e))}},EAGB:(e,t,n)=>{var r=n("mGzy");e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},Grae:(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},lN3w:(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},Bstx:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},bVbG:(e,t,n)=>{var r=n("Syyo"),i=r?r.prototype:void 0,o=i?i.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},"6Rtw":(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},"dnX/":(e,t,n)=>{var r=n("a88S");e.exports=function(e,t){if(e!==t){var n=void 0!==e,i=null===e,o=e==e,a=r(e),s=void 0!==t,u=null===t,l=t==t,c=r(t);if(!u&&!c&&!a&&e>t||a&&s&&l&&!u&&!c||i&&s&&l||!n&&l||!o)return 1;if(!i&&!a&&!c&&e<t||c&&n&&o&&!i&&!a||u&&n&&o||!s&&o||!l)return-1}return 0}},"5WP5":(e,t,n)=>{var r=n("dnX/");e.exports=function(e,t,n){for(var i=-1,o=e.criteria,a=t.criteria,s=o.length,u=n.length;++i<s;){var l=r(o[i],a[i]);if(l)return i>=u?l:l*("desc"==n[i]?-1:1)}return e.index-t.index}},QT01:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},LtXa:(e,t,n)=>{var r=n("c72w"),i=n("wC3K");e.exports=function(e,t,n,o){var a=!n;n||(n={});for(var s=-1,u=t.length;++s<u;){var l=t[s],c=o?o(n[l],e[l],l,n,e):void 0;void 0===c&&(c=e[l]),a?i(n,l,c):r(n,l,c)}return n}},AjPR:(e,t,n)=>{var r=n("LtXa"),i=n("70Le");e.exports=function(e,t){return r(e,i(e),t)}},BjSP:(e,t,n)=>{var r=n("LtXa"),i=n("Xidw");e.exports=function(e,t){return r(e,i(e),t)}},"3KBa":(e,t,n)=>{var r=n("IBsm")["__core-js_shared__"];e.exports=r},wpQC:(e,t,n)=>{var r=n("R3TX"),i=n("R5u7");e.exports=function(e){return r((function(t,n){var r=-1,o=n.length,a=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(o--,a):void 0,s&&i(n[0],n[1],s)&&(a=o<3?void 0:a,o=1),t=Object(t);++r<o;){var u=n[r];u&&e(t,u,r,a)}return t}))}},bz5b:(e,t,n)=>{var r=n("9y2L");e.exports=function(e,t){return function(n,i){if(null==n)return n;if(!r(n))return e(n,i);for(var o=n.length,a=t?o:-1,s=Object(n);(t?a--:++a<o)&&!1!==i(s[a],a,s););return n}}},RFxK:e=>{e.exports=function(e){return function(t,n,r){for(var i=-1,o=Object(t),a=r(t),s=a.length;s--;){var u=a[e?s:++i];if(!1===n(o[u],u,o))break}return t}}},"1aYn":(e,t,n)=>{var r=n("S3pA"),i=n("9y2L"),o=n("BlJA");e.exports=function(e){return function(t,n,a){var s=Object(t);if(!i(t)){var u=r(n,3);t=o(t),n=function(e){return u(s[e],e,s)}}var l=e(t,n,a);return l>-1?s[u?t[l]:l]:void 0}}},"2M3I":(e,t,n)=>{var r=n("9au6"),i=n("R5u7"),o=n("fWyh");e.exports=function(e){return function(t,n,a){return a&&"number"!=typeof a&&i(t,n,a)&&(n=a=void 0),t=o(t),void 0===n?(n=t,t=0):n=o(n),a=void 0===a?t<n?1:-1:o(a),r(t,n,a,e)}}},"9TP6":(e,t,n)=>{var r=n("OBn4"),i=n("nnm9"),o=n("XlL0"),a=r&&1/o(new r([,-0]))[1]==1/0?function(e){return new r(e)}:i;e.exports=a},"Pz+s":(e,t,n)=>{var r=n("vxC8"),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=i},"ZZ+W":(e,t,n)=>{var r=n("JBn+"),i=n("myUI"),o=n("S0iI");e.exports=function(e,t,n,a,s,u){var l=1&n,c=e.length,d=t.length;if(c!=d&&!(l&&d>c))return!1;var h=u.get(e),p=u.get(t);if(h&&p)return h==t&&p==e;var f=-1,v=!0,g=2&n?new r:void 0;for(u.set(e,t),u.set(t,e);++f<c;){var y=e[f],m=t[f];if(a)var b=l?a(m,y,f,t,e,u):a(y,m,f,e,t,u);if(void 0!==b){if(b)continue;v=!1;break}if(g){if(!i(t,(function(e,t){if(!o(g,t)&&(y===e||s(y,e,n,a,u)))return g.push(t)}))){v=!1;break}}else if(y!==m&&!s(y,m,n,a,u)){v=!1;break}}return u.delete(e),u.delete(t),v}},R3gn:(e,t,n)=>{var r=n("Syyo"),i=n("mGzy"),o=n("pPzx"),a=n("ZZ+W"),s=n("aURW"),u=n("XlL0"),l=r?r.prototype:void 0,c=l?l.valueOf:void 0;e.exports=function(e,t,n,r,l,d,h){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new i(e),new i(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var p=s;case"[object Set]":var f=1&r;if(p||(p=u),e.size!=t.size&&!f)return!1;var v=h.get(e);if(v)return v==t;r|=2,h.set(e,t);var g=a(p(e),p(t),r,l,d,h);return h.delete(e),g;case"[object Symbol]":if(c)return c.call(e)==c.call(t)}return!1}},yZHP:(e,t,n)=>{var r=n("tlBq"),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,a,s){var u=1&n,l=r(e),c=l.length;if(c!=r(t).length&&!u)return!1;for(var d=c;d--;){var h=l[d];if(!(u?h in t:i.call(t,h)))return!1}var p=s.get(e),f=s.get(t);if(p&&f)return p==t&&f==e;var v=!0;s.set(e,t),s.set(t,e);for(var g=u;++d<c;){var y=e[h=l[d]],m=t[h];if(o)var b=u?o(m,y,h,t,e,s):o(y,m,h,e,t,s);if(!(void 0===b?y===m||a(y,m,n,o,s):b)){v=!1;break}g||(g="constructor"==h)}if(v&&!g){var x=e.constructor,w=t.constructor;x==w||!("constructor"in e)||!("constructor"in t)||"function"==typeof x&&x instanceof x&&"function"==typeof w&&w instanceof w||(v=!1)}return s.delete(e),s.delete(t),v}},cH1A:(e,t,n)=>{var r=n("1xil"),i=n("UAs9"),o=n("7Pat");e.exports=function(e){return o(i(e,void 0,r),e+"")}},e93E:e=>{var t="object"==typeof global&&global&&global.Object===Object&&global;e.exports=t},tlBq:(e,t,n)=>{var r=n("pIod"),i=n("70Le"),o=n("BlJA");e.exports=function(e){return r(e,o,i)}},zF5n:(e,t,n)=>{var r=n("pIod"),i=n("Xidw"),o=n("zH+d");e.exports=function(e){return r(e,o,i)}},JNqh:(e,t,n)=>{var r=n("6UKJ");e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},hMsr:(e,t,n)=>{var r=n("+tCn"),i=n("BlJA");e.exports=function(e){for(var t=i(e),n=t.length;n--;){var o=t[n],a=e[o];t[n]=[o,a,r(a)]}return t}},vxC8:(e,t,n)=>{var r=n("5nKN"),i=n("4p/L");e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},"/wCD":(e,t,n)=>{var r=n("TAtK")(Object.getPrototypeOf,Object);e.exports=r},KCLV:(e,t,n)=>{var r=n("Syyo"),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(u){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}},"70Le":(e,t,n)=>{var r=n("W0vE"),i=n("X4R2"),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(e){return null==e?[]:(e=Object(e),r(a(e),(function(t){return o.call(e,t)})))}:i;e.exports=s},Xidw:(e,t,n)=>{var r=n("y/9h"),i=n("/wCD"),o=n("70Le"),a=n("X4R2"),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=i(e);return t}:a;e.exports=s},"kkM+":(e,t,n)=>{var r=n("QF3D"),i=n("qeCs"),o=n("IS0S"),a=n("OBn4"),s=n("4+Vk"),u=n("Dhk8"),l=n("c18h"),c="[object Map]",d="[object Promise]",h="[object Set]",p="[object WeakMap]",f="[object DataView]",v=l(r),g=l(i),y=l(o),m=l(a),b=l(s),x=u;(r&&x(new r(new ArrayBuffer(1)))!=f||i&&x(new i)!=c||o&&x(o.resolve())!=d||a&&x(new a)!=h||s&&x(new s)!=p)&&(x=function(e){var t=u(e),n="[object Object]"==t?e.constructor:void 0,r=n?l(n):"";if(r)switch(r){case v:return f;case g:return c;case y:return d;case m:return h;case b:return p}return t}),e.exports=x},"4p/L":e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},"z+TE":(e,t,n)=>{var r=n("xoyU"),i=n("bvyN"),o=n("wxYD"),a=n("pnw1"),s=n("t0L4"),u=n("Ypsa");e.exports=function(e,t,n){for(var l=-1,c=(t=r(t,e)).length,d=!1;++l<c;){var h=u(t[l]);if(!(d=null!=e&&n(e,h)))break;e=e[h]}return d||++l!=c?d:!!(c=null==e?0:e.length)&&s(c)&&a(h,c)&&(o(e)||i(e))}},GZgP:e=>{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},"2Fbm":(e,t,n)=>{var r=n("5pfJ");e.exports=function(){this.__data__=r?r(null):{},this.size=0}},VPai:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},"+fUG":(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(t,e)?t[e]:void 0}},QMz8:(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},mUsV:(e,t,n)=>{var r=n("5pfJ");e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},"3Qlq":e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},"7No3":(e,t,n)=>{var r=n("EAGB"),i=n("lN3w"),o=n("Bstx"),a=n("bVbG"),s=n("6Rtw");e.exports=function(e,t,n){var u=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new u(+e);case"[object DataView]":return i(e,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(e,n);case"[object Map]":case"[object Set]":return new u;case"[object Number]":case"[object String]":return new u(e);case"[object RegExp]":return o(e);case"[object Symbol]":return a(e)}}},sD1O:(e,t,n)=>{var r=n("vGGS"),i=n("/wCD"),o=n("CbIe");e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(i(e))}},oCTG:(e,t,n)=>{var r=n("Syyo"),i=n("bvyN"),o=n("wxYD"),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||i(e)||!!(a&&e&&e[a])}},pnw1:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},R5u7:(e,t,n)=>{var r=n("pPzx"),i=n("9y2L"),o=n("pnw1"),a=n("tQYX");e.exports=function(e,t,n){if(!a(n))return!1;var s=typeof t;return!!("number"==s?i(n)&&o(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},i7nn:(e,t,n)=>{var r=n("wxYD"),i=n("a88S"),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!i(e))||(a.test(e)||!o.test(e)||null!=t&&e in Object(t))}},"6UKJ":e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},"9vbJ":(e,t,n)=>{var r,i=n("3KBa"),o=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!o&&o in e}},CbIe:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},"+tCn":(e,t,n)=>{var r=n("tQYX");e.exports=function(e){return e==e&&!r(e)}},"8Zrg":e=>{e.exports=function(){this.__data__=[],this.size=0}},kwr2:(e,t,n)=>{var r=n("6QIk"),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():i.call(t,n,1),--this.size,!0)}},"5VYK":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},"Coc+":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){return r(this.__data__,e)>-1}},LzM7:(e,t,n)=>{var r=n("6QIk");e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},m5o6:(e,t,n)=>{var r=n("Tv3l"),i=n("+ooz"),o=n("qeCs");e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||i),string:new r}}},d0UJ:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},eask:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).get(e)}},"9SKQ":(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).has(e)}},e63W:(e,t,n)=>{var r=n("JNqh");e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},aURW:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},"0Ss3":e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},"0+aC":(e,t,n)=>{var r=n("pFSi");e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},"5pfJ":(e,t,n)=>{var r=n("vxC8")(Object,"create");e.exports=r},OtNC:(e,t,n)=>{var r=n("TAtK")(Object.keys,Object);e.exports=r},"/UTG":e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},T6vp:(e,t,n)=>{e=n.nmd(e);var r=n("e93E"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i&&r.process,s=function(){try{var e=o&&o.require&&o.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(t){}}();e.exports=s},kHoZ:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},TAtK:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},UAs9:(e,t,n)=>{var r=n("zaNA"),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var o=arguments,a=-1,s=i(o.length-t,0),u=Array(s);++a<s;)u[a]=o[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=o[a];return l[t]=n(u),r(e,this,l)}}},IBsm:(e,t,n)=>{var r=n("e93E"),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},LL3N:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},qjF7:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},cEmw:e=>{e.exports=function(e){return this.__data__.has(e)}},XlL0:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},"7Pat":(e,t,n)=>{var r=n("+7q0"),i=n("kG2z")(r);e.exports=i},kG2z:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var i=t(),o=16-(i-r);if(r=i,o>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},RNlM:(e,t,n)=>{var r=n("+ooz");e.exports=function(){this.__data__=new r,this.size=0}},E4ao:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},BSqe:e=>{e.exports=function(e){return this.__data__.get(e)}},L6um:e=>{e.exports=function(e){return this.__data__.has(e)}},"4/ik":(e,t,n)=>{var r=n("+ooz"),i=n("qeCs"),o=n("hyzI");e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!i||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(a)}return n.set(e,t),this.size=n.size,this}},n1QJ:e=>{e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}},GVul:(e,t,n)=>{var r=n("2wsP"),i=n("GZgP"),o=n("QZ90");e.exports=function(e){return i(e)?o(e):r(e)}},SoOq:(e,t,n)=>{var r=n("0+aC"),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,a=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(o,"$1"):n||e)})),t}));e.exports=a},Ypsa:(e,t,n)=>{var r=n("a88S");e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},c18h:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},"6XIJ":e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},QZ90:e=>{var t="[\\ud800-\\udfff]",n="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",r="\\ud83c[\\udffb-\\udfff]",i="[^\\ud800-\\udfff]",o="(?:\\ud83c[\\udde6-\\uddff]){2}",a="[\\ud800-\\udbff][\\udc00-\\udfff]",s="(?:"+n+"|"+r+")"+"?",u="[\\ufe0e\\ufe0f]?",l=u+s+("(?:\\u200d(?:"+[i,o,a].join("|")+")"+u+s+")*"),c="(?:"+[i+n+"?",n,o,a,t].join("|")+")",d=RegExp(r+"(?="+r+")|"+c+l,"g");e.exports=function(e){for(var t=d.lastIndex=0;d.test(e);)++t;return t}},zr3P:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,4)}},c2re:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,5)}},eN33:e=>{e.exports=function(e){return function(){return e}}},WHWN:(e,t,n)=>{var r=n("R3TX"),i=n("pPzx"),o=n("R5u7"),a=n("zH+d"),s=Object.prototype,u=s.hasOwnProperty,l=r((function(e,t){e=Object(e);var n=-1,r=t.length,l=r>2?t[2]:void 0;for(l&&o(t[0],t[1],l)&&(r=1);++n<r;)for(var c=t[n],d=a(c),h=-1,p=d.length;++h<p;){var f=d[h],v=e[f];(void 0===v||i(v,s[f])&&!u.call(e,f))&&(e[f]=c[f])}return e}));e.exports=l},h4um:(e,t,n)=>{e.exports=n("9SCj")},pPzx:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},"+DnP":(e,t,n)=>{var r=n("W0vE"),i=n("sjzV"),o=n("S3pA"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:i)(e,o(t,3))}},"6R5o":(e,t,n)=>{var r=n("1aYn")(n("FllU"));e.exports=r},FllU:(e,t,n)=>{var r=n("DuXo"),i=n("S3pA"),o=n("m2YG"),a=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var u=null==n?0:o(n);return u<0&&(u=a(s+u,0)),r(e,i(t,3),u)}},"1xil":(e,t,n)=>{var r=n("YpBQ");e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},"9SCj":(e,t,n)=>{var r=n("LmOH"),i=n("Q4oW"),o=n("D49j"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:i)(e,o(t))}},ZVKf:(e,t,n)=>{var r=n("UdtX"),i=n("D49j"),o=n("zH+d");e.exports=function(e,t){return null==e?e:r(e,i(t),o)}},"2srY":(e,t,n)=>{var r=n("w2Tz");e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},"1mr4":(e,t,n)=>{var r=n("SJov"),i=n("z+TE");e.exports=function(e,t){return null!=e&&i(e,t,r)}},"NW/2":(e,t,n)=>{var r=n("JYmt"),i=n("z+TE");e.exports=function(e,t){return null!=e&&i(e,t,r)}},zWgn:e=>{e.exports=function(e){return e}},bvyN:(e,t,n)=>{var r=n("/30y"),i=n("tLQN"),o=Object.prototype,a=o.hasOwnProperty,s=o.propertyIsEnumerable,u=r(function(){return arguments}())?r:function(e){return i(e)&&a.call(e,"callee")&&!s.call(e,"callee")};e.exports=u},wxYD:e=>{var t=Array.isArray;e.exports=t},"9y2L":(e,t,n)=>{var r=n("2q8g"),i=n("t0L4");e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},Ndl3:(e,t,n)=>{var r=n("9y2L"),i=n("tLQN");e.exports=function(e){return i(e)&&r(e)}},"3ajY":(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=n("DjCF"),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,s=a&&a.exports===o?r.Buffer:void 0,u=(s?s.isBuffer:void 0)||i;e.exports=u},MwrP:(e,t,n)=>{var r=n("4uJK"),i=n("kkM+"),o=n("bvyN"),a=n("wxYD"),s=n("9y2L"),u=n("3ajY"),l=n("CbIe"),c=n("Qd2C"),d=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(a(e)||"string"==typeof e||"function"==typeof e.splice||u(e)||c(e)||o(e)))return!e.length;var t=i(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(l(e))return!r(e).length;for(var n in e)if(d.call(e,n))return!1;return!0}},"2q8g":(e,t,n)=>{var r=n("Dhk8"),i=n("tQYX");e.exports=function(e){if(!i(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},t0L4:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},NbvU:(e,t,n)=>{var r=n("gEWz"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isMap,s=a?i(a):r;e.exports=s},tQYX:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},tLQN:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},Kkar:(e,t,n)=>{var r=n("Dhk8"),i=n("/wCD"),o=n("tLQN"),a=Function.prototype,s=Object.prototype,u=a.toString,l=s.hasOwnProperty,c=u.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=i(e);if(null===t)return!0;var n=l.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&u.call(n)==c}},"/iLo":(e,t,n)=>{var r=n("6I2w"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isSet,s=a?i(a):r;e.exports=s},nDih:(e,t,n)=>{var r=n("Dhk8"),i=n("wxYD"),o=n("tLQN");e.exports=function(e){return"string"==typeof e||!i(e)&&o(e)&&"[object String]"==r(e)}},a88S:(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},Qd2C:(e,t,n)=>{var r=n("7/jS"),i=n("SU8Q"),o=n("T6vp"),a=o&&o.isTypedArray,s=a?i(a):r;e.exports=s},CZlo:e=>{e.exports=function(e){return void 0===e}},BlJA:(e,t,n)=>{var r=n("rmhs"),i=n("4uJK"),o=n("9y2L");e.exports=function(e){return o(e)?r(e):i(e)}},"zH+d":(e,t,n)=>{var r=n("rmhs"),i=n("p2lg"),o=n("9y2L");e.exports=function(e){return o(e)?r(e,!0):i(e)}},"p1C/":e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},mbB6:(e,t,n)=>{var r=n("H87J"),i=n("S3pA"),o=n("bFjY"),a=n("wxYD");e.exports=function(e,t){return(a(e)?r:o)(e,i(t,3))}},y2Ah:(e,t,n)=>{var r=n("wC3K"),i=n("zKkv"),o=n("S3pA");e.exports=function(e,t){var n={};return t=o(t,3),i(e,(function(e,i,o){r(n,i,t(e,i,o))})),n}},"LPC+":(e,t,n)=>{var r=n("JElN"),i=n("FaiA"),o=n("zWgn");e.exports=function(e){return e&&e.length?r(e,o,i):void 0}},pFSi:(e,t,n)=>{var r=n("hyzI");function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=e.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},H8sf:(e,t,n)=>{var r=n("MzY2"),i=n("wpQC")((function(e,t,n){r(e,t,n)}));e.exports=i},Z3AG:(e,t,n)=>{var r=n("JElN"),i=n("n+p3"),o=n("zWgn");e.exports=function(e){return e&&e.length?r(e,o,i):void 0}},PKEM:(e,t,n)=>{var r=n("JElN"),i=n("S3pA"),o=n("n+p3");e.exports=function(e,t){return e&&e.length?r(e,i(t,2),o):void 0}},nnm9:e=>{e.exports=function(){}},ENE1:(e,t,n)=>{var r=n("IBsm");e.exports=function(){return r.Date.now()}},"//nZ":(e,t,n)=>{var r=n("QwI6"),i=n("cH1A")((function(e,t){return null==e?{}:r(e,t)}));e.exports=i},"1EDM":(e,t,n)=>{var r=n("EI7Z"),i=n("CEyS"),o=n("i7nn"),a=n("Ypsa");e.exports=function(e){return o(e)?r(a(e)):i(e)}},Cmkl:(e,t,n)=>{var r=n("2M3I")();e.exports=r},veKZ:(e,t,n)=>{var r=n("cPMt"),i=n("Q4oW"),o=n("S3pA"),a=n("5q8j"),s=n("wxYD");e.exports=function(e,t,n){var u=s(e)?r:a,l=arguments.length<3;return u(e,o(t,4),n,l,i)}},"7seP":(e,t,n)=>{var r=n("4uJK"),i=n("kkM+"),o=n("9y2L"),a=n("nDih"),s=n("GVul");e.exports=function(e){if(null==e)return 0;if(o(e))return a(e)?s(e):e.length;var t=i(e);return"[object Map]"==t||"[object Set]"==t?e.size:r(e).length}},u6DZ:(e,t,n)=>{var r=n("YpBQ"),i=n("eHpp"),o=n("R3TX"),a=n("R5u7"),s=o((function(e,t){if(null==e)return[];var n=t.length;return n>1&&a(e,t[0],t[1])?t=[]:n>2&&a(t[0],t[1],t[2])&&(t=[t[0]]),i(e,r(t,1),[])}));e.exports=s},X4R2:e=>{e.exports=function(){return[]}},DjCF:e=>{e.exports=function(){return!1}},fWyh:(e,t,n)=>{var r=n("nvU9"),i=1/0;e.exports=function(e){return e?(e=r(e))===i||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},m2YG:(e,t,n)=>{var r=n("fWyh");e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},nvU9:(e,t,n)=>{var r=n("I1fX"),i=n("tQYX"),o=n("a88S"),a=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||u.test(e)?l(e.slice(2),n?2:8):a.test(e)?NaN:+e}},"4ScB":(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e){return r(e,i(e))}},dw5g:(e,t,n)=>{var r=n("JcJ6");e.exports=function(e){return null==e?"":r(e)}},"cZX/":(e,t,n)=>{var r=n("LmOH"),i=n("vGGS"),o=n("zKkv"),a=n("S3pA"),s=n("/wCD"),u=n("wxYD"),l=n("3ajY"),c=n("2q8g"),d=n("tQYX"),h=n("Qd2C");e.exports=function(e,t,n){var p=u(e),f=p||l(e)||h(e);if(t=a(t,4),null==n){var v=e&&e.constructor;n=f?p?new v:[]:d(e)&&c(v)?i(s(e)):{}}return(f?r:o)(e,(function(e,r,i){return t(n,e,r,i)})),n}},aGtI:(e,t,n)=>{var r=n("YpBQ"),i=n("R3TX"),o=n("s+R0"),a=n("Ndl3"),s=i((function(e){return o(r(e,1,a,!0))}));e.exports=s},w0mW:(e,t,n)=>{var r=n("dw5g"),i=0;e.exports=function(e){var t=++i;return r(e)+t}},"0iyY":(e,t,n)=>{var r=n("SJvO"),i=n("BlJA");e.exports=function(e){return null==e?[]:r(e,i(e))}},OUo6:(e,t,n)=>{var r=n("c72w"),i=n("WvmI");e.exports=function(e,t){return i(e||[],t||[],r)}}},e=>{var t;t="Ue+I",e(e.s=t)}]);