hypervibes 0.0.0-stage → 0.4.0

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 (362) hide show
  1. package/.build/client/assets/_authenticated-C87LKvH0.js +1 -0
  2. package/.build/client/assets/_authenticated.account-D-nTh_fC.js +1 -0
  3. package/.build/client/assets/_authenticated.agents-HwcveLyB.js +1 -0
  4. package/.build/client/assets/_authenticated.agents._agentId-DuE8Lv62.js +1 -0
  5. package/.build/client/assets/_authenticated.agents._agentId.chart-Bb_XkvQx.js +4 -0
  6. package/.build/client/assets/_authenticated.agents._agentId.chat-ClMMKw_N.js +1 -0
  7. package/.build/client/assets/_authenticated.agents._agentId.index-DNJwBwn9.js +1 -0
  8. package/.build/client/assets/_authenticated.agents._agentId.indicators-BmVjLtRI.js +1 -0
  9. package/.build/client/assets/_authenticated.agents._agentId.indicators_._indicatorId-CMqaaFQf.js +2 -0
  10. package/.build/client/assets/_authenticated.agents._agentId.indicators_._indicatorId-DtgkoNV5.js +6 -0
  11. package/.build/client/assets/_authenticated.agents._agentId.memories-O-4f6a4G.js +1 -0
  12. package/.build/client/assets/_authenticated.agents._agentId.memories_._memoryRef-BUPtUcj3.js +1 -0
  13. package/.build/client/assets/_authenticated.agents._agentId.notifications-2lyhXCSk.js +1 -0
  14. package/.build/client/assets/_authenticated.agents._agentId.notifications_._notificationId-Da3ZVT4v.js +1 -0
  15. package/.build/client/assets/_authenticated.agents._agentId.settings-C5cWHoYw.js +1 -0
  16. package/.build/client/assets/_authenticated.agents._agentId.sub-agents-HwcveLyB.js +1 -0
  17. package/.build/client/assets/_authenticated.agents._agentId.sub-agents._subagentId-CZ4MeRy4.js +1 -0
  18. package/.build/client/assets/_authenticated.agents._agentId.sub-agents._subagentId_.runs._runId-dVbo5kMU.js +3 -0
  19. package/.build/client/assets/_authenticated.agents._agentId.sub-agents.index-DeWTOYJD.js +1 -0
  20. package/.build/client/assets/_authenticated.agents._agentId.sub-agents.new-D02TflCE.js +37 -0
  21. package/.build/client/assets/_authenticated.agents._agentId.transactions-D3a8Glgj.js +1 -0
  22. package/.build/client/assets/_authenticated.agents.index-CEqeDEgP.js +1 -0
  23. package/.build/client/assets/_authenticated.agents.new-DLRWK5Uk.js +1 -0
  24. package/.build/client/assets/_authenticated.providers-D0iPLXra.js +1 -0
  25. package/.build/client/assets/agent-chat-page-C5eYFgxw.js +1 -0
  26. package/.build/client/assets/agent-enablement-control-CUzOp9ce.js +1 -0
  27. package/.build/client/assets/agent-events-DC8eDZf3.js +1 -0
  28. package/.build/client/assets/agent-input-aolvZ47U.js +1 -0
  29. package/.build/client/assets/agent-notifications-page-B0mr-Zz8.js +1 -0
  30. package/.build/client/assets/agent-queries-CNMBImun.js +1 -0
  31. package/.build/client/assets/app-DjmsvbUC.css +2 -0
  32. package/.build/client/assets/artifact-content-COO4VTSZ.js +1 -0
  33. package/.build/client/assets/auth-client-K13li9H1.js +3 -0
  34. package/.build/client/assets/call-DxlGie4_.js +31 -0
  35. package/.build/client/assets/ccip-BgPlVPYP.js +1 -0
  36. package/.build/client/assets/chart-contracts-Cr5SFCbE.js +1 -0
  37. package/.build/client/assets/chart-queries-Bpvrgd0-.js +1 -0
  38. package/.build/client/assets/chat-bubble-CAJkT-vL.js +1 -0
  39. package/.build/client/assets/config-dialog-C9x9gKW9.js +1 -0
  40. package/.build/client/assets/contracts-HhAL7Tt7.js +1 -0
  41. package/.build/client/assets/createServerFn-DfZIp2Fu.js +3 -0
  42. package/.build/client/assets/custom-BeqXuIIS.js +5 -0
  43. package/.build/client/assets/decimal-B0DEG-1V.js +1 -0
  44. package/.build/client/assets/esm-BTb2nBdW.js +1 -0
  45. package/.build/client/assets/identicon-Lb9pS4O1.js +1 -0
  46. package/.build/client/assets/index-B4hvjMmI.js +10 -0
  47. package/.build/client/assets/indicator-input-fields-CtmrfVfS.js +1 -0
  48. package/.build/client/assets/indicator-queries-CzZ6u1Mh.js +1 -0
  49. package/.build/client/assets/indicator-renderer-CfccsIt2.js +1 -0
  50. package/.build/client/assets/instrument-label-BZYlWXR5.js +1 -0
  51. package/.build/client/assets/instrument-picker-DLPpryOm.js +1 -0
  52. package/.build/client/assets/journal-decimal-DBvd_Ibi.js +1 -0
  53. package/.build/client/assets/jsx-runtime-CIazjfqY.js +1 -0
  54. package/.build/client/assets/lazyRouteComponent-CJgUa7_r.js +1 -0
  55. package/.build/client/assets/lightweight-charts.production-BiBiFZSH.js +1 -0
  56. package/.build/client/assets/login-MNgYxCOY.js +3 -0
  57. package/.build/client/assets/memory-badge-BbN-DJQi.js +1 -0
  58. package/.build/client/assets/memory-contracts-Doi_Q1XJ.js +1 -0
  59. package/.build/client/assets/memory-queries-BttL580R.js +1 -0
  60. package/.build/client/assets/model-picker-YCQNNmyw.js +1 -0
  61. package/.build/client/assets/notification-queries-B12DG3aS.js +1 -0
  62. package/.build/client/assets/preload-helper-Czpn1I53.js +1 -0
  63. package/.build/client/assets/provider-logo-Ddb77aBD.js +1 -0
  64. package/.build/client/assets/provider-queries-DxPwhDOU.js +1 -0
  65. package/.build/client/assets/query-nvK_95Jo.js +1 -0
  66. package/.build/client/assets/random-uuid-DJR3ygJS.js +1 -0
  67. package/.build/client/assets/react-dom-C6bOPxes.js +1 -0
  68. package/.build/client/assets/risk-queries-D_6PHwus.js +1 -0
  69. package/.build/client/assets/run-subagent-dialog-B4yQe9T9.js +1 -0
  70. package/.build/client/assets/secp256k1-BbZnIgDP.js +1 -0
  71. package/.build/client/assets/setup-checklist-CUW-K484.js +1 -0
  72. package/.build/client/assets/sha2-hT-Q4pur.js +1 -0
  73. package/.build/client/assets/subagent-enabled-toggle-Bk5wfScg.js +1 -0
  74. package/.build/client/assets/subagent-input-TQke90I1.js +1 -0
  75. package/.build/client/assets/subagent-mutations-DfsDbmFu.js +1 -0
  76. package/.build/client/assets/subagent-queries-DVv5JCfs.js +1 -0
  77. package/.build/client/assets/subagent-run-history-D55Uh5VK.js +1 -0
  78. package/.build/client/assets/toggle-timestamp-B50FTPmA.js +1 -0
  79. package/.build/client/assets/useBaseQuery-Bxruo_mV.js +1 -0
  80. package/.build/client/assets/useMutation-DrF53EQG.js +1 -0
  81. package/.build/client/assets/useQuery-BMSU16jY.js +1 -0
  82. package/.build/client/assets/useRouter-c0I1aURm.js +1 -0
  83. package/.build/client/assets/useSelector-ERD9RroG.js +2 -0
  84. package/.build/client/assets/useSuspenseQuery-vODFwDb8.js +1 -0
  85. package/.build/client/assets/utils-Bpv4vmSW.js +1 -0
  86. package/.build/client/assets/worker-triggers-DtXyn40O.js +1 -0
  87. package/.build/server/assets/_authenticated-Bch0_2QH.js +264 -0
  88. package/.build/server/assets/_authenticated-DGV5cZYE.js +22 -0
  89. package/.build/server/assets/_authenticated.account-6qu6oQ1y.js +685 -0
  90. package/.build/server/assets/_authenticated.agents-DYDnQxli.js +5 -0
  91. package/.build/server/assets/_authenticated.agents._agentId-4HvB3mhd.js +17 -0
  92. package/.build/server/assets/_authenticated.agents._agentId-Cl608F1T.js +260 -0
  93. package/.build/server/assets/_authenticated.agents._agentId-G2jAHjma.js +15 -0
  94. package/.build/server/assets/_authenticated.agents._agentId.chart-BIA8wy73.js +2644 -0
  95. package/.build/server/assets/_authenticated.agents._agentId.chart-D4aj8Qy9.js +22 -0
  96. package/.build/server/assets/_authenticated.agents._agentId.chat-ClsVle4g.js +13 -0
  97. package/.build/server/assets/_authenticated.agents._agentId.chat-JV3FDsTp.js +18 -0
  98. package/.build/server/assets/_authenticated.agents._agentId.index-Ct4kbu2f.js +1044 -0
  99. package/.build/server/assets/_authenticated.agents._agentId.index-DJgrupvW.js +18 -0
  100. package/.build/server/assets/_authenticated.agents._agentId.indicators-DrKd0aP5.js +184 -0
  101. package/.build/server/assets/_authenticated.agents._agentId.indicators-wiVaY8fW.js +18 -0
  102. package/.build/server/assets/_authenticated.agents._agentId.indicators_._indicatorId-C4Ox2R-a.js +25 -0
  103. package/.build/server/assets/_authenticated.agents._agentId.indicators_._indicatorId-D8Q0hCW0.js +489 -0
  104. package/.build/server/assets/_authenticated.agents._agentId.memories-BUTyVLYy.js +42 -0
  105. package/.build/server/assets/_authenticated.agents._agentId.memories-E8-nSEMT.js +362 -0
  106. package/.build/server/assets/_authenticated.agents._agentId.memories_._memoryRef-C-SC6wzq.js +14 -0
  107. package/.build/server/assets/_authenticated.agents._agentId.memories_._memoryRef-ZCrdrc8C.js +490 -0
  108. package/.build/server/assets/_authenticated.agents._agentId.notifications-DQeQqTzh.js +14 -0
  109. package/.build/server/assets/_authenticated.agents._agentId.notifications-DlFyYyHh.js +16 -0
  110. package/.build/server/assets/_authenticated.agents._agentId.notifications_._notificationId-B0RosY_R.js +15 -0
  111. package/.build/server/assets/_authenticated.agents._agentId.notifications_._notificationId-C1NikQ9e.js +13 -0
  112. package/.build/server/assets/_authenticated.agents._agentId.settings-DDwjT3Ui.js +42 -0
  113. package/.build/server/assets/_authenticated.agents._agentId.settings-PEzEvOfo.js +751 -0
  114. package/.build/server/assets/_authenticated.agents._agentId.sub-agents-z34-J3Tu.js +5 -0
  115. package/.build/server/assets/_authenticated.agents._agentId.sub-agents._subagentId-D-6TOi1U.js +1371 -0
  116. package/.build/server/assets/_authenticated.agents._agentId.sub-agents._subagentId-DipzVdnr.js +13 -0
  117. package/.build/server/assets/_authenticated.agents._agentId.sub-agents._subagentId_.runs._runId-BZR3VLV7.js +610 -0
  118. package/.build/server/assets/_authenticated.agents._agentId.sub-agents._subagentId_.runs._runId-DsYJKfGm.js +12 -0
  119. package/.build/server/assets/_authenticated.agents._agentId.sub-agents.index-BF8Cuzcr.js +231 -0
  120. package/.build/server/assets/_authenticated.agents._agentId.sub-agents.index-D2x0qCnt.js +12 -0
  121. package/.build/server/assets/_authenticated.agents._agentId.sub-agents.new-CYm_vuDD.js +13 -0
  122. package/.build/server/assets/_authenticated.agents._agentId.sub-agents.new-CiVShIka.js +497 -0
  123. package/.build/server/assets/_authenticated.agents._agentId.transactions-BC_XfGqw.js +95 -0
  124. package/.build/server/assets/_authenticated.agents._agentId.transactions-WtBW3xmh.js +495 -0
  125. package/.build/server/assets/_authenticated.agents.index-C8zmu8T8.js +78 -0
  126. package/.build/server/assets/_authenticated.agents.new-Bt-tBR47.js +302 -0
  127. package/.build/server/assets/_authenticated.providers-C0pb-ujV.js +672 -0
  128. package/.build/server/assets/_tanstack-start-manifest_v-Baw5u9sk.js +354 -0
  129. package/.build/server/assets/account-XvMwzRXh.js +66 -0
  130. package/.build/server/assets/account-queries-AJJVkLAV.js +32 -0
  131. package/.build/server/assets/agent-chat-page-DChiz8KQ.js +686 -0
  132. package/.build/server/assets/agent-enablement-control-C90f0uIb.js +143 -0
  133. package/.build/server/assets/agent-events-DK9Yz5__.js +217 -0
  134. package/.build/server/assets/agent-notifications-page-BdyKAyds.js +276 -0
  135. package/.build/server/assets/agent-queries-Cmx8RiUx.js +51 -0
  136. package/.build/server/assets/agents-CZq-0mna.js +106 -0
  137. package/.build/server/assets/agents-CfjmtW7A.js +278 -0
  138. package/.build/server/assets/artifact-content-B6uHmPz7.js +35 -0
  139. package/.build/server/assets/artifacts-HtLwHs8q.js +42 -0
  140. package/.build/server/assets/auth-DTikZAVz.js +12 -0
  141. package/.build/server/assets/auth-client-Vb3O0v7P.js +1897 -0
  142. package/.build/server/assets/auth-user-DkLo8ojH.js +108 -0
  143. package/.build/server/assets/chart-queries-Bc3AfsEb.js +109 -0
  144. package/.build/server/assets/charts-C4dKuwTJ.js +130 -0
  145. package/.build/server/assets/chat-bubble-ik3itVbx.js +109 -0
  146. package/.build/server/assets/config-dialog-9gSAjwwT.js +55 -0
  147. package/.build/server/assets/contracts-CG-nZuYJ.js +155 -0
  148. package/.build/server/assets/createServerRpc-DNqhdU4z.js +12 -0
  149. package/.build/server/assets/decimal-BthtZ77w.js +97 -0
  150. package/.build/server/assets/empty-plugin-adapters-MOWBbCMw.js +5 -0
  151. package/.build/server/assets/errors-DaZqUftX.js +151 -0
  152. package/.build/server/assets/gateway-CHkruO_a.js +193 -0
  153. package/.build/server/assets/identicon-CyawcVnx.js +41 -0
  154. package/.build/server/assets/indicator-input-fields-bzuhIh6t.js +75 -0
  155. package/.build/server/assets/indicator-queries-4dY1-LXx.js +171 -0
  156. package/.build/server/assets/indicator-renderer-B2muPS-8.js +395 -0
  157. package/.build/server/assets/indicators-ENxAHN42.js +192 -0
  158. package/.build/server/assets/insight-contracts-B5rmUDfO.js +14 -0
  159. package/.build/server/assets/instrument-label-C-tTGGsD.js +40 -0
  160. package/.build/server/assets/instrument-picker-CRroLwVq.js +381 -0
  161. package/.build/server/assets/journal-9aE-um9f.js +107 -0
  162. package/.build/server/assets/journal-decimal-Bh9EL029.js +66 -0
  163. package/.build/server/assets/login-BsEFUvTX.js +125 -0
  164. package/.build/server/assets/memories-2WF2fW1G.js +100 -0
  165. package/.build/server/assets/memory-badge-DVYLTtRR.js +53 -0
  166. package/.build/server/assets/memory-contracts-DQGN2IKV.js +22 -0
  167. package/.build/server/assets/memory-queries--4RbPRrk.js +92 -0
  168. package/.build/server/assets/model-picker-CA1uYb--.js +225 -0
  169. package/.build/server/assets/notification-queries-0CJUkBt9.js +52 -0
  170. package/.build/server/assets/notifications-Cn7BiCyw.js +72 -0
  171. package/.build/server/assets/provider-logo-BRdbOr9I.js +32 -0
  172. package/.build/server/assets/provider-queries-BaZWLw8J.js +78 -0
  173. package/.build/server/assets/providers-CyoN_jgW.js +89 -0
  174. package/.build/server/assets/risk-Bqrb6hKQ.js +34 -0
  175. package/.build/server/assets/risk-queries-JQpByHT2.js +18 -0
  176. package/.build/server/assets/router-Hkr5TH_I.js +419 -0
  177. package/.build/server/assets/run-subagent-dialog-C7iUOZa-.js +59 -0
  178. package/.build/server/assets/setup-DqMlwgNr.js +30 -0
  179. package/.build/server/assets/setup-checklist-BICTmBo2.js +60 -0
  180. package/.build/server/assets/start-C-GPoWRt.js +4 -0
  181. package/.build/server/assets/subagent-enabled-toggle-Djte00oo.js +22 -0
  182. package/.build/server/assets/subagent-input-BHQKs2cW.js +57 -0
  183. package/.build/server/assets/subagent-mutations-dUo3B_SG.js +32 -0
  184. package/.build/server/assets/subagent-queries-sAwBjFxC.js +146 -0
  185. package/.build/server/assets/subagent-run-history-C_xmucO-.js +186 -0
  186. package/.build/server/assets/subagents-CIoilC66.js +180 -0
  187. package/.build/server/assets/toggle-timestamp-CToUVn67.js +28 -0
  188. package/.build/server/assets/trading-contracts-zWq1Hxnb.js +26 -0
  189. package/.build/server/assets/validation-BX-krL0i.js +33 -0
  190. package/.build/server/assets/worker-triggers-CJF5HWzR.js +51 -0
  191. package/.build/server/server.js +7501 -0
  192. package/LICENSE +661 -0
  193. package/README.md +145 -2
  194. package/bin/hypervibes.js +24 -0
  195. package/dist/agents/agent-enablement.js +10 -0
  196. package/dist/agents/agent-input.js +38 -0
  197. package/dist/agents/agent-service.js +1004 -0
  198. package/dist/agents/cancel-task-scope.js +52 -0
  199. package/dist/agents/candle-intervals.js +1 -0
  200. package/dist/agents/default-subagents.js +36 -0
  201. package/dist/agents/execution-context-contracts.js +1 -0
  202. package/dist/agents/execution-context.js +206 -0
  203. package/dist/agents/execution-warnings.js +33 -0
  204. package/dist/agents/orchestrator-insights.js +14 -0
  205. package/dist/agents/run-inspection.js +99 -0
  206. package/dist/agents/subagent-dashboard.js +1 -0
  207. package/dist/agents/subagent-extension.js +156 -0
  208. package/dist/agents/subagent-history.js +5 -0
  209. package/dist/agents/subagent-input.js +73 -0
  210. package/dist/agents/subagent-service.js +1177 -0
  211. package/dist/agents/subagent-templates.js +20 -0
  212. package/dist/agents/template-manifest.js +34 -0
  213. package/dist/agents/templates/basic-analysis.json +40 -0
  214. package/dist/agents/templates/basic-review.json +48 -0
  215. package/dist/agents/templates/basic-trading.json +45 -0
  216. package/dist/agents/templates/indicator-developer.json +16 -0
  217. package/dist/agents/time-guidance.js +29 -0
  218. package/dist/agents/worker-events.js +18 -0
  219. package/dist/agents/worker-inbox.js +28 -0
  220. package/dist/agents/worker-triggers.js +23 -0
  221. package/dist/auth-options.js +98 -0
  222. package/dist/auth-user.js +15 -0
  223. package/dist/auth.js +28 -0
  224. package/dist/cache/svg-logo-cache.js +155 -0
  225. package/dist/canonical.js +13 -0
  226. package/dist/charts/chart-service.js +236 -0
  227. package/dist/charts/contracts.js +118 -0
  228. package/dist/charts/durable-extension.js +27 -0
  229. package/dist/charts/trading-contracts.js +14 -0
  230. package/dist/config.js +85 -0
  231. package/dist/db/agent-schema.js +26 -0
  232. package/dist/db/auth-schema.js +122 -0
  233. package/dist/db/database.js +31 -0
  234. package/dist/db/exchange-schema.js +23 -0
  235. package/dist/db/gateway-schema.js +24 -0
  236. package/dist/db/indicator-schema.js +19 -0
  237. package/dist/db/migrations/20261015221717_auth/migration.sql +62 -0
  238. package/dist/db/migrations/20261015231224_agents/migration.sql +35 -0
  239. package/dist/db/migrations/20261016040641_provider_connections/migration.sql +19 -0
  240. package/dist/db/migrations/20261016061831_trade_journal/migration.sql +48 -0
  241. package/dist/db/migrations/20261016080320_order_execution/migration.sql +62 -0
  242. package/dist/db/migrations/20261016181110_subagents/migration.sql +51 -0
  243. package/dist/db/migrations/20261017222959_research_artifacts/migration.sql +37 -0
  244. package/dist/db/migrations/20261018061531_memories_and_insights/migration.sql +162 -0
  245. package/dist/db/migrations/20261020091156_worker_event_inbox/migration.sql +54 -0
  246. package/dist/db/migrations/20261021051229_chart_workspace/migration.sql +33 -0
  247. package/dist/db/migrations/20261021222116_gateways/migration.sql +15 -0
  248. package/dist/db/migrations/20261022015813_pine_indicators/migration.sql +43 -0
  249. package/dist/db/migrations/20261022101559_notifications/migration.sql +51 -0
  250. package/dist/db/migrations.js +12 -0
  251. package/dist/db/order-provenance-schema.js +17 -0
  252. package/dist/db/order-schema.js +32 -0
  253. package/dist/db/profile-lock.js +12 -0
  254. package/dist/db/provider-schema.js +16 -0
  255. package/dist/db/shared-database.js +128 -0
  256. package/dist/db/subagent-schema.js +79 -0
  257. package/dist/gateway/bridge-service.js +223 -0
  258. package/dist/gateway/gateway-store.js +77 -0
  259. package/dist/gateway/handlers.js +122 -0
  260. package/dist/gateway/telegram/connector.js +115 -0
  261. package/dist/gateway/telegram/transport.js +96 -0
  262. package/dist/hyperliquid/account-info.js +117 -0
  263. package/dist/hyperliquid/account-status.js +64 -0
  264. package/dist/hyperliquid/agent-dashboard.js +56 -0
  265. package/dist/hyperliquid/chart-contracts.js +9 -0
  266. package/dist/hyperliquid/constants.js +25 -0
  267. package/dist/hyperliquid/crypto.js +29 -0
  268. package/dist/hyperliquid/currency-logo.js +7 -0
  269. package/dist/hyperliquid/decimal.js +98 -0
  270. package/dist/hyperliquid/durable-extension.js +39 -0
  271. package/dist/hyperliquid/errors.js +8 -0
  272. package/dist/hyperliquid/exchange.js +118 -0
  273. package/dist/hyperliquid/journal-decimal.js +48 -0
  274. package/dist/hyperliquid/journal-model.js +167 -0
  275. package/dist/hyperliquid/journal-service.js +648 -0
  276. package/dist/hyperliquid/live-dashboard.js +245 -0
  277. package/dist/hyperliquid/logo-cache.js +27 -0
  278. package/dist/hyperliquid/market-charts.js +242 -0
  279. package/dist/hyperliquid/market-snapshot.js +45 -0
  280. package/dist/hyperliquid/orders/order-contracts.js +42 -0
  281. package/dist/hyperliquid/orders/order-math.js +89 -0
  282. package/dist/hyperliquid/orders/order-outcomes.js +74 -0
  283. package/dist/hyperliquid/orders/order-prepare.js +109 -0
  284. package/dist/hyperliquid/orders/order-service.js +432 -0
  285. package/dist/hyperliquid/orders/order-store.js +134 -0
  286. package/dist/hyperliquid/orders/order-tools.js +40 -0
  287. package/dist/hyperliquid/orders/protection.js +35 -0
  288. package/dist/hyperliquid/orders/risk-settings.js +44 -0
  289. package/dist/hyperliquid/orders/trade-admission.js +117 -0
  290. package/dist/hyperliquid/orders/trade-planning.js +60 -0
  291. package/dist/hyperliquid/service.js +529 -0
  292. package/dist/hyperliquid/shared-feeds.js +40 -0
  293. package/dist/hyperliquid/signing.js +89 -0
  294. package/dist/indicators/builtin-catalog.js +59 -0
  295. package/dist/indicators/builtins/adx.pine +22 -0
  296. package/dist/indicators/builtins/atr.pine +11 -0
  297. package/dist/indicators/builtins/bollinger.pine +10 -0
  298. package/dist/indicators/builtins/ema.pine +5 -0
  299. package/dist/indicators/builtins/macd.pine +18 -0
  300. package/dist/indicators/builtins/rsi.pine +18 -0
  301. package/dist/indicators/builtins/sma.pine +5 -0
  302. package/dist/indicators/candle-window.js +36 -0
  303. package/dist/indicators/chart-contracts.js +64 -0
  304. package/dist/indicators/contracts.js +14 -0
  305. package/dist/indicators/durable-extension.js +32 -0
  306. package/dist/indicators/indicator-service.js +300 -0
  307. package/dist/indicators/indicator-store.js +137 -0
  308. package/dist/indicators/normalize.js +149 -0
  309. package/dist/indicators/result-schema.js +79 -0
  310. package/dist/indicators/runtime-wrapper.js +52 -0
  311. package/dist/indicators/runtime.js +201 -0
  312. package/dist/indicators/validation.js +124 -0
  313. package/dist/indicators/worker-queue.js +48 -0
  314. package/dist/initialize-config.js +160 -0
  315. package/dist/main.js +59 -0
  316. package/dist/memory/decision-audit.js +47 -0
  317. package/dist/memory/durable-extension.js +40 -0
  318. package/dist/memory/execution-audit.js +83 -0
  319. package/dist/memory/insight-contracts.js +33 -0
  320. package/dist/memory/insight-service.js +117 -0
  321. package/dist/memory/memory-contracts.js +113 -0
  322. package/dist/memory/memory-service.js +179 -0
  323. package/dist/memory/operations.js +46 -0
  324. package/dist/memory/tool-schemas.js +44 -0
  325. package/dist/memory/validation.js +42 -0
  326. package/dist/notifications/contracts.js +1 -0
  327. package/dist/notifications/delivery.js +11 -0
  328. package/dist/notifications/durable-extension.js +20 -0
  329. package/dist/notifications/notification-service.js +324 -0
  330. package/dist/providers/credential-store.js +86 -0
  331. package/dist/providers/ollama-cloud.js +148 -0
  332. package/dist/providers/provider-logo-url.js +18 -0
  333. package/dist/providers/provider-logo.js +31 -0
  334. package/dist/providers/provider-service.js +295 -0
  335. package/dist/research/artifacts.js +151 -0
  336. package/dist/research/call-queue.js +43 -0
  337. package/dist/research/contracts.js +37 -0
  338. package/dist/research/evidence.js +43 -0
  339. package/dist/research/journal.js +30 -0
  340. package/dist/research/research-service.js +191 -0
  341. package/dist/research/tool-activity.js +49 -0
  342. package/dist/research/tool-response.js +25 -0
  343. package/dist/runtime.js +145 -0
  344. package/dist/web/agent-events.js +418 -0
  345. package/dist/web/app.js +206 -0
  346. package/dist/web/artifact-downloads.js +23 -0
  347. package/dist/web/middleware.js +25 -0
  348. package/dist/web/random-uuid.js +14 -0
  349. package/dist/web/start.js +56 -0
  350. package/package.json +93 -3
  351. package/scripts/check-node.mjs +24 -0
  352. package/static/android-chrome-192x192.png +0 -0
  353. package/static/android-chrome-512x512.png +0 -0
  354. package/static/apple-touch-icon.png +0 -0
  355. package/static/favicon-16x16.png +0 -0
  356. package/static/favicon-32x32.png +0 -0
  357. package/static/favicon.ico +0 -0
  358. package/static/github.svg +3 -0
  359. package/static/hypervibes.png +0 -0
  360. package/static/logo.png +0 -0
  361. package/static/site.webmanifest +1 -0
  362. package/static/telegram.svg +1 -0
@@ -0,0 +1 @@
1
+ import{t as e}from"./jsx-runtime-CIazjfqY.js";import{r as t}from"./config-dialog-C9x9gKW9.js";var n=e();function r({schema:e,value:r,onChange:i,disabled:a=!1}){return(0,n.jsx)(`fieldset`,{disabled:a,className:`space-y-3`,children:e.map(e=>{let a=Object.hasOwn(r,e.key)?r[e.key]:e.default,o=t=>i({...r,[e.key]:t});return(0,n.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[(0,n.jsxs)(`label`,{className:`block`,children:[e.title,` `,(0,n.jsxs)(`span`,{className:`text-xs text-zinc-500`,children:[`(`,e.key,`; default `,String(e.default),`)`]}),e.options?(0,n.jsx)(`select`,{className:`${t} cursor-pointer`,value:String(a),onChange:t=>o(e.options.find(e=>String(e)===t.target.value)),children:e.options.map(e=>(0,n.jsx)(`option`,{value:String(e),children:String(e)},String(e)))}):e.type===`bool`?(0,n.jsx)(`input`,{className:`ml-2 cursor-pointer`,type:`checkbox`,checked:a===!0,onChange:e=>o(e.target.checked)}):(0,n.jsx)(`input`,{className:t,type:e.type===`int`||e.type===`float`?`number`:`text`,value:String(a),min:e.min,max:e.max,step:e.step??(e.type===`int`?1:`any`),onChange:t=>{let n=e.type===`int`||e.type===`float`?Number(t.target.value):t.target.value;o(n)}})]}),e.tooltip&&(0,n.jsx)(`p`,{className:`text-xs text-zinc-400`,children:e.tooltip}),Object.hasOwn(r,e.key)&&(0,n.jsx)(`button`,{type:`button`,className:`cursor-pointer text-xs underline`,onClick:()=>i(Object.fromEntries(Object.entries(r).filter(([t])=>t!==e.key))),children:`Use source default`})]},e.key)})})}export{r as t};
@@ -0,0 +1 @@
1
+ import{a as e,n as t,t as n}from"./createServerFn-DfZIp2Fu.js";var r=n({method:`GET`}).handler(e(`00964fe21edb108d3cda55ebd5291a54026b148db66510fc2649b642258e569a`)),i=n({method:`GET`}).handler(e(`a876e4fca7d57a7f00fc5fcd144ff8083d42aba4eceff7c7cc76cbca976f9d39`)),a=n({method:`GET`}).handler(e(`6baf5bca38717239ece5c328e63517c914843a5aaa2b1705b55b2247a5658353`)),o=n({method:`POST`}).handler(e(`1f55ecc9fb92e12098a1d38c2da2810dd0c81bbc989f3f89a49927a2287ca00d`)),s=n({method:`POST`}).handler(e(`14ef82e1b6f56a0be942672cb8b064436b2c64a76c4dbe66be464e6df55e02b7`)),c=n({method:`POST`}).handler(e(`107544c82d871bc1b91ed4c109db747bb4216d4db195acea4937d29234fe5dbc`)),l=n({method:`POST`}).handler(e(`7e4ee5e99019cdc6e596042689c4f641d4848e50bafb620da1a4530d6be302d3`)),u={all:e=>[`indicators`,e]},d=(e,n={})=>t({queryKey:[...u.all(e),`list`,n],queryFn:()=>r({data:{agentId:e,...n}}),staleTime:3e4}),f=(e,n,r={})=>t({queryKey:[...u.all(e),`detail`,n,r],queryFn:()=>i({data:{agentId:e,indicatorId:n,...r}}),staleTime:3e4}),p=(e,n,r=0)=>t({queryKey:[...u.all(e),`versions`,n,r],queryFn:()=>a({data:{agentId:e,indicatorId:n,offset:r}}),staleTime:3e4}),m=(e,n,r,i,a,o)=>t({queryKey:[...u.all(e),`render`,n,r,i,a,o],queryFn:({signal:t})=>l({data:{agentId:e,layoutId:n,revision:r,coin:i,interval:a,end:o},signal:t}),staleTime:1/0,gcTime:6e4,retry:2,retryDelay:2e3});export{p as a,s as c,f as i,c as l,u as n,i as o,d as r,o as s,m as t};
@@ -0,0 +1 @@
1
+ import{d as e}from"./jsx-runtime-CIazjfqY.js";import{c as t,i as n,s as r}from"./lightweight-charts.production-BiBiFZSH.js";function i(e,t,n,r){if(e===`horizontal`)return[{x:0,y:t.y},{x:r,y:t.y}];if(e===`horizontal-ray`)return[t,{x:r,y:t.y}];let i=n.x-t.x;if(!i||e!==`ray`&&e!==`extended`)return[t,n];let a=e=>({x:e,y:t.y+(n.y-t.y)*(e-t.x)/i});return e===`extended`?[a(0),a(r)]:[t,a(i>0?r:0)]}function a(e,t,n,r){let i=e.timeScale(),a=i.timeToCoordinate(n);if(a!==null)return a;if(!t.length)return null;let o=0,s=t.length-1;for(;o<s;){let e=Math.ceil((o+s)/2);t[e].time<=n?o=e:s=e-1}let c=t[o],l=i.timeToCoordinate(c.time);return l===null?null:l+(n-c.time)/r*i.options().barSpacing}var o=class{data;chart;series;request;hits=[];renderer={draw:e=>e.useMediaCoordinateSpace(({context:e,mediaSize:t})=>this.draw(e,t.width,t.height))};views=[{zOrder:()=>`normal`,renderer:()=>this.renderer}];constructor(e){this.data=e}attached(e){this.chart=e.chart,this.series=e.series,this.request=e.requestUpdate}detached(){this.chart=void 0,this.series=void 0,this.request=void 0,this.hits.length=0}update(e){this.data=e,this.request?.()}updateAllViews(){this.hits.length=0}paneViews(){return this.views}hitTest(e,t){let n=this.hits.slice().reverse().find(n=>Math.hypot(n.x-e,n.y-t)<12);return n?{externalId:n.id,zOrder:`normal`,cursorStyle:`default`,distance:Math.hypot(n.x-e,n.y-t),hitTestPriority:2}:null}describe(e){return this.hits.find(t=>t.id===e)?.text}autoscaleInfo(){let e=this.data.result.drawings.filter(e=>this.owns(e)).flatMap(e=>e.kind===`label`?e.location===`pr`?[e.at.price]:[]:[e.from.price,e.to.price]);for(let t of this.data.result.levels)this.owns(t)&&!t.style.hidden&&e.push(t.value);return e.length?{priceRange:{minValue:Math.min(...e),maxValue:Math.max(...e)}}:null}owns(e){return(e.forceOverlay||this.data.instance.pane===`price`||this.data.instance.pane!==`separate`&&e.overlay)===this.data.overlay}draw(e,t,n){if(!this.chart||!this.series)return;let{result:r,instance:i,candles:o}=this.data,s=r.dataset.count>1?(r.dataset.lastOpenTime-r.dataset.firstOpenTime)/(r.dataset.count-1):r.end/1e3-r.dataset.lastOpenTime,c=e=>a(this.chart,o,e,s),l=e=>this.series.priceToCoordinate(e),u=new Map(r.outputs.map(e=>[e.id,new Map(e.points.map(e=>[e.time,e]))])),d=new Map(r.levels.map(e=>[e.id,e])),f=(e,t)=>{let n=r.outputs.find(t=>t.id===e),i=d.get(e);if(n&&!this.owns(n)||i&&!this.owns(i))return null;let a=u.get(e)?.get(t),o=a?.value??i?.value;if(o==null)return null;let s=c(a?.displayTime??t),f=l(o);return s===null||f===null?null:{x:s,y:f}};this.hits.length=0,e.save(),e.beginPath(),e.rect(0,0,t,n),e.clip();for(let t of r.fills)if(!(t.hidden||i.styles[t.id]?.hidden))for(let n=1;n<t.points.length;n++){let r=t.points[n-1],a=t.points[n],o=f(t.from,r.time),s=f(t.from,a.time),c=f(t.to,a.time),l=f(t.to,r.time);if(!(!o||!s||!c||!l)){e.fillStyle=i.styles[t.id]?.color??a.color??t.color??`#2962ff30`,e.beginPath(),e.moveTo(o.x,o.y);for(let t of[s,c,l])e.lineTo(t.x,t.y);e.closePath(),e.fill()}}for(let n of r.levels){if(!this.owns(n)||n.style.hidden||i.styles[n.id]?.hidden)continue;let r=l(n.value);r!==null&&(e.strokeStyle=i.styles[n.id]?.color??n.style.color??`#787b86`,e.lineWidth=i.styles[n.id]?.width??n.style.width??1,e.setLineDash(n.style.lineStyle?.includes(`dot`)?[2,3]:n.style.lineStyle?.includes(`dash`)?[6,4]:[]),e.beginPath(),e.moveTo(0,r),e.lineTo(t,r),e.stroke())}e.setLineDash([]);for(let a of r.markers){if(!this.owns(a)||i.styles[a.outputId]?.hidden)continue;let s=c(a.displayTime);if(s===null||s<-50||s>t+50)continue;let u=o.find(e=>e.time===a.displayTime)??o.find(e=>e.time===a.time),d=a.location===`Top`?15:a.location===`Bottom`?n-15:a.location===`Absolute`&&typeof a.value==`number`?l(a.value):u?l(a.location===`BelowBar`?u.low:u.high):null;if(d===null)continue;a.location===`BelowBar`?d+=14:(a.location===`AboveBar`||!a.location)&&(d-=14);let f=a.kind===`arrow`?typeof a.value==`number`&&a.value<0:a.shape?.includes(`down`);e.fillStyle=i.styles[a.outputId]?.color??a.color??`#a78bfa`,e.font=`12px sans-serif`,e.textAlign=`center`,e.fillText(a.kind===`char`?a.character??`•`:a.shape?.includes(`circle`)?`●`:a.shape?.includes(`cross`)?`+`:f?`▼`:`▲`,s,d),a.text&&(e.fillStyle=a.textColor??a.color??`#d4d4d8`,e.fillText(a.text,s,d+(f?16:-14))),this.hits.push({id:`pine:${i.id}:${r.resultHash}:${a.id}`,x:s,y:d,text:`${a.text??a.character??a.kind} · source ${new Date(a.time*1e3).toISOString()}`})}for(let n of r.drawings){if(!this.owns(n)||i.styles[n.id]?.hidden)continue;let a=n.kind===`label`?n.at:n.from,s=c(a.time),u=l(a.price);if(n.kind===`label`&&n.location!==`pr`){let e=o.find(e=>e.time===a.time);e&&(u=l(n.location===`ab`?e.high:e.low))}if(!(s===null||u===null)){if(e.strokeStyle=i.styles[n.id]?.color??n.color??`#a78bfa`,e.fillStyle=e.strokeStyle,e.lineWidth=i.styles[n.id]?.width??n.width??1,e.setLineDash(n.lineStyle?.includes(`dash`)?[6,4]:n.lineStyle?.includes(`dot`)?[2,3]:[]),n.kind===`label`){let t=u+(n.location===`ab`?-14:n.location===`bl`?14:0);if(e.font=`${n.size===`large`?16:12}px sans-serif`,e.textAlign=`center`,n.color){let r=e.measureText(n.text).width+8;e.fillRect(s-r/2,t-13,r,18)}e.fillStyle=n.textColor||`#d4d4d8`,e.fillText(n.text,s,t)}else this.drawObject(e,n,s,u,c(n.to.time),l(n.to.price),t);this.hits.push({id:`pine:${i.id}:${r.resultHash}:${n.id}`,x:s,y:u,text:n.kind===`line`?`Line · ${a.price}`:n.text})}}e.restore()}drawObject(e,t,n,r,a,o,s){if(!(a===null||o===null))if(t.kind===`box`){let i=t.extend===`left`||t.extend===`both`?0:Math.min(n,a),c=t.extend===`right`||t.extend===`both`?s:Math.max(n,a);e.fillStyle=t.background??`#2962ff30`,e.fillRect(i,Math.min(r,o),c-i,Math.abs(o-r)),e.strokeRect(i,Math.min(r,o),c-i,Math.abs(o-r)),t.text&&(e.fillStyle=t.textColor??`#d4d4d8`,e.font=`12px sans-serif`,e.textAlign=`center`,e.fillText(t.text,(i+c)/2,(r+o)/2))}else{let c={x:n,y:r},l={x:a,y:o},[u,d]=t.extend===`both`?i(`extended`,c,l,s):t.extend===`right`?i(`ray`,c.x<=l.x?c:l,c.x<=l.x?l:c,s):t.extend===`left`?i(`ray`,c.x>=l.x?c:l,c.x>=l.x?l:c,s):[c,l];e.beginPath(),e.moveTo(u.x,u.y),e.lineTo(d.x,d.y),e.stroke()}}},s=e({createIndicatorRenderer:()=>c});function c(e,i){let a=new Map,s=t=>{let n=a.get(t);if(n){for(let{series:e,primitive:t}of n.anchors)e.detachPrimitive(t);for(let t of[...n.series,...n.anchors.map(e=>e.series)])e.removeSeries(t);a.delete(t)}};return{apply(c,l,u){let d=JSON.stringify([c,l.resultHash,u[0]?.time,u.at(-1)?.time,u.length]);if(a.get(c.id)?.signature===d)return;let f=e.timeScale().getVisibleRange();if(s(c.id),c.hidden)return;let p={signature:d,series:[],anchors:[]};a.set(c.id,p);try{let a=e=>e.forceOverlay||(c.pane===`auto`?e.overlay:c.pane===`price`),s=t=>t?0:(p.pane||(p.pane=e.addPane(),p.pane.setHeight(150)),p.pane.paneIndex()),d=new Set(u.map(e=>e.time));for(let i of l.outputs){let o=c.styles[i.id];if(i.style.hidden||o?.hidden)continue;let l=s(a(i)),u=o?.color??i.style.color??`#a78bfa`,f=i.kind===`line`?e.addSeries(t,{color:u,lineWidth:Math.max(1,Math.min(4,o?.width??i.style.width??2)),lineStyle:i.style.lineStyle?.includes(`dash`)?n.Dashed:i.style.lineStyle?.includes(`dot`)?n.Dotted:n.Solid,lastValueVisible:!1,priceLineVisible:!1,crosshairMarkerVisible:!1},l):e.addSeries(r,{color:u,base:0,lastValueVisible:!1,priceLineVisible:!1},l);p.series.push(f);let m=new Map(i.points.filter(e=>d.has(e.displayTime)).map(e=>[e.displayTime,e.value===null?{time:e.displayTime}:{time:e.displayTime,value:e.value,color:o?.color??e.color??u}]));f.setData([...m.values()].sort((e,t)=>Number(e.time)-Number(t.time)))}let f=new Set;for(let e of[...l.outputs,...l.levels,...l.markers,...l.drawings])f.add(a(e));for(let n of f){let r=s(n),f=e.addSeries(t,{priceScaleId:n?i.options().priceScaleId:`right`,color:`#00000000`,lastValueVisible:!1,priceLineVisible:!1,crosshairMarkerVisible:!1},r),m=1/0,h=-1/0;for(let e of l.outputs)if(a(e)===n)for(let t of e.points)t.value!==null&&d.has(t.time)&&(m=Math.min(m,t.value),h=Math.max(h,t.value));n?(m=u[0]?.close??1,h=u.at(-1)?.close??m):Number.isFinite(m)||(m=0,h=1);let g=u[0],_=u.at(-1);g&&_&&f.setData(g.time===_.time?[{time:g.time,value:m}]:[{time:g.time,value:m},{time:_.time,value:h}]);let v=new o({instance:c,result:l,candles:u,overlay:n,paneHeight:()=>e.panes()[r]?.getHeight()??0});f.attachPrimitive(v),p.anchors.push({series:f,primitive:v})}}catch(e){throw s(c.id),e}finally{f&&e.timeScale().setVisibleRange(f)}},remove:s,describe(e){for(let t of a.values())for(let{primitive:n}of t.anchors){let t=n.describe(e);if(t!==void 0)return t}},close(){for(let e of[...a.keys()])s(e)}}}export{s as n,i as r,c as t};
@@ -0,0 +1 @@
1
+ import{f as e,l as t,t as n}from"./jsx-runtime-CIazjfqY.js";var r=e(t(),1);function i(e){return e.length<=64&&/^(?:[A-Za-z0-9_-]+:)?[A-Za-z0-9_-]+$/.test(e)}function a(e){return i(e)?`/currency/${encodeURIComponent(e)}.svg`:null}var o=n();function s({symbol:e,iconOnly:t=!1}){let n=a(e),[i,s]=(0,r.useState)(null);return(0,o.jsxs)(`span`,{className:`inline-flex items-center gap-2`,title:t?e:void 0,children:[n&&(i===n?(0,o.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-5 w-5 shrink-0 items-center justify-center rounded-sm bg-zinc-800 text-[8px] text-zinc-300`,children:e.slice(0,3)}):(0,o.jsx)(`img`,{src:n,alt:``,"aria-hidden":`true`,width:20,height:20,loading:`lazy`,onError:()=>s(n),className:`h-5 w-5 shrink-0 rounded-sm bg-zinc-800`})),(0,o.jsx)(`span`,{className:t&&n?`sr-only`:void 0,children:e})]})}export{s as t};
@@ -0,0 +1 @@
1
+ import{f as e,l as t,t as n}from"./jsx-runtime-CIazjfqY.js";import{t as r}from"./useQuery-BMSU16jY.js";import{r as i}from"./chart-queries-Bpvrgd0-.js";import{n as a,r as o,t as s}from"./config-dialog-C9x9gKW9.js";import{t as c}from"./instrument-label-BZYlWXR5.js";var l=e(t(),1),u=n(),d=50,f=`size-4 shrink-0 cursor-pointer appearance-none rounded-full border border-zinc-600 bg-zinc-950 checked:border-[5px] checked:border-violet-500 checked:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-violet-400`,p=`flex cursor-pointer items-center gap-3 rounded-xl border border-zinc-800 bg-zinc-950/70 px-4 py-3 text-sm transition hover:border-zinc-700 has-checked:border-violet-500 has-checked:bg-violet-950/30 has-focus-visible:ring-2 has-focus-visible:ring-violet-400 has-disabled:cursor-not-allowed`;function m({agentId:e,value:t,onChange:n,disabled:r=!1}){let[i,o]=(0,l.useState)(!1);return(0,u.jsxs)(`section`,{"aria-label":`Allowed instruments`,className:`space-y-2 text-sm text-zinc-300`,children:[(0,u.jsx)(`h3`,{children:`Allowed instruments`}),(0,u.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 rounded-2xl border border-zinc-800 bg-zinc-950/60 p-4`,children:[(0,u.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-wrap gap-2`,children:t===null?(0,u.jsx)(`span`,{className:`self-center text-zinc-400`,children:`All instruments · No limit`}):t.map(e=>(0,u.jsx)(`span`,{className:`rounded-xl border border-zinc-800 bg-zinc-950/70 px-3 py-2`,children:(0,u.jsx)(c,{symbol:e})},e))}),(0,u.jsx)(`button`,{type:`button`,disabled:r,"aria-haspopup":`dialog`,onClick:()=>o(!0),className:`${a} shrink-0`,children:`Select instruments`})]}),i&&(0,u.jsx)(h,{agentId:e,value:t,onCancel:()=>o(!1),onApply:e=>{n(e),o(!1)}})]})}function h({agentId:e,value:t,onCancel:n,onApply:m}){let h=(0,l.useId)(),[g,_]=(0,l.useState)(t===null),[v,y]=(0,l.useState)(()=>new Set(t??[])),[b,x]=(0,l.useState)(``),S=r(i(e)),C=S.data,w=S.error?.message,T=new Set(C??[]),E=[...new Set([...C??[],...t??[]])].sort().filter(e=>e.toLowerCase().includes(b.trim().toLowerCase())),D=E.filter(e=>T.has(e)),O=new Set([...v,...D]),k=C!==void 0;function A(e){y(t=>{let n=new Set(t);return n.has(e)?n.delete(e):T.has(e)&&n.size<d&&n.add(e),n})}return(0,u.jsxs)(s,{title:`Select trading instruments`,onCancel:n,onApply:()=>{g?m(null):k&&v.size>0&&v.size<=d&&m([...v].sort())},applyDisabled:!g&&(!k||v.size===0||v.size>d),children:[(0,u.jsxs)(`fieldset`,{className:`flex shrink-0 flex-wrap gap-4 text-sm`,children:[(0,u.jsx)(`legend`,{className:`sr-only`,children:`Instrument restrictions`}),(0,u.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2`,children:[(0,u.jsx)(`input`,{type:`radio`,name:h,className:f,checked:g,onChange:()=>_(!0)}),`No limit (all instruments)`]}),(0,u.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2`,children:[(0,u.jsx)(`input`,{type:`radio`,name:h,className:f,checked:!g,onChange:()=>_(!1)}),`Selected instruments only`]})]}),(0,u.jsxs)(`label`,{className:`block shrink-0 space-y-2 text-sm`,children:[`Search instruments`,(0,u.jsx)(`input`,{autoFocus:!0,type:`search`,value:b,onChange:e=>x(e.target.value),className:o,placeholder:`Filter instruments`,autoComplete:`off`})]}),(0,u.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:[(0,u.jsx)(`button`,{type:`button`,disabled:g||!k||!D.length||O.size>d,onClick:()=>y(O),className:a,children:b.trim()?`Select all shown`:`Select all`}),(0,u.jsx)(`button`,{type:`button`,disabled:g||!v.size,onClick:()=>y(new Set),className:a,children:`Select none`}),(0,u.jsx)(`span`,{className:`ml-auto text-xs text-zinc-400`,children:g?`All instruments allowed`:`${v.size} / ${d} selected`})]}),!g&&!v.size&&(0,u.jsx)(`p`,{role:`status`,className:`text-sm text-amber-200`,children:`Select at least one instrument, or choose No limit to allow all instruments.`}),!g&&(C?.length??0)>d&&(0,u.jsxs)(`p`,{className:`text-xs text-zinc-400`,children:[`Choose up to `,d,` instruments. Filter to select all matching instruments, or use No limit to allow every instrument.`]}),w?(0,u.jsxs)(`div`,{role:`alert`,className:`space-y-3 text-sm text-red-300`,children:[(0,u.jsx)(`p`,{children:w}),(0,u.jsx)(`button`,{type:`button`,onClick:()=>{S.refetch()},className:a,children:`Retry`})]}):k?(0,u.jsxs)(`fieldset`,{disabled:g,"aria-label":`Trading instruments`,className:`min-h-0 space-y-2 overflow-y-auto pb-5 disabled:opacity-50`,style:{maxHeight:`24rem`},children:[E.map(e=>(0,u.jsxs)(`label`,{className:p,children:[(0,u.jsxs)(`span`,{className:`relative inline-flex size-5 shrink-0`,children:[(0,u.jsx)(`input`,{type:`checkbox`,"aria-label":e,checked:v.has(e),disabled:!v.has(e)&&(!T.has(e)||v.size>=d),onChange:()=>A(e),className:`peer size-5 cursor-pointer appearance-none rounded border border-zinc-600 bg-zinc-950 checked:border-violet-500 checked:bg-violet-600 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-violet-400 disabled:cursor-not-allowed disabled:opacity-50`}),(0,u.jsx)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 20 20`,fill:`none`,stroke:`currentColor`,strokeWidth:2.5,className:`pointer-events-none absolute inset-0.5 size-4 text-white opacity-0 peer-checked:opacity-100`,children:(0,u.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`m4 10 4 4 8-8`})})]}),(0,u.jsx)(c,{symbol:e}),!T.has(e)&&(0,u.jsx)(`span`,{className:`ml-auto text-xs text-amber-200`,children:`Unavailable`})]},e)),!E.length&&(0,u.jsx)(`p`,{className:`rounded-xl border border-zinc-800 p-6 text-center text-sm text-zinc-500`,children:C?.length?`No instruments match this filter.`:`No active perpetual instruments are available.`})]}):(0,u.jsx)(`p`,{role:`status`,className:`text-sm text-zinc-400`,children:`Loading instruments…`})]})}function g({instruments:e,value:t,onChange:n,disabled:r=!1,saveError:i=``,className:o=a}){let[s,d]=(0,l.useState)(!1);return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsxs)(`button`,{type:`button`,"aria-label":`Instrument`,"aria-haspopup":`dialog`,"aria-expanded":s,title:t?`${t} · Select chart instrument`:`Select chart instrument`,disabled:r,className:`${o} flex items-center gap-2`,onClick:()=>d(!0),children:[t?(0,u.jsx)(c,{symbol:t}):`Instrument`,(0,u.jsx)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 20 20`,fill:`currentColor`,className:`size-3 shrink-0 text-zinc-500`,children:(0,u.jsx)(`path`,{d:`m5 8 5 5 5-5Z`})})]}),s&&(0,u.jsx)(_,{instruments:e,value:t,pending:r,saveError:i,onChange:n,onCancel:()=>d(!1),onSuccess:()=>d(!1)})]})}function _({instruments:e,value:t,pending:n,saveError:r,onChange:i,onCancel:a,onSuccess:d}){let m=(0,l.useId)(),[h,g]=(0,l.useState)(t??``),[_,v]=(0,l.useState)(``),[y,b]=(0,l.useState)(!1),[x,S]=(0,l.useState)(``),C=(0,l.useRef)(!1),w=(0,l.useRef)(!0),T=(0,l.useRef)(null);(0,l.useEffect)(()=>(w.current=!0,()=>{w.current=!1}),[]);let E=new Set(e),D=_.trim().toLowerCase(),O=[...new Set([...e,...t?[t]:[]])].sort(),k=O.filter(e=>e.toLowerCase().includes(D)),A=k.filter(e=>E.has(e)),j=A.includes(h),M=n||y;(0,l.useEffect)(()=>{T.current?.querySelector(`input:checked`)?.closest(`label`)?.scrollIntoView({block:`nearest`})},[h,D]);function N(e){v(e);let t=e.trim().toLowerCase();g(O.find(e=>E.has(e)&&e.toLowerCase().includes(t))??``)}function P(e){if(e.nativeEvent.isComposing)return;if(e.key===`Enter`){e.preventDefault(),e.repeat||F();return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`||(e.preventDefault(),M||!A.length))return;let t=A.indexOf(h),n=e.key===`ArrowDown`,r=t<0?n?0:A.length-1:Math.max(0,Math.min(A.length-1,t+(n?1:-1)));g(A[r])}async function F(){if(!(M||C.current||!j)){C.current=!0,b(!0),S(``);try{let e=await i(h);w.current&&(e?d():S(`Unable to change instrument. Please try again.`))}catch(e){w.current&&S(e instanceof Error?e.message:`Unable to change instrument.`)}finally{C.current=!1,w.current&&b(!1)}}}return(0,u.jsxs)(s,{title:`Select chart instrument`,onCancel:a,onApply:()=>{F()},applyDisabled:M||!j,children:[(0,u.jsxs)(`label`,{className:`block shrink-0 space-y-2 text-sm`,children:[`Search instruments`,(0,u.jsx)(`input`,{autoFocus:!0,type:`search`,value:_,disabled:M,onChange:e=>N(e.target.value),onKeyDown:P,"aria-controls":`${m}-results`,"aria-describedby":`${m}-keys`,className:o,placeholder:`Filter instruments`,autoComplete:`off`})]}),(0,u.jsx)(`p`,{id:`${m}-keys`,className:`text-xs text-zinc-500`,children:`↑ / ↓ to choose · Enter to apply · Esc to cancel`}),(0,u.jsx)(`p`,{role:`status`,className:`sr-only`,children:j?`${h} selected`:A.length?`Choose an active instrument`:`No matching active instruments`}),(r||x)&&(0,u.jsx)(`p`,{role:`alert`,className:`text-sm text-red-300`,children:r||x}),!e.length&&(0,u.jsx)(`p`,{role:`status`,className:`text-sm text-amber-200`,children:`No active perpetual instruments are available.`}),(0,u.jsxs)(`fieldset`,{ref:T,id:`${m}-results`,disabled:M,"aria-label":`Chart instruments`,onKeyDown:e=>{e.key===`Enter`&&P(e)},className:`min-h-0 space-y-2 overflow-y-auto pb-5 disabled:opacity-50`,style:{maxHeight:`24rem`},children:[k.map(e=>(0,u.jsxs)(`label`,{className:p,children:[(0,u.jsx)(`input`,{type:`radio`,name:m,"aria-label":e,checked:h===e,disabled:!E.has(e),onChange:()=>g(e),className:f}),(0,u.jsx)(c,{symbol:e}),!E.has(e)&&(0,u.jsx)(`span`,{className:`ml-auto text-xs text-amber-200`,children:`Unavailable`})]},e)),!k.length&&e.length>0&&(0,u.jsx)(`p`,{className:`rounded-xl border border-zinc-800 p-6 text-center text-sm text-zinc-500`,children:`No instruments match this filter.`})]})]})}export{g as n,m as t};
@@ -0,0 +1 @@
1
+ var e=class e{units;scale;constructor(e,t){this.units=e,this.scale=t}static from(t){if(t.length>200||!/^-?\d+(?:\.\d+)?$/.test(t))throw Error(`Invalid journal decimal`);let[n,r=``]=t.split(`.`);return new e(BigInt(`${n}${r}`),r.length)}align(e){let t=Math.max(this.scale,e.scale);return{a:this.units*10n**BigInt(t-this.scale),b:e.units*10n**BigInt(t-e.scale),scale:t}}add(t){let{a:n,b:r,scale:i}=this.align(t);return new e(n+r,i)}sub(e){return this.add(e.neg())}neg(){return new e(-this.units,this.scale)}abs(){return this.units<0n?this.neg():this}mul(t){return new e(this.units*t.units,this.scale+t.scale)}div(t){if(t.units===0n)throw Error(`Division by zero`);let n=this.units*10n**BigInt(t.scale+28),r=t.units*10n**BigInt(this.scale),i=n<0n!=r<0n,a=n<0n?-n:n,o=r<0n?-r:r,s=a/o,c=a%o;return(c*2n>o||c*2n===o&&s%2n!=0n)&&s++,new e(i?-s:s,28)}cmp(e){let{a:t,b:n}=this.align(e);return t<n?-1:+(t>n)}get zero(){return this.units===0n}get sign(){return this.units<0n?-1:+(this.units>0n)}toString(){let e=(this.units<0n?-this.units:this.units).toString().padStart(this.scale+1,`0`),t=this.scale?`${e.slice(0,-this.scale)}.${e.slice(-this.scale)}`.replace(/\.?0+$/,``):e;return`${this.units<0n?`-`:``}${t}`}}.from;export{e as t};
@@ -0,0 +1 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.for(`react.view_transition`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function y(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function b(){}b.prototype=y.prototype;function x(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}var S=x.prototype=new b;S.constructor=x,_(S,y.prototype),S.isPureReactComponent=!0;var C=Array.isArray;function w(){}var T={H:null,A:null,T:null,S:null},E=Object.prototype.hasOwnProperty;function D(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function O(e,t){return D(e.type,t,e.props)}function k(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function A(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var j=/\/+/g;function M(e,t){return typeof e==`object`&&e&&e.key!=null?A(``+e.key):t.toString(36)}function N(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(w,w):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function P(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,P(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+M(e,0):a,C(o)?(i=``,c!=null&&(i=c.replace(j,`$&/`)+`/`),P(o,r,i,``,function(e){return e})):o!=null&&(k(o)&&(o=O(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(j,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(C(e))for(var u=0;u<e.length;u++)a=e[u],s=l+M(a,u),c+=P(a,r,i,s,o);else if(u=h(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+M(a,u++),c+=P(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return P(N(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function F(e,t,n){if(e==null)return e;var r=[],i=0;return P(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function I(e){if(e._status===-1){var t=e._result,n=t();n.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t,n.status===void 0&&(n.status=`fulfilled`,n.value=t))},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t,n.status===void 0&&(n.status=`rejected`,n.reason=t))}),e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return e._result.default;throw e._result}var L=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)};function R(e){var t=T.T,n={};n.types=t===null?null:t.types,T.T=n;try{var r=e(),i=T.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(w,L)}catch(e){L(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),T.T=t}}function z(e){var t=T.T;if(t!==null){var n=t.types;n===null?t.types=[e]:n.indexOf(e)===-1&&n.push(e)}else R(z.bind(null,e))}var B={map:F,forEach:function(e,t,n){F(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return F(e,function(){t++}),t},toArray:function(e){return F(e,function(e){return e})||[]},only:function(e){if(!k(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=B,e.Component=y,e.Fragment=r,e.Profiler=a,e.PureComponent=x,e.StrictMode=i,e.Suspense=l,e.ViewTransition=p,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},e.addTransitionType=z,e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=_({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!E.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return D(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)E.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return D(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=k,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:I}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=R,e.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},e.use=function(e){return T.H.use(e)},e.useActionState=function(e,t,n){return T.H.useActionState(e,t,n)},e.useCallback=function(e,t){return T.H.useCallback(e,t)},e.useContext=function(e){return T.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return T.H.useEffect(e,t)},e.useEffectEvent=function(e){return T.H.useEffectEvent(e)},e.useId=function(){return T.H.useId()},e.useImperativeHandle=function(e,t,n){return T.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return T.H.useMemo(e,t)},e.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return T.H.useReducer(e,t,n)},e.useRef=function(e){return T.H.useRef(e)},e.useState=function(e){return T.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return T.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return T.H.useTransition()},e.version=`19.3.1`})),d=o(((e,t)=>{t.exports=u()}));function f(e){return e?.isNotFound===!0}function p(e){e.statusCode=e.statusCode||e.code||307;let t=new Headers(e.headers);e.href&&t.get(`Location`)===null&&t.set(`Location`,e.href);let n=new Response(null,{status:e.statusCode,headers:t});if(n.options=e,e.throw)throw n;return n}function m(e){return e instanceof Response&&!!e.options}function h(e){if(typeof e==`object`&&e&&e.isSerializedRedirect)return p(e)}function g(){throw Error(`Invariant failed`)}function _(e,t=String){let n;for(let r in e){let i=e[r];i!==void 0&&(n||=new URLSearchParams).set(r,t(i))}return n?n.toString():``}function v(e){return e?e===`false`?!1:e===`true`?!0:e*0==0&&+e+``===e?+e:e:``}function y(e){let t=new URLSearchParams(e),n=Object.create(null);for(let[e,r]of t.entries()){let t=n[e];t==null?n[e]=v(r):Array.isArray(t)?t.push(v(r)):n[e]=[t,v(r)]}return n}var b=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),x=o(((e,t)=>{t.exports=b()}));export{m as a,f as c,s as d,l as f,g as i,d as l,y as n,h as o,_ as r,p as s,x as t,o as u};
@@ -0,0 +1 @@
1
+ import{f as e,i as t,l as n,s as r,t as i}from"./jsx-runtime-CIazjfqY.js";import{C as a,S as o,_ as s,b as c,f as l,g as u,h as d,i as f,m as p,n as m,p as h,r as g,t as _,w as v,y}from"./useSelector-ERD9RroG.js";import{t as b}from"./useRouter-c0I1aURm.js";var x=`Error preloading route! ☝️`,S=class{get to(){return this._to}get id(){return this._id}get path(){return this._path}get fullPath(){return this._fullPath}constructor(e){if(this.init=e=>{this.originalIndex=e,this._branch=void 0;let n=this.options,r=!n?.path&&!n?.id;this.parentRoute=this.options.getParentRoute?.(),r?this._path=l:this.parentRoute||t();let i=r?l:n?.path;i&&i!==`/`&&(i=d(i));let a=n?.id||i,o=r?l:h((this.parentRoute.id===`__root__`?``:this.parentRoute.id)+`/`+(a??``));i===`__root__`&&(i=`/`);let s=o===`__root__`?`/`:i===void 0?this.parentRoute.fullPath:h(this.parentRoute.fullPath+`/`+i);this._path=i,this._id=o,this._fullPath=s,this._to=u(s)},this.addChildren=e=>this._addFileChildren(e),this._addFileChildren=e=>(Array.isArray(e)&&(this.children=e),typeof e==`object`&&e&&(this.children=Object.values(e)),this),this._addFileTypes=()=>this,this.updateLoader=e=>(Object.assign(this.options,e),this),this.update=e=>(Object.assign(this.options,e),this),this.lazy=e=>(this.lazyFn=e,this),this.redirect=e=>r({from:this.fullPath,...e}),this.options=e||{},this.isRoot=!e?.getParentRoute,e?.id&&e?.path)throw Error(`Route cannot have both an 'id' and a 'path' option.`)}},C=class extends S{constructor(e){super(e)}},w=e(n(),1),T=w.use,E=w.useLayoutEffect,D={};function O(e,t){let n=w.useRef();return r=>{let i=e?.select?e.select(r):r;return e?.structuralSharing??t.options.defaultStructuralSharing?n.current=v(n.current,i):i}}function k(e){let n=b(),r=w.useContext(e.from?g:f),i=e.from??r,a=n.stores.getMatchStore(i),o=O(e,n),s=_(a,e=>e?o(e):D);if(s!==D)return s;(e.shouldThrow??!0)&&t()}function A(e){return k({from:e.from,strict:e.strict,structuralSharing:e.structuralSharing,select:t=>e.select?e.select(t.loaderData):t.loaderData})}function j(e){let{select:t,...n}=e;return k({...n,select:e=>t?t(e.loaderDeps):e.loaderDeps})}function M(e){return k({from:e.from,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,strict:e.strict,select:t=>{let n=e.strict===!1?t.params:t._strictParams;return e.select?e.select(n):n}})}function N(e){return k({from:e.from,strict:e.strict,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,select:t=>e.select?e.select(t.search):t.search})}function P(e){let t=b();return w.useCallback(n=>t.navigate({...n,from:n.from??e?.from}),[e?.from,t])}function F(e){return k({...e,select:t=>e.select?e.select(t.context):t.context})}var I=i();function L(...e){let t=w.useRef(e),n=t.current;return e.forEach((e,t)=>{s(n[t],e,!1,!0)||(n[t]=e)}),t.current}function R(e,t){e.preloadRoute(t).catch(e=>{console.warn(e),console.warn(x)})}function z(e,t){let n=typeof e==`string`&&c(e);if(n)return t.has(n)?e:null}function B(e,t,n,r){let i=p(e.pathname,r),a=p(t.pathname,r);return(n?.exact?i!==a:!(i.startsWith(a)&&(i.length===a.length||i[a.length]===`/`)))||(n?.includeSearch??!0)&&!s(e.search,t.search,!n?.exact,n?.explicitUndefined)?!1:!n?.includeHash||e.hash===t.hash}function V(e,t,n){let r=b(),i=w.useRef(null),a=w.useCallback(e=>{if(i.current=e,typeof t==`function`)return t(e);t&&(t.current=e)},[t]),{activeOptions:o,to:s,preload:l,preloadDelay:u,disabled:d,target:p,onClick:h,onBlur:g,onFocus:_,onMouseEnter:v,onMouseLeave:y,onTouchStart:x}=e,[S,C,T]=L(e.search,e.params,o),E=w.useContext(f),D=(r.stores._linkScopes??={})[E]??=m(r,E),[O,k,A]=w.useMemo(()=>{let t=z(s,r.protocolAllowlist);if(t!==void 0){let n=[t??void 0];return[e,()=>n]}let n={...e},i,a,o,l=()=>{let e=D[0]();if(e!==i){n._fromLocation=e;let t=r.buildLocation(n),o=Y(t,r,d),s=d||o&&!c(o)?B(e,t,T,r.basepath):void 0;(!a||a[0]!==o||a[1]!==s)&&(a=[o,s]),i=e}return a};return[n,l,T?.includeHash&&(()=>{let e=l();return e[1]?o??=[e[0],!1]:e})]},[r,D,e.from,e.hash,e.href,s,S,C,e.state,e.mask,e.unsafeRelative,T,d]),[j,M]=w.useSyncExternalStore(D[1],k,A||k),N=M===void 0&&j,P=d||j===void 0,F=w.useRef(!1),I=e.reloadDocument||N||P?!1:l??r.options.defaultPreload,V=u??r.options.defaultPreloadDelay??0,H=w.useCallback(e=>{let t=e?.isIntersecting;if(!(t??I===`intent`)){t===!1&&q(i);return}if(!V){R(r,O);return}i.t??=setTimeout(()=>{i.t=void 0,R(r,O)},V)},[r,O,i,I,V]);w.useEffect(()=>{if(!I)return;I===`render`&&!F.current&&(F.current=!0,R(r,O));let e=!0,t;return I===`viewport`&&i.current&&typeof IntersectionObserver==`function`&&(t=new IntersectionObserver(t=>{e&&H(t.pop())},{rootMargin:`100px`}),t.observe(i.current)),()=>{e=!1,t?.disconnect(),q(i)}},[r,O,I,H,i]);let U=G(e,n);if(U.ref=t?a:i,N)return U.href=N,U;let W=t=>{let n=p??t.currentTarget.getAttribute(`target`);!P&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(!n||n===`_self`)&&t.button===0&&(t.preventDefault(),q(i),r.navigate({...e,_fromLocation:O._fromLocation}))},X=()=>{I===`intent`&&R(r,O)},Z=()=>{I===`intent`&&q(i)};return U.onClick=J(h,W),U.onBlur=J(g,Z),U.onFocus=J(_,H),U.onMouseEnter=J(v,H),U.onMouseLeave=J(y,Z),U.onTouchStart=J(x,X),K(U,e,M,j,P,n)}var H={},U={className:`active`},W=new Set([`to`,`params`,`search`,`hash`,`state`,`mask`,`from`,`unsafeRelative`,`reloadDocument`,`preload`,`preloadDelay`,`preloadIntentProximity`,`hashScrollIntoView`,`replace`,`startTransition`,`resetScroll`,`viewTransition`,`ignoreBlocker`,`activeProps`,`inactiveProps`,`activeOptions`,`_asChild`]);function G(e,t){let n={};for(let r in e)W.has(r)||r===`type`&&t!==void 0||r===`disabled`&&t===`a`||(n[r]=e[r]);return n}function K(e,t,n,r,i,a){let{activeProps:o,inactiveProps:s,className:c,style:l,target:u}=t,d=y(n?o:s,{})??(n?U:H);Object.assign(e,d),e.href=r,a!==`a`&&(e.disabled=i),e.target=u;let f=d.style;(l||f)&&(e.style=l&&f?{...l,...f}:l||f);let p=d.className;return(c||p)&&(e.className=c?p?`${c} ${p}`:c:p),i&&(e.role=`link`,e[`aria-disabled`]=!0),n&&(e[`data-status`]=`active`,e[`aria-current`]=`page`),e}var q=e=>{clearTimeout(e.t),e.t=void 0},J=(e,t)=>e?n=>n.defaultPrevented||(e(n),n.defaultPrevented||t(n)):t;function Y(e,t,n){if(n)return;let r=e.maskedLocation??e,i=r.external?r.publicHref:t.history.createHref(r.publicHref)||`/`;if(!((r.external||i!==r.publicHref)&&o(i,t.protocolAllowlist)))return i}var X=w.memo(w.forwardRef((e,t)=>{let n=e._asChild||`a`,r=V(e,t,n),i=typeof e.children==`function`?e.children({isActive:r[`data-status`]===`active`}):e.children;return w.createElement(n,r,i)}),Z);function Z(e,t){let n=0;for(let r in t)if(n++,e[r]!==t[r]&&(!W.has(r)||!s(e[r],t[r],!1,!0)))return!1;for(let t in e)n--;return n===0}var Q=class extends S{constructor(e){super(e),this.useMatch=e=>k({...e,from:this.id}),this.useRouteContext=e=>F({...e,from:this.id}),this.useSearch=e=>N({...e,from:this.id}),this.useParams=e=>M({...e,from:this.id}),this.useLoaderDeps=e=>j({...e,from:this.id}),this.useLoaderData=e=>A({...e,from:this.id}),this.useNavigate=()=>P({from:this.fullPath}),this.Link=w.forwardRef((e,t)=>(0,I.jsx)(X,{ref:t,from:this.fullPath,...e}))}};function $(e){return new Q(e)}function ee(){return e=>ne(e)}var te=class extends C{constructor(e){super(e),this.useMatch=e=>k({...e,from:this.id}),this.useRouteContext=e=>F({...e,from:this.id}),this.useSearch=e=>N({...e,from:this.id}),this.useParams=e=>M({...e,from:this.id}),this.useLoaderDeps=e=>j({...e,from:this.id}),this.useLoaderData=e=>A({...e,from:this.id}),this.useNavigate=()=>P({from:this.fullPath}),this.Link=w.forwardRef((e,t)=>(0,I.jsx)(X,{ref:t,from:this.fullPath,...e}))}};function ne(e){return new te(e)}function re(e){return e=>{let t=$(e);return t.isRoot=!1,t}}function ie(e,t){let n,r,i,o=()=>(n||=(i=void 0,e().then(e=>{n=void 0,s.preload=void 0,r=e[t??`default`]}).catch(e=>{n=void 0,i=e})),n),s=function(e){if(i){if(a(i)&&typeof sessionStorage<`u`){let e=`tanstack_router_reload:${i.message}`;if(!sessionStorage.getItem(e))throw sessionStorage.setItem(e,`1`),window.location.reload(),new Promise(()=>{})}throw i}if(!r)if(T)T(o());else throw o();return w.createElement(r,e)};return s.preload=o,s}export{P as a,E as c,X as i,re as n,M as o,ee as r,T as s,ie as t};
@@ -0,0 +1 @@
1
+ import{d as e}from"./jsx-runtime-CIazjfqY.js";function t(e){var t=e.width,n=e.height;if(t<0)throw Error(`Negative width is not allowed for Size`);if(n<0)throw Error(`Negative height is not allowed for Size`);return{width:t,height:n}}function n(e,t){return e.width===t.width&&e.height===t.height}var r=function(){function e(e){var t=this;this._resolutionListener=function(){return t._onResolutionChanged()},this._resolutionMediaQueryList=null,this._observers=[],this._window=e,this._installResolutionListener()}return e.prototype.dispose=function(){this._uninstallResolutionListener(),this._window=null},Object.defineProperty(e.prototype,"value",{get:function(){return this._window.devicePixelRatio},enumerable:!1,configurable:!0}),e.prototype.subscribe=function(e){var t=this,n={next:e};return this._observers.push(n),{unsubscribe:function(){t._observers=t._observers.filter(function(e){return e!==n})}}},e.prototype._installResolutionListener=function(){if(this._resolutionMediaQueryList!==null)throw Error(`Resolution listener is already installed`);var e=this._window.devicePixelRatio;this._resolutionMediaQueryList=this._window.matchMedia(`all and (resolution: ${e}dppx)`),this._resolutionMediaQueryList.addListener(this._resolutionListener)},e.prototype._uninstallResolutionListener=function(){this._resolutionMediaQueryList!==null&&(this._resolutionMediaQueryList.removeListener(this._resolutionListener),this._resolutionMediaQueryList=null)},e.prototype._reinstallResolutionListener=function(){this._uninstallResolutionListener(),this._installResolutionListener()},e.prototype._onResolutionChanged=function(){var e=this;this._observers.forEach(function(t){return t.next(e._window.devicePixelRatio)}),this._reinstallResolutionListener()},e}();function i(e){return new r(e)}var a=function(){function e(e,n,r){this._canvasElement=null,this._bitmapSizeChangedListeners=[],this._suggestedBitmapSize=null,this._suggestedBitmapSizeChangedListeners=[],this._devicePixelRatioObservable=null,this._canvasElementResizeObserver=null,this._canvasElement=e,this._canvasElementClientSize=t({width:this._canvasElement.clientWidth,height:this._canvasElement.clientHeight}),this._transformBitmapSize=n??(function(e){return e}),this._allowResizeObserver=r?.allowResizeObserver??!0,this._chooseAndInitObserver()}return e.prototype.dispose=function(){var e,t;if(this._canvasElement===null)throw Error(`Object is disposed`);(e=this._canvasElementResizeObserver)==null||e.disconnect(),this._canvasElementResizeObserver=null,(t=this._devicePixelRatioObservable)==null||t.dispose(),this._devicePixelRatioObservable=null,this._suggestedBitmapSizeChangedListeners.length=0,this._bitmapSizeChangedListeners.length=0,this._canvasElement=null},Object.defineProperty(e.prototype,"canvasElement",{get:function(){if(this._canvasElement===null)throw Error(`Object is disposed`);return this._canvasElement},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"canvasElementClientSize",{get:function(){return this._canvasElementClientSize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"bitmapSize",{get:function(){return t({width:this.canvasElement.width,height:this.canvasElement.height})},enumerable:!1,configurable:!0}),e.prototype.resizeCanvasElement=function(e){this._canvasElementClientSize=t(e),this.canvasElement.style.width=`${this._canvasElementClientSize.width}px`,this.canvasElement.style.height=`${this._canvasElementClientSize.height}px`,this._invalidateBitmapSize()},e.prototype.subscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners.push(e)},e.prototype.unsubscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners=this._bitmapSizeChangedListeners.filter(function(t){return t!==e})},Object.defineProperty(e.prototype,"suggestedBitmapSize",{get:function(){return this._suggestedBitmapSize},enumerable:!1,configurable:!0}),e.prototype.subscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners.push(e)},e.prototype.unsubscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners=this._suggestedBitmapSizeChangedListeners.filter(function(t){return t!==e})},e.prototype.applySuggestedBitmapSize=function(){if(this._suggestedBitmapSize!==null){var e=this._suggestedBitmapSize;this._suggestedBitmapSize=null,this._resizeBitmap(e),this._emitSuggestedBitmapSizeChanged(e,this._suggestedBitmapSize)}},e.prototype._resizeBitmap=function(e){var t=this.bitmapSize;n(t,e)||(this.canvasElement.width=e.width,this.canvasElement.height=e.height,this._emitBitmapSizeChanged(t,e))},e.prototype._emitBitmapSizeChanged=function(e,t){var n=this;this._bitmapSizeChangedListeners.forEach(function(r){return r.call(n,e,t)})},e.prototype._suggestNewBitmapSize=function(e){var r=this._suggestedBitmapSize,i=t(this._transformBitmapSize(e,this._canvasElementClientSize)),a=n(this.bitmapSize,i)?null:i;r===null&&a===null||r!==null&&a!==null&&n(r,a)||(this._suggestedBitmapSize=a,this._emitSuggestedBitmapSizeChanged(r,a))},e.prototype._emitSuggestedBitmapSizeChanged=function(e,t){var n=this;this._suggestedBitmapSizeChangedListeners.forEach(function(r){return r.call(n,e,t)})},e.prototype._chooseAndInitObserver=function(){var e=this;if(!this._allowResizeObserver){this._initDevicePixelRatioObservable();return}c().then(function(t){return t?e._initResizeObserver():e._initDevicePixelRatioObservable()})},e.prototype._initDevicePixelRatioObservable=function(){var e=this;if(this._canvasElement!==null){var t=s(this._canvasElement);if(t===null)throw Error(`No window is associated with the canvas`);this._devicePixelRatioObservable=i(t),this._devicePixelRatioObservable.subscribe(function(){return e._invalidateBitmapSize()}),this._invalidateBitmapSize()}},e.prototype._invalidateBitmapSize=function(){if(this._canvasElement!==null){var e=s(this._canvasElement);if(e!==null){var n=this._devicePixelRatioObservable?.value??e.devicePixelRatio,r=this._canvasElement.getClientRects(),i=r[0]===void 0?t({width:this._canvasElementClientSize.width*n,height:this._canvasElementClientSize.height*n}):l(r[0],n);this._suggestNewBitmapSize(i)}}},e.prototype._initResizeObserver=function(){var e=this;this._canvasElement!==null&&(this._canvasElementResizeObserver=new ResizeObserver(function(n){var r=n.find(function(t){return t.target===e._canvasElement});if(!(!r||!r.devicePixelContentBoxSize||!r.devicePixelContentBoxSize[0])){var i=r.devicePixelContentBoxSize[0],a=t({width:i.inlineSize,height:i.blockSize});e._suggestNewBitmapSize(a)}}),this._canvasElementResizeObserver.observe(this._canvasElement,{box:`device-pixel-content-box`}))},e}();function o(e,t){if(t.type===`device-pixel-content-box`)return new a(e,t.transform,t.options);throw Error(`Unsupported binding target`)}function s(e){return e.ownerDocument.defaultView}function c(){return new Promise(function(e){var t=new ResizeObserver(function(n){e(n.every(function(e){return`devicePixelContentBoxSize`in e})),t.disconnect()});t.observe(document.body,{box:`device-pixel-content-box`})}).catch(function(){return!1})}function l(e,n){return t({width:Math.round(e.left*n+e.width*n)-Math.round(e.left*n),height:Math.round(e.top*n+e.height*n)-Math.round(e.top*n)})}var u=function(){function e(e,t,n){if(t.width===0||t.height===0)throw TypeError(`Rendering target could only be created on a media with positive width and height`);if(this._mediaSize=t,n.width===0||n.height===0)throw TypeError(`Rendering target could only be created using a bitmap with positive integer width and height`);this._bitmapSize=n,this._context=e}return e.prototype.useMediaCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),this._context.scale(this._horizontalPixelRatio,this._verticalPixelRatio),e({context:this._context,mediaSize:this._mediaSize})}finally{this._context.restore()}},e.prototype.useBitmapCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),e({context:this._context,mediaSize:this._mediaSize,bitmapSize:this._bitmapSize,horizontalPixelRatio:this._horizontalPixelRatio,verticalPixelRatio:this._verticalPixelRatio})}finally{this._context.restore()}},Object.defineProperty(e.prototype,"_horizontalPixelRatio",{get:function(){return this._bitmapSize.width/this._mediaSize.width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_verticalPixelRatio",{get:function(){return this._bitmapSize.height/this._mediaSize.height},enumerable:!1,configurable:!0}),e}();function d(e,t){var n=e.canvasElementClientSize;if(n.width===0||n.height===0)return null;var r=e.bitmapSize;if(r.width===0||r.height===0)return null;var i=e.canvasElement.getContext(`2d`,t);return i===null?null:new u(i,n,r)}var f=e({AreaSeries:()=>na,BarSeries:()=>oa,BaselineSeries:()=>$i,CandlestickSeries:()=>la,ColorType:()=>cn,CrosshairMode:()=>Se,HistogramSeries:()=>fa,LastPriceAnimationMode:()=>on,LineSeries:()=>Fi,LineStyle:()=>h,LineType:()=>m,MismatchDirection:()=>et,PriceLineSource:()=>sn,PriceScaleMode:()=>zt,TickMarkType:()=>ln,TrackingModeExitMode:()=>an,createChart:()=>vi,createChartEx:()=>_i,createImageWatermark:()=>Aa,createOptionsChart:()=>Wi,createSeriesMarkers:()=>Ja,createTextWatermark:()=>Ca,createUpDownMarkers:()=>ro,createYieldCurveChart:()=>Vi,customSeriesDefaultOptions:()=>io,defaultHorzScaleBehavior:()=>yi,isBusinessDay:()=>fn,isUTCTimestamp:()=>pn,version:()=>ao}),p={title:``,visible:!0,hitTestTolerance:3,lastValueVisible:!0,priceLineVisible:!0,priceLineSource:0,priceLineWidth:1,priceLineColor:``,priceLineStyle:2,baseLineVisible:!0,baseLineWidth:1,baseLineColor:`#B2B5BE`,baseLineStyle:0,priceFormat:{type:`price`,precision:2,minMove:.01}},m,h;function g(e,t){let n=function(e,t){switch(e){case 0:default:return[];case 1:return[t,t];case 2:return[2*t,2*t];case 3:return[6*t,6*t];case 4:return[t,4*t]}}(t,e.lineWidth);return e.setLineDash(n),n}function _(e,t,n,r){e.beginPath();let i=e.lineWidth%2?.5:0;e.moveTo(n,t+i),e.lineTo(r,t+i),e.stroke()}function v(e,t){if(!e)throw Error(`Assertion failed`+(t?`: `+t:``))}function y(e){if(e===void 0)throw Error(`Value is undefined`);return e}function b(e){if(e===null)throw Error(`Value is null`);return e}function x(e){return b(y(e))}(function(e){e[e.Simple=0]=`Simple`,e[e.WithSteps=1]=`WithSteps`,e[e.Curved=2]=`Curved`})(m||={}),function(e){e[e.Solid=0]=`Solid`,e[e.Dotted=1]=`Dotted`,e[e.Dashed=2]=`Dashed`,e[e.LargeDashed=3]=`LargeDashed`,e[e.SparseDotted=4]=`SparseDotted`}(h||={});var S=class{constructor(){this.t=[]}i(e,t,n){let r={h:e,l:t,o:!0===n};this.t.push(r)}_(e){let t=this.t.findIndex((t=>e===t.h));t>-1&&this.t.splice(t,1)}u(e){this.t=this.t.filter((t=>t.l!==e))}p(e,t,n){let r=[...this.t];this.t=this.t.filter((e=>!e.o)),r.forEach((r=>r.h(e,t,n)))}v(){return this.t.length>0}m(){this.t=[]}};function C(e,...t){for(let n of t)for(let t in n)n[t]!==void 0&&Object.prototype.hasOwnProperty.call(n,t)&&![`__proto__`,`constructor`,`prototype`].includes(t)&&(typeof n[t]!=`object`||e[t]===void 0||Array.isArray(n[t])?e[t]=n[t]:C(e[t],n[t]));return e}function w(e){return typeof e==`number`&&isFinite(e)}function T(e){return typeof e==`number`&&e%1==0}function E(e){return typeof e==`string`}function D(e){return typeof e==`boolean`}function O(e){let t=e;if(!t||typeof t!=`object`)return t;let n,r,i;for(r in n=Array.isArray(t)?[]:{},t)t.hasOwnProperty(r)&&(i=t[r],n[r]=i&&typeof i==`object`?O(i):i);return n}function k(e){return e!==null}function A(e){return e===null?void 0:e}var j=`-apple-system, BlinkMacSystemFont, 'Trebuchet MS', Roboto, Ubuntu, sans-serif`;function M(e,t,n){return t===void 0&&(t=j),`${n=n===void 0?``:`${n} `}${e}px ${t}`}var ee=class{constructor(e){this.M={S:1,C:5,P:NaN,k:``,T:``,R:``,D:``,I:0,V:0,B:0,A:0,L:0},this.O=e}N(){let e=this.M,t=this.F(),n=this.W();return e.P===t&&e.T===n||(e.P=t,e.T=n,e.k=M(t,n),e.A=2.5/12*t,e.I=e.A,e.V=t/12*e.C,e.B=t/12*e.C,e.L=0),e.R=this.H(),e.D=this.U(),this.M}H(){return this.O.N().layout.textColor}U(){return this.O.$()}F(){return this.O.N().layout.fontSize}W(){return this.O.N().layout.fontFamily}};function N(e){return e<0?0:e>255?255:Math.round(e)||0}function te(e){return .199*e[0]+.687*e[1]+.114*e[2]}var ne=class{constructor(e,t){this.j=new Map,this.q=e,t&&(this.j=t)}Y(e,t){if(e===`transparent`)return e;let n=this.K(e),r=n[3];return`rgba(${n[0]}, ${n[1]}, ${n[2]}, ${t*r})`}G(e){let t=this.K(e);return{Z:`rgb(${t[0]}, ${t[1]}, ${t[2]})`,X:te(t)>160?`black`:`white`}}J(e){return te(this.K(e))}tt(e,t,n){let[r,i,a,o]=this.K(e),[s,c,l,u]=this.K(t),d=[N(r+n*(s-r)),N(i+n*(c-i)),N(a+n*(l-a)),(f=o+n*(u-o),f<=0||f>1?Math.min(Math.max(f,0),1):Math.round(1e4*f)/1e4)];var f;return`rgba(${d[0]}, ${d[1]}, ${d[2]}, ${d[3]})`}K(e){let t=this.j.get(e);if(t)return t;let n=function(e){let t=document.createElement(`div`);t.style.display=`none`,document.body.appendChild(t),t.style.color=e;let n=window.getComputedStyle(t).color;return document.body.removeChild(t),n}(e).match(/^rgba?\s*\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d*\.?\d+))?\)$/);if(!n){if(this.q.length)for(let t of this.q){let n=t(e);if(n)return this.j.set(e,n),n}throw Error(`Failed to parse color: ${e}`)}let r=[parseInt(n[1],10),parseInt(n[2],10),parseInt(n[3],10),n[4]?parseFloat(n[4]):1];return this.j.set(e,r),r}},re=class{constructor(){this.it=[]}nt(e){this.it=e}st(e,t,n){this.it.forEach((r=>{r.st(e,t,n)}))}},P=class{st(e,t,n){e.useBitmapCoordinateSpace((e=>this.et(e,t,n)))}},ie=class extends P{constructor(){super(...arguments),this.rt=null}ht(e){this.rt=e}et({context:e,horizontalPixelRatio:t,verticalPixelRatio:n}){if(this.rt===null||this.rt.lt===null)return;let r=this.rt.lt,i=this.rt,a=Math.max(1,Math.floor(t))%2/2,o=o=>{e.beginPath();for(let s=r.to-1;s>=r.from;--s){let r=i.ot[s],c=Math.round(r._t*t)+a,l=r.ut*n,u=o*n+a;e.moveTo(c,l),e.arc(c,l,u,0,2*Math.PI)}e.fill()};i.ct>0&&(e.fillStyle=i.dt,o(i.ft+i.ct)),e.fillStyle=i.vt,o(i.ft)}};function ae(){return{ot:[{_t:0,ut:0,wt:0,Mt:0}],vt:``,dt:``,ft:0,ct:0,lt:null}}var oe={from:0,to:1},se=class{constructor(e,t,n){this.gt=new re,this.bt=[],this.St=[],this.xt=!0,this.O=e,this.Ct=t,this.yt=n,this.gt.nt(this.bt)}Pt(e){this.kt(),this.xt=!0}Tt(){return this.xt&&=(this.Rt(),!1),this.gt}kt(){let e=this.yt.Dt();e.length!==this.bt.length&&(this.St=e.map(ae),this.bt=this.St.map((e=>{let t=new ie;return t.ht(e),t})),this.gt.nt(this.bt))}Rt(){let e=this.Ct.N().mode===2||!this.Ct.It(),t=this.yt.Vt(),n=this.Ct.Bt(),r=this.O.Et();this.kt(),t.forEach(((t,i)=>{let a=this.St[i],o=t.At(n),s=t.Lt();!e&&o!==null&&t.It()&&s!==null?(a.vt=o.zt,a.ft=o.ft,a.ct=o.Ot,a.ot[0].Mt=o.Mt,a.ot[0].ut=t.Ft().Nt(o.Mt,s.Wt),a.dt=o.Ht??this.O.Ut(a.ot[0].ut/t.Ft().$t()),a.ot[0].wt=n,a.ot[0]._t=r.jt(n),a.lt=oe):a.lt=null}))}},ce=class extends P{constructor(e){super(),this.qt=e}et({context:e,bitmapSize:t,horizontalPixelRatio:n,verticalPixelRatio:r}){if(this.qt===null)return;let i=this.qt.Yt.It,a=this.qt.Kt.It;if(!i&&!a)return;let o=Math.round(this.qt._t*n),s=Math.round(this.qt.ut*r);e.lineCap=`butt`,i&&o>=0&&(e.lineWidth=Math.floor(this.qt.Yt.ct*n),e.strokeStyle=this.qt.Yt.R,e.fillStyle=this.qt.Yt.R,g(e,this.qt.Yt.Gt),function(e,t,n,r){e.beginPath();let i=e.lineWidth%2?.5:0;e.moveTo(t+i,n),e.lineTo(t+i,r),e.stroke()}(e,o,0,t.height)),a&&s>=0&&(e.lineWidth=Math.floor(this.qt.Kt.ct*r),e.strokeStyle=this.qt.Kt.R,e.fillStyle=this.qt.Kt.R,g(e,this.qt.Kt.Gt),_(e,s,0,t.width))}},le=class{constructor(e,t){this.xt=!0,this.Zt={Yt:{ct:1,Gt:0,R:``,It:!1},Kt:{ct:1,Gt:0,R:``,It:!1},_t:0,ut:0},this.Xt=new ce(this.Zt),this.Jt=e,this.yt=t}Pt(){this.xt=!0}Tt(e){return this.xt&&=(this.Rt(),!1),this.Xt}Rt(){let e=this.Jt.It(),t=this.yt.Qt().N().crosshair,n=this.Zt;if(t.mode===2)return n.Kt.It=!1,void(n.Yt.It=!1);n.Kt.It=e&&this.Jt.ti(this.yt),n.Yt.It=e&&this.Jt.ii(),n.Kt.ct=t.horzLine.width,n.Kt.Gt=t.horzLine.style,n.Kt.R=t.horzLine.color,n.Yt.ct=t.vertLine.width,n.Yt.Gt=t.vertLine.style,n.Yt.R=t.vertLine.color,n._t=this.Jt.ni(),n.ut=this.Jt.si()}};function ue(e,t,n,r,i,a){e.fillRect(t+a,n,r-2*a,a),e.fillRect(t+a,n+i-a,r-2*a,a),e.fillRect(t,n,a,i),e.fillRect(t+r-a,n,a,i)}function de(e,t,n,r,i,a){e.save(),e.globalCompositeOperation=`copy`,e.fillStyle=a,e.fillRect(t,n,r,i),e.restore()}function fe(e,t,n,r,i,a){e.beginPath(),e.roundRect?e.roundRect(t,n,r,i,a):(e.lineTo(t+r-a[1],n),a[1]!==0&&e.arcTo(t+r,n,t+r,n+a[1],a[1]),e.lineTo(t+r,n+i-a[2]),a[2]!==0&&e.arcTo(t+r,n+i,t+r-a[2],n+i,a[2]),e.lineTo(t+a[3],n+i),a[3]!==0&&e.arcTo(t,n+i,t,n+i-a[3],a[3]),e.lineTo(t,n+a[0]),a[0]!==0&&e.arcTo(t,n,t+a[0],n,a[0]))}function pe(e,t,n,r,i,a,o=0,s=[0,0,0,0],c=``){if(e.save(),!o||!c||c===a)return fe(e,t,n,r,i,s),e.fillStyle=a,e.fill(),void e.restore();let l=o/2;var u;fe(e,t+l,n+l,r-o,i-o,(u=-l,s.map((e=>e===0?e:e+u)))),a!==`transparent`&&(e.fillStyle=a,e.fill()),c!==`transparent`&&(e.lineWidth=o,e.strokeStyle=c,e.closePath(),e.stroke()),e.restore()}function me(e,t,n,r,i,a,o){e.save(),e.globalCompositeOperation=`copy`;let s=e.createLinearGradient(0,0,0,i);s.addColorStop(0,a),s.addColorStop(1,o),e.fillStyle=s,e.fillRect(t,n,r,i),e.restore()}var he=class{constructor(e,t){this.ht(e,t)}ht(e,t){this.qt=e,this.ei=t}$t(e,t){return this.qt.It?e.P+e.A+e.I:0}st(e,t,n,r){if(!this.qt.It||this.qt.ri.length===0)return;let i=this.qt.R,a=this.ei.Z,o=e.useBitmapCoordinateSpace((e=>{let o=e.context;o.font=t.k;let s=this.hi(e,t,n,r),c=s.ai;return s.li?pe(o,c.oi,c._i,c.ui,c.ci,a,c.di,[c.ft,0,0,c.ft],a):pe(o,c.fi,c._i,c.ui,c.ci,a,c.di,[0,c.ft,c.ft,0],a),this.qt.pi&&(o.fillStyle=i,o.fillRect(c.fi,c.mi,c.wi-c.fi,c.Mi)),this.qt.gi&&(o.fillStyle=t.D,o.fillRect(s.li?c.bi-c.di:0,c._i,c.di,c.Si-c._i)),s}));e.useMediaCoordinateSpace((({context:e})=>{let n=o.xi;e.font=t.k,e.textAlign=o.li?`right`:`left`,e.textBaseline=`middle`,e.fillStyle=i,e.fillText(this.qt.ri,n.Ci,(n._i+n.Si)/2+n.yi)}))}hi(e,t,n,r){let{context:i,bitmapSize:a,mediaSize:o,horizontalPixelRatio:s,verticalPixelRatio:c}=e,l=this.qt.pi||!this.qt.Pi?t.C:0,u=this.qt.ki?t.S:0,d=t.A+this.ei.Ti,f=t.I+this.ei.Ri,p=t.V,m=t.B,h=this.qt.ri,g=t.P,_=n.Di(i,h),v=Math.ceil(n.Ii(i,h)),y=g+d+f,b=t.S+p+m+v+l,x=Math.max(1,Math.floor(c)),S=Math.round(y*c);S%2!=x%2&&(S+=1);let C=u>0?Math.max(1,Math.floor(u*s)):0,w=Math.round(b*s),T=Math.round(l*s),E=this.ei.Vi??this.ei.Bi??this.ei.Ei,D=Math.round(E*c)-Math.floor(.5*c),O=Math.floor(D+x/2-S/2),k=O+S,A=r===`right`,j=A?o.width-u:u,M=A?a.width-C:C,ee,N,te;return A?(ee=M-w,N=M-T,te=j-l-p-u):(ee=M+w,N=M+T,te=j+l+p),{li:A,ai:{_i:O,mi:D,Si:k,ui:w,ci:S,ft:2*s,di:C,oi:ee,fi:M,wi:N,Mi:x,bi:a.width},xi:{_i:O/c,Si:k/c,Ci:te,yi:_}}}},ge=class{constructor(e){this.Ai={Ei:0,Z:`#000`,Ri:0,Ti:0},this.Li={ri:``,It:!1,pi:!0,Pi:!1,Ht:``,R:`#FFF`,gi:!1,ki:!1},this.zi={ri:``,It:!1,pi:!1,Pi:!0,Ht:``,R:`#FFF`,gi:!0,ki:!0},this.xt=!0,this.Oi=new(e||he)(this.Li,this.Ai),this.Ni=new(e||he)(this.zi,this.Ai)}ri(){return this.Fi(),this.Li.ri}Ei(){return this.Fi(),this.Ai.Ei}Pt(){this.xt=!0}$t(e,t=!1){return Math.max(this.Oi.$t(e,t),this.Ni.$t(e,t))}Wi(){return this.Ai.Vi??null}Hi(){return this.Ai.Vi??this.Ai.Bi??this.Ei()}Ui(e){this.Ai.Bi=e??void 0}$i(){return this.Fi(),this.Li.It||this.zi.It}ji(){return this.Fi(),this.Li.It}Tt(e){return this.Fi(),this.Li.pi=this.Li.pi&&e.N().ticksVisible,this.zi.pi=this.zi.pi&&e.N().ticksVisible,this.Oi.ht(this.Li,this.Ai),this.Ni.ht(this.zi,this.Ai),this.Oi}qi(){return this.Fi(),this.Oi.ht(this.Li,this.Ai),this.Ni.ht(this.zi,this.Ai),this.Ni}Fi(){this.xt&&(this.Li.pi=!0,this.zi.pi=!1,this.Yi(this.Li,this.zi,this.Ai))}},_e=class extends ge{constructor(e,t,n){super(),this.Jt=e,this.Ki=t,this.Gi=n}Yi(e,t,n){if(e.It=!1,this.Jt.N().mode===2)return;let r=this.Jt.N().horzLine;if(!r.labelVisible)return;let i=this.Ki.Lt();if(!this.Jt.It()||this.Ki.Zi()||i===null)return;let a=this.Ki.Xi().G(r.labelBackgroundColor);n.Z=a.Z,e.R=a.X;let o=2/12*this.Ki.P();n.Ti=o,n.Ri=o;let s=this.Gi(this.Ki);n.Ei=s.Ei,e.ri=this.Ki.Ji(s.Mt,i),e.It=!0}},ve=/[1-9]/g,ye=class{constructor(){this.qt=null}ht(e){this.qt=e}st(e,t){if(this.qt===null||!1===this.qt.It||this.qt.ri.length===0)return;let n=e.useMediaCoordinateSpace((({context:e})=>(e.font=t.k,Math.round(t.Qi.Ii(e,b(this.qt).ri,ve)))));if(n<=0)return;let r=t.tn,i=n+2*r,a=i/2,o=this.qt.nn,s=this.qt.Ei,c=Math.floor(s-a)+.5;c<0?(s+=Math.abs(0-c),c=Math.floor(s-a)+.5):c+i>o&&(s-=Math.abs(o-(c+i)),c=Math.floor(s-a)+.5);let l=c+i,u=Math.ceil(0+t.S+t.C+t.A+t.P+t.I);e.useBitmapCoordinateSpace((({context:e,horizontalPixelRatio:n,verticalPixelRatio:r})=>{let i=b(this.qt);e.fillStyle=i.Z;let a=Math.round(c*n),o=Math.round(0*r),s=Math.round(l*n),d=Math.round(u*r),f=Math.round(2*n);if(e.beginPath(),e.moveTo(a,o),e.lineTo(a,d-f),e.arcTo(a,d,a+f,d,f),e.lineTo(s-f,d),e.arcTo(s,d,s,d-f,f),e.lineTo(s,o),e.fill(),i.pi){let a=Math.round(i.Ei*n),s=o,c=Math.round((s+t.C)*r);e.fillStyle=i.R;let l=Math.max(1,Math.floor(n)),u=Math.floor(.5*n);e.fillRect(a-u,s,l,c-s)}})),e.useMediaCoordinateSpace((({context:e})=>{let n=b(this.qt),i=0+t.S+t.C+t.A+t.P/2;e.font=t.k,e.textAlign=`left`,e.textBaseline=`middle`,e.fillStyle=n.R;let a=t.Qi.Di(e,`Apr0`);e.translate(c+r,i+a),e.fillText(n.ri,0,0)}))}},be=class{constructor(e,t,n){this.xt=!0,this.Xt=new ye,this.Zt={It:!1,Z:`#4c525e`,R:`white`,ri:``,nn:0,Ei:NaN,pi:!0},this.Ct=e,this.sn=t,this.Gi=n}Pt(){this.xt=!0}Tt(){return this.xt&&=(this.Rt(),!1),this.Xt.ht(this.Zt),this.Xt}Rt(){let e=this.Zt;if(e.It=!1,this.Ct.N().mode===2)return;let t=this.Ct.N().vertLine;if(!t.labelVisible)return;let n=this.sn.Et();if(n.Zi())return;e.nn=n.nn();let r=this.Gi();if(r===null)return;e.Ei=r.Ei;let i=n.en(this.Ct.Bt());e.ri=n.rn(b(i)),e.It=!0;let a=this.sn.Xi().G(t.labelBackgroundColor);e.Z=a.Z,e.R=a.X,e.pi=n.N().ticksVisible}},xe=class{constructor(){this.hn=null,this.an=0}ln(){return this.an}_n(e){this.an=e}Ft(){return this.hn}un(e){this.hn=e}cn(e){return[]}dn(){return[]}It(){return!0}},Se;(function(e){e[e.Normal=0]=`Normal`,e[e.Magnet=1]=`Magnet`,e[e.Hidden=2]=`Hidden`,e[e.MagnetOHLC=3]=`MagnetOHLC`})(Se||={});var Ce=class extends xe{constructor(e,t){super(),this.yt=null,this.fn=NaN,this.pn=0,this.vn=!1,this.mn=new Map,this.wn=!1,this.Mn=new WeakMap,this.gn=new WeakMap,this.bn=NaN,this.Sn=NaN,this.xn=NaN,this.Cn=NaN,this.sn=e,this.yn=t,this.Pn=((e,t)=>n=>{let r=t(),i=e();if(n===b(this.yt).kn())return{Mt:i,Ei:r};{let e=b(n.Lt());return{Mt:n.Tn(r,e),Ei:r}}})((()=>this.fn),(()=>this.Sn));let n=((e,t)=>()=>{let n=this.sn.Et().Rn(e()),r=t();return n&&Number.isFinite(r)?{wt:n,Ei:r}:null})((()=>this.pn),(()=>this.ni()));this.Dn=new be(this,e,n)}N(){return this.yn}In(e,t){this.xn=e,this.Cn=t}Vn(){this.xn=NaN,this.Cn=NaN}Bn(){return this.xn}En(){return this.Cn}An(e,t,n){this.wn||=!0,this.vn=!0,this.Ln(e,t,n)}Bt(){return this.pn}ni(){return this.bn}si(){return this.Sn}It(){return this.vn}zn(){this.vn=!1,this.On(),this.fn=NaN,this.bn=NaN,this.Sn=NaN,this.yt=null,this.Vn(),this.Nn()}Fn(e){if(!this.yn.doNotSnapToHiddenSeriesIndices)return e;let t=this.sn,n=t.Et(),r=null,i=null;for(let n of t.Wn()){let t=n.Un().Hn(e,-1);if(t){if(t.$n===e)return e;(r===null||t.$n>r)&&(r=t.$n)}let a=n.Un().Hn(e,1);if(a){if(a.$n===e)return e;(i===null||a.$n<i)&&(i=a.$n)}}let a=[r,i].filter(k);if(a.length===0)return e;let o=n.jt(e),s=a.map((e=>Math.abs(o-n.jt(e))));return a[s.indexOf(Math.min(...s))]}jn(e){let t=this.Mn.get(e);t||(t=new le(this,e),this.Mn.set(e,t));let n=this.gn.get(e);return n||(n=new se(this.sn,this,e),this.gn.set(e,n)),[t,n]}ti(e){return e===this.yt&&this.yn.horzLine.visible}ii(){return this.yn.vertLine.visible}qn(e,t){this.vn&&this.yt===e||this.mn.clear();let n=[];return this.yt===e&&n.push(this.Yn(this.mn,t,this.Pn)),n}dn(){return this.vn?[this.Dn]:[]}Kn(){return this.yt}Nn(){this.sn.Gn().forEach((e=>{this.Mn.get(e)?.Pt(),this.gn.get(e)?.Pt()})),this.mn.forEach((e=>e.Pt())),this.Dn.Pt()}Zn(e){return e&&!e.kn().Zi()?e.kn():null}Ln(e,t,n){this.Xn(e,t,n)&&this.Nn()}Xn(e,t,n){let r=this.bn,i=this.Sn,a=this.fn,o=this.pn,s=this.yt,c=this.Zn(n);this.pn=e,this.bn=isNaN(e)?NaN:this.sn.Et().jt(e),this.yt=n;let l=c===null?null:c.Lt();return c!==null&&l!==null?(this.fn=t,this.Sn=c.Nt(t,l)):(this.fn=NaN,this.Sn=NaN),r!==this.bn||i!==this.Sn||o!==this.pn||a!==this.fn||s!==this.yt}On(){let e=this.sn.Jn().map((e=>e.Un().Qn())).filter(k),t=e.length===0?null:Math.max(...e);this.pn=t===null?NaN:t}Yn(e,t,n){let r=e.get(t);return r===void 0&&(r=new _e(this,t,n),e.set(t,r)),r}};function we(e){return e===`left`||e===`right`}var F=class e{constructor(e){this.ts=new Map,this.ns=[],this.ss=e}es(e,t){let n=function(e,t){return e===void 0?t:{rs:Math.max(e.rs,t.rs),hs:e.hs||t.hs}}(this.ts.get(e),t);this.ts.set(e,n)}ls(){return this.ss}_s(e){let t=this.ts.get(e);return t===void 0?{rs:this.ss}:{rs:Math.max(this.ss,t.rs),hs:t.hs}}us(){this.cs(),this.ns=[{ds:0}]}fs(e){this.cs(),this.ns=[{ds:1,Wt:e}]}ps(e){this.vs(),this.ns.push({ds:5,Wt:e})}cs(){this.vs(),this.ns.push({ds:6})}ws(){this.cs(),this.ns=[{ds:4}]}Ms(e){this.cs(),this.ns.push({ds:2,Wt:e})}gs(e){this.cs(),this.ns.push({ds:3,Wt:e})}bs(){return this.ns}Ss(e){for(let t of e.ns)this.xs(t);this.ss=Math.max(this.ss,e.ss),e.ts.forEach(((e,t)=>{this.es(t,e)}))}static Cs(){return new e(2)}static ys(){return new e(3)}xs(e){switch(e.ds){case 0:this.us();break;case 1:this.fs(e.Wt);break;case 2:this.Ms(e.Wt);break;case 3:this.gs(e.Wt);break;case 4:this.ws();break;case 5:this.ps(e.Wt);break;case 6:this.vs()}}vs(){let e=this.ns.findIndex((e=>e.ds===5));e!==-1&&this.ns.splice(e,1)}},Te=class{formatTickmarks(e){return e.map((e=>this.format(e)))}},Ee=`.`;function I(e,t){if(!w(e))return`n/a`;if(!T(t)||t<0||t>16)throw TypeError(`invalid length`);return t===0?e.toString():(`0000000000000000`+e.toString()).slice(-t)}var De=class extends Te{constructor(e,t){if(super(),t||=1,w(e)&&T(e)||(e=100),e<0)throw TypeError(`invalid base`);this.Ki=e,this.Ps=t,this.ks()}format(e){let t=e<0?`−`:``;return e=Math.abs(e),t+this.Ts(e)}ks(){if(this.Rs=0,this.Ki>0&&this.Ps>0){let e=this.Ki;for(;e>1;)e/=10,this.Rs++}}Ts(e){let t=this.Ki/this.Ps,n=Math.floor(e),r=``,i=this.Rs===void 0?NaN:this.Rs;if(t>1){let a=+(Math.round(e*t)-n*t).toFixed(this.Rs);a>=t&&(a-=t,n+=1),r=Ee+I(+a.toFixed(this.Rs)*this.Ps,i)}else n=Math.round(n*t)/t,i>0&&(r=Ee+I(0,i));return n.toFixed(0)+r}},Oe=class extends De{constructor(e=100){super(e)}format(e){return`${super.format(e)}%`}},ke=class extends Te{constructor(e){super(),this.Ds=e}format(e){let t=``;return e<0&&(t=`-`,e=-e),e<995?t+this.Is(e):e<999995?t+this.Is(e/1e3)+`K`:e<999999995?(e=1e3*Math.round(e/1e3),t+this.Is(e/1e6)+`M`):(e=1e6*Math.round(e/1e6),t+this.Is(e/1e9)+`B`)}Is(e){let t,n=10**this.Ds;return t=(e=Math.round(e*n)/n)>=1e-15&&e<1?e.toFixed(this.Ds).replace(/\.?0+$/,``):String(e),t.replace(/(\.[1-9]*)0+$/,((e,t)=>t))}},Ae=/[2-9]/g,L=class{constructor(e=50){this.Vs=0,this.Bs=1,this.Es=1,this.As={},this.Ls=new Map,this.zs=e}Os(){this.Vs=0,this.Ls.clear(),this.Bs=1,this.Es=1,this.As={}}Ii(e,t,n){return this.Ns(e,t,n).width}Di(e,t,n){let r=this.Ns(e,t,n);return((r.actualBoundingBoxAscent||0)-(r.actualBoundingBoxDescent||0))/2}Ns(e,t,n){let r=n||Ae,i=String(t).replace(r,`0`);if(this.Ls.has(i))return y(this.Ls.get(i)).Fs;if(this.Vs===this.zs){let e=this.As[this.Es];delete this.As[this.Es],this.Ls.delete(e),this.Es++,this.Vs--}e.save(),e.textBaseline=`middle`;let a=e.measureText(i);return e.restore(),a.width===0&&t.length||(this.Ls.set(i,{Fs:a,Ws:this.Bs}),this.As[this.Bs]=i,this.Vs++,this.Bs++),a}},je=class{constructor(e){this.Hs=null,this.M=null,this.Us=`right`,this.$s=e}js(e,t,n){this.Hs=e,this.M=t,this.Us=n}st(e){this.M!==null&&this.Hs!==null&&this.Hs.st(e,this.M,this.$s,this.Us)}},Me=class{constructor(e,t,n){this.qs=e,this.$s=new L(50),this.Ys=t,this.O=n,this.F=-1,this.Xt=new je(this.$s)}Tt(){let e=this.O.Ks(this.Ys);if(e===null)return null;let t=e.Gs(this.Ys)?e.Zs():this.Ys.Ft();if(t===null)return null;let n=e.Xs(t);if(n===`overlay`)return null;let r=this.O.Js();return r.P!==this.F&&(this.F=r.P,this.$s.Os()),this.Xt.js(this.qs.qi(),r,n),this.Xt}},Ne=class extends P{constructor(){super(...arguments),this.qt=null}ht(e){this.qt=e}Qs(e,t){if(!this.qt?.It)return null;let{ut:n,ct:r,te:i}=this.qt;return t>=n-r-7&&t<=n+r+7?{ie:this.qt,ne:Math.abs(t-n),se:2,ee:`price-line`,te:i}:null}et({context:e,bitmapSize:t,horizontalPixelRatio:n,verticalPixelRatio:r}){if(this.qt===null||!1===this.qt.It)return;let i=Math.round(this.qt.ut*r);i<0||i>t.height||(e.lineCap=`butt`,e.strokeStyle=this.qt.R,e.lineWidth=Math.floor(this.qt.ct*n),g(e,this.qt.Gt),_(e,i,0,t.width))}},Pe=class{constructor(e){this.re={ut:0,R:`rgba(0, 0, 0, 0)`,ct:1,Gt:0,It:!1},this.he=new Ne,this.xt=!0,this.ae=e,this.le=e.Qt(),this.he.ht(this.re)}Pt(){this.xt=!0}Tt(){return this.ae.It()?(this.xt&&=(this.oe(),!1),this.he):null}},Fe=class extends Pe{constructor(e){super(e)}oe(){this.re.It=!1;let e=this.ae.Ft(),t=e._e()._e;if(t!==2&&t!==3)return;let n=this.ae.N();if(!n.baseLineVisible||!this.ae.It())return;let r=this.ae.Lt();r!==null&&(this.re.It=!0,this.re.ut=e.Nt(r.Wt,r.Wt),this.re.R=n.baseLineColor,this.re.ct=n.baseLineWidth,this.re.Gt=n.baseLineStyle)}},Ie=class extends P{constructor(){super(...arguments),this.qt=null}ht(e){this.qt=e}ue(){return this.qt}et({context:e,horizontalPixelRatio:t,verticalPixelRatio:n}){let r=this.qt;if(r===null)return;let i=Math.max(1,Math.floor(t)),a=i%2/2,o=Math.round(r.ce.x*t)+a,s=r.ce.y*n;e.fillStyle=r.de,e.beginPath();let c=Math.max(2,1.5*r.fe)*t;e.arc(o,s,c,0,2*Math.PI,!1),e.fill(),e.fillStyle=r.pe,e.beginPath(),e.arc(o,s,r.ft*t,0,2*Math.PI,!1),e.fill(),e.lineWidth=i,e.strokeStyle=r.ve,e.beginPath(),e.arc(o,s,r.ft*t+i/2,0,2*Math.PI,!1),e.stroke()}},Le=[{me:0,we:.25,Me:4,ge:10,be:.25,Se:0,xe:.4,Ce:.8},{me:.25,we:.525,Me:10,ge:14,be:0,Se:0,xe:.8,Ce:0},{me:.525,we:1,Me:14,ge:14,be:0,Se:0,xe:0,Ce:0}],Re=class{constructor(e){this.Xt=new Ie,this.xt=!0,this.ye=!0,this.Pe=performance.now(),this.ke=this.Pe-1,this.Te=e}Re(){this.ke=this.Pe-1,this.Pt()}De(){if(this.Pt(),this.Te.N().lastPriceAnimation===2){let e=performance.now(),t=this.ke-e;if(t>0)return void(t<650&&(this.ke+=2600));this.Pe=e,this.ke=e+2600}}Pt(){this.xt=!0}Ie(){this.ye=!0}It(){return this.Te.N().lastPriceAnimation!==0}Ve(){switch(this.Te.N().lastPriceAnimation){case 0:return!1;case 1:return!0;case 2:return performance.now()<=this.ke}}Tt(){return this.xt?(this.Rt(),this.xt=!1,this.ye=!1):this.ye&&=(this.Be(),!1),this.Xt}Rt(){this.Xt.ht(null);let e=this.Te.Qt().Et(),t=e.Ee(),n=this.Te.Lt();if(t===null||n===null)return;let r=this.Te.Ae(!0);if(r.Le||!t.ze(r.$n))return;let i={x:e.jt(r.$n),y:this.Te.Ft().Nt(r.Mt,n.Wt)},a=r.R,o=this.Te.N().lineWidth,s=this.Oe(this.Ne(),a);this.Xt.ht({de:a,fe:o,pe:s.pe,ve:s.ve,ft:s.ft,ce:i})}Be(){let e=this.Xt.ue();if(e!==null){let t=this.Oe(this.Ne(),e.de);e.pe=t.pe,e.ve=t.ve,e.ft=t.ft}}Ne(){return this.Ve()?performance.now()-this.Pe:2599}Fe(e,t,n,r){let i=n+(r-n)*t;return this.Te.Qt().Xi().Y(e,i)}Oe(e,t){let n=e%2600/2600,r;for(let e of Le)if(n>=e.me&&n<=e.we){r=e;break}v(r!==void 0,`Last price animation internal logic error`);let i=(n-r.me)/(r.we-r.me);return{pe:this.Fe(t,i,r.be,r.Se),ve:this.Fe(t,i,r.xe,r.Ce),ft:(a=i,o=r.Me,s=r.ge,o+(s-o)*a)};var a,o,s}},ze=class extends Pe{constructor(e){super(e)}oe(){let e=this.re;e.It=!1;let t=this.ae.N();if(!t.priceLineVisible||!this.ae.It())return;let n=this.ae.Ae(t.priceLineSource===0);n.Le||(e.It=!0,e.ut=n.Ei,e.R=this.ae.We(n.R),e.ct=t.priceLineWidth,e.Gt=t.priceLineStyle)}},Be=class extends ge{constructor(e){super(),this.Jt=e}Yi(e,t,n){e.It=!1,t.It=!1;let r=this.Jt;if(!r.It())return;let i=r.N(),a=i.lastValueVisible,o=r.He()!==``,s=i.seriesLastValueMode===0,c=r.Ae(!1);if(c.Le)return;a&&(e.ri=this.Ue(c,a,s),e.It=e.ri.length!==0),(o||s)&&(t.ri=this.$e(c,a,o,s),t.It=t.ri.length>0);let l=r.We(c.R),u=this.Jt.Qt().Xi().G(l);n.Z=u.Z,n.Ei=c.Ei,t.Ht=r.Qt().Ut(c.Ei/r.Ft().$t()),e.Ht=l,e.R=u.X,t.R=u.X}$e(e,t,n,r){let i=``,a=this.Jt.He();return n&&a.length!==0&&(i+=`${a} `),t&&r&&(i+=this.Jt.Ft().je()?e.qe:e.Ye),i.trim()}Ue(e,t,n){return t?n?this.Jt.Ft().je()?e.Ye:e.qe:e.ri:``}};function Ve(e,t,n,r){let i=Number.isFinite(t),a=Number.isFinite(n);return i&&a?e(t,n):i||a?i?t:n:r}var R=class e{constructor(e,t){this.Ke=e,this.Ge=t}Ze(e){return e!==null&&this.Ke===e.Ke&&this.Ge===e.Ge}Xe(){return new e(this.Ke,this.Ge)}Je(){return this.Ke}Qe(){return this.Ge}tr(){return this.Ge-this.Ke}Zi(){return this.Ge===this.Ke||Number.isNaN(this.Ge)||Number.isNaN(this.Ke)}Ss(t){return t===null?this:new e(Ve(Math.min,this.Je(),t.Je(),-1/0),Ve(Math.max,this.Qe(),t.Qe(),1/0))}ir(e){if(!w(e)||this.Ge-this.Ke===0)return;let t=.5*(this.Ge+this.Ke),n=this.Ge-t,r=this.Ke-t;n*=e,r*=e,this.Ge=t+n,this.Ke=t+r}nr(e){w(e)&&(this.Ge+=e,this.Ke+=e)}sr(){return{minValue:this.Ke,maxValue:this.Ge}}static er(t){return t===null?null:new e(t.minValue,t.maxValue)}},He=class e{constructor(e,t){this.rr=e,this.hr=t||null}ar(){return this.rr}lr(){return this.hr}sr(){return{priceRange:this.rr===null?null:this.rr.sr(),margins:this.hr||void 0}}static er(t){return t===null?null:new e(R.er(t.priceRange),t.margins)}},Ue=[2,4,8,16,32,64,128,256,512],We=`Custom series with conflation reducer must have a priceValueBuilder method`,Ge=class extends Pe{constructor(e,t){super(e),this._r=t}oe(){let e=this.re;e.It=!1;let t=this._r.N();if(!this.ae.It()||!t.lineVisible)return;let n=this._r.ur();n!==null&&(e.It=!0,e.ut=n,e.R=t.color,e.ct=t.lineWidth,e.Gt=t.lineStyle,e.te=this._r.N().id)}},Ke=class extends ge{constructor(e,t){super(),this.Te=e,this._r=t}Yi(e,t,n){e.It=!1,t.It=!1;let r=this._r.N(),i=r.axisLabelVisible,a=r.title!==``,o=this.Te;if(!i||!o.It())return;let s=this._r.ur();if(s===null)return;a&&(t.ri=r.title,t.It=!0),t.Ht=o.Qt().Ut(s/o.Ft().$t()),e.ri=this.cr(r.price),e.It=!0;let c=this.Te.Qt().Xi().G(r.axisLabelColor||r.color);n.Z=c.Z;let l=r.axisLabelTextColor||c.X;e.R=l,t.R=l,n.Ei=s}cr(e){let t=this.Te.Lt();return t===null?``:this.Te.Ft().Ji(e,t.Wt)}},qe=class{constructor(e,t){this.Te=e,this.yn=t,this.dr=new Ge(e,this),this.qs=new Ke(e,this),this.pr=new Me(this.qs,e,e.Qt())}vr(e){C(this.yn,e),this.Pt(),this.Te.Qt().mr()}N(){return this.yn}wr(){return this.dr}Mr(){return this.pr}gr(){return this.qs}Pt(){this.dr.Pt(),this.qs.Pt()}ur(){let e=this.Te,t=e.Ft();if(e.Qt().Et().Zi()||t.Zi())return null;let n=e.Lt();return n===null?null:t.Nt(this.yn.price,n.Wt)}},Je=class{constructor(){this.br=new WeakMap}Sr(e,t,n){let r=1/t*n;if(e>=r)return 1;let i=r/e;return Math.min(2**Math.floor(Math.log2(i)),512)}Cr(e,t,n,r=!1,i){if(e.length===0||t<=1)return e;let a=this.yr(t);if(a<=1)return e;let o=this.Pr(e),s=o.kr.get(a);return s!==void 0||(s=this.Tr(e,a,n,r,i,o.kr),o.kr.set(a,s)),s}Rr(e,t,n,r,i=!1,a){if(n<1||e.length===0)return e;let o=this.Pr(e),s=o.kr.get(n);if(!s)return this.Cr(e,n,r,i,a);let c=this.Dr(e,t,n,s,i,r,a);return o.kr.set(n,c),c}yr(e){if(e<=2)return 2;for(let t of Ue)if(e<=t)return t;return 512}Ir(e){if(e.length===0)return 0;let t=e[0],n=e[e.length-1];return 31*e.length+17*t.$n+13*n.$n}Tr(e,t,n,r=!1,i,a=new Map){if(t===2)return this.Vr(e,2,n,r,i);let o=t/2,s=a.get(o);return s||(s=this.Tr(e,o,n,r,i,a),a.set(o,s)),this.Br(s,n,r,i)}Vr(e,t,n,r=!1,i){let a=this.Er(e,t,n,r,i);return this.Ar(a,r)}Br(e,t,n=!1,r){let i=this.Er(e,2,t,n,r);return this.Ar(i,n)}Er(e,t,n,r=!1,i){let a=[];for(let o=0;o<e.length;o+=t)if(e.length-o>=t){let t=this.Lr(e[o],e[o+1],n,r,i);t.zr=!1,a.push(t)}else if(a.length===0)a.push(this.Or(e[o],!0));else{let t=a[a.length-1];a[a.length-1]=this.Nr(t,e[o],n,r,i)}return a}Fr(e,t){return(e??1)+(t??1)}Lr(e,t,n,r=!1,i){if(!r||!n||!i){let n=e.Wt[1]>t.Wt[1]?e.Wt[1]:t.Wt[1],r=e.Wt[2]<t.Wt[2]?e.Wt[2]:t.Wt[2];return{Wr:e.$n,Hr:t.$n,Ur:e.wt,$r:t.wt,jr:e.Wt[0],qr:n,Yr:r,Kr:t.Wt[3],Gr:this.Fr(e.Gr,t.Gr),Zr:void 0,zr:!1}}let a=n(this.Xr(e,i),this.Xr(t,i)),o=i(a),s=o.length?o[o.length-1]:0;return{Wr:e.$n,Hr:t.$n,Ur:e.wt,$r:t.wt,jr:e.Wt[0],qr:Math.max(e.Wt[1],s),Yr:Math.min(e.Wt[2],s),Kr:s,Gr:this.Fr(e.Gr,t.Gr),Zr:a,zr:!1}}Nr(e,t,n,r=!1,i){if(!r||!n||!i)return{Wr:e.Wr,Hr:t.$n,Ur:e.Ur,$r:t.wt,jr:e.jr,qr:e.qr>t.Wt[1]?e.qr:t.Wt[1],Yr:e.Yr<t.Wt[2]?e.Yr:t.Wt[2],Kr:t.Wt[3],Gr:e.Gr+(t.Gr??1),Zr:e.Zr,zr:!1};let a=e.Zr,o=this.Xr(t,i),s=a?{data:a,index:e.Wr,originalTime:e.Ur,time:e.Ur,priceValues:i(a)}:null,c=s?n(s,o):o.data,l=s?i(c):o.priceValues,u=l.length?l[l.length-1]:0;return{Wr:e.Wr,Hr:t.$n,Ur:e.Ur,$r:t.wt,jr:e.jr,qr:Math.max(e.qr,u),Yr:Math.min(e.Yr,u),Kr:u,Gr:e.Gr+(t.Gr??1),Zr:c,zr:!1}}Jr(e,t,n,r,i,a,o=!1,s){let c=t===r?i:e[t];if(n-t==1)return this.Or(c,!0);let l=t+1===r?i:e[t+1],u=this.Lr(c,l,a,o,s);for(let c=t+2;c<n;c++){let t=c===r?i:e[c];u=this.Nr(u,t,a,o,s)}return u}Xr(e,t){let n=e.ue??{};return{data:e.ue,index:e.$n,originalTime:e.Qr,time:e.wt,priceValues:t(n)}}th(e,t=!1){let n=!0===t,r=!!e.Zr;return{$n:e.Wr,wt:e.Ur,Qr:e.Ur,Wt:[n?e.Kr:e.jr,e.qr,e.Yr,e.Kr],Gr:e.Gr,ue:n?r?e.Zr:{wt:e.Ur}:void 0}}Ar(e,t=!1){return e.map((e=>this.th(e,t)))}Dr(e,t,n,r,i=!1,a,o){if(r.length===0)return r;let s=e.length-1,c=Math.floor(s/n)*n;if(Math.min(c+n,e.length)-c<n&&e.length>n){let r=e.slice();return r[r.length-1]=t,this.Cr(r,n,a,i,o)}if(Math.floor((s-1)/n)===Math.floor(s/n)||r.length===1){let l=Math.min(c+n,e.length),u=l-c;if(u<=0)return r;let d=u===1?this.Or(c===s?t:e[c],!0):this.Jr(e,c,l,s,t,a,i,o);return r[r.length-1]=this.th(d,i),r}{let r=e.slice();return r[r.length-1]=t,this.Cr(r,n,a,i,o)}}Or(e,t=!1){return{Wr:e.$n,Hr:e.$n,Ur:e.wt,$r:e.wt,jr:e.Wt[0],qr:e.Wt[1],Yr:e.Wt[2],Kr:e.Wt[3],Gr:e.Gr??1,Zr:e.ue,zr:t}}Pr(e){let t=this.ih(e),n=this.Ir(e);return t.nh!==n&&(t.kr.clear(),t.nh=n),t}ih(e){let t=this.br.get(e);return t===void 0&&(t={nh:this.Ir(e),kr:new Map},this.br.set(e,t)),t}},Ye=class extends xe{constructor(e){super(),this.sn=e}Qt(){return this.sn}},Xe={Bar:(e,t,n,r)=>{let i=t.upColor,a=t.downColor,o=b(e(n,r)),s=x(o.Wt[0])<=x(o.Wt[3]);return{sh:o.R??(s?i:a)}},Candlestick:(e,t,n,r)=>{let i=t.upColor,a=t.downColor,o=t.borderUpColor,s=t.borderDownColor,c=t.wickUpColor,l=t.wickDownColor,u=b(e(n,r)),d=x(u.Wt[0])<=x(u.Wt[3]);return{sh:u.R??(d?i:a),eh:u.Ht??(d?o:s),rh:u.hh??(d?c:l)}},Custom:(e,t,n,r)=>({sh:b(e(n,r)).R??t.color}),Area:(e,t,n,r)=>{let i=b(e(n,r));return{sh:i.vt??t.lineColor,vt:i.vt??t.lineColor,ah:i.ah??t.topColor,oh:i.oh??t.bottomColor}},Baseline:(e,t,n,r)=>{let i=b(e(n,r));return{sh:i.Wt[3]>=t.baseValue.price?t.topLineColor:t.bottomLineColor,_h:i._h??t.topLineColor,uh:i.uh??t.bottomLineColor,dh:i.dh??t.topFillColor1,fh:i.fh??t.topFillColor2,ph:i.ph??t.bottomFillColor1,mh:i.mh??t.bottomFillColor2}},Line:(e,t,n,r)=>{let i=b(e(n,r));return{sh:i.R??t.color,vt:i.R??t.color}},Histogram:(e,t,n,r)=>({sh:b(e(n,r)).R??t.color})},Ze=class{constructor(e){this.wh=(e,t)=>t===void 0?this.Te.Un().Mh(e):t.Wt,this.Te=e,this.gh=Xe[e.bh()]}Sh(e,t){return this.gh(this.wh,this.Te.N(),e,t)}};function Qe(e,t,n,r,i=0,a=t.length){let o=a-i;for(;0<o;){let a=o>>1,s=i+a;r(t[s],n)===e?(i=s+1,o-=a+1):o=a}return i}var z=Qe.bind(null,!0),$e=Qe.bind(null,!1),et;(function(e){e[e.NearestLeft=-1]=`NearestLeft`,e[e.None=0]=`None`,e[e.NearestRight=1]=`NearestRight`})(et||={});var B=30,tt=class{constructor(){this.xh=[],this.Ch=new Map,this.yh=new Map,this.Ph=[]}kh(){return this.Th()>0?this.xh[this.xh.length-1]:null}Rh(){return this.Th()>0?this.Dh(0):null}Qn(){return this.Th()>0?this.Dh(this.xh.length-1):null}Th(){return this.xh.length}Zi(){return this.Th()===0}ze(e){return this.Ih(e,0)!==null}Mh(e){return this.Hn(e)}Hn(e,t=0){let n=this.Ih(e,t);return n===null?null:{...this.Vh(n),$n:this.Dh(n)}}Bh(){return this.xh}Eh(e,t,n){if(this.Zi())return null;let r=null;for(let i of n)r=nt(r,this.Ah(e,t,i));return r}ht(e){this.yh.clear(),this.Ch.clear(),this.xh=e,this.Ph=e.map((e=>e.$n))}Lh(){return this.Ph}Dh(e){return this.xh[e].$n}Vh(e){return this.xh[e]}Ih(e,t){let n=this.zh(e);if(n===null&&t!==0)switch(t){case-1:return this.Oh(e);case 1:return this.Nh(e);default:throw TypeError(`Unknown search mode`)}return n}Oh(e){let t=this.Fh(e);return t>0&&--t,t!==this.xh.length&&this.Dh(t)<e?t:null}Nh(e){let t=this.Wh(e);return t!==this.xh.length&&e<this.Dh(t)?t:null}zh(e){let t=this.Fh(e);return t===this.xh.length||e<this.xh[t].$n?null:t}Fh(e){return z(this.xh,e,((e,t)=>e.$n<t))}Wh(e){return $e(this.xh,e,((e,t)=>e.$n>t))}Hh(e,t,n){let r=null;for(let i=e;i<t;i++){let e=this.xh[i].Wt[n];Number.isNaN(e)||(r===null?r={Uh:e,$h:e}:(e<r.Uh&&(r.Uh=e),e>r.$h&&(r.$h=e)))}return r}Ah(e,t,n){if(this.Zi())return null;let r=null,i=b(this.Rh()),a=b(this.Qn()),o=Math.max(e,i),s=Math.min(t,a),c=Math.ceil(o/B)*B,l=Math.max(c,Math.floor(s/B)*B);{let e=this.Fh(o),i=this.Wh(Math.min(s,c,t));r=nt(r,this.Hh(e,i,n))}let u=this.Ch.get(n);u===void 0&&(u=new Map,this.Ch.set(n,u));for(let e=Math.max(c+1,o);e<l;e+=B){let t=Math.floor(e/B),i=u.get(t);if(i===void 0){let e=this.Fh(t*B),r=this.Wh((t+1)*B-1);i=this.Hh(e,r,n),u.set(t,i)}r=nt(r,i)}{let e=this.Fh(l),t=this.Wh(s);r=nt(r,this.Hh(e,t,n))}return r}};function nt(e,t){return e===null?t:t===null?e:{Uh:Math.min(e.Uh,t.Uh),$h:Math.max(e.$h,t.$h)}}function rt(){return new tt}var it={setLineStyle:g},at=class{constructor(e){this.jh=e}st(e,t,n){this.jh.draw(e,it)}qh(e,t,n){this.jh.drawBackground?.(e,it)}},ot=class{constructor(e){this.Ls=null,this.Yh=e}Tt(){let e=this.Yh.renderer();if(e===null)return null;if(this.Ls?.Kh===e)return this.Ls.Gh;let t=new at(e);return this.Ls={Kh:e,Gh:t},t}Zh(){return this.Yh.zOrder?.()??`normal`}},st=class{constructor(e){this.Xh=null,this.Jh=e}Qh(){return this.Jh}Nn(){this.Jh.updateAllViews?.()}jn(){let e=this.Jh.paneViews?.()??[];if(this.Xh?.Kh===e)return this.Xh.Gh;let t=e.map((e=>new ot(e)));return this.Xh={Kh:e,Gh:t},t}Qs(e,t){return this.Jh.hitTest?.(e,t)??null}},ct=class extends st{cn(){return[]}},lt=class{constructor(e){this.jh=e}st(e,t,n){this.jh.draw(e,it)}qh(e,t,n){this.jh.drawBackground?.(e,it)}},ut=class{constructor(e){this.Ls=null,this.Yh=e}Tt(){let e=this.Yh.renderer();if(e===null)return null;if(this.Ls?.Kh===e)return this.Ls.Gh;let t=new lt(e);return this.Ls={Kh:e,Gh:t},t}Zh(){return this.Yh.zOrder?.()??`normal`}};function dt(e){return{ri:e.text(),Ei:e.coordinate(),Vi:e.fixedCoordinate?.(),R:e.textColor(),Z:e.backColor(),It:e.visible?.()??!0,pi:e.tickVisible?.()??!0}}var ft=class{constructor(e,t){this.Xt=new ye,this.ta=e,this.ia=t}Tt(){return this.Xt.ht({nn:this.ia.nn(),...dt(this.ta)}),this.Xt}},pt=class extends ge{constructor(e,t){super(),this.ta=e,this.Ki=t}Yi(e,t,n){let r=dt(this.ta);n.Z=r.Z,e.R=r.R;let i=2/12*this.Ki.P();n.Ti=i,n.Ri=i,n.Ei=r.Ei,n.Vi=r.Vi,e.ri=r.ri,e.It=r.It,e.pi=r.pi}},mt=class extends st{constructor(e,t){super(e),this.na=null,this.sa=null,this.ea=null,this.ra=null,this.Te=t}dn(){let e=this.Jh.timeAxisViews?.()??[];if(this.na?.Kh===e)return this.na.Gh;let t=this.Te.Qt().Et(),n=e.map((e=>new ft(e,t)));return this.na={Kh:e,Gh:n},n}qn(){let e=this.Jh.priceAxisViews?.()??[];if(this.sa?.Kh===e)return this.sa.Gh;let t=this.Te.Ft(),n=e.map((e=>new pt(e,t)));return this.sa={Kh:e,Gh:n},n}ha(){let e=this.Jh.priceAxisPaneViews?.()??[];if(this.ea?.Kh===e)return this.ea.Gh;let t=e.map((e=>new ut(e)));return this.ea={Kh:e,Gh:t},t}aa(){let e=this.Jh.timeAxisPaneViews?.()??[];if(this.ra?.Kh===e)return this.ra.Gh;let t=e.map((e=>new ut(e)));return this.ra={Kh:e,Gh:t},t}la(e,t){return this.Jh.autoscaleInfo?.(e,t)??null}};function ht(e,t,n,r){e.forEach((e=>{t(e).forEach((e=>{e.Zh()===n&&r.push(e)}))}))}function gt(e){return e.jn()}function _t(e){return e.ha()}function vt(e){return e.aa()}var yt=[`Area`,`Line`,`Baseline`],bt=class extends Ye{constructor(e,t,n,r,i){super(e),this.qt=rt(),this.dr=new ze(this),this.oa=[],this._a=new Fe(this),this.ua=null,this.ca=null,this.da=null,this.fa=[],this.pa=new Je,this.va=new Map,this.ma=null,this.yn=n,this.wa=t;let a=new Be(this);if(this.mn=[a],this.pr=new Me(a,this,e),yt.includes(this.wa)&&(this.ua=new Re(this)),this.Ma(),this.Yh=r(this,this.Qt(),i),this.wa===`Custom`){let e=this.Yh;e.ga&&this.ba(e.ga)}}m(){this.da!==null&&clearTimeout(this.da)}We(e){return this.yn.priceLineColor||e}Ae(e){let t={Le:!0},n=this.Ft();if(this.Qt().Et().Zi()||n.Zi()||this.qt.Zi())return t;let r=this.Qt().Et().Ee(),i=this.Lt();if(r===null||i===null)return t;let a,o;if(e){let e=this.qt.kh();if(e===null)return t;a=e,o=e.$n}else{let e=this.qt.Hn(r.bi(),-1);if(e===null||(a=this.qt.Mh(e.$n),a===null))return t;o=e.$n}let s=a.Wt[3],c=this.Sa().Sh(o,{Wt:a}),l=n.Nt(s,i.Wt);return{Le:!1,Mt:s,ri:n.Ji(s,i.Wt),qe:n.xa(s),Ye:n.Ca(s,i.Wt),R:c.sh,Ei:l,$n:o}}Sa(){return this.ca!==null||(this.ca=new Ze(this)),this.ca}N(){return this.yn}vr(e){let t=this.Qt(),{priceScaleId:n,visible:r,priceFormat:i}=e;n!==void 0&&n!==this.yn.priceScaleId&&t.ya(this,n),r!==void 0&&r!==this.yn.visible&&t.Pa();let a=e.conflationThresholdFactor!==void 0;C(this.yn,e),Object.prototype.hasOwnProperty.call(e,`autoscaleInfoProvider`)&&e.autoscaleInfoProvider===void 0&&(this.yn.autoscaleInfoProvider=void 0),a&&(this.va.clear(),this.Qt().mr()),i!==void 0&&(this.Ma(),t.ka()),t.Ta(this),t.Ra(),this.Yh.Pt(`options`)}ht(e,t){this.qt.ht(e),this.va.clear();let n=this.Qt().Et().N();n.enableConflation&&n.precomputeConflationOnInit&&this.Da(n.precomputeConflationPriority),this.Ia(),this.ua!==null&&(t&&t.Va?this.ua.De():e.length===0&&this.ua.Re());let r=this.Qt().Ks(this);this.Qt().Ba(r),this.Qt().Ta(this),this.Qt().Ra(),this.Qt().mr()}Ia(){this.Yh.Pt(`data`)}Ea(e){let t=new qe(this,e);return this.oa.push(t),this.Qt().Ta(this),t}Aa(e){let t=this.oa.indexOf(e);t!==-1&&this.oa.splice(t,1),this.Qt().Ta(this)}La(){return this.oa}bh(){return this.wa}Lt(){let e=this.za();return e===null?null:{Wt:e.Wt[3],Oa:e.wt}}za(){let e=this.Qt().Et().Ee();if(e===null)return null;let t=e.Na();return this.qt.Hn(t,1)}Un(){return this.qt}ba(e){this.ma=e,this.va.clear()}Fa(){return!!this.Qt().Et().N().enableConflation&&this.Wa()>1}Rr(e){if(!this.Fa())return;let t=this.Wa();if(!this.va.has(t))return;let n=this.wa===`Custom`,r=n&&this.ma||void 0,i=n&&this.Yh.Ha?e=>{let t=e,n=this.Yh.Ha(t);return Array.isArray(n)?n:[typeof n==`number`?n:0]}:void 0,a=this.pa.Rr(this.qt.Bh(),e,t,r,n,i),o=rt();o.ht(a),this.va.set(t,o)}Ua(){let e=this.Qt().Et().N().enableConflation;if(this.wa===`Custom`&&this.ma===null||!e)return this.qt;let t=this.Wa();return this.va.get(t)||(this.$a(t),this.va.get(t)??this.qt)}ja(e){let t=this.qt.Mh(e);return t===null?null:this.wa===`Bar`||this.wa===`Candlestick`||this.wa===`Custom`?{jr:t.Wt[0],qr:t.Wt[1],Yr:t.Wt[2],Kr:t.Wt[3]}:t.Wt[3]}qa(e){let t=[];ht(this.fa,gt,`top`,t);let n=this.ua;return n!==null&&n.It()?(this.da===null&&n.Ve()&&(this.da=setTimeout((()=>{this.da=null,this.Qt().Ya()}),0)),n.Ie(),t.unshift(n),t):t}jn(){let e=[];this.Ka()||e.push(this._a),e.push(this.Yh,this.dr);let t=this.oa.map((e=>e.wr()));return e.push(...t),ht(this.fa,gt,`normal`,e),e}Ga(){let e=this.Yh.Ga?.()??null;if(e===null)return null;let t=[];this.Ka()||t.push(this._a),t.push(...e.Za),ht(this.fa,gt,`normal`,t);let n=[];n.push(...e.qa,this.dr);let r=this.oa.map((e=>e.wr()));return n.push(...r),{Za:t,qa:n}}Xa(){return this.Ja(gt,`bottom`)}Qa(e){return this.Ja(_t,e)}tl(e){return this.Ja(vt,e)}il(e,t){return this.fa.map((n=>n.Qs(e,t))).filter((e=>e!==null))}cn(){return[this.pr,...this.oa.map((e=>e.Mr()))]}qn(e,t){if(t!==this.hn&&!this.Ka())return[];let n=[...this.mn];for(let e of this.oa)n.push(e.gr());return this.fa.forEach((e=>{n.push(...e.qn())})),n}dn(){let e=[];return this.fa.forEach((t=>{e.push(...t.dn())})),e}la(e,t){if(this.yn.autoscaleInfoProvider!==void 0){let n=this.yn.autoscaleInfoProvider((()=>{let n=this.nl(e,t);return n===null?null:n.sr()}));return He.er(n)}return this.nl(e,t)}Kh(){let e=this.yn.priceFormat;return e.base??1/e.minMove}sl(){return this.el}Nn(){this.Yh.Pt();for(let e of this.mn)e.Pt();for(let e of this.oa)e.Pt();this.dr.Pt(),this._a.Pt(),this.ua?.Pt(),this.fa.forEach((e=>e.Nn()))}Ft(){return b(super.Ft())}At(e){if(!((this.wa===`Line`||this.wa===`Area`||this.wa===`Baseline`)&&this.yn.crosshairMarkerVisible))return null;let t=this.qt.Mh(e);return t===null?null:{Mt:t.Wt[3],ft:this.rl(),Ht:this.hl(),Ot:this.al(),zt:this.ll(e)}}He(){return this.yn.title}It(){return this.yn.visible}ol(e){this.fa.push(new mt(e,this))}_l(e){this.fa=this.fa.filter((t=>t.Qh()!==e))}ul(){if(this.wa===`Custom`)return e=>this.Yh.Ha(e)}cl(){if(this.wa===`Custom`)return e=>this.Yh.dl(e)}fl(){return this.qt.Lh()}Ka(){return!we(this.Ft().pl())}nl(e,t){if(!T(e)||!T(t)||this.qt.Zi())return null;let n=this.wa===`Line`||this.wa===`Area`||this.wa===`Baseline`||this.wa===`Histogram`?[3]:[2,1],r=this.qt.Eh(e,t,n),i=r===null?null:new R(r.Uh,r.$h),a=null;if(this.bh()===`Histogram`){let e=this.yn.base,t=new R(e,e);i=i===null?t:i.Ss(t)}return this.fa.forEach((n=>{let r=n.la(e,t);if(r?.priceRange){let e=new R(r.priceRange.minValue,r.priceRange.maxValue);i=i===null?e:i.Ss(e)}r?.margins&&(a=r.margins)})),new He(i,a)}rl(){switch(this.wa){case`Line`:case`Area`:case`Baseline`:return this.yn.crosshairMarkerRadius}return 0}hl(){switch(this.wa){case`Line`:case`Area`:case`Baseline`:{let e=this.yn.crosshairMarkerBorderColor;if(e.length!==0)return e}}return null}al(){switch(this.wa){case`Line`:case`Area`:case`Baseline`:return this.yn.crosshairMarkerBorderWidth}return 0}ll(e){switch(this.wa){case`Line`:case`Area`:case`Baseline`:{let e=this.yn.crosshairMarkerBackgroundColor;if(e.length!==0)return e}}return this.Sa().Sh(e).sh}Ma(){switch(this.yn.priceFormat.type){case`custom`:{let e=this.yn.priceFormat.formatter;this.el={format:e,formatTickmarks:this.yn.priceFormat.tickmarksFormatter??(t=>t.map(e))};break}case`volume`:this.el=new ke(this.yn.priceFormat.precision);break;case`percent`:this.el=new Oe(this.yn.priceFormat.precision);break;default:{let e=10**this.yn.priceFormat.precision;this.el=new De(e,this.yn.priceFormat.minMove*e)}}this.hn!==null&&this.hn.vl()}Ja(e,t){let n=[];return ht(this.fa,e,t,n),n}Wa(){let{ml:e,wl:t,Ml:n}=this.gl();return this.pa.Sr(e,t,n)}gl(){let e=this.Qt().Et(),t=e.ml(),n=window.devicePixelRatio||1,r=e.N().conflationThresholdFactor;return{ml:t,wl:n,Ml:this.yn.conflationThresholdFactor??r??1}}bl(e){let t=this.qt.Bh(),n;if(this.wa===`Custom`&&this.ma!==null){let r=this.ul();if(!r)throw Error(We);n=this.pa.Cr(t,e,this.ma,!0,(e=>r(e)))}else n=this.pa.Cr(t,e);let r=rt();return r.ht(n),r}$a(e){let t=this.bl(e);this.va.set(e,t)}Da(e){if(this.wa===`Custom`&&(this.ma===null||!this.ul()))return;this.va.clear();let t=this.Qt().Et().Sl();for(let n of t){let t=()=>{this.xl(n)},r=typeof window==`object`&&window||typeof self==`object`&&self;r?.yl?.Cl?r.yl.Cl((()=>{t()}),{se:e}):Promise.resolve().then((()=>t()))}}xl(e){if(this.va.has(e)||this.qt.Bh().length===0)return;let t=this.bl(e);this.va.set(e,t)}},xt=[3],St=[0,1,2,3],Ct=class{constructor(e){this.yn=e}Pl(e,t,n){let r=e;if(this.yn.mode===0)return r;let i=n.kn(),a=i.Lt();if(a===null)return r;let o=i.Nt(e,a),s=n.kl().filter((e=>e instanceof bt)).reduce(((e,r)=>{if(n.Gs(r)||!r.It())return e;let i=r.Ft(),a=r.Un();if(i.Zi()||!a.ze(t))return e;let o=a.Mh(t);if(o===null)return e;let s=x(r.Lt()),c=this.yn.mode===3?St:xt;return e.concat(c.map((e=>i.Nt(o.Wt[e],s.Wt))))}),[]);if(s.length===0)return r;s.sort(((e,t)=>Math.abs(e-o)-Math.abs(t-o)));let c=s[0];return r=i.Tn(c,a),r}};function V(e,t,n){return Math.min(Math.max(e,t),n)}function wt(e,t,n){return t-e<=n}function Tt(e){let t=Math.ceil(e);return t%2==0?t-1:t}var Et=class extends P{constructor(){super(...arguments),this.qt=null}ht(e){this.qt=e}et({context:e,bitmapSize:t,horizontalPixelRatio:n,verticalPixelRatio:r}){if(this.qt===null)return;let i=Math.max(1,Math.floor(n));e.lineWidth=i,function(e,t){e.save(),e.lineWidth%2&&e.translate(.5,.5),t(),e.restore()}(e,(()=>{let a=b(this.qt);if(a.Tl){e.strokeStyle=a.Rl,g(e,a.Dl),e.beginPath();for(let r of a.Il){let a=Math.round(r.Vl*n);e.moveTo(a,-i),e.lineTo(a,t.height+i)}e.stroke()}if(a.Bl){e.strokeStyle=a.El,g(e,a.Al),e.beginPath();for(let n of a.Ll){let a=Math.round(n.Vl*r);e.moveTo(-i,a),e.lineTo(t.width+i,a)}e.stroke()}}))}},Dt=class{constructor(e){this.Xt=new Et,this.xt=!0,this.yt=e}Pt(){this.xt=!0}Tt(){if(this.xt){let e=this.yt.Qt().N().grid,t={Bl:e.horzLines.visible,Tl:e.vertLines.visible,El:e.horzLines.color,Rl:e.vertLines.color,Al:e.horzLines.style,Dl:e.vertLines.style,Ll:this.yt.kn().zl(),Il:(this.yt.Qt().Et().zl()||[]).map((e=>({Vl:e.coord})))};this.Xt.ht(t),this.xt=!1}return this.Xt}},Ot=class{constructor(e){this.Yh=new Dt(e)}wr(){return this.Yh}},kt={Ol:4,Nl:1e-4};function H(e,t){let n=100*(e-t)/t;return t<0?-n:n}function At(e,t){return new R(H(e.Je(),t),H(e.Qe(),t))}function U(e,t){let n=100*(e-t)/t+100;return t<0?-n:n}function jt(e,t){return new R(U(e.Je(),t),U(e.Qe(),t))}function Mt(e,t){let n=Math.abs(e);if(n<1e-15)return 0;let r=Math.log10(n+t.Nl)+t.Ol;return e<0?-r:r}function Nt(e,t){let n=Math.abs(e);if(n<1e-15)return 0;let r=10**(n-t.Ol)-t.Nl;return e<0?-r:r}function Pt(e,t){return e===null?null:new R(Mt(e.Je(),t),Mt(e.Qe(),t))}function W(e,t){return e===null?null:new R(Nt(e.Je(),t),Nt(e.Qe(),t))}function Ft(e){if(e===null)return kt;let t=Math.abs(e.Qe()-e.Je());if(t>=1||t<1e-15)return kt;let n=Math.ceil(Math.abs(Math.log10(t))),r=kt.Ol+n;return{Ol:r,Nl:1/10**r}}var It=class{constructor(e,t){if(this.Fl=e,this.Wl=t,function(e){if(e<0)return!1;if(e>0xde0b6b3a7640000)return!0;for(let t=e;t>1;t/=10)if(t%10!=0)return!1;return!0}(this.Fl))this.Hl=[2,2.5,2];else{this.Hl=[];for(let e=this.Fl;e!==1;){if(e%2==0)this.Hl.push(2),e/=2;else{if(e%5!=0)throw Error(`unexpected base`);this.Hl.push(2,2.5),e/=5}if(this.Hl.length>100)throw Error(`something wrong with base`)}}}Ul(e,t,n){let r=this.Fl===0?0:1/this.Fl,i=10**Math.max(0,Math.ceil(Math.log10(e-t))),a=0,o=this.Wl[0];for(;;){let e=wt(i,r,1e-14)&&i>r+1e-14,t=wt(i,n*o,1e-14),s=wt(i,1,1e-14);if(!(e&&t&&s))break;i/=o,o=this.Wl[++a%this.Wl.length]}if(i<=r+1e-14&&(i=r),i=Math.max(1,i),this.Hl.length>0&&(s=i,c=1,l=1e-14,Math.abs(s-c)<l))for(a=0,o=this.Hl[0];wt(i,n*o,1e-14)&&i>r+1e-14;)i/=o,o=this.Hl[++a%this.Hl.length];var s,c,l;return i}},Lt=class{constructor(e,t,n,r){this.$l=[],this.Ki=e,this.Fl=t,this.jl=n,this.ql=r}Ul(e,t){if(e<t)throw Error(`high < low`);let n=this.Ki.$t(),r=(e-t)*this.Yl()/n,i=new It(this.Fl,[2,2.5,2]),a=new It(this.Fl,[2,2,2.5]),o=new It(this.Fl,[2.5,2,2]),s=[];return s.push(i.Ul(e,t,r),a.Ul(e,t,r),o.Ul(e,t,r)),function(e){if(e.length<1)throw Error(`array is empty`);let t=e[0];for(let n=1;n<e.length;++n)e[n]<t&&(t=e[n]);return t}(s)}Kl(){let e=this.Ki,t=e.Lt();if(t===null)return void(this.$l=[]);let n=e.$t(),r=this.jl(n-1,t),i=this.jl(0,t),a=this.Ki.N().entireTextOnly?this.Gl()/2:0,o=a,s=n-1-a,c=Math.max(r,i),l=Math.min(r,i);if(c===l)return void(this.$l=[]);let u=this.Ul(c,l);if(this.Zl(t,u,c,l,o,s),e.Xl()&&this.Jl(u,l,c)){let e=this.Ki.Ql();this.io(t,u,o,s,e,2*e)}let d=this.$l.map((e=>e.no)),f=this.Ki.so(d);for(let e=0;e<this.$l.length;e++)this.$l[e].eo=f[e]}zl(){return this.$l}Gl(){return this.Ki.P()}Yl(){return Math.ceil(this.Gl()*this.Ki.N().tickMarkDensity)}Zl(e,t,n,r,i,a){let o=this.$l,s=this.Ki,c=n%t;c+=c<0?t:0;let l=n>=r?1:-1,u=null,d=0;for(let f=n-c;f>r;f-=t){let n=this.ql(f,e,!0);u!==null&&Math.abs(n-u)<this.Yl()||n<i||n>a||(d<o.length?(o[d].Vl=n,o[d].eo=s.ro(f),o[d].no=f):o.push({Vl:n,eo:s.ro(f),no:f}),d++,u=n,s.ho()&&(t=this.Ul(f*l,r)))}o.length=d}io(e,t,n,r,i,a){let o=this.$l,s=this.ao(e,n,i,a),c=this.ao(e,r,-a,-i),l=this.ql(0,e,!0)-this.ql(t,e,!0);o.length>0&&o[0].Vl-s.Vl<l/2&&o.shift(),o.length>0&&c.Vl-o[o.length-1].Vl<l/2&&o.pop(),o.unshift(s),o.push(c)}ao(e,t,n,r){let i=(n+r)/2,a=this.jl(t+n,e),o=this.jl(t+r,e),s=Math.min(a,o),c=Math.max(a,o),l=Math.max(.1,this.Ul(c,s)),u=this.jl(t+i,e),d=u-u%l,f=this.ql(d,e,!0);return{eo:this.Ki.ro(d),Vl:f,no:d}}Jl(e,t,n){let r=x(this.Ki.ar());return this.Ki.ho()&&(r=W(r,this.Ki.lo())),r.Je()-t<e&&n-r.Qe()<e}};function Rt(e){return e.slice().sort(((e,t)=>b(e.ln())-b(t.ln())))}var zt;(function(e){e[e.Normal=0]=`Normal`,e[e.Logarithmic=1]=`Logarithmic`,e[e.Percentage=2]=`Percentage`,e[e.IndexedTo100=3]=`IndexedTo100`})(zt||={});var Bt=new Oe,Vt=new De(100,1),Ht=class{constructor(e,t,n,r,i){this.oo=0,this._o=null,this.rr=null,this.uo=null,this.co={do:!1,fo:null},this.po=!1,this.vo=0,this.mo=0,this.wo=new S,this.Mo=new S,this.bo=[],this.So=null,this.xo=null,this.Co=null,this.yo=null,this.Po=null,this.el=Vt,this.ko=Ft(null),this.To=e,this.yn=t,this.Ro=n,this.Do=r,this.Io=i,this.Vo=new Lt(this,100,this.Bo.bind(this),this.Eo.bind(this))}pl(){return this.To}N(){return this.yn}vr(e){if(C(this.yn,e),this.vl(),e.mode!==void 0&&this.Ao({_e:e.mode}),e.scaleMargins!==void 0){let t=y(e.scaleMargins.top),n=y(e.scaleMargins.bottom);if(t<0||t>1)throw Error(`Invalid top margin - expect value between 0 and 1, given=${t}`);if(n<0||n>1)throw Error(`Invalid bottom margin - expect value between 0 and 1, given=${n}`);if(t+n>1)throw Error(`Invalid margins - sum of margins must be less than 1, given=${t+n}`);this.Lo(),this.Co=null}}zo(){return this.yn.autoScale}Oo(){return this.po}ho(){return this.yn.mode===1}je(){return this.yn.mode===2}No(){return this.yn.mode===3}lo(){return this.ko}_e(){return{hs:this.yn.autoScale,Fo:this.yn.invertScale,_e:this.yn.mode}}Ao(e){let t=this._e(),n=null;e.hs!==void 0&&(this.yn.autoScale=e.hs),e._e!==void 0&&(this.yn.mode=e._e,e._e!==2&&e._e!==3||(this.yn.autoScale=!0),this.co.do=!1),t._e===1&&e._e!==t._e&&(function(e,t){if(e===null)return!1;let n=Nt(e.Je(),t),r=Nt(e.Qe(),t);return isFinite(n)&&isFinite(r)}(this.rr,this.ko)?(n=W(this.rr,this.ko),n!==null&&this.Wo(n)):this.yn.autoScale=!0),e._e===1&&e._e!==t._e&&(n=Pt(this.rr,this.ko),n!==null&&this.Wo(n));let r=t._e!==this.yn.mode;r&&(t._e===2||this.je())&&this.vl(),r&&(t._e===3||this.No())&&this.vl(),e.Fo!==void 0&&t.Fo!==e.Fo&&(this.yn.invertScale=e.Fo,this.Ho()),this.Mo.p(t,this._e())}Uo(){return this.Mo}P(){return this.Ro.fontSize}$t(){return this.oo}$o(e){this.oo!==e&&(this.oo=e,this.Lo(),this.Co=null)}jo(){if(this._o)return this._o;let e=this.$t()-this.qo()-this.Yo();return this._o=e,e}ar(){return this.Ko(),this.rr}Wo(e,t){let n=this.rr;(t||n===null&&e!==null||n!==null&&!n.Ze(e))&&(this.Co=null,this.rr=e)}Go(e){this.Wo(e),this.Zo(e!==null)}Zi(){return this.Ko(),this.oo===0||!this.rr||this.rr.Zi()}Xo(e){return this.Fo()?e:this.$t()-1-e}Nt(e,t){return this.je()?e=H(e,t):this.No()&&(e=U(e,t)),this.Eo(e,t)}Jo(e,t,n){this.Ko();let r=this.Yo(),i=b(this.ar()),a=i.Je(),o=i.Qe(),s=this.jo()-1,c=this.Fo(),l=s/(o-a),u=n===void 0?0:n.from,d=n===void 0?e.length:n.to,f=this.Qo();for(let n=u;n<d;n++){let i=e[n],o=i.Mt;if(isNaN(o))continue;let s=o;f!==null&&(s=f(i.Mt,t));let u=r+l*(s-a);i.ut=c?u:this.oo-1-u}}t_(e,t,n){this.Ko();let r=this.Yo(),i=b(this.ar()),a=i.Je(),o=i.Qe(),s=this.jo()-1,c=this.Fo(),l=s/(o-a),u=n===void 0?0:n.from,d=n===void 0?e.length:n.to,f=this.Qo();for(let n=u;n<d;n++){let i=e[n],o=i.jr,s=i.qr,u=i.Yr,d=i.Kr;f!==null&&(o=f(i.jr,t),s=f(i.qr,t),u=f(i.Yr,t),d=f(i.Kr,t));let p=r+l*(o-a),m=c?p:this.oo-1-p;i.i_=m,p=r+l*(s-a),m=c?p:this.oo-1-p,i.n_=m,p=r+l*(u-a),m=c?p:this.oo-1-p,i.s_=m,p=r+l*(d-a),m=c?p:this.oo-1-p,i.e_=m}}Tn(e,t){let n=this.Bo(e,t);return this.r_(n,t)}r_(e,t){let n=e;return this.je()?n=function(e,t){return t<0&&(e=-e),e/100*t+t}(n,t):this.No()&&(n=function(e,t){return e-=100,t<0&&(e=-e),e/100*t+t}(n,t)),n}kl(){return this.bo}Dt(){return this.xo||=Rt(this.bo),this.xo}h_(e){this.bo.indexOf(e)===-1&&(this.bo.push(e),this.vl(),this.a_())}l_(e){let t=this.bo.indexOf(e);if(t===-1)throw Error(`source is not attached to scale`);this.bo.splice(t,1),this.bo.length===0&&(this.Ao({hs:!0}),this.Wo(null)),this.vl(),this.a_()}Lt(){let e=null;for(let t of this.bo){let n=t.Lt();n!==null&&(e===null||n.Oa<e.Oa)&&(e=n)}return e===null?null:e.Wt}Fo(){return this.yn.invertScale}zl(){let e=this.Lt()===null;if(this.Co!==null&&(e||this.Co.o_===e))return this.Co.zl;this.Vo.Kl();let t=this.Vo.zl();return this.Co={zl:t,o_:e},this.wo.p(),t}__(){return this.wo}u_(e){this.je()||this.No()||this.yo===null&&this.uo===null&&(this.Zi()||(this.yo=this.oo-e,this.uo=b(this.ar()).Xe()))}c_(e){if(this.je()||this.No()||this.yo===null)return;this.Ao({hs:!1}),(e=this.oo-e)<0&&(e=0);let t=(this.yo+.2*(this.oo-1))/(e+.2*(this.oo-1)),n=b(this.uo).Xe();t=Math.max(t,.1),n.ir(t),this.Wo(n)}d_(){this.je()||this.No()||(this.yo=null,this.uo=null)}f_(e){this.zo()||this.Po===null&&this.uo===null&&(this.Zi()||(this.Po=e,this.uo=b(this.ar()).Xe()))}p_(e){if(this.zo()||this.Po===null)return;let t=b(this.ar()).tr()/(this.jo()-1),n=e-this.Po;this.Fo()&&(n*=-1);let r=n*t,i=b(this.uo).Xe();i.nr(r),this.Wo(i,!0),this.Co=null}v_(){this.zo()||this.Po!==null&&(this.Po=null,this.uo=null)}sl(){return this.el||this.vl(),this.el}Ji(e,t){switch(this.yn.mode){case 2:return this.m_(H(e,t));case 3:return this.sl().format(U(e,t));default:return this.cr(e)}}ro(e){switch(this.yn.mode){case 2:return this.m_(e);case 3:return this.sl().format(e);default:return this.cr(e)}}so(e){switch(this.yn.mode){case 2:return this.w_(e);case 3:return this.sl().formatTickmarks(e);default:return this.M_(e)}}xa(e){return this.cr(e,b(this.So).sl())}Ca(e,t){return e=H(e,t),this.m_(e,Bt)}g_(){return this.bo}b_(e){this.co={fo:e,do:!1}}Nn(){this.bo.forEach((e=>e.Nn()))}Xl(){return this.yn.ensureEdgeTickMarksVisible&&this.zo()}Ql(){return this.P()/2}vl(){this.Co=null;let e=1/0;this.So=null;for(let t of this.bo)t.ln()<e&&(e=t.ln(),this.So=t);let t=100;this.So!==null&&(t=Math.round(this.So.Kh())),this.el=Vt,this.je()?(this.el=Bt,t=100):this.No()?(this.el=new De(100,1),t=100):this.So!==null&&(this.el=this.So.sl()),this.Vo=new Lt(this,t,this.Bo.bind(this),this.Eo.bind(this)),this.Vo.Kl()}a_(){this.xo=null}S_(){return this.So===null||this.je()||this.No()?1:1/this.So.Kh()}Xi(){return this.Io}Zo(e){this.po=e}qo(){return this.Fo()?this.yn.scaleMargins.bottom*this.$t()+this.mo:this.yn.scaleMargins.top*this.$t()+this.vo}Yo(){return this.Fo()?this.yn.scaleMargins.top*this.$t()+this.vo:this.yn.scaleMargins.bottom*this.$t()+this.mo}Ko(){this.co.do||(this.co.do=!0,this.x_())}Lo(){this._o=null}Eo(e,t){if(this.Ko(),this.Zi())return 0;e=this.ho()&&e?Mt(e,this.ko):e;let n=b(this.ar()),r=this.Yo()+(this.jo()-1)*(e-n.Je())/n.tr();return this.Xo(r)}Bo(e,t){if(this.Ko(),this.Zi())return 0;let n=this.Xo(e),r=b(this.ar()),i=r.Je()+r.tr()*((n-this.Yo())/(this.jo()-1));return this.ho()?Nt(i,this.ko):i}Ho(){this.Co=null,this.Vo.Kl()}x_(){if(this.Oo()&&!this.zo())return;let e=this.co.fo;if(e===null)return;let t=null,n=this.g_(),r=0,i=0;for(let a of n){if(!a.It())continue;let n=a.Lt();if(n===null)continue;let o=a.la(e.Na(),e.bi()),s=o&&o.ar();if(s!==null){switch(this.yn.mode){case 1:s=Pt(s,this.ko);break;case 2:s=At(s,n.Wt);break;case 3:s=jt(s,n.Wt)}if(t=t===null?s:t.Ss(b(s)),o!==null){let e=o.lr();e!==null&&(r=Math.max(r,e.above),i=Math.max(i,e.below))}}}if(this.Xl()&&(r=Math.max(r,this.Ql()),i=Math.max(i,this.Ql())),r===this.vo&&i===this.mo||(this.vo=r,this.mo=i,this.Co=null,this.Lo()),t!==null){if(t.Je()===t.Qe()){let e=5*this.S_();this.ho()&&(t=W(t,this.ko)),t=new R(t.Je()-e,t.Qe()+e),this.ho()&&(t=Pt(t,this.ko))}if(this.ho()){let e=W(t,this.ko),n=Ft(e);if(a=n,o=this.ko,a.Ol!==o.Ol||a.Nl!==o.Nl){let r=this.uo===null?null:W(this.uo,this.ko);this.ko=n,t=Pt(e,n),r!==null&&(this.uo=Pt(r,n))}}this.Wo(t)}else this.rr===null&&(this.Wo(new R(-.5,.5)),this.ko=Ft(null));var a,o}Qo(){return this.je()?H:this.No()?U:this.ho()?e=>Mt(e,this.ko):null}C_(e,t,n){return t===void 0?(n===void 0&&(n=this.sl()),n.format(e)):t(e)}y_(e,t,n){return t===void 0?(n===void 0&&(n=this.sl()),n.formatTickmarks(e)):t(e)}cr(e,t){return this.C_(e,this.Do.priceFormatter,t)}M_(e,t){let n=this.Do.priceFormatter;return this.y_(e,this.Do.tickmarksPriceFormatter??(n?e=>e.map(n):void 0),t)}m_(e,t){return this.C_(e,this.Do.percentageFormatter,t)}w_(e,t){let n=this.Do.percentageFormatter;return this.y_(e,this.Do.tickmarksPercentageFormatter??(n?e=>e.map(n):void 0),t)}};function Ut(e){return e instanceof bt}var Wt=class{constructor(e,t){this.bo=[],this.P_=new Map,this.oo=0,this.k_=0,this.T_=1,this.xo=null,this.R_=null,this.D_=!1,this.I_=new S,this.fa=[],this.ia=e,this.sn=t,this.V_=new Ot(this);let n=t.N();this.B_=this.E_(`left`,n.leftPriceScale),this.A_=this.E_(`right`,n.rightPriceScale),this.B_.Uo().i(this.L_.bind(this,this.B_),this),this.A_.Uo().i(this.L_.bind(this,this.A_),this),this.z_(n)}z_(e){if(e.leftPriceScale&&this.B_.vr(e.leftPriceScale),e.rightPriceScale&&this.A_.vr(e.rightPriceScale),e.localization&&(this.B_.vl(),this.A_.vl()),e.overlayPriceScales){let t=Array.from(this.P_.values());for(let n of t){let t=b(n[0].Ft());t.vr(e.overlayPriceScales),e.localization&&t.vl()}}}O_(e){switch(e){case`left`:return this.B_;case`right`:return this.A_}return this.P_.has(e)?y(this.P_.get(e))[0].Ft():null}m(){this.Qt().N_().u(this),this.B_.Uo().u(this),this.A_.Uo().u(this),this.bo.forEach((e=>{e.m&&e.m()})),this.fa=this.fa.filter((e=>{let t=e.Qh();return t.detached&&t.detached(),!1})),this.I_.p()}F_(){return this.T_}W_(e){this.T_=e}Qt(){return this.sn}nn(){return this.k_}$t(){return this.oo}H_(e){this.k_=e,this.U_()}$o(e){this.oo=e,this.B_.$o(e),this.A_.$o(e),this.bo.forEach((t=>{if(this.Gs(t)){let n=t.Ft();n!==null&&n.$o(e)}})),this.U_()}j_(e){this.D_=e}q_(){return this.D_}Y_(){return this.bo.filter(Ut)}kl(){return this.bo}Gs(e){let t=e.Ft();return t===null||this.B_!==t&&this.A_!==t}h_(e,t,n){this.K_(e,t,n?e.ln():this.bo.length)}l_(e,t){let n=this.bo.indexOf(e);v(n!==-1,`removeDataSource: invalid data source`),this.bo.splice(n,1),t||this.bo.forEach(((e,t)=>e._n(t)));let r=b(e.Ft()).pl();if(this.P_.has(r)){let t=y(this.P_.get(r)),n=t.indexOf(e);n!==-1&&(t.splice(n,1),t.length===0&&this.P_.delete(r))}let i=e.Ft();i&&i.kl().indexOf(e)>=0&&(i.l_(e),this.G_(i)),this.Z_()}Xs(e){return e===this.B_?`left`:e===this.A_?`right`:`overlay`}X_(){return this.B_}J_(){return this.A_}Q_(e,t){e.u_(t)}tu(e,t){e.c_(t),this.U_()}iu(e){e.d_()}nu(e,t){e.f_(t)}su(e,t){e.p_(t),this.U_()}eu(e){e.v_()}U_(){this.bo.forEach((e=>{e.Nn()}))}kn(){let[e,t]=this.ru(),n=null;return e.N().visible&&e.kl().length!==0?n=e:t.N().visible&&t.kl().length!==0?n=t:this.bo.length!==0&&(n=this.bo[0].Ft()),n===null&&(n=this.Zs()??e),n}Zs(){let[e,t]=this.ru();return e.N().visible?e:t.N().visible?t:null}G_(e){e!==null&&e.zo()&&this.hu(e)}au(e){let t=this.ia.Ee();e.Ao({hs:!0}),t!==null&&e.b_(t),this.U_()}lu(){this.hu(this.B_),this.hu(this.A_)}ou(){this.G_(this.B_),this.G_(this.A_),this.bo.forEach((e=>{this.Gs(e)&&this.G_(e.Ft())})),this.U_(),this.sn.mr()}Dt(){return this.xo===null&&(this.xo=Rt(this.bo)),this.xo}_u(){let e=this.Dt(),t=this.sn.cu()?.uu,n=this.sn.N().hoveredSeriesOnTop,r=this.R_;if(r!==null&&r.Kh===e&&r.du===t&&r.fu===n)return r.pu;let i=function(e,t,n){if(!n)return e;let r=e.indexOf(t);if(r===-1||r===e.length-1)return e;let i=[];for(let t=0;t<e.length;t++)t!==r&&i.push(e[t]);return i.push(e[r]),i}(e,t,n);return this.R_={Kh:e,du:t,fu:n,pu:i},i}vu(e,t){t=V(t,0,this.bo.length-1);let n=this.bo.indexOf(e);v(n!==-1,`setSeriesOrder: invalid data source`),this.bo.splice(n,1),this.bo.splice(t,0,e),this.bo.forEach(((e,t)=>e._n(t))),this.Z_();for(let e of[this.B_,this.A_])e.a_(),e.vl();this.sn.mr()}Vt(){return this.Dt().filter(Ut)}mu(){return this.I_}wu(){return this.V_}ol(e){this.fa.push(new ct(e))}_l(e){this.fa=this.fa.filter((t=>t.Qh()!==e)),e.detached&&e.detached(),this.sn.mr()}Mu(){return this.fa}il(e,t){return this.fa.map((n=>n.Qs(e,t))).filter((e=>e!==null))}hu(e){let t=e.g_();if(t&&t.length>0&&!this.ia.Zi()){let t=this.ia.Ee();t!==null&&e.b_(t)}e.Nn()}K_(e,t,n){let r=this.O_(t);if(r===null&&(r=this.E_(t,this.sn.N().overlayPriceScales)),this.bo.splice(n,0,e),!we(t)){let n=this.P_.get(t)||[];n.push(e),this.P_.set(t,n)}e._n(n),r.h_(e),e.un(r),this.G_(r),this.Z_()}Z_(){this.xo=null,this.R_=null}ru(){return this.sn.N().defaultVisiblePriceScaleId===`left`?[this.B_,this.A_]:[this.A_,this.B_]}L_(e,t,n){t._e!==n._e&&this.hu(e)}E_(e,t){let n=new Ht(e,{visible:!0,autoScale:!0,...O(t)},this.sn.N().layout,this.sn.N().localization,this.sn.Xi());return n.$o(this.$t()),n}};function Gt(e,t){return t===null||e.se===2&&t.se!==2||(t.se!==2||e.se===2)&&e.ne!==t.ne&&e.ne<t.ne}function Kt(e){return{te:e.te,ie:e.ie}}function qt(e){return{ne:e.distance??0,se:e.hitTestPriority??(e.itemType===`marker`?2:0),ee:e.itemType??`primitive`,gu:e.cursorStyle,te:e.externalId}}function Jt(e){return{uu:e.uu,bu:Kt(e.Su),gu:e.Su.gu,ee:e.Su.ee??`primitive`}}function Yt(e,t,n,r){let i=null;for(let a of e){let e=a.Qs?.(t,n,r)??null;if(e===null){let i=a.Tt(r);e=i!==null&&i.Qs?i.Qs(t,n):null}if(e!==null){let t={xu:a,Su:e};(i===null||Gt(t.Su,i.Su))&&(i=t)}}return i}function Xt(e){return e.jn!==void 0}function Zt(e,t,n){let r=[e,...e.Dt()].reverse(),i=function(e,t,n){let r,i,a;for(let c of e){let e=c.il?.(t,n)??[];for(let t of e){let e=qt(t);o=t.zOrder,s=r?.zOrder,(!s||o===`top`&&s!==`top`||o===`normal`&&s===`bottom`||t.zOrder===r?.zOrder&&i!==void 0&&Gt(e,i)||t.zOrder===r?.zOrder&&i===void 0)&&(r=t,i=e,a=c)}}var o,s;return r&&a&&i?{Su:i,Cu:r,uu:a}:null}(r,t,n);if(i?.Cu.zOrder===`top`)return Jt(i);let a=null,o=null;for(let s of r){if(i&&i.uu===s&&i.Cu.zOrder!==`bottom`&&!i.Cu.isBackground)return a??Jt(i);if(Xt(s)){let r=Yt(s.jn(e),t,n,e);if(r!==null){let e={uu:s,xu:r.xu,bu:Kt(r.Su),gu:r.Su.gu,ee:r.Su.ee??`primitive`};(a===null||Gt(r.Su,o))&&(a=e,o=r.Su)}}if(i&&i.uu===s&&i.Cu.zOrder!==`bottom`&&i.Cu.isBackground)return a??Jt(i)}return a===null?i?.Cu?Jt(i):null:a}var Qt=class{constructor(e,t,n=50){this.Vs=0,this.Bs=1,this.Es=1,this.Ls=new Map,this.As=new Map,this.yu=e,this.Pu=t,this.zs=n}ku(e){let t=e.time,n=this.Pu.cacheKey(t),r=this.Ls.get(n);if(r!==void 0)return r.Tu;if(this.Vs===this.zs){let e=this.As.get(this.Es);this.As.delete(this.Es),this.Ls.delete(y(e)),this.Es++,this.Vs--}let i=this.yu(e);return this.Ls.set(n,{Tu:i,Ws:this.Bs}),this.As.set(this.Bs,n),this.Vs++,this.Bs++,i}},G=class{constructor(e,t){v(e<=t,`right should be >= left`),this.Ru=e,this.Du=t}Na(){return this.Ru}bi(){return this.Du}Iu(){return this.Du-this.Ru+1}ze(e){return this.Ru<=e&&e<=this.Du}Ze(e){return this.Ru===e.Na()&&this.Du===e.bi()}};function $t(e,t){return e===null||t===null?e===t:e.Ze(t)}var en=class{constructor(){this.Vu=new Map,this.Ls=null,this.Bu=!1}Eu(e){this.Bu=e,this.Ls=null}Au(e,t){this.Lu(t),this.Ls=null;for(let n=t;n<e.length;++n){let t=e[n],r=this.Vu.get(t.timeWeight);r===void 0&&(r=[],this.Vu.set(t.timeWeight,r)),r.push({index:n,time:t.time,weight:t.timeWeight,originalTime:t.originalTime})}}zu(e,t,n,r,i){let a=Math.ceil(t/e);return this.Ls!==null&&this.Ls.Ou===a&&i===this.Ls.Nu&&n===this.Ls.Fu||(this.Ls={Nu:i,Fu:n,zl:this.Wu(a,n,r),Ou:a}),this.Ls.zl}Lu(e){if(e===0)return void this.Vu.clear();let t=[];this.Vu.forEach(((n,r)=>{e<=n[0].index?t.push(r):n.splice(z(n,e,(t=>t.index<e)),1/0)}));for(let e of t)this.Vu.delete(e)}Wu(e,t,n){let r=[],i=e=>!t||n.has(e.index);for(let t of Array.from(this.Vu.keys()).sort(((e,t)=>t-e))){if(!this.Vu.get(t))continue;let n=r;r=[];let a=n.length,o=0,s=y(this.Vu.get(t)),c=s.length,l=1/0,u=-1/0;for(let t=0;t<c;t++){let c=s[t],d=c.index;for(;o<a;){let e=n[o],t=e.index;if(!(t<d&&i(e))){l=t;break}o++,r.push(e),u=t,l=1/0}if(l-d>=e&&d-u>=e&&i(c))r.push(c),u=d;else if(this.Bu)return n}for(;o<a;o++)i(n[o])&&r.push(n[o])}return r}},tn=class e{constructor(e){this.Hu=e}Uu(){return this.Hu===null?null:new G(Math.floor(this.Hu.Na()),Math.ceil(this.Hu.bi()))}$u(){return this.Hu}static ju(){return new e(null)}};function nn(e,t){return e.weight>t.weight?e:t}var rn=class{constructor(e,t,n,r){this.k_=0,this.qu=null,this.Yu=[],this.Po=null,this.yo=null,this.Ku=new en,this.Gu=new Map,this.Zu=tn.ju(),this.Xu=!0,this.Ju=new S,this.Qu=new S,this.tc=new S,this.nc=null,this.sc=null,this.ec=new Map,this.rc=-1,this.hc=[],this.ac=1,this.yn=t,this.Do=n,this.lc=t.rightOffset,this.oc=t.barSpacing,this.sn=e,this._c(t),this.Pu=r,this.uc(),this.Ku.Eu(t.uniformDistribution),this.cc(),this.dc()}N(){return this.yn}fc(e){C(this.Do,e),this.vc(),this.uc()}vr(e,t){C(this.yn,e),this.yn.fixLeftEdge&&this.mc(),this.yn.fixRightEdge&&this.wc(),e.barSpacing!==void 0&&this.sn.Ms(e.barSpacing),e.rightOffset!==void 0&&this.sn.gs(e.rightOffset),this._c(e),e.minBarSpacing===void 0&&e.maxBarSpacing===void 0||this.sn.Ms(e.barSpacing??this.oc),e.ignoreWhitespaceIndices!==void 0&&e.ignoreWhitespaceIndices!==this.yn.ignoreWhitespaceIndices&&this.dc(),this.vc(),this.uc(),e.enableConflation===void 0&&e.conflationThresholdFactor===void 0||this.cc(),this.tc.p()}Rn(e){return this.Yu[e]?.time??null}en(e){return this.Yu[e]??null}Mc(e,t){if(this.Yu.length<1)return null;if(this.Pu.key(e)>this.Pu.key(this.Yu[this.Yu.length-1].time))return t?this.Yu.length-1:null;let n=z(this.Yu,this.Pu.key(e),((e,t)=>this.Pu.key(e.time)<t));return this.Pu.key(e)<this.Pu.key(this.Yu[n].time)?t?n:null:n}Zi(){return this.k_===0||this.Yu.length===0||this.qu===null}gc(){return this.Yu.length>0}Ee(){return this.bc(),this.Zu.Uu()}Sc(){return this.bc(),this.Zu.$u()}xc(){let e=this.Ee();if(e===null)return null;let t={from:e.Na(),to:e.bi()};return this.Cc(t)}Cc(e){let t=Math.round(e.from),n=Math.round(e.to),r=b(this.yc()),i=b(this.Pc());return{from:b(this.en(Math.max(r,t))),to:b(this.en(Math.min(i,n)))}}kc(e){return{from:b(this.Mc(e.from,!0)),to:b(this.Mc(e.to,!0))}}nn(){return this.k_}H_(e){if(!isFinite(e)||e<=0||this.k_===e)return;let t=this.Sc(),n=this.k_;if(this.k_=e,this.Xu=!0,this.yn.lockVisibleTimeRangeOnResize&&n!==0){let t=this.oc*e/n;this.oc=t}if(this.yn.fixLeftEdge&&t!==null&&t.Na()<=0){let t=n-e;this.lc-=Math.round(t/this.oc)+1,this.Xu=!0}this.Tc(),this.Rc()}jt(e){if(this.Zi()||!T(e))return 0;let t=this.Dc()+this.lc-e;return this.k_-(t+.5)*this.oc-1}Ic(e,t){let n=this.Dc(),r=t===void 0?0:t.from,i=t===void 0?e.length:t.to;for(let t=r;t<i;t++){let r=e[t].wt,i=n+this.lc-r,a=this.k_-(i+.5)*this.oc-1;e[t]._t=a}}Vc(e,t){let n=Math.ceil(this.Bc(e));return t&&this.yn.ignoreWhitespaceIndices&&!this.Ec(n)?this.Ac(n):n}gs(e){this.Xu=!0,this.lc=e,this.Rc(),this.sn.Lc(),this.sn.mr()}ml(){return this.oc}Ms(e){let t=this.oc;if(this.zc(e),this.yn.rightOffsetPixels!==void 0&&t!==0){let e=this.lc*t/this.oc;this.lc=e}this.Rc(),this.sn.Lc(),this.sn.mr()}Oc(){return this.lc}zl(){if(this.Zi())return null;if(this.sc!==null)return this.sc;let e=this.oc,t=5*(this.sn.N().layout.fontSize+4)/8*(this.yn.tickMarkMaxCharacterLength||8),n=Math.round(t/e),r=b(this.Ee()),i=Math.max(r.Na(),r.Na()-n),a=Math.max(r.bi(),r.bi()-n),o=this.Ku.zu(e,t,this.yn.ignoreWhitespaceIndices,this.ec,this.rc),s=this.yc()+n,c=this.Pc()-n,l=this.Nc(),u=this.yn.fixLeftEdge||l,d=this.yn.fixRightEdge||l,f=0;for(let e of o){if(!(i<=e.index&&e.index<=a))continue;let n;f<this.hc.length?(n=this.hc[f],n.coord=this.jt(e.index),n.label=this.Fc(e),n.weight=e.weight):(n={needAlignCoordinate:!1,coord:this.jt(e.index),label:this.Fc(e),weight:e.weight},this.hc.push(n)),this.oc>t/2&&!l?n.needAlignCoordinate=!1:n.needAlignCoordinate=u&&e.index<=s||d&&e.index>=c,f++}return this.hc.length=f,this.sc=this.hc,this.hc}Wc(){let e;this.Xu=!0,this.Ms(this.yn.barSpacing),e=this.yn.rightOffsetPixels===void 0?this.yn.rightOffset:this.yn.rightOffsetPixels/this.ml(),this.gs(e)}Hc(e){this.Xu=!0,this.qu=e,this.Rc(),this.mc()}Uc(e,t){let n=this.Bc(e),r=this.ml(),i=r+r/10*t;this.Ms(i),this.yn.rightBarStaysOnScroll||this.gs(this.Oc()+(n-this.Bc(e)))}u_(e){this.Po&&this.v_(),this.yo===null&&this.nc===null&&(this.Zi()||(this.yo=e,this.$c()))}c_(e){if(this.nc===null)return;let t=V(this.k_-e,0,this.k_),n=V(this.k_-b(this.yo),0,this.k_);t!==0&&n!==0&&this.Ms(this.nc.ml*t/n)}d_(){this.yo!==null&&(this.yo=null,this.jc())}f_(e){this.Po===null&&this.nc===null&&(this.Zi()||(this.Po=e,this.$c()))}p_(e){if(this.Po===null)return;let t=(this.Po-e)/this.ml();this.lc=b(this.nc).Oc+t,this.Xu=!0,this.Rc()}v_(){this.Po!==null&&(this.Po=null,this.jc())}qc(){this.Yc(this.yn.rightOffset)}Yc(e,t=400){if(!isFinite(e))throw RangeError(`offset is required and must be finite number`);if(!isFinite(t)||t<=0)throw RangeError(`animationDuration (optional) must be finite positive number`);let n=this.lc,r=performance.now();this.sn.ps({Kc:e=>(e-r)/t>=1,Gc:i=>{let a=(i-r)/t;return a>=1?e:n+(e-n)*a}})}Pt(e,t){this.Xu=!0,this.Yu=e,this.Ku.Au(e,t),this.Rc()}Zc(){return this.Ju}Xc(){return this.Qu}Jc(){return this.tc}Dc(){return this.qu||0}Qc(e,t){let n=e.Iu(),r=t&&this.yn.rightOffsetPixels||0;this.zc((this.k_-r)/n),this.lc=e.bi()-this.Dc(),t&&(this.lc=r?r/this.ml():this.yn.rightOffset),this.Rc(),this.Xu=!0,this.sn.Lc(),this.sn.mr()}td(){let e=this.yc(),t=this.Pc();if(e===null||t===null)return;let n=!this.yn.rightOffsetPixels&&this.yn.rightOffset||0;this.Qc(new G(e,t+n),!0)}nd(e){let t=new G(e.from,e.to);this.Qc(t)}rn(e){return this.Do.timeFormatter===void 0?this.Pu.formatHorzItem(e.time):this.Do.timeFormatter(e.originalTime)}dc(){if(!this.yn.ignoreWhitespaceIndices)return;this.ec.clear();let e=this.sn.Jn();for(let t of e)for(let e of t.fl())this.ec.set(e,!0);this.rc++}sd(){return this.ac}Sl(){let e=1/(window.devicePixelRatio||1),t=this.yn.minBarSpacing;if(t>=e)return[1];let n=[1],r=2;for(;r<=512;)t<e/r&&n.push(r),r*=2;return n}Nc(){let e=this.sn.N().handleScroll,t=this.sn.N().handleScale;return!(e.horzTouchDrag||e.mouseWheel||e.pressedMouseMove||e.vertTouchDrag||t.axisDoubleClickReset.time||t.axisPressedMouseMove.time||t.mouseWheel||t.pinch)}yc(){return this.Yu.length===0?null:0}Pc(){return this.Yu.length===0?null:this.Yu.length-1}ed(e){return(this.k_-1-e)/this.oc}Bc(e){let t=this.ed(e),n=this.Dc()+this.lc-t;return Math.round(1e6*n)/1e6}zc(e){let t=this.oc;this.oc=e,this.Tc(),t!==this.oc&&(this.Xu=!0,this.rd(),this.cc())}bc(){if(!this.Xu)return;if(this.Xu=!1,this.Zi())return void this.hd(tn.ju());let e=this.Dc(),t=this.k_/this.oc,n=this.lc+e,r=new G(n-t+1,n);this.hd(new tn(r))}Tc(){let e=V(this.oc,this.ad(),this.ld());this.oc!==e&&(this.oc=e,this.Xu=!0)}ld(){return this.yn.maxBarSpacing>0?this.yn.maxBarSpacing:.5*this.k_}ad(){return this.yn.fixLeftEdge&&this.yn.fixRightEdge&&this.Yu.length!==0?this.k_/this.Yu.length:this.yn.minBarSpacing}cc(){if(!this.yn.enableConflation)return void(this.ac=1);let e=1/(window.devicePixelRatio||1)*(this.yn.conflationThresholdFactor??1);if(this.oc>=e)return void(this.ac=1);let t=e/this.oc,n=2**Math.floor(Math.log2(t));this.ac=Math.min(n,512)}Rc(){let e=this.od();e!==null&&this.lc<e&&(this.lc=e,this.Xu=!0);let t=this._d();this.lc>t&&(this.lc=t,this.Xu=!0)}od(){let e=this.yc(),t=this.qu;return e===null||t===null?null:e-t-1+(this.yn.fixLeftEdge?this.k_/this.oc:Math.min(2,this.Yu.length))}_d(){return this.yn.fixRightEdge?0:this.k_/this.oc-Math.min(2,this.Yu.length)}$c(){this.nc={ml:this.ml(),Oc:this.Oc()}}jc(){this.nc=null}Fc(e){let t=this.Gu.get(e.weight);return t===void 0&&(t=new Qt((e=>this.ud(e)),this.Pu),this.Gu.set(e.weight,t)),t.ku(e)}ud(e){return this.Pu.formatTickmark(e,this.Do)}hd(e){let t=this.Zu;this.Zu=e,$t(t.Uu(),this.Zu.Uu())||this.Ju.p(),$t(t.$u(),this.Zu.$u())||this.Qu.p(),this.rd()}rd(){this.sc=null}vc(){this.rd(),this.Gu.clear()}uc(){this.Pu.updateFormatter(this.Do)}mc(){if(!this.yn.fixLeftEdge)return;let e=this.yc();if(e===null)return;let t=this.Ee();if(t===null)return;let n=t.Na()-e;if(n<0){let e=this.lc-n-1;this.gs(e)}this.Tc()}wc(){this.Rc(),this.Tc()}Ec(e){return!this.yn.ignoreWhitespaceIndices||this.ec.get(e)||!1}Ac(e){let t=function*(e){let t=Math.round(e),n=t<e,r=1;for(;;)n?(yield t+r,yield t-r):(yield t-r,yield t+r),r++}(e),n=this.Pc();for(;n;){let e=t.next().value;if(this.ec.get(e))return e;if(e<0||e>n)break}return e}_c(e){if(e.rightOffsetPixels!==void 0){let t=e.rightOffsetPixels/(e.barSpacing||this.oc);this.sn.gs(t)}}},an,on,sn,cn,ln;(function(e){e[e.OnTouchEnd=0]=`OnTouchEnd`,e[e.OnNextTap=1]=`OnNextTap`})(an||={});var un=class{constructor(e,t,n){this.dd=[],this.fd=[],this.pd=null,this.k_=0,this.vd=null,this.md=new S,this.wd=new S,this.Md=null,this.gd=e,this.yn=t,this.Pu=n,this.Io=new ne(this.yn.layout.colorParsers),this.bd=new ee(this),this.ia=new rn(this,t.timeScale,this.yn.localization,n),this.Ct=new Ce(this,t.crosshair),this.Sd=new Ct(t.crosshair),t.addDefaultPane&&(this.xd(0),this.dd[0].W_(2)),this.Cd=this.yd(0),this.Pd=this.yd(1)}ka(){this.kd(F.ys())}mr(){this.kd(F.Cs())}Ya(){this.kd(new F(1))}Ta(e){let t=this.Td(e);this.kd(t)}cu(){return this.vd}Rd(e){if(this.vd?.uu===e?.uu&&this.vd?.bu?.te===e?.bu?.te&&this.vd?.bu?.ie===e?.bu?.ie&&this.vd?.gu===e?.gu&&this.vd?.ee===e?.ee)return;let t=this.vd;this.vd=e,t!==null&&this.Ta(t.uu),e!==null&&e.uu!==t?.uu&&this.Ta(e.uu)}N(){return this.yn}vr(e){C(this.yn,e),this.dd.forEach((t=>t.z_(e))),e.timeScale!==void 0&&this.ia.vr(e.timeScale),e.localization!==void 0&&this.ia.fc(e.localization),(e.leftPriceScale||e.rightPriceScale)&&this.md.p(),this.Cd=this.yd(0),this.Pd=this.yd(1),this.ka()}Dd(e,t,n=0){let r=this.dd[n];if(r===void 0)return;if(e===`left`)return C(this.yn,{leftPriceScale:t}),r.z_({leftPriceScale:t}),this.md.p(),void this.ka();if(e===`right`)return C(this.yn,{rightPriceScale:t}),r.z_({rightPriceScale:t}),this.md.p(),void this.ka();let i=this.Id(e,n);i!==null&&(i.Ft.vr(t),this.md.p())}Id(e,t){let n=this.dd[t];if(n===void 0)return null;let r=n.O_(e);return r===null?null:{Kn:n,Ft:r}}Et(){return this.ia}Gn(){return this.dd}Vd(){return this.Ct}Bd(){return this.wd}Ed(e,t){e.$o(t),this.Lc()}H_(e){this.k_=e,this.ia.H_(this.k_),this.dd.forEach((t=>t.H_(e))),this.Lc()}Ad(e){this.dd.length!==1&&(v(e>=0&&e<this.dd.length,`Invalid pane index`),this.dd.splice(e,1),this.ka())}Ld(e,t){if(this.dd.length<2)return;v(e>=0&&e<this.dd.length,`Invalid pane index`);let n=this.dd[e],r=this.dd.reduce(((e,t)=>e+t.F_()),0),i=this.dd.reduce(((e,t)=>e+t.$t()),0),a=i-30*(this.dd.length-1);t=Math.min(a,Math.max(30,t));let o=r/i,s=n.$t();n.W_(t*o);let c=t-s,l=this.dd.length-1;for(let e of this.dd)if(e!==n){let t=Math.min(a,Math.max(30,e.$t()-c/l));c-=e.$t()-t,--l;let n=t*o;e.W_(n)}this.ka()}zd(e,t){v(e>=0&&e<this.dd.length&&t>=0&&t<this.dd.length,`Invalid pane index`);let n=this.dd[e],r=this.dd[t];this.dd[e]=r,this.dd[t]=n,this.ka()}Od(e,t){if(v(e>=0&&e<this.dd.length&&t>=0&&t<this.dd.length,`Invalid pane index`),e===t)return;let[n]=this.dd.splice(e,1);this.dd.splice(t,0,n),this.ka()}Q_(e,t,n){e.Q_(t,n)}tu(e,t,n){e.tu(t,n),this.Ra(),this.kd(this.Nd(e,2))}iu(e,t){e.iu(t),this.kd(this.Nd(e,2))}nu(e,t,n){t.zo()||e.nu(t,n)}su(e,t,n){t.zo()||(e.su(t,n),this.Ra(),this.kd(this.Nd(e,2)))}eu(e,t){t.zo()||(e.eu(t),this.kd(this.Nd(e,2)))}au(e,t){e.au(t),this.kd(this.Nd(e,2))}Fd(e){this.ia.u_(e)}Wd(e,t){let n=this.Et();if(n.Zi()||t===0)return;let r=n.nn();e=Math.max(1,Math.min(e,r)),n.Uc(e,t),this.Lc()}Hd(e){this.Ud(0),this.$d(e),this.jd()}qd(e){this.ia.c_(e),this.Lc()}Yd(){this.ia.d_(),this.mr()}Ud(e){this.ia.f_(e)}$d(e){this.ia.p_(e),this.Lc()}jd(){this.ia.v_(),this.mr()}Jn(){return this.fd}Wn(){return this.pd===null&&(this.pd=this.fd.filter((e=>e.It()))),this.pd}Pa(){this.pd=null}Kd(e,t,n,r,i){this.Ct.In(e,t);let a=NaN,o=this.ia.Vc(e,!0),s=this.ia.Ee();s!==null&&(o=Math.min(Math.max(s.Na(),o),s.bi())),o=this.Ct.Fn(o);let c=r.kn(),l=c.Lt();if(l!==null&&(a=c.Tn(t,l)),a=this.Sd.Pl(a,o,r),this.Ct.An(o,a,r),this.Ya(),!i){let i=Zt(r,e,t);this.Rd(i&&{uu:i.uu,bu:i.bu,gu:i.gu||null,ee:i.ee}),this.wd.p(this.Ct.Bt(),{x:e,y:t},n)}}Gd(e,t,n){let r=n.kn(),i=r.Lt(),a=r.Nt(e,b(i)),o=this.ia.Mc(t,!0),s=this.ia.jt(b(o));this.Kd(s,a,null,n,!0)}Zd(e){this.Vd().zn(),this.Ya(),e||this.wd.p(null,null,null)}Ra(){let e=this.Ct.Kn();if(e!==null){let t=this.Ct.Bn(),n=this.Ct.En();this.Kd(t,n,null,e)}this.Ct.Nn()}Xd(e,t,n){let r=this.ia.Rn(0);t!==void 0&&n!==void 0&&this.ia.Pt(t,n);let i=this.ia.Rn(0),a=this.ia.Dc(),o=this.ia.Ee();if(o!==null&&r!==null&&i!==null){let t=o.ze(a),s=this.Pu.key(r)>this.Pu.key(i),c=e!==null&&e>a&&!s,l=this.ia.N().allowShiftVisibleRangeOnWhitespaceReplacement,u=t&&(n!==void 0||l)&&this.ia.N().shiftVisibleRangeOnNewBar;if(c&&!u){let t=e-a;this.ia.gs(this.ia.Oc()-t)}}this.ia.Hc(e)}Ba(e){e!==null&&e.ou()}Ks(e){if(function(e){return e instanceof Wt}(e))return e;let t=this.dd.find((t=>t.Dt().includes(e)));return t===void 0?null:t}Lc(){this.dd.forEach((e=>e.ou())),this.Ra()}m(){this.dd.forEach((e=>e.m())),this.dd.length=0,this.yn.localization.priceFormatter=void 0,this.yn.localization.percentageFormatter=void 0,this.yn.localization.timeFormatter=void 0}Jd(){return this.bd}Js(){return this.bd.N()}N_(){return this.md}Qd(e,t){let n=this.xd(t);this.tf(e,n),this.fd.push(e),this.Pa(),this.fd.length===1?this.ka():this.mr()}if(e){let t=this.Ks(e),n=this.fd.indexOf(e);v(n!==-1,`Series not found`);let r=b(t);this.fd.splice(n,1),r.l_(e),e.m&&e.m(),this.Pa(),this.ia.dc(),this.nf(r)}ya(e,t){let n=b(this.Ks(e));n.l_(e,!0),n.h_(e,t,!0)}td(){let e=F.Cs();e.us(),this.kd(e)}sf(e){let t=F.Cs();t.fs(e),this.kd(t)}ws(){let e=F.Cs();e.ws(),this.kd(e)}Ms(e){let t=F.Cs();t.Ms(e),this.kd(t)}gs(e){let t=F.Cs();t.gs(e),this.kd(t)}ps(e){let t=F.Cs();t.ps(e),this.kd(t)}cs(){let e=F.Cs();e.cs(),this.kd(e)}ef(){let e=this.yn.defaultVisiblePriceScaleId,t=this.yn.leftPriceScale.visible;return t===this.yn.rightPriceScale.visible?e:t?`left`:`right`}rf(e,t){if(v(t>=0,`Index should be greater or equal to 0`),t===this.hf(e))return;let n=b(this.Ks(e));n.l_(e);let r=this.xd(t);this.tf(e,r);let i=!1;n.kl().length===0&&(i=this.nf(n)),i||this.ka()}af(){return this.Pd}$(){return this.Cd}Ut(e){let t=this.Pd,n=this.Cd;if(t===n)return t;if(e=Math.max(0,Math.min(100,Math.round(100*e))),this.Md===null||this.Md.ah!==n||this.Md.oh!==t)this.Md={ah:n,oh:t,lf:new Map};else{let t=this.Md.lf.get(e);if(t!==void 0)return t}let r=this.Io.tt(n,t,e/100);return this.Md.lf.set(e,r),r}_f(e){return this.dd.indexOf(e)}Xi(){return this.Io}uf(){return this.cf()}cf(e){let t=new Wt(this.ia,this);this.dd.push(t);let n=e??this.dd.length-1,r=F.ys();return r.es(n,{rs:0,hs:!0}),this.kd(r),t}xd(e){return v(e>=0,`Index should be greater or equal to 0`),(e=Math.min(this.dd.length,e))<this.dd.length?this.dd[e]:this.cf(e)}hf(e){return this.dd.findIndex((t=>t.Y_().includes(e)))}Nd(e,t){let n=new F(t);if(e!==null){let r=this.dd.indexOf(e);n.es(r,{rs:t})}return n}Td(e,t){return t===void 0&&(t=2),this.Nd(this.Ks(e),t)}kd(e){this.gd&&this.gd(e),this.dd.forEach((e=>e.wu().wr().Pt()))}tf(e,t){let n=e.N().priceScaleId,r=n===void 0?this.ef():n;t.h_(e,r),we(r)||e.vr(e.N())}yd(e){let t=this.yn.layout;return t.background.type===`gradient`?e===0?t.background.topColor:t.background.bottomColor:t.background.color}nf(e){return!e.q_()&&e.kl().length===0&&this.dd.length>1&&(this.dd.splice(this._f(e),1),this.ka(),!0)}};function dn(e){if(e>=1)return 0;let t=0;for(;t<8;t++){if(Math.abs(Math.round(e)-e)<1e-8)return t;e*=10}return t}function fn(e){return!w(e)&&!E(e)}function pn(e){return w(e)}(function(e){e[e.Disabled=0]=`Disabled`,e[e.Continuous=1]=`Continuous`,e[e.OnDataUpdate=2]=`OnDataUpdate`})(on||={}),function(e){e[e.LastBar=0]=`LastBar`,e[e.LastVisible=1]=`LastVisible`}(sn||={}),function(e){e.Solid=`solid`,e.VerticalGradient=`gradient`}(cn||={}),function(e){e[e.Year=0]=`Year`,e[e.Month=1]=`Month`,e[e.DayOfMonth=2]=`DayOfMonth`,e[e.Time=3]=`Time`,e[e.TimeWithSeconds=4]=`TimeWithSeconds`}(ln||={});var mn=e=>e.getUTCFullYear();function hn(e,t,n){return t.replace(/yyyy/g,(e=>I(mn(e),4))(e)).replace(/yy/g,(e=>I(mn(e)%100,2))(e)).replace(/MMMM/g,((e,t)=>new Date(e.getUTCFullYear(),e.getUTCMonth(),1).toLocaleString(t,{month:`long`}))(e,n)).replace(/MMM/g,((e,t)=>new Date(e.getUTCFullYear(),e.getUTCMonth(),1).toLocaleString(t,{month:`short`}))(e,n)).replace(/MM/g,(e=>I((e=>e.getUTCMonth()+1)(e),2))(e)).replace(/dd/g,(e=>I((e=>e.getUTCDate())(e),2))(e))}var gn=class{constructor(e=`yyyy-MM-dd`,t=`default`){this.df=e,this.ff=t}ku(e){return hn(e,this.df,this.ff)}},_n=class{constructor(e){this.pf=e||`%h:%m:%s`}ku(e){return this.pf.replace(`%h`,I(e.getUTCHours(),2)).replace(`%m`,I(e.getUTCMinutes(),2)).replace(`%s`,I(e.getUTCSeconds(),2))}},vn={vf:`yyyy-MM-dd`,mf:`%h:%m:%s`,wf:` `,Mf:`default`},yn=class{constructor(e={}){let t={...vn,...e};this.gf=new gn(t.vf,t.Mf),this.bf=new _n(t.mf),this.Sf=t.wf}ku(e){return`${this.gf.ku(e)}${this.Sf}${this.bf.ku(e)}`}};function bn(e){return 60*e*60*1e3}function xn(e){return 60*e*1e3}var Sn=[{xf:(Cn=1,1e3*Cn),Cf:10},{xf:xn(1),Cf:20},{xf:xn(5),Cf:21},{xf:xn(30),Cf:22},{xf:bn(1),Cf:30},{xf:bn(3),Cf:31},{xf:bn(6),Cf:32},{xf:bn(12),Cf:33}],Cn;function wn(e,t){if(e.getUTCFullYear()!==t.getUTCFullYear())return 70;if(e.getUTCMonth()!==t.getUTCMonth())return 60;if(e.getUTCDate()!==t.getUTCDate())return 50;for(let n=Sn.length-1;n>=0;--n)if(Math.floor(t.getTime()/Sn[n].xf)!==Math.floor(e.getTime()/Sn[n].xf))return Sn[n].Cf;return 0}function Tn(e){let t=e;if(E(e)&&(t=Dn(e)),!fn(t))throw Error(`time must be of type BusinessDay`);let n=new Date(Date.UTC(t.year,t.month-1,t.day,0,0,0,0));return{yf:Math.round(n.getTime()/1e3),Pf:t}}function En(e){if(!pn(e))throw Error(`time must be of type isUTCTimestamp`);return{yf:e}}function Dn(e){let t=new Date(e);if(isNaN(t.getTime()))throw Error(`Invalid date string=${e}, expected format=yyyy-mm-dd`);return{day:t.getUTCDate(),month:t.getUTCMonth()+1,year:t.getUTCFullYear()}}function On(e){E(e.time)&&(e.time=Dn(e.time))}var kn=class{options(){return this.yn}setOptions(e){this.yn=e,this.updateFormatter(e.localization)}preprocessData(e){Array.isArray(e)?function(e){e.forEach(On)}(e):On(e)}createConverterToInternalObj(e){return b(function(e){return e.length===0?null:fn(e[0].time)||E(e[0].time)?Tn:En}(e))}key(e){return typeof e==`object`&&`yf`in e?e.yf:this.key(this.convertHorzItemToInternal(e))}cacheKey(e){let t=e;return t.Pf===void 0?new Date(1e3*t.yf).getTime():new Date(Date.UTC(t.Pf.year,t.Pf.month-1,t.Pf.day)).getTime()}convertHorzItemToInternal(e){return pn(t=e)?En(t):fn(t)?Tn(t):Tn(Dn(t));var t}updateFormatter(e){if(!this.yn)return;let t=e.dateFormat;this.yn.timeScale.timeVisible?this.kf=new yn({vf:t,mf:this.yn.timeScale.secondsVisible?`%h:%m:%s`:`%h:%m`,wf:` `,Mf:e.locale}):this.kf=new gn(t,e.locale)}formatHorzItem(e){let t=e;return this.kf.ku(new Date(1e3*t.yf))}formatTickmark(e,t){let n=function(e,t,n){switch(e){case 0:case 10:return t?n?4:3:2;case 20:case 21:case 22:case 30:case 31:case 32:case 33:return t?3:2;case 50:return 2;case 60:return 1;case 70:return 0}}(e.weight,this.yn.timeScale.timeVisible,this.yn.timeScale.secondsVisible),r=this.yn.timeScale;if(r.tickMarkFormatter!==void 0){let i=r.tickMarkFormatter(e.originalTime,n,t.locale);if(i!==null)return i}return function(e,t,n){let r={};switch(t){case 0:r.year=`numeric`;break;case 1:r.month=`short`;break;case 2:r.day=`numeric`;break;case 3:r.hour12=!1,r.hour=`2-digit`,r.minute=`2-digit`;break;case 4:r.hour12=!1,r.hour=`2-digit`,r.minute=`2-digit`,r.second=`2-digit`}let i=e.Pf===void 0?new Date(1e3*e.yf):new Date(Date.UTC(e.Pf.year,e.Pf.month-1,e.Pf.day));return new Date(i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate(),i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds(),i.getUTCMilliseconds()).toLocaleString(n,r)}(e.time,n,t.locale)}maxTickMarkWeight(e){let t=e.reduce(nn,e[0]).weight;return t>30&&t<50&&(t=30),t}fillWeightsForPoints(e,t){(function(e,t=0){if(e.length===0)return;let n=t===0?null:e[t-1].time.yf,r=n===null?null:new Date(1e3*n),i=0;for(let a=t;a<e.length;++a){let t=e[a],o=new Date(1e3*t.time.yf);r!==null&&(t.timeWeight=wn(o,r)),i+=t.time.yf-(n||t.time.yf),n=t.time.yf,r=o}if(t===0&&e.length>1){let t=Math.ceil(i/(e.length-1)),n=new Date(1e3*(e[0].time.yf-t));e[0].timeWeight=wn(new Date(1e3*e[0].time.yf),n)}})(e,t)}static Tf(e){return C({localization:{dateFormat:`dd MMM 'yy`}},e??{})}},K=typeof window<`u`;function An(){return!!K&&window.navigator.userAgent.toLowerCase().indexOf(`firefox`)>-1}function jn(){return!!K&&/iPhone|iPad|iPod/.test(window.navigator.platform)}function Mn(e,t){switch(e){case`custom`:return t===void 0?`series`:`custom-object`;case`price-line`:return`custom-price-line`;case`marker`:return`series-marker`;case`primitive`:return`primitive`;default:return`series`}}function Nn(e){return e+e%2}function Pn(e){K&&window.chrome!==void 0&&e.addEventListener(`mousedown`,(e=>{if(e.button===1)return e.preventDefault(),!1}))}var Fn=class{constructor(e,t,n){this.Rf=0,this.Df=null,this.If={_t:-1/0,ut:1/0},this.Vf=0,this.Bf=null,this.Ef={_t:-1/0,ut:1/0},this.Af=null,this.Lf=!1,this.zf=null,this.Of=null,this.Nf=!1,this.Ff=!1,this.Wf=!1,this.Hf=null,this.Uf=null,this.$f=null,this.jf=null,this.qf=null,this.Yf=null,this.Kf=null,this.Gf=0,this.Zf=!1,this.Xf=!1,this.Jf=!1,this.Qf=0,this.tp=null,this.ip=!jn(),this.np=e=>{this.sp(e)},this.ep=e=>{if(this.rp(e)){let t=this.hp(e);if(++this.Vf,this.Bf&&this.Vf>1){let{ap:n}=this.lp(J(e),this.Ef);n<30&&!this.Wf&&this.op(t,this.up._p),this.cp()}}else{let t=this.hp(e);if(++this.Rf,this.Df&&this.Rf>1){let{ap:n}=this.lp(J(e),this.If);n<5&&!this.Ff&&this.dp(t,this.up.fp),this.pp()}}},this.vp=e,this.up=t,this.yn=n,this.mp()}m(){this.Hf!==null&&(this.Hf(),this.Hf=null),this.Uf!==null&&(this.Uf(),this.Uf=null),this.jf!==null&&(this.jf(),this.jf=null),this.qf!==null&&(this.qf(),this.qf=null),this.Yf!==null&&(this.Yf(),this.Yf=null),this.$f!==null&&(this.$f(),this.$f=null),this.wp(),this.pp()}Mp(e){this.jf&&this.jf();let t=this.gp.bind(this);if(this.jf=()=>{this.vp.removeEventListener(`mousemove`,t)},this.vp.addEventListener(`mousemove`,t),this.rp(e))return;let n=this.hp(e);this.dp(n,this.up.bp),this.ip=!0}pp(){this.Df!==null&&clearTimeout(this.Df),this.Rf=0,this.Df=null,this.If={_t:-1/0,ut:1/0}}cp(){this.Bf!==null&&clearTimeout(this.Bf),this.Vf=0,this.Bf=null,this.Ef={_t:-1/0,ut:1/0}}gp(e){if(this.Jf||this.Of!==null||this.rp(e))return;let t=this.hp(e);this.dp(t,this.up.Sp),this.ip=!0}xp(e){let t=Rn(e.changedTouches,b(this.tp));if(t===null||(this.Qf=Ln(e),this.Kf!==null)||this.Xf)return;this.Zf=!0;let{Cp:n,yp:r,ap:i}=this.lp(J(t),b(this.Of));if(this.Nf||!(i<5)){if(!this.Nf){let e=.5*n,t=r>=e&&!this.yn.Pp(),i=e>r&&!this.yn.kp();t||i||(this.Xf=!0),this.Nf=!0,this.Wf=!0,this.wp(),this.cp()}if(!this.Xf){let n=this.hp(e,t);this.op(n,this.up.Tp),q(e)}}}Rp(e){if(e.button!==0)return;let{ap:t}=this.lp(J(e),b(this.zf));if(t>=5&&(this.Ff=!0,this.pp()),this.Ff){let t=this.hp(e);this.dp(t,this.up.Dp)}}lp(e,t){let n=Math.abs(t._t-e._t),r=Math.abs(t.ut-e.ut);return{Cp:n,yp:r,ap:n+r}}Ip(e){let t=Rn(e.changedTouches,b(this.tp));if(t===null&&e.touches.length===0&&(t=e.changedTouches[0]),t===null)return;this.tp=null,this.Qf=Ln(e),this.wp(),this.Of=null,this.Yf&&=(this.Yf(),null);let n=this.hp(e,t);if(this.op(n,this.up.Vp),++this.Vf,this.Bf&&this.Vf>1){let{ap:e}=this.lp(J(t),this.Ef);e<30&&!this.Wf&&this.op(n,this.up._p),this.cp()}else this.Wf||(this.op(n,this.up.Bp),this.up.Bp&&q(e));this.Vf===0&&q(e),e.touches.length===0&&this.Lf&&(this.Lf=!1,q(e))}sp(e){if(e.button!==0)return;let t=this.hp(e);if(this.zf=null,this.Jf=!1,this.qf&&=(this.qf(),null),An()&&this.vp.ownerDocument.documentElement.removeEventListener(`mouseleave`,this.np),!this.rp(e))if(this.dp(t,this.up.Ep),++this.Rf,this.Df&&this.Rf>1){let{ap:n}=this.lp(J(e),this.If);n<5&&!this.Ff&&this.dp(t,this.up.fp),this.pp()}else this.Ff||this.dp(t,this.up.Ap)}wp(){this.Af!==null&&(clearTimeout(this.Af),this.Af=null)}Lp(e){if(this.tp!==null)return;let t=e.changedTouches[0];this.tp=t.identifier,this.Qf=Ln(e);let n=this.vp.ownerDocument.documentElement;this.Wf=!1,this.Nf=!1,this.Xf=!1,this.Of=J(t),this.Yf&&=(this.Yf(),null);{let t=this.xp.bind(this),r=this.Ip.bind(this);this.Yf=()=>{n.removeEventListener(`touchmove`,t),n.removeEventListener(`touchend`,r)},n.addEventListener(`touchmove`,t,{passive:!1}),n.addEventListener(`touchend`,r,{passive:!1}),this.wp(),this.Af=setTimeout(this.zp.bind(this,e),240)}let r=this.hp(e,t);this.op(r,this.up.Op),this.Bf||(this.Vf=0,this.Bf=setTimeout(this.cp.bind(this),500),this.Ef=J(t))}Np(e){if(e.button!==0)return;let t=this.vp.ownerDocument.documentElement;An()&&t.addEventListener(`mouseleave`,this.np),this.Ff=!1,this.zf=J(e),this.qf&&=(this.qf(),null);{let e=this.Rp.bind(this),n=this.sp.bind(this);this.qf=()=>{t.removeEventListener(`mousemove`,e),t.removeEventListener(`mouseup`,n)},t.addEventListener(`mousemove`,e),t.addEventListener(`mouseup`,n)}if(this.Jf=!0,this.rp(e))return;let n=this.hp(e);this.dp(n,this.up.Fp),this.Df||(this.Rf=0,this.Df=setTimeout(this.pp.bind(this),500),this.If=J(e))}mp(){this.vp.addEventListener(`mouseenter`,this.Mp.bind(this)),this.vp.addEventListener(`touchcancel`,this.wp.bind(this));{let e=this.vp.ownerDocument,t=e=>{this.up.Wp&&(e.composed&&this.vp.contains(e.composedPath()[0])||e.target&&this.vp.contains(e.target)||this.up.Wp())};this.Uf=()=>{e.removeEventListener(`touchstart`,t)},this.Hf=()=>{e.removeEventListener(`mousedown`,t)},e.addEventListener(`mousedown`,t),e.addEventListener(`touchstart`,t,{passive:!0})}jn()&&(this.$f=()=>{this.vp.removeEventListener(`dblclick`,this.ep)},this.vp.addEventListener(`dblclick`,this.ep)),this.vp.addEventListener(`mouseleave`,this.Hp.bind(this)),this.vp.addEventListener(`touchstart`,this.Lp.bind(this),{passive:!0}),Pn(this.vp),this.vp.addEventListener(`mousedown`,this.Np.bind(this)),this.Up(),this.vp.addEventListener(`touchmove`,(()=>{}),{passive:!1})}Up(){this.up.$p===void 0&&this.up.jp===void 0&&this.up.qp===void 0||(this.vp.addEventListener(`touchstart`,(e=>this.Yp(e.touches)),{passive:!0}),this.vp.addEventListener(`touchmove`,(e=>{if(e.touches.length===2&&this.Kf!==null&&this.up.jp!==void 0){let t=In(e.touches[0],e.touches[1])/this.Gf;this.up.jp(this.Kf,t),q(e)}}),{passive:!1}),this.vp.addEventListener(`touchend`,(e=>{this.Yp(e.touches)})))}Yp(e){e.length===1&&(this.Zf=!1),e.length!==2||this.Zf||this.Lf?this.Kp():this.Gp(e)}Gp(e){let t=this.vp.getBoundingClientRect()||{left:0,top:0};this.Kf={_t:(e[0].clientX-t.left+(e[1].clientX-t.left))/2,ut:(e[0].clientY-t.top+(e[1].clientY-t.top))/2},this.Gf=In(e[0],e[1]),this.up.$p!==void 0&&this.up.$p(),this.wp()}Kp(){this.Kf!==null&&(this.Kf=null,this.up.qp!==void 0&&this.up.qp())}Hp(e){if(this.jf&&this.jf(),this.rp(e)||!this.ip)return;let t=this.hp(e);this.dp(t,this.up.Zp),this.ip=!jn()}zp(e){let t=Rn(e.touches,b(this.tp));if(t===null)return;let n=this.hp(e,t);this.op(n,this.up.Xp),this.Wf=!0,this.Lf=!0}rp(e){return e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents!==void 0?e.sourceCapabilities.firesTouchEvents:Ln(e)<this.Qf+500}op(e,t){t&&t.call(this.up,e)}dp(e,t){t&&t.call(this.up,e)}hp(e,t){let n=t||e,r=this.vp.getBoundingClientRect()||{left:0,top:0};return{clientX:n.clientX,clientY:n.clientY,pageX:n.pageX,pageY:n.pageY,screenX:n.screenX,screenY:n.screenY,localX:n.clientX-r.left,localY:n.clientY-r.top,ctrlKey:e.ctrlKey,altKey:e.altKey,shiftKey:e.shiftKey,metaKey:e.metaKey,Jp:!e.type.startsWith(`mouse`)&&e.type!==`contextmenu`&&e.type!==`click`,Qp:e.type,tv:n.target,xu:e.view,iv:()=>{e.type!==`touchstart`&&q(e)}}}};function In(e,t){let n=e.clientX-t.clientX,r=e.clientY-t.clientY;return Math.sqrt(n*n+r*r)}function q(e){e.cancelable&&e.preventDefault()}function J(e){return{_t:e.pageX,ut:e.pageY}}function Ln(e){return e.timeStamp||performance.now()}function Rn(e,t){for(let n=0;n<e.length;++n)if(e[n].identifier===t)return e[n];return null}var zn=class{constructor(e,t,n){this.nv=null,this.sv=null,this.ev=!0,this.rv=null,this.hv=e,this.av=e.lv()[t],this.ov=e.lv()[n],this._v=document.createElement(`tr`),this._v.style.height=`1px`,this.uv=document.createElement(`td`),this.uv.style.position=`relative`,this.uv.style.padding=`0`,this.uv.style.margin=`0`,this.uv.setAttribute(`colspan`,`3`),this.cv(),this._v.appendChild(this.uv),this.ev=this.hv.N().layout.panes.enableResize,this.ev?this.dv():(this.nv=null,this.sv=null)}m(){this.sv!==null&&this.sv.m()}fv(){return this._v}pv(){return t({width:this.av.pv().width,height:1})}vv(){return t({width:this.av.vv().width,height:1*window.devicePixelRatio})}mv(e,t,n){let r=this.vv();e.fillStyle=this.hv.N().layout.panes.separatorColor,e.fillRect(t,n,r.width,r.height)}Pt(){this.cv(),this.hv.N().layout.panes.enableResize!==this.ev&&(this.ev=this.hv.N().layout.panes.enableResize,this.ev?this.dv():(this.nv!==null&&(this.uv.removeChild(this.nv.wv),this.uv.removeChild(this.nv.Mv),this.nv=null),this.sv!==null&&(this.sv.m(),this.sv=null)))}dv(){let e=document.createElement(`div`),t=e.style;t.position=`fixed`,t.display=`none`,t.zIndex=`49`,t.top=`0`,t.left=`0`,t.width=`100%`,t.height=`100%`,t.cursor=`row-resize`,this.uv.appendChild(e);let n=document.createElement(`div`),r=n.style;r.position=`absolute`,r.zIndex=`50`,r.top=`-4px`,r.height=`9px`,r.width=`100%`,r.backgroundColor=``,r.cursor=`row-resize`,this.uv.appendChild(n);let i={bp:this.gv.bind(this),Zp:this.bv.bind(this),Fp:this.Sv.bind(this),Op:this.Sv.bind(this),Dp:this.xv.bind(this),Tp:this.xv.bind(this),Ep:this.Cv.bind(this),Vp:this.Cv.bind(this)};this.sv=new Fn(n,i,{Pp:()=>!1,kp:()=>!0}),this.nv={Mv:n,wv:e}}cv(){this.uv.style.background=this.hv.N().layout.panes.separatorColor}gv(e){this.nv!==null&&(this.nv.Mv.style.backgroundColor=this.hv.N().layout.panes.separatorHoverColor)}bv(e){this.nv!==null&&this.rv===null&&(this.nv.Mv.style.backgroundColor=``)}Sv(e){if(this.nv===null)return;let t=this.av.yv().F_()+this.ov.yv().F_(),n=t/(this.av.pv().height+this.ov.pv().height),r=30*n;t<=2*r||(this.rv={Pv:e.pageY,kv:this.av.yv().F_(),Tv:t-r,Rv:t,Dv:n,Iv:r},this.nv.wv.style.display=`block`)}xv(e){let t=this.rv;if(t===null)return;let n=(e.pageY-t.Pv)*t.Dv,r=V(t.kv+n,t.Iv,t.Tv);this.av.yv().W_(r),this.ov.yv().W_(t.Rv-r),this.hv.Qt().ka()}Cv(e){this.rv!==null&&this.nv!==null&&(this.rv=null,this.nv.wv.style.display=`none`)}};function Bn(e,t){return e.Vv-t.Vv}function Vn(e,t,n){let r=(e.Vv-t.Vv)/(e.wt-t.wt);return Math.sign(r)*Math.min(Math.abs(r),n)}var Hn=class{constructor(e,t,n,r){this.Bv=null,this.Ev=null,this.Av=null,this.Lv=null,this.zv=null,this.Ov=0,this.Nv=0,this.Fv=e,this.Wv=t,this.Hv=n,this.Ps=r}Uv(e,t){if(this.Bv!==null){if(this.Bv.wt===t)return void(this.Bv.Vv=e);if(Math.abs(this.Bv.Vv-e)<this.Ps)return}this.Lv=this.Av,this.Av=this.Ev,this.Ev=this.Bv,this.Bv={wt:t,Vv:e}}me(e,t){if(this.Bv===null||this.Ev===null||t-this.Bv.wt>50)return;let n=0,r=Vn(this.Bv,this.Ev,this.Wv),i=Bn(this.Bv,this.Ev),a=[r],o=[i];if(n+=i,this.Av!==null){let e=Vn(this.Ev,this.Av,this.Wv);if(Math.sign(e)===Math.sign(r)){let t=Bn(this.Ev,this.Av);if(a.push(e),o.push(t),n+=t,this.Lv!==null){let e=Vn(this.Av,this.Lv,this.Wv);if(Math.sign(e)===Math.sign(r)){let t=Bn(this.Av,this.Lv);a.push(e),o.push(t),n+=t}}}}let s=0;for(let e=0;e<a.length;++e)s+=o[e]/n*a[e];Math.abs(s)<this.Fv||(this.zv={Vv:e,wt:t},this.Nv=s,this.Ov=function(e,t){let n=Math.log(t);return Math.log(1*n/-e)/n}(Math.abs(s),this.Hv))}Gc(e){let t=b(this.zv),n=e-t.wt;return t.Vv+this.Nv*(this.Hv**+n-1)/Math.log(this.Hv)}Kc(e){return this.zv===null||this.$v(e)===this.Ov}$v(e){let t=e-b(this.zv).wt;return Math.min(t,this.Ov)}},Un=class{constructor(e,t){this.jv=void 0,this.qv=void 0,this.Yv=void 0,this.vn=!1,this.Kv=e,this.Gv=t,this.Zv()}Pt(){this.Zv()}Xv(){this.jv&&this.Kv.removeChild(this.jv),this.qv&&this.Kv.removeChild(this.qv),this.jv=void 0,this.qv=void 0}Jv(){return this.vn!==this.Qv()||this.Yv!==this.tm()}tm(){return this.Gv.Qt().Xi().J(this.Gv.N().layout.textColor)>160?`dark`:`light`}Qv(){return this.Gv.N().layout.attributionLogo}im(){let e=new URL(location.href);return e.hostname?`&utm_source=`+e.hostname+e.pathname:``}Zv(){this.Jv()&&(this.Xv(),this.vn=this.Qv(),this.vn&&(this.Yv=this.tm(),this.qv=document.createElement(`style`),this.qv.innerText=`a#tv-attr-logo{--fill:#131722;--stroke:#fff;position:absolute;left:10px;bottom:10px;height:19px;width:35px;margin:0;padding:0;border:0;z-index:3;}a#tv-attr-logo[data-dark]{--fill:#D1D4DC;--stroke:#131722;}`,this.jv=document.createElement(`a`),this.jv.href=`https://www.tradingview.com/?utm_medium=lwc-link&utm_campaign=lwc-chart${this.im()}`,this.jv.title=`Charting by TradingView`,this.jv.id=`tv-attr-logo`,this.jv.target=`_blank`,this.jv.innerHTML=`<svg xmlns="http://www.w3.org/2000/svg" width="35" height="19" fill="none"><g fill-rule="evenodd" clip-path="url(#a)" clip-rule="evenodd"><path fill="var(--stroke)" d="M2 0H0v10h6v9h21.4l.5-1.3 6-15 1-2.7H23.7l-.5 1.3-.2.6a5 5 0 0 0-7-.9V0H2Zm20 17h4l5.2-13 .8-2h-7l-1 2.5-.2.5-1.5 3.8-.3.7V17Zm-.8-10a3 3 0 0 0 .7-2.7A3 3 0 1 0 16.8 7h4.4ZM14 7V2H2v6h6v9h4V7h2Z"/><path fill="var(--fill)" d="M14 2H2v6h6v9h6V2Zm12 15h-7l6-15h7l-6 15Zm-7-9a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"/></g><defs><clipPath id="a"><path fill="var(--stroke)" d="M0 0h35v19H0z"/></clipPath></defs></svg>`,this.jv.toggleAttribute(`data-dark`,this.Yv===`dark`),this.Kv.appendChild(this.qv),this.Kv.appendChild(this.jv)))}};function Y(e,t){let n=b(e.ownerDocument).createElement(`canvas`);e.appendChild(n);let r=o(n,{type:`device-pixel-content-box`,options:{allowResizeObserver:!0},transform:(e,t)=>({width:Math.max(e.width,t.width),height:Math.max(e.height,t.height)})});return r.resizeCanvasElement(t),r}function X(e){e.width=1,e.height=1,e.getContext(`2d`)?.clearRect(0,0,1,1)}function Wn(e,t,n,r){e.qh&&e.qh(t,n,r)}function Gn(e,t,n,r){e.st(t,n,r)}function Kn(e,t,n,r){qn(e(n,r),t,r)}function qn(e,t,n){for(let r of e){let e=r.Tt(n);e!==null&&t(e)}}function Jn(e,t){return n=>function(e){return e.Ft!==void 0}(n)&&(n.Ft()?.pl()??``)===t?n.Qa?.(e)??[]:[]}function Yn(e,t,n,r){if(!e.length)return;let i=0,a=e[0].$t(r,!0),o=t===1?n/2-(e[0].Hi()-a/2):e[0].Hi()-a/2-n/2;o=Math.max(0,o);for(let a=1;a<e.length;a++){let s=e[a],c=e[a-1],l=c.$t(r,!1),u=s.Hi(),d=c.Hi();if(t===1?u>d-l:u<d+l){let r=d-l*t;s.Ui(r);let a=r-t*l/2;if((t===1?a<0:a>n)&&o>0){let r=t===1?-1-a:a-n,s=Math.min(r,o);for(let n=i;n<e.length;n++)e[n].Ui(e[n].Hi()+t*s);o-=s}}else i=a,o=t===1?d-l-u:u-(d+l)}}var Xn=class{constructor(e,n,r,i){this.Ki=null,this.nm=null,this.sm=!1,this.rm=new L(200),this.hm=null,this.am=0,this.lm=!1,this.om=()=>{this.lm||this.yt._m().Qt().mr()},this.um=()=>{this.lm||this.yt._m().Qt().mr()},this.yt=e,this.yn=n,this.Ro=n.layout,this.bd=r,this.dm=i===`left`,this.fm=Jn(`normal`,i),this.pm=Jn(`top`,i),this.vm=Jn(`bottom`,i),this.uv=document.createElement(`div`),this.uv.style.height=`100%`,this.uv.style.overflow=`hidden`,this.uv.style.width=`25px`,this.uv.style.left=`0`,this.uv.style.position=`relative`,this.wm=Y(this.uv,t({width:16,height:16})),this.wm.subscribeSuggestedBitmapSizeChanged(this.om);let a=this.wm.canvasElement;a.style.position=`absolute`,a.style.zIndex=`1`,a.style.left=`0`,a.style.top=`0`,this.Mm=Y(this.uv,t({width:16,height:16})),this.Mm.subscribeSuggestedBitmapSizeChanged(this.um);let o=this.Mm.canvasElement;o.style.position=`absolute`,o.style.zIndex=`2`,o.style.left=`0`,o.style.top=`0`;let s={Fp:this.Sv.bind(this),Op:this.Sv.bind(this),Dp:this.xv.bind(this),Tp:this.xv.bind(this),Wp:this.gm.bind(this),Ep:this.Cv.bind(this),Vp:this.Cv.bind(this),fp:this.bm.bind(this),_p:this.bm.bind(this),bp:this.Sm.bind(this),Zp:this.bv.bind(this)};this.sv=new Fn(this.Mm.canvasElement,s,{Pp:()=>!this.yn.handleScroll.vertTouchDrag,kp:()=>!0})}m(){this.sv.m(),this.Mm.unsubscribeSuggestedBitmapSizeChanged(this.um),X(this.Mm.canvasElement),this.Mm.dispose(),this.wm.unsubscribeSuggestedBitmapSizeChanged(this.om),X(this.wm.canvasElement),this.wm.dispose(),this.Ki!==null&&this.Ki.__().u(this),this.Ki=null}fv(){return this.uv}P(){return this.Ro.fontSize}xm(){let e=this.bd.N();return this.hm!==e.k&&(this.rm.Os(),this.hm=e.k),e}Cm(){if(this.Ki===null)return 0;let e=0,t=this.xm(),n=b(this.wm.canvasElement.getContext(`2d`,{colorSpace:this.yt._m().N().layout.colorSpace}));n.save();let r=this.Ki.zl();n.font=this.ym(),r.length>0&&(e=Math.max(this.rm.Ii(n,r[0].eo),this.rm.Ii(n,r[r.length-1].eo)));let i=this.Pm();for(let t=i.length;t--;){let r=this.rm.Ii(n,i[t].ri());r>e&&(e=r)}let a=this.Ki.Lt();if(a!==null&&this.nm!==null&&(o=this.yn.crosshair).mode!==2&&o.horzLine.visible&&o.horzLine.labelVisible){let t=this.Ki.Tn(1,a),r=this.Ki.Tn(this.nm.height-2,a);e=Math.max(e,this.rm.Ii(n,this.Ki.Ji(Math.floor(Math.min(t,r))+.11111111111111,a)),this.rm.Ii(n,this.Ki.Ji(Math.ceil(Math.max(t,r))-.11111111111111,a)))}var o;n.restore();let s=e||34;return Nn(Math.ceil(t.S+t.C+t.V+t.B+5+s))}km(e){this.nm!==null&&n(this.nm,e)||(this.nm=e,this.lm=!0,this.wm.resizeCanvasElement(e),this.Mm.resizeCanvasElement(e),this.lm=!1,this.uv.style.width=`${e.width}px`,this.uv.style.height=`${e.height}px`)}Tm(){return b(this.nm).width}un(e){this.Ki!==e&&(this.Ki!==null&&this.Ki.__().u(this),this.Ki=e,e.__().i(this.wo.bind(this),this))}Ft(){return this.Ki}Os(){let e=this.yt.yv();this.yt._m().Qt().au(e,b(this.Ft()))}Rm(e){if(this.nm===null)return;let t={colorSpace:this.yt._m().N().layout.colorSpace};if(e!==1){this.Dm(),this.wm.applySuggestedBitmapSize();let e=d(this.wm,t);e!==null&&(e.useBitmapCoordinateSpace((e=>{this.Im(e),this.Vm(e)})),this.yt.Bm(e,this.vm),this.Em(e),this.yt.Bm(e,this.fm),this.Am(e))}this.Mm.applySuggestedBitmapSize();let n=d(this.Mm,t);n!==null&&(n.useBitmapCoordinateSpace((({context:e,bitmapSize:t})=>{e.clearRect(0,0,t.width,t.height)})),this.Lm(n),this.yt.Bm(n,this.pm))}vv(){return this.wm.bitmapSize}mv(e,t,n,r){let i=this.vv();if(i.width>0&&i.height>0&&(e.drawImage(this.wm.canvasElement,t,n),r)){let r=this.Mm.canvasElement;e.drawImage(r,t,n)}}Pt(){this.Ki?.zl()}Sv(e){if(this.Ki===null||this.Ki.Zi()||!this.yn.handleScale.axisPressedMouseMove.price)return;let t=this.yt._m().Qt(),n=this.yt.yv();this.sm=!0,t.Q_(n,this.Ki,e.localY)}xv(e){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;let t=this.yt._m().Qt(),n=this.yt.yv(),r=this.Ki;t.tu(n,r,e.localY)}gm(){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;let e=this.yt._m().Qt(),t=this.yt.yv(),n=this.Ki;this.sm&&(this.sm=!1,e.iu(t,n))}Cv(e){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;let t=this.yt._m().Qt(),n=this.yt.yv();this.sm=!1,t.iu(n,this.Ki)}bm(e){this.yn.handleScale.axisDoubleClickReset.price&&this.Os()}Sm(e){this.Ki!==null&&(!this.yt._m().Qt().N().handleScale.axisPressedMouseMove.price||this.Ki.je()||this.Ki.No()||this.zm(1))}bv(e){this.zm(0)}Pm(){let e=[],t=this.Ki===null?void 0:this.Ki;return(n=>{for(let r=0;r<n.length;++r){let i=n[r].qn(this.yt.yv(),t);for(let t=0;t<i.length;t++)e.push(i[t])}})(this.yt.yv().Dt()),e}Im({context:e,bitmapSize:t}){let{width:n,height:r}=t,i=this.yt.yv().Qt(),a=i.$(),o=i.af();a===o?de(e,0,0,n,r,a):me(e,0,0,n,r,a,o)}Vm({context:e,bitmapSize:t,horizontalPixelRatio:n}){if(this.nm===null||this.Ki===null||!this.Ki.N().borderVisible)return;e.fillStyle=this.Ki.N().borderColor;let r=Math.max(1,Math.floor(this.xm().S*n)),i;i=this.dm?t.width-r:0,e.fillRect(i,0,r,t.height)}Em(e){if(this.nm===null||this.Ki===null)return;let t=this.Ki.zl(),n=this.Ki.N(),r=this.xm(),i=this.dm?this.nm.width-r.C:0;n.borderVisible&&n.ticksVisible&&e.useBitmapCoordinateSpace((({context:e,horizontalPixelRatio:a,verticalPixelRatio:o})=>{e.fillStyle=n.borderColor;let s=Math.max(1,Math.floor(o)),c=Math.floor(.5*o),l=Math.round(r.C*a);e.beginPath();for(let n of t)e.rect(Math.floor(i*a),Math.round(n.Vl*o)-c,l,s);e.fill()})),e.useMediaCoordinateSpace((({context:e})=>{e.font=this.ym(),e.fillStyle=n.textColor??this.Ro.textColor,e.textAlign=this.dm?`right`:`left`,e.textBaseline=`middle`;let a=this.dm?Math.round(i-r.V):Math.round(i+r.C+r.V),o=t.map((t=>this.rm.Di(e,t.eo)));for(let n=t.length;n--;){let r=t[n];e.fillText(r.eo,a,r.Vl+o[n])}}))}Dm(){if(this.nm===null||this.Ki===null)return;let e=this.nm.height/2,t=[],n=this.Ki.Dt().slice(),r=this.yt.yv(),i=this.xm();this.Ki===r.Zs()&&this.yt.yv().Dt().forEach((e=>{r.Gs(e)&&n.push(e)}));let a=this.Ki.kl()[0],o=this.Ki;n.forEach((n=>{let i=n.qn(r,o);i.forEach((e=>{e.$i()&&e.Wi()===null&&(e.Ui(null),t.push(e))})),a===n&&i.length>0&&(e=i[0].Ei())})),this.Ki.N().alignLabels&&this.Om(t,i,e)}Om(e,t,n){if(this.nm===null)return;let r=e.filter((e=>e.Ei()<=n)),i=e.filter((e=>e.Ei()>n));r.sort(((e,t)=>t.Ei()-e.Ei())),r.length&&i.length&&i.push(r[0]),i.sort(((e,t)=>e.Ei()-t.Ei()));for(let n of e){let e=Math.floor(n.$t(t)/2),r=n.Ei();r>-e&&r<e&&n.Ui(e),r>this.nm.height-e&&r<this.nm.height+e&&n.Ui(this.nm.height-e)}Yn(r,1,this.nm.height,t),Yn(i,-1,this.nm.height,t)}Am(e){if(this.nm===null)return;let t=this.Pm(),n=this.xm(),r=this.dm?`right`:`left`;t.forEach((t=>{t.ji()&&t.Tt(b(this.Ki)).st(e,n,this.rm,r)}))}Lm(e){if(this.nm===null||this.Ki===null)return;let t=this.yt._m().Qt(),n=[],r=this.yt.yv(),i=t.Vd().qn(r,this.Ki);i.length&&n.push(i);let a=this.xm(),o=this.dm?`right`:`left`;n.forEach((t=>{t.forEach((t=>{t.Tt(b(this.Ki)).st(e,a,this.rm,o)}))}))}zm(e){this.uv.style.cursor=e===1?`ns-resize`:`default`}wo(){let e=this.Cm();this.am<e&&this.yt._m().Qt().ka(),this.am=e}ym(){return M(this.Ro.fontSize,this.Ro.fontFamily)}};function Zn(e,t){return e.Xa?.(t)??[]}function Qn(e,t){return e.jn?.(t)??[]}function $n(e,t){return e.cn?.(t)??[]}function er(e,t){return e.qa?.(t)??[]}var tr=class e{constructor(e,n){this.nm=t({width:0,height:0}),this.Nm=null,this.Fm=null,this.Wm=null,this.Hm=null,this.Um=!1,this.$m=new S,this.jm=new S,this.qm=0,this.Ym=!1,this.Km=null,this.Gm=!1,this.Zm=null,this.Xm=null,this.lm=!1,this.om=()=>{this.lm||this.Jm===null||this.sn().mr()},this.um=()=>{this.lm||this.Jm===null||this.sn().mr()},this.Gv=e,this.Jm=n,this.Jm.mu().i(this.Qm.bind(this),this,!0),this.tw=document.createElement(`td`),this.tw.style.padding=`0`,this.tw.style.position=`relative`;let r=document.createElement(`div`);r.style.width=`100%`,r.style.height=`100%`,r.style.position=`relative`,r.style.overflow=`hidden`,this.iw=document.createElement(`td`),this.iw.style.padding=`0`,this.nw=document.createElement(`td`),this.nw.style.padding=`0`,this.tw.appendChild(r),this.wm=Y(r,t({width:16,height:16})),this.wm.subscribeSuggestedBitmapSizeChanged(this.om);let i=this.wm.canvasElement;i.style.position=`absolute`,i.style.zIndex=`1`,i.style.left=`0`,i.style.top=`0`,this.Mm=Y(r,t({width:16,height:16})),this.Mm.subscribeSuggestedBitmapSizeChanged(this.um);let a=this.Mm.canvasElement;a.style.position=`absolute`,a.style.zIndex=`2`,a.style.left=`0`,a.style.top=`0`,this._v=document.createElement(`tr`),this._v.appendChild(this.iw),this._v.appendChild(this.tw),this._v.appendChild(this.nw),this.sw(),this.sv=new Fn(this.Mm.canvasElement,this,{Pp:()=>this.Km===null&&!this.Gv.N().handleScroll.vertTouchDrag,kp:()=>this.Km===null&&!this.Gv.N().handleScroll.horzTouchDrag})}m(){this.Nm!==null&&this.Nm.m(),this.Fm!==null&&this.Fm.m(),this.Wm=null,this.Mm.unsubscribeSuggestedBitmapSizeChanged(this.um),X(this.Mm.canvasElement),this.Mm.dispose(),this.wm.unsubscribeSuggestedBitmapSizeChanged(this.om),X(this.wm.canvasElement),this.wm.dispose(),this.Jm!==null&&(this.Jm.mu().u(this),this.Jm.m()),this.sv.m()}yv(){return b(this.Jm)}ew(t){this.Jm!==null&&this.Jm.mu().u(this),this.Jm=t,this.Jm!==null&&this.Jm.mu().i(e.prototype.Qm.bind(this),this,!0),this.sw(),this.Gv.lv().indexOf(this)===this.Gv.lv().length-1?(this.Wm=this.Wm??new Un(this.tw,this.Gv),this.Wm.Pt()):(this.Wm?.Xv(),this.Wm=null)}_m(){return this.Gv}fv(){return this._v}sw(){if(this.Jm!==null&&(this.rw(),this.sn().Jn().length!==0)){if(this.Nm!==null){let e=this.Jm.X_();this.Nm.un(b(e))}if(this.Fm!==null){let e=this.Jm.J_();this.Fm.un(b(e))}}}hw(){this.Nm!==null&&this.Nm.Pt(),this.Fm!==null&&this.Fm.Pt()}F_(){return this.Jm===null?0:this.Jm.F_()}W_(e){this.Jm&&this.Jm.W_(e)}bp(e){if(!this.Jm)return;this.aw();let t=e.localX,n=e.localY;this.lw(t,n,e)}Fp(e){this.aw(),this.ow(),this.lw(e.localX,e.localY,e)}Sp(e){if(!this.Jm)return;this.aw();let t=e.localX,n=e.localY;this.lw(t,n,e)}Ap(e){this.Jm!==null&&(this.aw(),this.lw(e.localX,e.localY,e),this._w(e))}fp(e){this.Jm!==null&&this.uw(this.jm,e)}_p(e){this.fp(e)}Dp(e){this.aw(),this.cw(e),this.lw(e.localX,e.localY,e)}Ep(e){this.Jm!==null&&(this.aw(),this.Ym=!1,this.dw(e))}Bp(e){this.Jm!==null&&this._w(e)}Xp(e){if(this.Ym=!0,this.Km===null){let t={x:e.localX,y:e.localY};this.fw(t,t,e)}}Zp(e){this.Jm!==null&&(this.aw(),this.Jm.Qt().Rd(null),this.pw())}mw(){return this.$m}ww(){return this.jm}$p(){this.qm=1,this.sn().cs()}jp(e,t){if(!this.Gv.N().handleScale.pinch)return;let n=5*(t-this.qm);this.qm=t,this.sn().Wd(e._t,n)}Op(e){this.Ym=!1,this.Gm=this.Km!==null,this.ow();let t=this.sn().Vd();this.Km!==null&&t.It()&&(this.Zm={x:t.ni(),y:t.si()},this.Km={x:e.localX,y:e.localY})}Tp(e){if(this.Jm===null)return;let t=e.localX,n=e.localY;if(this.Km===null)this.cw(e);else{this.Gm=!1;let r=b(this.Zm),i=r.x+(t-this.Km.x),a=r.y+(n-this.Km.y);this.lw(i,a,e)}}Vp(e){this._m().N().trackingMode.exitMode===0&&(this.Gm=!0),this.Mw(),this.dw(e)}Qs(e,t){let n=this.Jm;return n===null?null:Zt(n,e,t)}gw(e,n){b(n===`left`?this.Nm:this.Fm).km(t({width:e,height:this.nm.height}))}pv(){return this.nm}km(e){n(this.nm,e)||(this.nm=e,this.lm=!0,this.wm.resizeCanvasElement(e),this.Mm.resizeCanvasElement(e),this.lm=!1,this.tw.style.width=e.width+`px`,this.tw.style.height=e.height+`px`)}bw(){let e=b(this.Jm);e.G_(e.X_()),e.G_(e.J_());for(let t of e.kl())if(e.Gs(t)){let n=t.Ft();n!==null&&e.G_(n),t.Nn()}for(let t of e.Mu())t.Nn()}vv(){return this.wm.bitmapSize}mv(e,t,n,r){let i=this.vv();if(i.width>0&&i.height>0&&(e.drawImage(this.wm.canvasElement,t,n),r)){let r=this.Mm.canvasElement;e!==null&&e.drawImage(r,t,n)}}Rm(e){if(e===0||this.Jm===null)return;e>1&&this.bw(),this.Nm!==null&&this.Nm.Rm(e),this.Fm!==null&&this.Fm.Rm(e);let t={colorSpace:this.Gv.N().layout.colorSpace};if(e!==1){this.wm.applySuggestedBitmapSize();let e=d(this.wm,t);e!==null&&(e.useBitmapCoordinateSpace((e=>{this.Im(e)})),this.Jm&&(this.Sw(e,Zn),this.xw(e),this.Sw(e,Qn),this.Sw(e,$n)))}this.Mm.applySuggestedBitmapSize();let n=d(this.Mm,t);n!==null&&(n.useBitmapCoordinateSpace((({context:e,bitmapSize:t})=>{e.clearRect(0,0,t.width,t.height)})),this.Cw(n),this.Sw(n,er),this.Sw(n,$n))}yw(){return this.Nm}Pw(){return this.Fm}Bm(e,t){this.Sw(e,t)}Qm(){this.Jm!==null&&this.Jm.mu().u(this),this.Jm=null}_w(e){this.uw(this.$m,e)}uw(e,t){let n=t.localX,r=t.localY;e.v()&&e.p(this.sn().Et().Vc(n),{x:n,y:r},t)}Im({context:e,bitmapSize:t}){let{width:n,height:r}=t,i=this.sn(),a=i.$(),o=i.af();a===o?de(e,0,0,n,r,o):me(e,0,0,n,r,a,o)}xw(e){let t=b(this.Jm),n=t.wu().wr().Tt(t);n!==null&&n.st(e,!1)}Cw(e){this.kw(e,Qn,Gn,this.sn().Vd())}Sw(e,t){let n=b(this.Jm),r=t===Qn?this.Tw():null,i=r===null?null:this.Rw(r,n),a=n.Mu();if(i===null||r===null){let r=n._u();this.Dw(e,t,Wn,a,r),this.Dw(e,t,Gn,a,r);return}let o=n.Dt(),s=e=>e===r?i.Za:void 0;this.Dw(e,t,Wn,a,o,s),this.Dw(e,t,Gn,a,o,s),this.kw(e,t,Wn,r,i.qa),this.kw(e,t,Gn,r,i.qa)}Dw(e,t,n,r,i,a){for(let i of r)this.kw(e,t,n,i);if(a!==void 0)for(let r of i)this.kw(e,t,n,r,a(r));else for(let r of i)this.kw(e,t,n,r)}Tw(){let e=b(this.Jm),t=e.Qt().cu()?.uu;if(!e.Qt().N().hoveredSeriesOnTop||t===void 0)return null;for(let n of e.Dt())if(n===t)return n;return null}Rw(e,t){let n=e.Ga?.(t)??null;return n===null||n.qa.length===0?null:n}kw(e,t,n,r,i){let a=b(this.Jm),o=a.Qt().cu(),s=o!==null&&o.uu===r,c=o!==null&&s&&o.bu!==void 0?o.bu.ie:void 0,l=t=>n(t,e,s,c);i===void 0?Kn(t,l,r,a):qn(i,l,a)}rw(){if(this.Jm===null)return;let e=this.Gv,t=this.Jm.X_().N().visible,n=this.Jm.J_().N().visible;t||this.Nm===null||(this.iw.removeChild(this.Nm.fv()),this.Nm.m(),this.Nm=null),n||this.Fm===null||(this.nw.removeChild(this.Fm.fv()),this.Fm.m(),this.Fm=null);let r=e.Qt().Jd();t&&this.Nm===null&&(this.Nm=new Xn(this,e.N(),r,`left`),this.iw.appendChild(this.Nm.fv())),n&&this.Fm===null&&(this.Fm=new Xn(this,e.N(),r,`right`),this.nw.appendChild(this.Fm.fv()))}Iw(e){return e.Jp&&this.Ym||this.Km!==null}lw(e,t,n){e=Math.max(0,Math.min(e,this.nm.width-1)),t=Math.max(0,Math.min(t,this.nm.height-1)),this.sn().Kd(e,t,n,b(this.Jm))}pw(){this.sn().Zd()}Mw(){this.Gm&&(this.Km=null,this.pw())}fw(e,t,n){this.Km=e,this.Gm=!1,this.lw(t.x,t.y,n);let r=this.sn().Vd();this.Zm={x:r.ni(),y:r.si()}}sn(){return this.Gv.Qt()}dw(e){if(!this.Um)return;let t=this.sn(),n=this.yv();if(t.eu(n,n.kn()),this.Hm=null,this.Um=!1,t.jd(),this.Xm!==null){let e=performance.now(),n=t.Et();this.Xm.me(n.Oc(),e),this.Xm.Kc(e)||t.ps(this.Xm)}}aw(){this.Km=null}ow(){if(this.Jm){if(this.sn().cs(),document.activeElement!==document.body&&document.activeElement!==document.documentElement)b(document.activeElement).blur();else{let e=document.getSelection();e!==null&&e.removeAllRanges()}!this.Jm.kn().Zi()&&this.sn().Et().Zi()}}cw(e){if(this.Jm===null)return;let t=this.sn(),n=t.Et();if(n.Zi())return;let r=this.Gv.N(),i=r.handleScroll,a=r.kineticScroll;if((!i.pressedMouseMove||e.Jp)&&(!i.horzTouchDrag&&!i.vertTouchDrag||!e.Jp))return;let o=this.Jm.kn(),s=performance.now();if(this.Hm!==null||this.Iw(e)||(this.Hm={x:e.clientX,y:e.clientY,yf:s,Vw:e.localX,Bw:e.localY}),this.Hm!==null&&!this.Um&&(this.Hm.x!==e.clientX||this.Hm.y!==e.clientY)){if(e.Jp&&a.touch||!e.Jp&&a.mouse){let e=n.ml();this.Xm=new Hn(.2/e,7/e,.997,15/e),this.Xm.Uv(n.Oc(),this.Hm.yf)}else this.Xm=null;o.Zi()||t.nu(this.Jm,o,e.localY),t.Ud(e.localX),this.Um=!0}this.Um&&(o.Zi()||t.su(this.Jm,o,e.localY),t.$d(e.localX),this.Xm!==null&&this.Xm.Uv(n.Oc(),s))}},nr=class{constructor(e,n,r,i,a){this.xt=!0,this.nm=t({width:0,height:0}),this.om=()=>this.Rm(3),this.dm=e===`left`,this.bd=r.Jd,this.yn=n,this.Ew=i,this.Aw=a,this.uv=document.createElement(`div`),this.uv.style.width=`25px`,this.uv.style.height=`100%`,this.uv.style.overflow=`hidden`,this.wm=Y(this.uv,t({width:16,height:16})),this.wm.subscribeSuggestedBitmapSizeChanged(this.om)}m(){this.wm.unsubscribeSuggestedBitmapSizeChanged(this.om),X(this.wm.canvasElement),this.wm.dispose()}fv(){return this.uv}pv(){return this.nm}km(e){n(this.nm,e)||(this.nm=e,this.wm.resizeCanvasElement(e),this.uv.style.width=`${e.width}px`,this.uv.style.height=`${e.height}px`,this.xt=!0)}Rm(e){if(e<3&&!this.xt||this.nm.width===0||this.nm.height===0)return;this.xt=!1,this.wm.applySuggestedBitmapSize();let t=d(this.wm,{colorSpace:this.yn.layout.colorSpace});t!==null&&t.useBitmapCoordinateSpace((e=>{this.Im(e),this.Vm(e)}))}vv(){return this.wm.bitmapSize}mv(e,t,n){let r=this.vv();r.width>0&&r.height>0&&e.drawImage(this.wm.canvasElement,t,n)}Vm({context:e,bitmapSize:t,horizontalPixelRatio:n,verticalPixelRatio:r}){if(!this.Ew())return;e.fillStyle=this.yn.timeScale.borderColor;let i=Math.floor(this.bd.N().S*n),a=Math.floor(this.bd.N().S*r),o=this.dm?t.width-i:0;e.fillRect(o,0,i,a)}Im({context:e,bitmapSize:t}){de(e,0,0,t.width,t.height,this.Aw())}};function rr(e){return t=>t.tl?.(e)??[]}var ir=rr(`normal`),ar=rr(`top`),or=rr(`bottom`),sr=class{constructor(e,n){this.Lw=null,this.zw=null,this.M=null,this.Ow=!1,this.nm=t({width:0,height:0}),this.Nw=new S,this.rm=new L(5),this.lm=!1,this.om=()=>{this.lm||this.Gv.Qt().mr()},this.um=()=>{this.lm||this.Gv.Qt().mr()},this.Gv=e,this.Pu=n,this.yn=e.N().layout,this.jv=document.createElement(`tr`),this.Fw=document.createElement(`td`),this.Fw.style.padding=`0`,this.Ww=document.createElement(`td`),this.Ww.style.padding=`0`,this.uv=document.createElement(`td`),this.uv.style.height=`25px`,this.uv.style.padding=`0`,this.Hw=document.createElement(`div`),this.Hw.style.width=`100%`,this.Hw.style.height=`100%`,this.Hw.style.position=`relative`,this.Hw.style.overflow=`hidden`,this.uv.appendChild(this.Hw),this.wm=Y(this.Hw,t({width:16,height:16})),this.wm.subscribeSuggestedBitmapSizeChanged(this.om);let r=this.wm.canvasElement;r.style.position=`absolute`,r.style.zIndex=`1`,r.style.left=`0`,r.style.top=`0`,this.Mm=Y(this.Hw,t({width:16,height:16})),this.Mm.subscribeSuggestedBitmapSizeChanged(this.um);let i=this.Mm.canvasElement;i.style.position=`absolute`,i.style.zIndex=`2`,i.style.left=`0`,i.style.top=`0`,this.jv.appendChild(this.Fw),this.jv.appendChild(this.uv),this.jv.appendChild(this.Ww),this.Uw(),this.Gv.Qt().N_().i(this.Uw.bind(this),this),this.sv=new Fn(this.Mm.canvasElement,this,{Pp:()=>!0,kp:()=>!this.Gv.N().handleScroll.horzTouchDrag})}m(){this.sv.m(),this.Lw!==null&&this.Lw.m(),this.zw!==null&&this.zw.m(),this.Mm.unsubscribeSuggestedBitmapSizeChanged(this.um),X(this.Mm.canvasElement),this.Mm.dispose(),this.wm.unsubscribeSuggestedBitmapSizeChanged(this.om),X(this.wm.canvasElement),this.wm.dispose()}fv(){return this.jv}$w(){return this.Lw}jw(){return this.zw}Fp(e){if(this.Ow)return;this.Ow=!0;let t=this.Gv.Qt();!t.Et().Zi()&&this.Gv.N().handleScale.axisPressedMouseMove.time&&t.Fd(e.localX)}Op(e){this.Fp(e)}Wp(){let e=this.Gv.Qt();!e.Et().Zi()&&this.Ow&&(this.Ow=!1,this.Gv.N().handleScale.axisPressedMouseMove.time&&e.Yd())}Dp(e){let t=this.Gv.Qt();!t.Et().Zi()&&this.Gv.N().handleScale.axisPressedMouseMove.time&&t.qd(e.localX)}Tp(e){this.Dp(e)}Ep(){this.Ow=!1;let e=this.Gv.Qt();e.Et().Zi()&&!this.Gv.N().handleScale.axisPressedMouseMove.time||e.Yd()}Vp(){this.Ep()}fp(){this.Gv.N().handleScale.axisDoubleClickReset.time&&this.Gv.Qt().ws()}_p(){this.fp()}bp(){this.Gv.Qt().N().handleScale.axisPressedMouseMove.time&&this.zm(1)}Zp(){this.zm(0)}pv(){return this.nm}qw(){return this.Nw}Yw(e,r,i){n(this.nm,e)||(this.nm=e,this.lm=!0,this.wm.resizeCanvasElement(e),this.Mm.resizeCanvasElement(e),this.lm=!1,this.uv.style.width=`${e.width}px`,this.uv.style.height=`${e.height}px`,this.Nw.p(e)),this.Lw!==null&&this.Lw.km(t({width:r,height:e.height})),this.zw!==null&&this.zw.km(t({width:i,height:e.height}))}Kw(){let e=this.Gw();return Math.ceil(e.S+e.C+e.P+e.A+e.I+e.Zw)}Pt(){this.Gv.Qt().Et().zl()}vv(){return this.wm.bitmapSize}mv(e,t,n,r){let i=this.vv();if(i.width>0&&i.height>0&&(e.drawImage(this.wm.canvasElement,t,n),r)){let r=this.Mm.canvasElement;e.drawImage(r,t,n)}}Rm(e){if(e===0)return;let t={colorSpace:this.yn.colorSpace};if(e!==1){this.wm.applySuggestedBitmapSize();let n=d(this.wm,t);n!==null&&(n.useBitmapCoordinateSpace((e=>{this.Im(e),this.Vm(e),this.Xw(n,or)})),this.Em(n),this.Xw(n,ir)),this.Lw!==null&&this.Lw.Rm(e),this.zw!==null&&this.zw.Rm(e)}this.Mm.applySuggestedBitmapSize();let n=d(this.Mm,t);n!==null&&(n.useBitmapCoordinateSpace((({context:e,bitmapSize:t})=>{e.clearRect(0,0,t.width,t.height)})),this.Jw([...this.Gv.Qt().Jn(),this.Gv.Qt().Vd()],n),this.Xw(n,ar))}Xw(e,t){let n=this.Gv.Qt().Jn();for(let r of n)Kn(t,(t=>Wn(t,e,!1,void 0)),r,void 0);for(let r of n)Kn(t,(t=>Gn(t,e,!1,void 0)),r,void 0)}Im({context:e,bitmapSize:t}){de(e,0,0,t.width,t.height,this.Gv.Qt().af())}Vm({context:e,bitmapSize:t,verticalPixelRatio:n}){if(this.Gv.N().timeScale.borderVisible){e.fillStyle=this.Qw();let r=Math.max(1,Math.floor(this.Gw().S*n));e.fillRect(0,0,t.width,r)}}Em(e){let t=this.Gv.Qt().Et(),n=t.zl();if(!n||n.length===0)return;let r=this.Pu.maxTickMarkWeight(n),i=this.Gw(),a=t.N();a.borderVisible&&a.ticksVisible&&e.useBitmapCoordinateSpace((({context:e,horizontalPixelRatio:t,verticalPixelRatio:r})=>{e.strokeStyle=this.Qw(),e.fillStyle=this.Qw();let a=Math.max(1,Math.floor(t)),o=Math.floor(.5*t);e.beginPath();let s=Math.round(i.C*r);for(let r=n.length;r--;){let i=Math.round(n[r].coord*t);e.rect(i-o,0,a,s)}e.fill()})),e.useMediaCoordinateSpace((({context:e})=>{let t=i.S+i.C+i.A+i.P/2;e.textAlign=`center`,e.textBaseline=`middle`,e.fillStyle=this.H(),e.font=this.ym();for(let i of n)if(i.weight<r){let n=i.needAlignCoordinate?this.tM(e,i.coord,i.label):i.coord;e.fillText(i.label,n,t)}this.Gv.N().timeScale.allowBoldLabels&&(e.font=this.iM());for(let i of n)if(i.weight>=r){let n=i.needAlignCoordinate?this.tM(e,i.coord,i.label):i.coord;e.fillText(i.label,n,t)}}))}tM(e,t,n){let r=this.rm.Ii(e,n),i=r/2,a=Math.floor(t-i)+.5;return a<0?t+=Math.abs(0-a):a+r>this.nm.width&&(t-=Math.abs(this.nm.width-(a+r))),t}Jw(e,t){let n=this.Gw();for(let r of e)for(let e of r.dn())e.Tt().st(t,n)}Qw(){return this.Gv.N().timeScale.borderColor}H(){return this.yn.textColor}F(){return this.yn.fontSize}ym(){return M(this.F(),this.yn.fontFamily)}iM(){return M(this.F(),this.yn.fontFamily,`bold`)}Gw(){this.M===null&&(this.M={S:1,L:NaN,A:NaN,I:NaN,tn:NaN,C:5,P:NaN,k:``,Qi:new L,Zw:0});let e=this.M,t=this.ym();if(e.k!==t){let n=this.F();e.P=n,e.k=t,e.A=3*n/12,e.I=3*n/12,e.tn=9*n/12,e.L=0,e.Zw=4*n/12,e.Qi.Os()}return this.M}zm(e){this.uv.style.cursor=e===1?`ew-resize`:`default`}Uw(){let e=this.Gv.Qt(),t=e.N();t.leftPriceScale.visible||this.Lw===null||(this.Fw.removeChild(this.Lw.fv()),this.Lw.m(),this.Lw=null),t.rightPriceScale.visible||this.zw===null||(this.Ww.removeChild(this.zw.fv()),this.zw.m(),this.zw=null);let n={Jd:this.Gv.Qt().Jd()},r=()=>t.leftPriceScale.borderVisible&&e.Et().N().borderVisible,i=()=>e.af();t.leftPriceScale.visible&&this.Lw===null&&(this.Lw=new nr(`left`,t,n,r,i),this.Fw.appendChild(this.Lw.fv())),t.rightPriceScale.visible&&this.zw===null&&(this.zw=new nr(`right`,t,n,r,i),this.Ww.appendChild(this.zw.fv()))}},cr=!!K&&!!navigator.userAgentData&&navigator.userAgentData.brands.some((e=>e.brand.includes(`Chromium`)))&&!!K&&(navigator?.userAgentData?.platform?navigator.userAgentData.platform===`Windows`:navigator.userAgent.toLowerCase().indexOf(`win`)>=0),lr=class{constructor(e,t,n){var r;this.nM=[],this.sM=[],this.eM=0,this.oo=0,this.k_=0,this.rM=0,this.hM=0,this.aM=null,this.lM=!1,this.$m=new S,this.jm=new S,this.wd=new S,this.oM=null,this._M=null,this.Kv=e,this.yn=t,this.Pu=n,this.jv=document.createElement(`div`),this.jv.classList.add(`tv-lightweight-charts`),this.jv.style.overflow=`hidden`,this.jv.style.direction=`ltr`,this.jv.style.width=`100%`,this.jv.style.height=`100%`,(r=this.jv).style.userSelect=`none`,r.style.webkitUserSelect=`none`,r.style.msUserSelect=`none`,r.style.MozUserSelect=`none`,r.style.webkitTapHighlightColor=`transparent`,this.uM=document.createElement(`table`),this.uM.setAttribute(`cellspacing`,`0`),this.jv.appendChild(this.uM),this.cM=this.dM.bind(this),ur(this.yn)&&this.fM(!0),this.sn=new un(this.gd.bind(this),this.yn,n),this.Qt().Bd().i(this.pM.bind(this),this),this.vM=new sr(this,this.Pu),this.uM.appendChild(this.vM.fv());let i=t.autoSize&&this.mM(),a=this.yn.width,o=this.yn.height;if(i||a===0||o===0){let t=e.getBoundingClientRect();a||=t.width,o||=t.height}this.wM(a,o),this.MM(),e.appendChild(this.jv),this.gM(),this.sn.Et().Jc().i(this.sn.ka.bind(this.sn),this),this.sn.N_().i(this.sn.ka.bind(this.sn),this)}Qt(){return this.sn}N(){return this.yn}lv(){return this.nM}bM(){return this.vM}m(){this.fM(!1),this.eM!==0&&window.cancelAnimationFrame(this.eM),this.sn.Bd().u(this),this.sn.Et().Jc().u(this),this.sn.N_().u(this),this.sn.m();for(let e of this.nM)this.uM.removeChild(e.fv()),e.mw().u(this),e.ww().u(this),e.m();this.nM=[];for(let e of this.sM)this.SM(e);this.sM=[],b(this.vM).m(),this.jv.parentElement!==null&&this.jv.parentElement.removeChild(this.jv),this.wd.m(),this.$m.m(),this.jm.m(),this.xM()}wM(e,n,r=!1){if(this.oo===n&&this.k_===e)return;let i=function(e){let n=Math.floor(e.width),r=Math.floor(e.height);return t({width:n-n%2,height:r-r%2})}(t({width:e,height:n}));this.oo=i.height,this.k_=i.width;let a=this.oo+`px`,o=this.k_+`px`;if(this.CM()||(b(this.jv).style.height=a,b(this.jv).style.width=o),this.uM.style.height=a,this.uM.style.width=o,r){this.eM!==0&&(window.cancelAnimationFrame(this.eM),this.eM=0),this.lM=!1;let e=F.ys();this.aM!==null&&(e.Ss(this.aM),this.aM=null),this.yM(e,performance.now())}else this.sn.ka()}Rm(e){e===void 0&&(e=F.ys());for(let t=0;t<this.nM.length;t++)this.nM[t].Rm(e._s(t).rs);this.yn.timeScale.visible&&this.vM.Rm(e.ls())}vr(e){let t=ur(this.yn);this.sn.vr(e);let n=ur(this.yn);n!==t&&this.fM(n),e.layout?.panes&&this.PM(),this.gM(),this.kM(e)}mw(){return this.$m}ww(){return this.jm}Bd(){return this.wd}TM(e=!1){this.aM!==null&&(this.yM(this.aM,performance.now()),this.aM=null);let t=this.RM(null),n=document.createElement(`canvas`);n.width=t.width,n.height=t.height;let r=b(n.getContext(`2d`));return this.RM(r,e),n}DM(e){return e===`left`&&!this.IM()||e===`right`&&!this.VM()||this.nM.length===0?0:b(e===`left`?this.nM[0].yw():this.nM[0].Pw()).Tm()}CM(){return this.yn.autoSize&&this.oM!==null}Mv(){return this.jv}BM(e){this._M=e,this._M?this.Mv().style.setProperty(`cursor`,e):this.Mv().style.removeProperty(`cursor`)}EM(){return this._M}AM(e){return y(this.nM[e]).pv()}PM(){this.sM.forEach((e=>{e.Pt()}))}kM(e){(e.autoSize!==void 0||!this.oM||e.width===void 0&&e.height===void 0)&&(e.autoSize&&!this.oM&&this.mM(),!1===e.autoSize&&this.oM!==null&&this.xM(),e.autoSize||e.width===void 0&&e.height===void 0||this.wM(e.width||this.k_,e.height||this.oo))}RM(e,n){let r=0,i=0,a=this.nM[0],o=(t,r)=>{let i=0;for(let a=0;a<this.nM.length;a++){let o=this.nM[a],s=b(t===`left`?o.yw():o.Pw()),c=s.vv();if(e!==null&&s.mv(e,r,i,n),i+=c.height,a<this.nM.length-1){let t=this.sM[a],n=t.vv();e!==null&&t.mv(e,r,i),i+=n.height}}};this.IM()&&(o(`left`,0),r+=b(a.yw()).vv().width);for(let t=0;t<this.nM.length;t++){let a=this.nM[t],o=a.vv();if(e!==null&&a.mv(e,r,i,n),i+=o.height,t<this.nM.length-1){let n=this.sM[t],a=n.vv();e!==null&&n.mv(e,r,i),i+=a.height}}r+=a.vv().width,this.VM()&&(o(`right`,r),r+=b(a.Pw()).vv().width);let s=(t,n,r)=>{b(t===`left`?this.vM.$w():this.vM.jw()).mv(b(e),n,r)};if(this.yn.timeScale.visible){let t=this.vM.vv();if(e!==null){let r=0;this.IM()&&(s(`left`,r,i),r=b(a.yw()).vv().width),this.vM.mv(e,r,i,n),r+=t.width,this.VM()&&s(`right`,r,i)}i+=t.height}return t({width:r,height:i})}LM(){let e=0,n=0,r=0;for(let t of this.nM)this.IM()&&(n=Math.max(n,b(t.yw()).Cm(),this.yn.leftPriceScale.minimumWidth)),this.VM()&&(r=Math.max(r,b(t.Pw()).Cm(),this.yn.rightPriceScale.minimumWidth)),e+=t.F_();n=Nn(n),r=Nn(r);let i=this.k_,a=this.oo,o=Math.max(i-n-r,0),s=1*this.sM.length,c=this.yn.timeScale.visible,l=c?Math.max(this.vM.Kw(),this.yn.timeScale.minimumHeight):0;var u;l=(u=l)+u%2;let d=s+l,f=a<d?0:a-d,p=f/e,m=0,h=window.devicePixelRatio||1;for(let e=0;e<this.nM.length;++e){let i=this.nM[e];i.ew(this.sn.Gn()[e]);let a=0,s=0;s=e===this.nM.length-1?Math.ceil((f-m)*h)/h:Math.round(i.F_()*p*h)/h,a=Math.max(s,2),m+=a,i.km(t({width:o,height:a})),this.IM()&&i.gw(n,`left`),this.VM()&&i.gw(r,`right`),i.yv()&&this.sn.Ed(i.yv(),a)}this.vM.Yw(t({width:c?o:0,height:l}),c?n:0,c?r:0),this.sn.H_(o),this.rM!==n&&(this.rM=n),this.hM!==r&&(this.hM=r)}fM(e){e?this.jv.addEventListener(`wheel`,this.cM,{passive:!1}):this.jv.removeEventListener(`wheel`,this.cM)}zM(e){switch(e.deltaMode){case e.DOM_DELTA_PAGE:return 120;case e.DOM_DELTA_LINE:return 32}return cr?1/window.devicePixelRatio:1}dM(e){if(!(e.deltaX!==0&&this.yn.handleScroll.mouseWheel||e.deltaY!==0&&this.yn.handleScale.mouseWheel))return;let t=this.zM(e),n=t*e.deltaX/100,r=-t*e.deltaY/100;if(e.cancelable&&e.preventDefault(),r!==0&&this.yn.handleScale.mouseWheel){let t=Math.sign(r)*Math.min(1,Math.abs(r)),n=e.clientX-this.jv.getBoundingClientRect().left;this.Qt().Wd(n,t)}n!==0&&this.yn.handleScroll.mouseWheel&&this.Qt().Hd(-80*n)}yM(e,t){let n=e.ls();n===3&&this.OM(),n!==3&&n!==2||(this.NM(e),this.FM(e,t),this.vM.Pt(),this.nM.forEach((e=>{e.hw()})),this.aM?.ls()===3&&(this.aM.Ss(e),this.OM(),this.NM(this.aM),this.FM(this.aM,t),e=this.aM,this.aM=null)),this.Rm(e)}FM(e,t){for(let n of e.bs())this.xs(n,t)}NM(e){let t=this.sn.Gn();for(let n=0;n<t.length;n++)e._s(n).hs&&t[n].lu()}xs(e,t){let n=this.sn.Et();switch(e.ds){case 0:n.td();break;case 1:n.nd(e.Wt);break;case 2:n.Ms(e.Wt);break;case 3:n.gs(e.Wt);break;case 4:n.Wc();break;case 5:e.Wt.Kc(t)||n.gs(e.Wt.Gc(t))}}gd(e){this.aM===null?this.aM=e:this.aM.Ss(e),this.lM||(this.lM=!0,this.eM=window.requestAnimationFrame((e=>{if(this.lM=!1,this.eM=0,this.aM!==null){let t=this.aM;this.aM=null,this.yM(t,e);for(let n of t.bs())if(n.ds===5&&!n.Wt.Kc(e)){this.Qt().ps(n.Wt);break}}})))}OM(){this.MM()}SM(e){this.uM.removeChild(e.fv()),e.m()}MM(){let e=this.sn.Gn(),t=e.length,n=this.nM.length;for(let e=t;e<n;e++){let e=y(this.nM.pop());this.uM.removeChild(e.fv()),e.mw().u(this),e.ww().u(this),e.m();let t=this.sM.pop();t!==void 0&&this.SM(t)}for(let r=n;r<t;r++){let t=new tr(this,e[r]);if(t.mw().i(this.WM.bind(this,t),this),t.ww().i(this.HM.bind(this,t),this),this.nM.push(t),r>0){let e=new zn(this,r-1,r);this.sM.push(e),this.uM.insertBefore(e.fv(),this.vM.fv())}this.uM.insertBefore(t.fv(),this.vM.fv())}for(let n=0;n<t;n++){let t=e[n],r=this.nM[n];r.yv()===t?r.sw():r.ew(t)}this.gM(),this.LM()}UM(e,t,n,r){let i=new Map;e!==null&&this.sn.Jn().forEach((t=>{let n=t.Un().Hn(e);n!==null&&i.set(t,n)}));let a;if(e!==null){let t=this.sn.Et().en(e)?.originalTime;t!==void 0&&(a=t)}let o=this.Qt().cu(),s=this.$M(r),c=function(e,t){let n=e!==null&&e.uu instanceof bt?e.uu:void 0,r=e?.bu?.te,i=t!==void 0&&t!==-1?t:void 0;return e===null||e.ee===void 0?{jM:n,qM:r}:{jM:n,qM:r,YM:{ds:e.ee,KM:(a=e.uu,o=e.ee,a instanceof Wt?`pane-primitive`:o===`marker`||o===`primitive`?`series-primitive`:`series`),GM:Mn(e.ee,r),Y_:n,ZM:r,XM:i}};var a,o}(o,s);return{Qr:a,$n:e??void 0,JM:t??void 0,XM:s===-1?void 0:s,jM:c.jM,QM:i,qM:c.qM,YM:c.YM,tg:n??void 0}}$M(e){let t=-1;if(e)t=this.nM.indexOf(e);else{let e=this.Qt().Vd().Kn();e!==null&&(t=this.Qt().Gn().indexOf(e))}return t}WM(e,t,n,r){this.$m.p((()=>this.UM(t,n,r,e)))}HM(e,t,n,r){this.jm.p((()=>this.UM(t,n,r,e)))}pM(e,t,n){this.BM(this.Qt().cu()?.gu??null),this.wd.p((()=>this.UM(e,t,n)))}gM(){let e=this.yn.timeScale.visible?``:`none`;this.vM.fv().style.display=e}IM(){return this.nM[0].yv().X_().N().visible}VM(){return this.nM[0].yv().J_().N().visible}mM(){return`ResizeObserver`in window&&(this.oM=new ResizeObserver((e=>{let t=e[e.length-1];if(!t)return;let n=t.contentRect.width,r=t.contentRect.height;this.wM(n,r,!0)})),this.oM.observe(this.Kv,{box:`border-box`}),!0)}xM(){this.oM!==null&&this.oM.disconnect(),this.oM=null}};function ur(e){return!!(e.handleScroll.mouseWheel||e.handleScale.mouseWheel)}function dr(e){return e.open===void 0&&e.value===void 0}function fr(e){return function(e){return e.open!==void 0}(e)||function(e){return e.value!==void 0}(e)}function pr(e,t,n,r){let i=n.value,a={$n:t,wt:e,Wt:[i,i,i,i],Qr:r};return n.color!==void 0&&(a.R=n.color),a}function mr(e,t,n,r){let i=n.value,a={$n:t,wt:e,Wt:[i,i,i,i],Qr:r};return n.lineColor!==void 0&&(a.vt=n.lineColor),n.topColor!==void 0&&(a.ah=n.topColor),n.bottomColor!==void 0&&(a.oh=n.bottomColor),a}function hr(e,t,n,r){let i=n.value,a={$n:t,wt:e,Wt:[i,i,i,i],Qr:r};return n.topLineColor!==void 0&&(a._h=n.topLineColor),n.bottomLineColor!==void 0&&(a.uh=n.bottomLineColor),n.topFillColor1!==void 0&&(a.dh=n.topFillColor1),n.topFillColor2!==void 0&&(a.fh=n.topFillColor2),n.bottomFillColor1!==void 0&&(a.ph=n.bottomFillColor1),n.bottomFillColor2!==void 0&&(a.mh=n.bottomFillColor2),a}function gr(e,t,n,r){let i={$n:t,wt:e,Wt:[n.open,n.high,n.low,n.close],Qr:r};return n.color!==void 0&&(i.R=n.color),i}function _r(e,t,n,r){let i={$n:t,wt:e,Wt:[n.open,n.high,n.low,n.close],Qr:r};return n.color!==void 0&&(i.R=n.color),n.borderColor!==void 0&&(i.Ht=n.borderColor),n.wickColor!==void 0&&(i.hh=n.wickColor),i}function vr(e,t,n,r,i){let a=y(i)(n),o=Math.max(...a),s=Math.min(...a),c=a[a.length-1],l=[c,o,s,c],{time:u,color:d,...f}=n;return{$n:t,wt:e,Wt:l,Qr:r,ue:f,R:d}}function Z(e){return e.Wt!==void 0}function yr(e,t){return t.customValues!==void 0&&(e.ig=t.customValues),e}function Q(e){return(t,n,r,i,a,o)=>function(e,t){return t?t(e):dr(e)}(r,o)?yr({wt:t,$n:n,Qr:i},r):yr(e(t,n,r,i,a),r)}function br(e){return{Candlestick:Q(_r),Bar:Q(gr),Area:Q(mr),Baseline:Q(hr),Histogram:Q(pr),Line:Q(pr),Custom:Q(vr)}[e]}function xr(e){return{$n:0,ng:new Map,Oa:e}}function Sr(e,t){if(e!==void 0&&e.length!==0)return{sg:t.key(e[0].wt),eg:t.key(e[e.length-1].wt)}}function Cr(e){let t;return e.forEach((e=>{t===void 0&&(t=e.Qr)})),y(t)}var wr=class{constructor(e){this.rg=new Map,this.hg=new Map,this.ag=new Map,this.lg=[],this.Pu=e}m(){this.rg.clear(),this.hg.clear(),this.ag.clear(),this.lg=[]}og(e,t){let n=this.rg.size!==0,r=!1,i=this.hg.get(e);if(i!==void 0)if(this.hg.size===1)n=!1,r=!0,this.rg.clear();else for(let t of this.lg)t.pointData.ng.delete(e)&&(r=!0);let a=[];if(t.length!==0){let n=t.map((e=>e.time)),i=this.Pu.createConverterToInternalObj(t),o=br(e.bh()),s=e.ul(),c=e.cl();a=t.map(((t,a)=>{let l=i(t.time),u=this.Pu.key(l),d=this.rg.get(u);d===void 0&&(d=xr(l),this.rg.set(u,d),r=!0);let f=o(l,d.$n,t,n[a],s,c);return d.ng.set(e,f),f}))}n&&this._g(),this.ug(e,a);let o=-1;if(r){let e=[];this.rg.forEach((t=>{e.push({timeWeight:0,time:t.Oa,pointData:t,originalTime:Cr(t.ng)})})),e.sort(((e,t)=>this.Pu.key(e.time)-this.Pu.key(t.time))),o=this.cg(e)}return this.dg(e,o,function(e,t,n){let r=Sr(e,n),i=Sr(t,n);if(r!==void 0&&i!==void 0)return{fg:!1,Va:r.eg>=i.eg&&r.sg>=i.sg}}(this.hg.get(e),i,this.Pu))}if(e){return this.og(e,[])}pg(e,t,n){if(n&&e.Fa())throw Error(`Historical updates are not supported when conflation is enabled. Conflation requires data to be processed in order.`);let r=t;(function(e){e.Qr===void 0&&(e.Qr=e.time)})(r),this.Pu.preprocessData(t);let i=this.Pu.createConverterToInternalObj([t])(t.time),a=this.ag.get(e);if(!n&&a!==void 0&&this.Pu.key(i)<this.Pu.key(a))throw Error(`Cannot update oldest data, last time=${a}, new time=${i}`);let o=this.rg.get(this.Pu.key(i));if(n&&o===void 0)throw Error(`Cannot update non-existing data point when historicalUpdate is true`);let s=o===void 0;o===void 0&&(o=xr(i),this.rg.set(this.Pu.key(i),o));let c=br(e.bh()),l=e.ul(),u=e.cl(),d=c(i,o.$n,t,r.Qr,l,u),f=!n&&!s&&a!==void 0&&this.Pu.key(i)===this.Pu.key(a);o.ng.set(e,d),n?this.vg(e,d,o.$n):(f&&e.Fa()&&Z(d)&&e.Rr(d),this.mg(e,d));let p={Va:Z(d),fg:n};if(!s)return this.dg(e,-1,p);let m={timeWeight:0,time:o.Oa,pointData:o,originalTime:Cr(o.ng)},h=z(this.lg,this.Pu.key(m.time),((e,t)=>this.Pu.key(e.time)<t));this.lg.splice(h,0,m);for(let e=h;e<this.lg.length;++e)Tr(this.lg[e].pointData,e);return this.Pu.fillWeightsForPoints(this.lg,h),this.dg(e,h,p)}wg(e,t){let n=this.hg.get(e);if(n===void 0||t<=0)return[[],this.Mg()];t=Math.min(t,n.length);let r=n.splice(-t).reverse();n.length===0?this.ag.delete(e):this.ag.set(e,n[n.length-1].wt);for(let t of r){let n=this.rg.get(this.Pu.key(t.wt));if(n&&(n.ng.delete(e),n.ng.size===0)){this.rg.delete(this.Pu.key(n.Oa)),this.lg.splice(n.$n,1);for(let e=n.$n;e<this.lg.length;++e)Tr(this.lg[e].pointData,e)}}return[r,this.dg(e,this.lg.length-1,{fg:!1,Va:!1})]}mg(e,t){let n=this.hg.get(e);n===void 0&&(n=[],this.hg.set(e,n));let r=n.length===0?null:n[n.length-1];r===null||this.Pu.key(t.wt)>this.Pu.key(r.wt)?Z(t)&&n.push(t):Z(t)?n[n.length-1]=t:n.splice(-1,1),this.ag.set(e,t.wt)}vg(e,t,n){let r=this.hg.get(e);if(r===void 0)return;let i=z(r,n,((e,t)=>e.$n<t));Z(t)?r[i]=t:r.splice(i,1)}ug(e,t){t.length===0?(this.hg.delete(e),this.ag.delete(e)):(this.hg.set(e,t.filter(Z)),this.ag.set(e,t[t.length-1].wt))}_g(){for(let e of this.lg)e.pointData.ng.size===0&&this.rg.delete(this.Pu.key(e.time))}cg(e){let t=-1;for(let n=0;n<this.lg.length&&n<e.length;++n){let r=this.lg[n],i=e[n];if(this.Pu.key(r.time)!==this.Pu.key(i.time)){t=n;break}i.timeWeight=r.timeWeight,Tr(i.pointData,n)}if(t===-1&&this.lg.length!==e.length&&(t=Math.min(this.lg.length,e.length)),t===-1)return-1;for(let n=t;n<e.length;++n)Tr(e[n].pointData,n);return this.Pu.fillWeightsForPoints(e,t),this.lg=e,t}gg(){if(this.hg.size===0)return null;let e=0;return this.hg.forEach((t=>{t.length!==0&&(e=Math.max(e,t[t.length-1].$n))})),e}dg(e,t,n){let r=this.Mg();if(t!==-1)this.hg.forEach(((t,i)=>{r.Y_.set(i,{ue:t,bg:i===e?n:void 0})})),this.hg.has(e)||r.Y_.set(e,{ue:[],bg:n}),r.Et.Sg=this.lg,r.Et.xg=t;else{let t=this.hg.get(e);r.Y_.set(e,{ue:t||[],bg:n})}return r}Mg(){return{Y_:new Map,Et:{Dc:this.gg()}}}};function Tr(e,t){e.$n=t,e.ng.forEach((e=>{e.$n=t}))}function Er(e,t){return e._t<t}function Dr(e,t){return t<e._t}function Or(e,t,n,r){return z(e,t,Er,n,r)}function kr(e,t,n,r){return $e(e,t,Dr,n,r)}function Ar(e,t,n){return{ne:e,se:t,ee:n}}function jr(e,t,n,r){return e>=t-r&&e<=n+r}function Mr(e,t,n,r,i,a){let o=i-n,s=a-r;if(o===0&&s===0)return Math.hypot(e-n,t-r);let c=((e-n)*o+(t-r)*s)/(o*o+s*s),l=Math.max(0,Math.min(1,c)),u=n+o*l,d=r+s*l;return Math.hypot(e-u,t-d)}var Nr=[0,0];function Pr(e,t,n){return t===void 0||t.wt!==e.wt-1?e._t-n/2:(t._t+e._t)/2}function Fr(e,t,n){return t===void 0||t.wt!==e.wt+1?e._t+n/2:(e._t+t._t)/2}function Ir(e,t,n,r,i,a,o){if(t===null||t.from>=t.to||e.length===0)return null;let s=i/2+a,c=Or(e,n-s,t.from,t.to),l=kr(e,n+s,c,t.to);if(c>=l)return null;let u=1/0;for(let s=c;s<l;s++){let c=e[s],l=s>t.from?e[s-1]:void 0,d=s<t.to-1?e[s+1]:void 0,f=Pr(c,l,i)-a,p=Fr(c,d,i)+a;if(n<f||n>p)continue;o(c,Nr);let m=Nr[0],h=Nr[1],g=Math.min(m,h),_=Math.max(m,h),v=g-a,y=_+a;if(r>=g&&r<=_)u=Math.min(u,0);else if(r>=v&&r<=y){let e=Math.min(Math.abs(r-g),Math.abs(_-r));u=Math.min(u,e)}}return Number.isFinite(u)?Ar(u,0,`series-range`):null}function Lr(e,t){return e.wt<t}function Rr(e,t){return t<e.wt}function zr(e,t,n){let r=t.Na(),i=t.bi(),a=z(e,r,Lr),o=$e(e,i,Rr);if(!n)return{from:a,to:o};let s=a,c=o;return a>0&&a<e.length&&e[a].wt>=r&&(s=a-1),o>0&&o<e.length&&e[o-1].wt<=i&&(c=o+1),{from:s,to:c}}var Br=class{constructor(e,t,n){this.Cg=!0,this.yg=!0,this.Pg=!0,this.kg=[],this.Tg=null,this.Rg=-1,this.ae=e,this.le=t,this.Dg=n}Pt(e){this.Cg=!0,e===`data`&&(this.yg=!0),e===`options`&&(this.Pg=!0)}Tt(){return this.ae.It()?(this.Ig(),this.Tg===null?null:this.Vg):null}Qs(e,t){return this.ae.It()?(this.Ig(),this.Tg===null?null:this.Bg(e,t)):null}Bg(e,t){return null}Eg(){this.kg=this.kg.map((e=>({...e,...this.ae.Sa().Sh(e.wt)})))}Ag(){this.Tg=null}Ig(){let e=this.le.Et(),t=e.N().enableConflation?e.sd():0;t!==this.Rg&&(this.yg=!0,this.Rg=t),this.yg&&=(this.Lg(),!1),this.Pg&&=(this.Eg(),!1),this.Cg&&=(this.zg(),!1)}zg(){let e=this.ae.Ft(),t=this.le.Et();if(this.Ag(),t.Zi()||e.Zi())return;let n=t.Ee();if(n===null||this.ae.Un().Th()===0)return;let r=this.ae.Lt();r!==null&&(this.Tg=zr(this.kg,n,this.Dg),this.Og(e,t,r.Wt),this.Ng())}},Vr=class{constructor(e,t){this.Fg=e,this.Ki=t}st(e,t,n){this.Fg.draw(e,this.Ki,t,n)}};function Hr(e){switch(e){case`point`:return 2;case`range`:return 0;default:return 1}}var Ur=class extends Br{constructor(e,t,n){super(e,t,!1),this.Yh=n,this.Fg=this.Yh.renderer(),this.Vg=new Vr(this.Fg,(e=>this.Wg(e)))}get ga(){return this.Yh.conflationReducer}Ha(e){return this.Yh.priceValueBuilder(e)}dl(e){return this.Yh.isWhitespace(e)}Bg(e,t){let n=this.Fg.hitTest?.(e,t,(e=>this.Wg(e)));if(n!=null)return{ne:(r=n).distance,se:Hr(r.type),ee:`custom`,gu:r.cursorStyle,te:r.objectId,ie:r.hitTestData};var r;let i=Ir(this.kg,this.Tg,e,t,this.le.Et().ml(),this.ae.N().hitTestTolerance,((e,t)=>{let n=e.Hg,r=NaN,i=NaN;if(n!==void 0&&!this.Yh.isWhitespace(n))for(let e of this.Yh.priceValueBuilder(n)){let t=this.Wg(e);t!==null&&(r=Number.isNaN(r)?t:Math.min(r,t),i=Number.isNaN(i)?t:Math.max(i,t))}t[0]=r,t[1]=i}));return i===null?null:{...i,ee:`custom`}}Lg(){let e=this.ae.Sa();this.kg=this.ae.Ua().Bh().map((t=>({wt:t.$n,_t:NaN,...e.Sh(t.$n),Hg:t.ue})))}Og(e,t){t.Ic(this.kg,A(this.Tg))}Ng(){this.Yh.update({bars:this.kg.map(Wr),barSpacing:this.le.Et().ml(),visibleRange:this.Tg,conflationFactor:this.le.Et().sd()},this.ae.N())}Wg(e){let t=this.ae.Lt();return t===null?null:this.ae.Ft().Nt(e,t.Wt)}};function Wr(e){return{x:e._t,time:e.wt,originalData:e.Hg,barColor:e.sh}}var Gr={color:`#2196f3`},Kr=(e,t,n)=>new Ur(e,t,x(n));function qr(e){let t={value:e.Wt[3],time:e.Qr};return e.ig!==void 0&&(t.customValues=e.ig),t}function Jr(e){let t=qr(e);return e.R!==void 0&&(t.color=e.R),t}function Yr(e){let t=qr(e);return e.vt!==void 0&&(t.lineColor=e.vt),e.ah!==void 0&&(t.topColor=e.ah),e.oh!==void 0&&(t.bottomColor=e.oh),t}function Xr(e){let t=qr(e);return e._h!==void 0&&(t.topLineColor=e._h),e.uh!==void 0&&(t.bottomLineColor=e.uh),e.dh!==void 0&&(t.topFillColor1=e.dh),e.fh!==void 0&&(t.topFillColor2=e.fh),e.ph!==void 0&&(t.bottomFillColor1=e.ph),e.mh!==void 0&&(t.bottomFillColor2=e.mh),t}function Zr(e){let t={open:e.Wt[0],high:e.Wt[1],low:e.Wt[2],close:e.Wt[3],time:e.Qr};return e.ig!==void 0&&(t.customValues=e.ig),t}function Qr(e){let t=Zr(e);return e.R!==void 0&&(t.color=e.R),t}function $r(e){let t=Zr(e),{R:n,Ht:r,hh:i}=e;return n!==void 0&&(t.color=n),r!==void 0&&(t.borderColor=r),i!==void 0&&(t.wickColor=i),t}function ei(e){return{Area:Yr,Line:Jr,Baseline:Xr,Histogram:Jr,Bar:Qr,Candlestick:$r,Custom:ti}[e]}function ti(e){let t=e.Qr;return{...e.ue,time:t}}var ni={vertLine:{color:`#9598A1`,width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:`#131722`},horzLine:{color:`#9598A1`,width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:`#131722`},mode:1,doNotSnapToHiddenSeriesIndices:!1},ri={vertLines:{color:`#D6DCDE`,style:0,visible:!0},horzLines:{color:`#D6DCDE`,style:0,visible:!0}},ii={background:{type:`solid`,color:`#FFFFFF`},textColor:`#191919`,fontSize:12,fontFamily:j,panes:{enableResize:!0,separatorColor:`#E0E3EB`,separatorHoverColor:`rgba(178, 181, 189, 0.2)`},attributionLogo:!0,colorSpace:`srgb`,colorParsers:[]},ai={autoScale:!0,mode:0,invertScale:!1,alignLabels:!0,borderVisible:!0,borderColor:`#2B2B43`,entireTextOnly:!1,visible:!1,ticksVisible:!1,scaleMargins:{bottom:.1,top:.2},minimumWidth:0,ensureEdgeTickMarksVisible:!1,tickMarkDensity:2.5},oi={rightOffset:0,barSpacing:6,minBarSpacing:.5,maxBarSpacing:0,fixLeftEdge:!1,fixRightEdge:!1,lockVisibleTimeRangeOnResize:!1,rightBarStaysOnScroll:!1,borderVisible:!0,borderColor:`#2B2B43`,visible:!0,timeVisible:!1,secondsVisible:!0,shiftVisibleRangeOnNewBar:!0,allowShiftVisibleRangeOnWhitespaceReplacement:!1,ticksVisible:!1,uniformDistribution:!1,minimumHeight:0,allowBoldLabels:!0,ignoreWhitespaceIndices:!1,enableConflation:!1,conflationThresholdFactor:1,precomputeConflationOnInit:!1,precomputeConflationPriority:`background`};function si(){return{addDefaultPane:!0,hoveredSeriesOnTop:!0,width:0,height:0,autoSize:!1,layout:ii,crosshair:ni,grid:ri,overlayPriceScales:{...ai},leftPriceScale:{...ai,visible:!1},rightPriceScale:{...ai,visible:!0},defaultVisiblePriceScaleId:`right`,timeScale:oi,localization:{locale:K?navigator.language:``,dateFormat:`dd MMM 'yy`},handleScroll:{mouseWheel:!0,pressedMouseMove:!0,horzTouchDrag:!0,vertTouchDrag:!0},handleScale:{axisPressedMouseMove:{time:!0,price:!0},axisDoubleClickReset:{time:!0,price:!0},mouseWheel:!0,pinch:!0},kineticScroll:{mouse:!1,touch:!0},trackingMode:{exitMode:1}}}var ci=class{constructor(e,t,n){this.hv=e,this.Ug=t,this.$g=n??0}applyOptions(e){this.hv.Qt().Dd(this.Ug,e,this.$g)}options(){return this.Ki().N()}width(){return we(this.Ug)?this.hv.DM(this.Ug):0}setVisibleRange(e){this.setAutoScale(!1),this.Ki().Go(new R(e.from,e.to))}getVisibleRange(){let e,t,n=this.Ki().ar();if(n===null)return null;if(this.Ki().ho()){let r=this.Ki().S_(),i=dn(r);n=W(n,this.Ki().lo()),e=Number((Math.round(n.Je()/r)*r).toFixed(i)),t=Number((Math.round(n.Qe()/r)*r).toFixed(i))}else e=n.Je(),t=n.Qe();return{from:e,to:t}}setAutoScale(e){this.applyOptions({autoScale:e})}Ki(){return b(this.hv.Qt().Id(this.Ug,this.$g)).Ft}},li=class{constructor(e,t,n,r){this.hv=e,this.yt=n,this.jg=t,this.qg=r}getHeight(){return this.yt.$t()}setHeight(e){let t=this.hv.Qt(),n=t._f(this.yt);t.Ld(n,e)}getStretchFactor(){return this.yt.F_()}setStretchFactor(e){this.yt.W_(e),this.hv.Qt().ka()}paneIndex(){return this.hv.Qt()._f(this.yt)}moveTo(e){let t=this.paneIndex();t!==e&&(v(e>=0&&e<this.hv.lv().length,`Invalid pane index`),this.hv.Qt().Od(t,e))}getSeries(){return this.yt.Y_().map((e=>this.jg(e)))??[]}getHTMLElement(){let e=this.hv.lv();return e&&e.length!==0&&e[this.paneIndex()]?e[this.paneIndex()].fv():null}attachPrimitive(e){this.yt.ol(e),e.attached&&e.attached({chart:this.qg,requestUpdate:()=>this.yt.Qt().ka()})}detachPrimitive(e){this.yt._l(e)}priceScale(e){if(this.yt.O_(e)===null)throw Error(`Cannot find price scale with id: ${e}`);return new ci(this.hv,e,this.paneIndex())}setPreserveEmptyPane(e){this.yt.j_(e)}preserveEmptyPane(){return this.yt.q_()}addCustomSeries(e,t={},n=0){return this.qg.addCustomSeries(e,t,n)}addSeries(e,t={}){return this.qg.addSeries(e,t,this.paneIndex())}},ui={color:`#FF0000`,price:0,lineStyle:2,lineWidth:1,lineVisible:!0,axisLabelVisible:!0,title:``,axisLabelColor:``,axisLabelTextColor:``},di=class{constructor(e){this._r=e}applyOptions(e){this._r.vr(e)}options(){return this._r.N()}Yg(){return this._r}},fi=class{constructor(e,t,n,r,i,a){this.Kg=new S,this.ae=e,this.Gg=t,this.Zg=n,this.Pu=i,this.qg=r,this.Xg=a}m(){this.Kg.m()}priceFormatter(){return this.ae.sl()}priceToCoordinate(e){let t=this.ae.Lt();return t===null?null:this.ae.Ft().Nt(e,t.Wt)}coordinateToPrice(e){let t=this.ae.Lt();return t===null?null:this.ae.Ft().Tn(e,t.Wt)}barsInLogicalRange(e){if(e===null)return null;let t=new tn(new G(e.from,e.to)).Uu(),n=this.ae.Un();if(n.Zi())return null;let r=n.Hn(t.Na(),1),i=n.Hn(t.bi(),-1),a=b(n.Rh()),o=b(n.Qn());if(r!==null&&i!==null&&r.$n>i.$n)return{barsBefore:e.from-a,barsAfter:o-e.to};let s={barsBefore:r===null||r.$n===a?e.from-a:r.$n-a,barsAfter:i===null||i.$n===o?o-e.to:o-i.$n};return r!==null&&i!==null&&(s.from=r.Qr,s.to=i.Qr),s}setData(e){this.Pu,this.ae.bh(),this.Gg.Jg(this.ae,e),this.Qg(`full`)}update(e,t=!1){this.ae.bh(),this.Gg.tb(this.ae,e,t),this.Qg(`update`)}pop(e=1){let t=this.Gg.ib(this.ae,e);t.length!==0&&this.Qg(`update`);let n=ei(this.seriesType());return t.map((e=>n(e)))}dataByIndex(e,t){let n=this.ae.Un().Hn(e,t);return n===null?null:ei(this.seriesType())(n)}data(){let e=ei(this.seriesType());return this.ae.Un().Bh().map((t=>e(t)))}subscribeDataChanged(e){this.Kg.i(e)}unsubscribeDataChanged(e){this.Kg._(e)}applyOptions(e){this.ae.vr(e)}options(){return O(this.ae.N())}priceScale(){return this.Zg.priceScale(this.ae.Ft().pl(),this.getPane().paneIndex())}createPriceLine(e){let t=C(O(ui),e);return new di(this.ae.Ea(t))}removePriceLine(e){this.ae.Aa(e.Yg())}priceLines(){return this.ae.La().map((e=>new di(e)))}seriesType(){return this.ae.bh()}lastValueData(e){let t=this.ae.Ae(e);return t.Le?{noData:!0}:{noData:!1,price:t.Mt,color:t.R}}attachPrimitive(e){this.ae.ol(e),e.attached&&e.attached({chart:this.qg,series:this,requestUpdate:()=>this.ae.Qt().ka(),horzScaleBehavior:this.Pu})}detachPrimitive(e){this.ae._l(e),e.detached&&e.detached(),this.ae.Qt().ka()}getPane(){let e=this.ae,t=b(this.ae.Qt().Ks(e));return this.Xg(t)}moveToPane(e){this.ae.Qt().rf(this.ae,e)}seriesOrder(){let e=this.ae.Qt().Ks(this.ae);return e===null?-1:e.Y_().indexOf(this.ae)}setSeriesOrder(e){let t=this.ae.Qt().Ks(this.ae);t!==null&&t.vu(this.ae,e)}Qg(e){this.Kg.v()&&this.Kg.p(e)}},pi=class{constructor(e,t,n){this.nb=new S,this.Qu=new S,this.Nw=new S,this.sn=e,this.ia=e.Et(),this.vM=t,this.ia.Zc().i(this.sb.bind(this)),this.ia.Xc().i(this.eb.bind(this)),this.vM.qw().i(this.rb.bind(this)),this.Pu=n}m(){this.ia.Zc().u(this),this.ia.Xc().u(this),this.vM.qw().u(this),this.nb.m(),this.Qu.m(),this.Nw.m()}scrollPosition(){return this.ia.Oc()}scrollToPosition(e,t){t?this.ia.Yc(e,1e3):this.sn.gs(e)}scrollToRealTime(){this.ia.qc()}getVisibleRange(){let e=this.ia.xc();return e===null?null:{from:e.from.originalTime,to:e.to.originalTime}}setVisibleRange(e){let t={from:this.Pu.convertHorzItemToInternal(e.from),to:this.Pu.convertHorzItemToInternal(e.to)},n=this.ia.kc(t);this.sn.sf(n)}getVisibleLogicalRange(){let e=this.ia.Sc();return e===null?null:{from:e.Na(),to:e.bi()}}setVisibleLogicalRange(e){v(e.from<=e.to,`The from index cannot be after the to index.`),this.sn.sf(e)}resetTimeScale(){this.sn.ws()}fitContent(){this.sn.td()}logicalToCoordinate(e){let t=this.sn.Et();return t.Zi()?null:t.jt(e)}coordinateToLogical(e){return this.ia.Zi()?null:this.ia.Vc(e)}timeToIndex(e,t){let n=this.Pu.convertHorzItemToInternal(e);return this.ia.Mc(n,t)}timeToCoordinate(e){let t=this.timeToIndex(e,!1);return t===null?null:this.ia.jt(t)}coordinateToTime(e){let t=this.sn.Et(),n=t.Vc(e),r=t.en(n);return r===null?null:r.originalTime}width(){return this.vM.pv().width}height(){return this.vM.pv().height}subscribeVisibleTimeRangeChange(e){this.nb.i(e)}unsubscribeVisibleTimeRangeChange(e){this.nb._(e)}subscribeVisibleLogicalRangeChange(e){this.Qu.i(e)}unsubscribeVisibleLogicalRangeChange(e){this.Qu._(e)}subscribeSizeChange(e){this.Nw.i(e)}unsubscribeSizeChange(e){this.Nw._(e)}applyOptions(e){this.ia.vr(e)}options(){return{...O(this.ia.N()),barSpacing:this.ia.ml()}}sb(){this.nb.v()&&this.nb.p(this.getVisibleRange())}eb(){this.Qu.v()&&this.Qu.p(this.getVisibleLogicalRange())}rb(e){this.Nw.p(e.width,e.height)}};function mi(e){return function(e){if(D(e.handleScale)){let t=e.handleScale;e.handleScale={axisDoubleClickReset:{time:t,price:t},axisPressedMouseMove:{time:t,price:t},mouseWheel:t,pinch:t}}else if(e.handleScale!==void 0){let{axisPressedMouseMove:t,axisDoubleClickReset:n}=e.handleScale;D(t)&&(e.handleScale.axisPressedMouseMove={time:t,price:t}),D(n)&&(e.handleScale.axisDoubleClickReset={time:n,price:n})}let t=e.handleScroll;D(t)&&(e.handleScroll={horzTouchDrag:t,vertTouchDrag:t,mouseWheel:t,pressedMouseMove:t})}(e),e}var hi=class{constructor(e,t,n){this.hb=new Map,this.ab=new Map,this.lb=new S,this.ob=new S,this._b=new S,this.dd=new WeakMap,this.ub=new wr(t);let r=n===void 0?O(si()):C(O(si()),mi(n));this.cb=t,this.hv=new lr(e,r,t),this.hv.mw().i((e=>{this.lb.v()&&this.lb.p(this.fb(e()))}),this),this.hv.ww().i((e=>{this.ob.v()&&this.ob.p(this.fb(e()))}),this),this.hv.Bd().i((e=>{this._b.v()&&this._b.p(this.fb(e()))}),this);let i=this.hv.Qt();this.pb=new pi(i,this.hv.bM(),this.cb)}remove(){this.hv.mw().u(this),this.hv.ww().u(this),this.hv.Bd().u(this),this.pb.m(),this.hv.m(),this.hb.clear(),this.ab.clear(),this.lb.m(),this.ob.m(),this._b.m(),this.ub.m()}resize(e,t,n){this.autoSizeActive()||this.hv.wM(e,t,n)}addCustomSeries(e,t={},n=0){let r=(e=>({type:`Custom`,isBuiltIn:!1,defaultOptions:{...Gr,...e.defaultOptions()},mb:Kr,wb:e}))(x(e));return this.Mb(r,t,n)}addSeries(e,t={},n=0){return this.Mb(e,t,n)}removeSeries(e){let t=y(this.hb.get(e)),n=this.ub.if(t);this.hv.Qt().if(t),this.gb(n),this.hb.delete(e),this.ab.delete(t)}Jg(e,t){this.gb(this.ub.og(e,t))}tb(e,t,n){this.gb(this.ub.pg(e,t,n))}ib(e,t){let[n,r]=this.ub.wg(e,t);return n.length!==0&&this.gb(r),n}subscribeClick(e){this.lb.i(e)}unsubscribeClick(e){this.lb._(e)}subscribeCrosshairMove(e){this._b.i(e)}unsubscribeCrosshairMove(e){this._b._(e)}subscribeDblClick(e){this.ob.i(e)}unsubscribeDblClick(e){this.ob._(e)}priceScale(e,t=0){return new ci(this.hv,e,t)}timeScale(){return this.pb}applyOptions(e){this.hv.vr(mi(e))}options(){return this.hv.N()}takeScreenshot(e=!1,t=!1){let n,r;try{t||(n=this.hv.Qt().N().crosshair.mode,this.hv.vr({crosshair:{mode:2}})),r=this.hv.TM(e)}finally{t||n===void 0||this.hv.Qt().vr({crosshair:{mode:n}})}return r}addPane(e=!1){let t=this.hv.Qt().uf();return t.j_(e),this.bb(t)}removePane(e){this.hv.Qt().Ad(e)}swapPanes(e,t){this.hv.Qt().zd(e,t)}autoSizeActive(){return this.hv.CM()}chartElement(){return this.hv.Mv()}panes(){return this.hv.Qt().Gn().map((e=>this.bb(e)))}paneSize(e=0){let t=this.hv.AM(e);return{height:t.height,width:t.width}}setCrosshairPosition(e,t,n){let r=this.hb.get(n);if(r===void 0)return;let i=this.hv.Qt().Ks(r);i!==null&&this.hv.Qt().Gd(e,t,i)}clearCrosshairPosition(){this.hv.Qt().Zd(!0)}horzBehaviour(){return this.cb}Mb(e,t={},n=0){v(e.mb!==void 0),function(e){if(e===void 0||e.type===`custom`)return;let t=e;t.minMove!==void 0&&t.precision===void 0&&(t.precision=dn(t.minMove))}(t.priceFormat),e.type===`Candlestick`&&function(e){e.borderColor!==void 0&&(e.borderUpColor=e.borderColor,e.borderDownColor=e.borderColor),e.wickColor!==void 0&&(e.wickUpColor=e.wickColor,e.wickDownColor=e.wickColor)}(t);let r=C(O(p),O(e.defaultOptions),t),i=e.mb,a=new bt(this.hv.Qt(),e.type,r,i,e.wb);this.hv.Qt().Qd(a,n);let o=new fi(a,this,this,this,this.cb,(e=>this.bb(e)));return this.hb.set(o,a),this.ab.set(a,o),o}gb(e){let t=this.hv.Qt();for(let t of e.Y_.keys())t.Ia();t.Xd(e.Et.Dc,e.Et.Sg,e.Et.xg),e.Y_.forEach(((e,t)=>t.ht(e.ue,e.bg))),t.Et().dc(),t.Lc()}Sb(e){return y(this.ab.get(e))}xb(e){return e!==void 0&&this.ab.has(e)?this.Sb(e):void 0}fb(e){let t=new Map;e.QM.forEach(((e,n)=>{let r=n.bh(),i=ei(r)(e);if(r!==`Custom`)v(fr(i));else{let e=n.cl();v(!e||!1===e(i))}t.set(this.Sb(n),i)}));let n=this.xb(e.jM),r=e.YM===void 0?void 0:{type:e.YM.ds,sourceKind:e.YM.KM,objectKind:e.YM.GM,series:this.xb(e.YM.Y_),objectId:e.YM.ZM,paneIndex:e.YM.XM};return{time:e.Qr,logical:e.$n,point:e.JM,paneIndex:e.XM,hoveredInfo:r,hoveredSeries:n,hoveredObjectId:e.qM,seriesData:t,sourceEvent:e.tg}}bb(e){let t=this.dd.get(e);return t||(t=new li(this.hv,(e=>this.Sb(e)),e,this),this.dd.set(e,t)),t}};function gi(e){if(E(e)){let t=document.getElementById(e);return v(t!==null,`Cannot find element in DOM with id=${e}`),t}return e}function _i(e,t,n){let r=new hi(gi(e),t,n);return t.setOptions(r.options()),r}function vi(e,t){return _i(e,new kn,kn.Tf(t))}function yi(){return kn}function bi(e,t,n,r){return Math.hypot(n-e,r-t)}function xi(e,t,n,r,i,a,o,s=0){if(t.length===0||r.from>=t.length||r.to<=0)return;let{context:c,horizontalPixelRatio:l,verticalPixelRatio:u}=e,d=t[r.from],f=a(e,d),p=d;if(r.to-r.from<2){let t=i/2;c.beginPath();let n={_t:d._t-t,ut:d.ut},r={_t:d._t+t,ut:d.ut};c.moveTo(n._t*l,n.ut*u),c.lineTo(r._t*l,r.ut*u),o(e,f,n,r)}else{let i=s>0,m=0,h=(t,n)=>{if(o(e,f,p,n),c.beginPath(),f=t,p=n,i){let e=m%s;c.lineDashOffset=e,m=e}},g=p;c.beginPath(),c.moveTo(d._t*l,d.ut*u);for(let o=r.from+1;o<r.to;++o){g=t[o];let r=g._t*l,s=g.ut*u,d=a(e,g);switch(n){case 0:if(c.lineTo(r,s),i){let e=t[o-1],n=e._t*l,i=e.ut*u;m+=bi(n,i,r,s)}break;case 1:{let e=t[o-1],n=e.ut*u;c.lineTo(r,n),i&&(m+=Math.abs(g._t-e._t)*l),d!==f&&(h(d,g),c.lineTo(r,n)),c.lineTo(r,s),i&&(m+=Math.abs(g.ut-e.ut)*u);break}case 2:{let[e,n]=Ti(t,o-1,o),a=e._t*l,d=e.ut*u,f=n._t*l,p=n.ut*u;if(c.bezierCurveTo(a,d,f,p,r,s),i){let e=t[o-1],n=e._t*l,i=e.ut*u,c=bi(n,i,r,s),h=bi(n,i,a,d)+bi(a,d,f,p)+bi(f,p,r,s);m+=(c+h)/2}break}}n!==1&&d!==f&&(h(d,g),c.moveTo(r,s))}(p!==g||p===g&&n===1)&&o(e,f,p,g),i&&(c.lineDashOffset=0)}}var Si=6;function Ci(e,t){return{_t:e._t-t._t,ut:e.ut-t.ut}}function wi(e,t){return{_t:e._t/t,ut:e.ut/t}}function Ti(e,t,n){let r=Math.max(0,t-1),i=Math.min(e.length-1,n+1);var a,o;return[(a=e[t],o=wi(Ci(e[n],e[r]),Si),{_t:a._t+o._t,ut:a.ut+o.ut}),Ci(e[n],wi(Ci(e[i],e[t]),Si))]}function Ei(e,t){let n=e.context;n.strokeStyle=t,n.stroke()}var Di=class extends P{constructor(){super(...arguments),this.rt=null}ht(e){this.rt=e}et(e){if(this.rt===null)return;let{ot:t,lt:n,Cb:r,yb:i,ct:a,Gt:o,Pb:s}=this.rt;if(n===null)return;let c=e.context;c.lineCap=`butt`,c.lineWidth=a*e.verticalPixelRatio;let l=g(c,o);c.lineJoin=`round`;let u=this.kb.bind(this),d=function(e){return e.reduce(((e,t)=>e+t),0)}(l);i!==void 0&&xi(e,t,i,n,r,u,Ei,d),s&&function(e,t,n,r,i){if(r.to-r.from<=0)return;let{horizontalPixelRatio:a,verticalPixelRatio:o,context:s}=e,c=null,l=Math.max(1,Math.floor(a))%2/2,u=n*o+l;for(let n=r.to-1;n>=r.from;--n){let r=t[n];if(r){let t=i(e,r);t!==c&&(c!==null&&s.fill(),s.beginPath(),s.fillStyle=t,c=t);let n=Math.round(r._t*a)+l,d=r.ut*o;s.moveTo(n,d),s.arc(n,d,u,0,2*Math.PI)}}s.fill()}(e,t,s,n,u)}},Oi=class extends Di{kb(e,t){return t.vt}};function ki(e,t,n,r,i){let a=1-i;return a*a*a*e+3*a*a*i*t+3*a*i*i*n+i*i*i*r}function Ai(e,t,n,r,i){if(n===2){let[n,a]=Ti(r,i-1,i);return[Math.min(e._t,t._t,n._t,a._t),Math.max(e._t,t._t,n._t,a._t)]}return[Math.min(e._t,t._t),Math.max(e._t,t._t)]}function ji(e,t,n,r,i,a,o,s){switch(i){case 1:{let i=Mr(e,t,n._t,n.ut,r._t,n.ut),a=Mr(e,t,r._t,n.ut,r._t,r.ut),o=Math.min(i,a);return o<=s?o:null}case 2:{let[i,c]=Ti(a,o-1,o),l=function(e,t,n){let r=1/0,i=n[0];for(let a=1;a<=12;a++){let o=a/12,s={_t:ki(n[0]._t,n[1]._t,n[2]._t,n[3]._t,o),ut:ki(n[0].ut,n[1].ut,n[2].ut,n[3].ut,o)};r=Math.min(r,Mr(e,t,i._t,i.ut,s._t,s.ut)),i=s}return r}(e,t,[n,i,c,r]);return l<=s?l:null}default:{let i=Mr(e,t,n._t,n.ut,r._t,r.ut);return i<=s?i:null}}}var Mi=class extends Br{constructor(e,t){super(e,t,!0)}Og(e,t,n){t.Ic(this.kg,A(this.Tg)),e.Jo(this.kg,n,A(this.Tg))}Tb(e,t){return{wt:e,Mt:t,_t:NaN,ut:NaN}}Lg(){let e=this.ae.Sa();this.kg=this.ae.Ua().Bh().map((t=>{let n;if((t.Gr??1)>1){let e=t.Wt[1],r=t.Wt[2],i=t.Wt[3];n=Math.abs(e-i)>Math.abs(r-i)?e:r}else n=t.Wt[3];return this.Rb(t.$n,n,e)}))}},Ni=class extends Mi{Bg(e,t){let n=this.ae.N();return function(e,t,n,r,i,a,o,s=0,c=0){if(t===null||t.from>=t.to||e.length===0)return null;let l=Math.max(a/2,o??0)+c,u=1/0;if(o!==void 0){let i=o+c,a=Or(e,n-i,t.from,t.to),s=kr(e,n+i,a,t.to);for(let t=a;t<s;t++){let i=e[t];if(!jr(n,i._t,i._t,o+c))continue;let a=Math.hypot(n-i._t,r-i.ut);a<=o+c&&(u=Math.min(u,a))}}if(t.to-t.from<2){let i=e[t.from],a=Math.max(s/2,l),o=Mr(n,r,i._t-a,i.ut,i._t+a,i.ut);return o<=l&&(u=Math.min(u,o)),Number.isFinite(u)?Ar(u,2,`series-point`):null}let d=1/0,f=Or(e,n-l,t.from,t.to),p=kr(e,n+l,f,t.to),m=Math.max(t.from+1,f),h=Math.min(t.to,p+1);for(let t=m;t<h;t++){let a=e[t-1],o=e[t],[s,c]=Ai(a,o,i,e,t);if(!jr(n,s,c,l))continue;let u=ji(n,r,a,o,i,e,t,l);u!==null&&(d=Math.min(d,u))}return Number.isFinite(u)?Ar(u,2,`series-point`):Number.isFinite(d)?Ar(d,1,`series-line`):null}(this.kg,this.Tg,e,t,n.lineType,n.lineVisible?n.lineWidth:1,n.pointMarkersVisible?n.pointMarkersRadius||n.lineWidth/2+2:void 0,this.le.Et().ml(),n.hitTestTolerance)}},Pi=class extends Ni{constructor(){super(...arguments),this.Vg=new Oi}Rb(e,t,n){return{...this.Tb(e,t),...n.Sh(e)}}Ng(){let e=this.ae.N(),t={ot:this.kg,Gt:e.lineStyle,yb:e.lineVisible?e.lineType:void 0,ct:e.lineWidth,Pb:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0,lt:this.Tg,Cb:this.le.Et().ml()};this.Vg.ht(t)}},Fi={type:`Line`,isBuiltIn:!0,defaultOptions:{color:`#2196f3`,lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:``,crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:``,lastPriceAnimation:0,pointMarkersVisible:!1},mb:(e,t)=>new Pi(e,t)};function Ii(e,t){return e.weight>t.weight?e:t}var Li=class{constructor(){this.Db=new S,this.Ib=function(e){let t=!1;return function(...n){t||(t=!0,queueMicrotask((()=>{e(...n),t=!1})))}}((()=>this.Db.p(this.Vb))),this.Vb=0}Bb(){return this.Db}m(){this.Db.m()}options(){return this.yn}setOptions(e){this.yn=e}preprocessData(e){}updateFormatter(e){this.yn&&(this.yn.localization=e)}createConverterToInternalObj(e){return this.Ib(),e=>(e>this.Vb&&(this.Vb=e),e)}key(e){return e}cacheKey(e){return e}convertHorzItemToInternal(e){return e}formatHorzItem(e){return this.Eb(e)}formatTickmark(e){return this.Eb(e.time)}maxTickMarkWeight(e){return e.reduce(Ii,e[0]).weight}fillWeightsForPoints(e,t){for(let r=t;r<e.length;++r)e[r].timeWeight=(n=e[r].time)%120==0?10:n%60==0?9:n%36==0?8:n%12==0?7:n%6==0?6:n%3==0?5:n%1==0?4:0;var n;this.Vb=e[e.length-1].time,this.Ib()}Eb(e){if(this.yn.localization?.timeFormatter)return this.yn.localization.timeFormatter(e);if(e<12)return`${e}M`;let t=Math.floor(e/12),n=e%12;return n===0?`${t}Y`:`${t}Y${n}M`}},Ri={yieldCurve:{baseResolution:1,minimumTimeRange:120,startTimeRange:0},timeScale:{ignoreWhitespaceIndices:!0},leftPriceScale:{visible:!0},rightPriceScale:{visible:!1},localization:{priceFormatter:e=>e.toFixed(3)+`%`}},zi={lastValueVisible:!1,priceLineVisible:!1},Bi=class extends hi{constructor(e,t){let n=C(Ri,t||{}),r=new Li;super(e,r,n),r.setOptions(this.options()),this._initWhitespaceSeries()}addSeries(e,t={},n=0){if(e.isBuiltIn&&!1===[`Area`,`Line`].includes(e.type))throw Error(`Yield curve only support Area and Line series`);let r={...zi,...t};return super.addSeries(e,r,n)}_initWhitespaceSeries(){let e=this.horzBehaviour(),t=this.addSeries(Fi),n;function r(r){let i=function(e,t){return{me:Math.max(0,e.startTimeRange),we:Math.max(0,e.minimumTimeRange,t||0),Ab:Math.max(1,e.baseResolution)}}(e.options().yieldCurve,r),a=(({me:e,we:t,Ab:n})=>`${e}~${t}~${n}`)(i);a!==n&&(n=a,t.setData(function({me:e,we:t,Ab:n}){return Array.from({length:Math.floor((t-e)/n)+1},((t,r)=>({time:e+r*n})))}(i)))}r(0),e.Bb().i(r)}};function Vi(e,t){return new Bi(gi(e),t)}function Hi(e,t){return e.weight>t.weight?e:t}var Ui=class{options(){return this.yn}setOptions(e){this.yn=e}preprocessData(e){}updateFormatter(e){this.yn&&(this.yn.localization=e)}createConverterToInternalObj(e){return e=>e}key(e){return e}cacheKey(e){return e}convertHorzItemToInternal(e){return e}formatHorzItem(e){return e.toFixed(this.Ds())}formatTickmark(e,t){return e.time.toFixed(this.Ds())}maxTickMarkWeight(e){return e.reduce(Hi,e[0]).weight}fillWeightsForPoints(e,t){for(let r=t;r<e.length;++r)e[r].timeWeight=(n=e[r].time)===100*Math.ceil(n/100)?8:n===50*Math.ceil(n/50)?7:n===25*Math.ceil(n/25)?6:n===10*Math.ceil(n/10)?5:n===5*Math.ceil(n/5)?4:n===Math.ceil(n)?3:+(2*n===Math.ceil(2*n));var n}Ds(){return this.yn.localization.precision}};function Wi(e,t){return _i(e,new Ui,t)}function Gi(e,t,n,r,i){let{context:a,horizontalPixelRatio:o,verticalPixelRatio:s}=t;a.lineTo(i._t*o,e*s),a.lineTo(r._t*o,e*s),a.closePath(),a.fillStyle=n,a.fill()}var Ki=class extends P{constructor(){super(...arguments),this.rt=null}ht(e){this.rt=e}et(e){if(this.rt===null)return;let{ot:t,lt:n,Cb:r,ct:i,Gt:a,yb:o}=this.rt,s=this.rt.Lb??(this.rt.zb?0:e.mediaSize.height);if(n===null)return;let c=e.context;c.lineCap=`butt`,c.lineJoin=`round`,c.lineWidth=i,g(c,a),c.lineWidth=1,xi(e,t,o,n,r,this.Ob.bind(this),Gi.bind(null,s))}},qi=class{Nb(e,t){let n=this.Fb,{Wb:r,Hb:i,Ub:a,$b:o,Lb:s,jb:c,qb:l}=t;if(this.Yb===void 0||n===void 0||n.Wb!==r||n.Hb!==i||n.Ub!==a||n.$b!==o||n.Lb!==s||n.jb!==c||n.qb!==l){let{verticalPixelRatio:n}=e,u=s||c>0?n:1,d=c*u,f=l===e.bitmapSize.height?l:l*u,p=(s??0)*u,m=e.context.createLinearGradient(0,d,0,f);if(m.addColorStop(0,r),s!=null){let e=V((p-d)/(f-d),0,1);m.addColorStop(e,i),m.addColorStop(e,a)}m.addColorStop(1,o),this.Yb=m,this.Fb=t}return this.Yb}},Ji=class extends Ki{constructor(){super(...arguments),this.Kb=new qi}Ob(e,t){let n=this.rt;return this.Kb.Nb(e,{Wb:t.dh,Hb:t.fh,Ub:t.ph,$b:t.mh,Lb:n.Lb,jb:n.jb??0,qb:n.qb??e.bitmapSize.height})}},Yi=class extends Di{constructor(){super(...arguments),this.Gb=new qi}kb(e,t){let n=this.rt;return this.Gb.Nb(e,{Wb:t._h,Hb:t._h,Ub:t.uh,$b:t.uh,Lb:n.Lb,jb:n.jb??0,qb:n.qb??e.bitmapSize.height})}},Xi=class{constructor(e,t,n,r){this.Zb=e,this.Xb=t,this.Jb=n,this.Qb=r}st(e,t,n){this.Zb.st(e,t,n),!this.Jb()||t&&this.Qb()||this.Xb.st(e,t,n)}},Zi=class{constructor(e,t){this.Xb=e,this.tS=t}Tt(){return this.tS()?this.Xb:null}},Qi=class extends Ni{constructor(e,t){super(e,t),this.iS=new Ji,this.nS=new Yi,this.sS=new Zi(this.nS,(()=>this.Jb())),this.eS=[this],this.rS=[this.sS],this.hS={Za:this.eS,qa:this.rS},this.Vg=new Xi(this.iS,this.nS,(()=>this.Jb()),(()=>this.le.N().hoveredSeriesOnTop))}Ga(){return this.hS}Rb(e,t,n){return{...this.Tb(e,t),...n.Sh(e)}}Ng(){let e=this.ae.Lt();if(e===null)return;let t=this.ae.N(),n=this.ae.Ft().Nt(t.baseValue.price,e.Wt),r=this.le.Et().ml();if(this.Tg===null||this.kg.length===0)return;let i,a;if(t.relativeGradient){i=this.kg[this.Tg.from].ut,a=this.kg[this.Tg.from].ut;for(let e=this.Tg.from;e<this.Tg.to;e++){let t=this.kg[e];t.ut<i&&(i=t.ut),t.ut>a&&(a=t.ut)}}this.iS.ht({ot:this.kg,ct:t.lineWidth,Gt:t.lineStyle,yb:t.lineType,Lb:n,jb:i,qb:a,zb:!1,lt:this.Tg,Cb:r}),this.nS.ht({ot:this.kg,ct:t.lineWidth,Gt:t.lineStyle,yb:t.lineVisible?t.lineType:void 0,Pb:t.pointMarkersVisible?t.pointMarkersRadius||t.lineWidth/2+2:void 0,Lb:n,jb:i,qb:a,lt:this.Tg,Cb:r})}Jb(){return this.ae.It()&&this.Tg!==null&&this.aS()}aS(){let e=this.ae.N();return e.lineVisible||e.pointMarkersVisible}},$i={type:`Baseline`,isBuiltIn:!0,defaultOptions:{baseValue:{type:`price`,price:0},relativeGradient:!1,topFillColor1:`rgba(38, 166, 154, 0.28)`,topFillColor2:`rgba(38, 166, 154, 0.05)`,topLineColor:`rgba(38, 166, 154, 1)`,bottomFillColor1:`rgba(239, 83, 80, 0.05)`,bottomFillColor2:`rgba(239, 83, 80, 0.28)`,bottomLineColor:`rgba(239, 83, 80, 1)`,lineWidth:3,lineStyle:0,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:``,crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:``,lastPriceAnimation:0,pointMarkersVisible:!1},mb:(e,t)=>new Qi(e,t)},ea=class extends Ki{constructor(){super(...arguments),this.Kb=new qi}Ob(e,t){return this.Kb.Nb(e,{Wb:t.ah,Hb:``,Ub:``,$b:t.oh,jb:this.rt?.jb??0,qb:e.bitmapSize.height})}},ta=class extends Ni{constructor(e,t){super(e,t),this.lS=new ea,this.Xb=new Oi,this.sS=new Zi(this.Xb,(()=>this.Jb())),this.eS=[this],this.rS=[this.sS],this.hS={Za:this.eS,qa:this.rS},this.Vg=new Xi(this.lS,this.Xb,(()=>this.Jb()),(()=>this.le.N().hoveredSeriesOnTop))}Ga(){return this.hS}Rb(e,t,n){return{...this.Tb(e,t),...n.Sh(e)}}Ng(){let e=this.ae.N();if(this.Tg===null||this.kg.length===0)return;let t;if(e.relativeGradient){t=this.kg[this.Tg.from].ut;for(let e=this.Tg.from;e<this.Tg.to;e++){let n=this.kg[e];n.ut<t&&(t=n.ut)}}this.lS.ht({yb:e.lineType,ot:this.kg,Gt:e.lineStyle,ct:e.lineWidth,Lb:null,jb:t,zb:e.invertFilledArea,lt:this.Tg,Cb:this.le.Et().ml()}),this.Xb.ht({yb:e.lineVisible?e.lineType:void 0,ot:this.kg,Gt:e.lineStyle,ct:e.lineWidth,lt:this.Tg,Cb:this.le.Et().ml(),Pb:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0})}Jb(){return this.ae.It()&&this.Tg!==null&&this.aS()}aS(){let e=this.ae.N();return e.lineVisible||e.pointMarkersVisible}},na={type:`Area`,isBuiltIn:!0,defaultOptions:{topColor:`rgba( 46, 220, 135, 0.4)`,bottomColor:`rgba( 40, 221, 100, 0)`,invertFilledArea:!1,relativeGradient:!1,lineColor:`#33D778`,lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:``,crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:``,lastPriceAnimation:0,pointMarkersVisible:!1},mb:(e,t)=>new ta(e,t)},ra=class extends P{constructor(){super(...arguments),this.qt=null,this.oS=0,this._S=0}ht(e){this.qt=e}et({context:e,horizontalPixelRatio:t,verticalPixelRatio:n}){if(this.qt===null||this.qt.Un.length===0||this.qt.lt===null)return;this.oS=this.uS(t),this.oS>=2&&Math.max(1,Math.floor(t))%2!=this.oS%2&&this.oS--,this._S=this.qt.cS?Math.min(this.oS,Math.floor(t)):this.oS;let r=null,i=this._S<=this.oS&&this.qt.ml>=Math.floor(1.5*t);for(let a=this.qt.lt.from;a<this.qt.lt.to;++a){let o=this.qt.Un[a];r!==o.sh&&(e.fillStyle=o.sh,r=o.sh);let s=Math.floor(.5*this._S),c=Math.round(o._t*t),l=c-s,u=this._S,d=l+u-1,f=Math.min(o.n_,o.s_),p=Math.max(o.n_,o.s_),m=Math.round(f*n)-s,h=Math.round(p*n)+s,g=Math.max(h-m,this._S);e.fillRect(l,m,u,g);let _=Math.ceil(1.5*this.oS);if(i){if(this.qt.dS){let t=c-_,r=Math.max(m,Math.round(o.i_*n)-s),i=r+u-1;i>m+g-1&&(i=m+g-1,r=i-u+1),e.fillRect(t,r,l-t,i-r+1)}let t=c+_,r=Math.max(m,Math.round(o.e_*n)-s),i=r+u-1;i>m+g-1&&(i=m+g-1,r=i-u+1),e.fillRect(d+1,r,t-d,i-r+1)}}}uS(e){return Math.max(Math.floor(e),Math.floor(function(e,t){return Math.floor(.3*e*t)}(b(this.qt).ml,e)))}},ia=class extends Br{constructor(e,t){super(e,t,!1)}Bg(e,t){return Ir(this.kg,this.Tg,e,t,this.le.Et().ml(),this.ae.N().hitTestTolerance,((e,t)=>{t[0]=e.n_,t[1]=e.s_}))}Og(e,t,n){t.Ic(this.kg,A(this.Tg)),e.t_(this.kg,n,A(this.Tg))}fS(e,t,n){return{wt:e,jr:t.Wt[0],qr:t.Wt[1],Yr:t.Wt[2],Kr:t.Wt[3],_t:NaN,i_:NaN,n_:NaN,s_:NaN,e_:NaN}}Lg(){let e=this.ae.Sa();this.kg=this.ae.Ua().Bh().map((t=>this.Rb(t.$n,t,e)))}},aa=class extends ia{constructor(){super(...arguments),this.Vg=new ra}Rb(e,t,n){return{...this.fS(e,t,n),...n.Sh(e)}}Ng(){let e=this.ae.N();this.Vg.ht({Un:this.kg,ml:this.le.Et().ml(),dS:e.openVisible,cS:e.thinBars,lt:this.Tg})}},oa={type:`Bar`,isBuiltIn:!0,defaultOptions:{upColor:`#26a69a`,downColor:`#ef5350`,openVisible:!0,thinBars:!0},mb:(e,t)=>new aa(e,t)},sa=class extends P{constructor(){super(...arguments),this.qt=null,this.oS=0}ht(e){this.qt=e}et(e){if(this.qt===null||this.qt.Un.length===0||this.qt.lt===null)return;let{horizontalPixelRatio:t}=e;this.oS=function(e,t){if(e>=2.5&&e<=4)return Math.floor(3*t);let n=1-.2*Math.atan(Math.max(4,e)-4)/(.5*Math.PI),r=Math.floor(e*n*t),i=Math.floor(e*t);return Math.max(Math.floor(t),Math.min(r,i))}(this.qt.ml,t),this.oS>=2&&Math.floor(t)%2!=this.oS%2&&this.oS--;let n=this.qt.Un;this.qt.pS&&this.vS(e,n,this.qt.lt),this.qt.gi&&this.Vm(e,n,this.qt.lt);let r=this.mS(t);(!this.qt.gi||this.oS>2*r)&&this.wS(e,n,this.qt.lt)}vS(e,t,n){if(this.qt===null)return;let{context:r,horizontalPixelRatio:i,verticalPixelRatio:a}=e,o=``,s=Math.min(Math.floor(i),Math.floor(this.qt.ml*i));s=Math.max(Math.floor(i),Math.min(s,this.oS));let c=Math.floor(.5*s),l=null;for(let e=n.from;e<n.to;e++){let n=t[e];n.rh!==o&&(r.fillStyle=n.rh,o=n.rh);let u=Math.round(Math.min(n.i_,n.e_)*a),d=Math.round(Math.max(n.i_,n.e_)*a),f=Math.round(n.n_*a),p=Math.round(n.s_*a),m=Math.round(i*n._t)-c,h=m+s-1;l!==null&&(m=Math.max(l+1,m),m=Math.min(m,h));let g=h-m+1;r.fillRect(m,f,g,u-f),r.fillRect(m,d+1,g,p-d),l=h}}mS(e){let t=Math.floor(1*e);this.oS<=2*t&&(t=Math.floor(.5*(this.oS-1)));let n=Math.max(Math.floor(e),t);return this.oS<=2*n?Math.max(Math.floor(e),Math.floor(1*e)):n}Vm(e,t,n){if(this.qt===null)return;let{context:r,horizontalPixelRatio:i,verticalPixelRatio:a}=e,o=``,s=this.mS(i),c=null;for(let e=n.from;e<n.to;e++){let n=t[e];n.eh!==o&&(r.fillStyle=n.eh,o=n.eh);let l=Math.round(n._t*i)-Math.floor(.5*this.oS),u=l+this.oS-1,d=Math.round(Math.min(n.i_,n.e_)*a),f=Math.round(Math.max(n.i_,n.e_)*a);if(c!==null&&(l=Math.max(c+1,l),l=Math.min(l,u)),this.qt.ml*i>2*s)ue(r,l,d,u-l+1,f-d+1,s);else{let e=u-l+1;r.fillRect(l,d,e,f-d+1)}c=u}}wS(e,t,n){if(this.qt===null)return;let{context:r,horizontalPixelRatio:i,verticalPixelRatio:a}=e,o=``,s=this.mS(i);for(let e=n.from;e<n.to;e++){let n=t[e],c=Math.round(Math.min(n.i_,n.e_)*a),l=Math.round(Math.max(n.i_,n.e_)*a),u=Math.round(n._t*i)-Math.floor(.5*this.oS),d=u+this.oS-1;if(n.sh!==o){let e=n.sh;r.fillStyle=e,o=e}this.qt.gi&&(u+=s,c+=s,d-=s,l-=s),c>l||r.fillRect(u,c,d-u+1,l-c+1)}}},ca=class extends ia{constructor(){super(...arguments),this.Vg=new sa}Rb(e,t,n){return{...this.fS(e,t,n),...n.Sh(e)}}Ng(){let e=this.ae.N();this.Vg.ht({Un:this.kg,ml:this.le.Et().ml(),pS:e.wickVisible,gi:e.borderVisible,lt:this.Tg})}},la={type:`Candlestick`,isBuiltIn:!0,defaultOptions:{upColor:`#26a69a`,downColor:`#ef5350`,wickVisible:!0,borderVisible:!0,borderColor:`#378658`,borderUpColor:`#26a69a`,borderDownColor:`#ef5350`,wickColor:`#737375`,wickUpColor:`#26a69a`,wickDownColor:`#ef5350`},mb:(e,t)=>new ca(e,t)},ua=class extends P{constructor(){super(...arguments),this.qt=null,this.MS=[]}ht(e){this.qt=e,this.MS=[]}et({context:e,horizontalPixelRatio:t,verticalPixelRatio:n}){if(this.qt===null||this.qt.ot.length===0||this.qt.lt===null)return;this.MS.length||this.gS(t);let r=Math.max(1,Math.floor(n)),i=Math.round(this.qt.bS*n)-Math.floor(r/2),a=i+r;for(let t=this.qt.lt.from;t<this.qt.lt.to;t++){let o=this.qt.ot[t],s=this.MS[t-this.qt.lt.from],c=Math.round(o.ut*n),l,u;e.fillStyle=o.sh,c<=i?(l=c,u=a):(l=i,u=c-Math.floor(r/2)+r),e.fillRect(s.Na,l,s.bi-s.Na+1,u-l)}}gS(e){if(this.qt===null||this.qt.ot.length===0||this.qt.lt===null)return void(this.MS=[]);let t=Math.ceil(this.qt.ml*e)<=1?0:Math.max(1,Math.floor(e)),n=Math.round(this.qt.ml*e)-t;this.MS=Array(this.qt.lt.to-this.qt.lt.from);for(let t=this.qt.lt.from;t<this.qt.lt.to;t++){let r=this.qt.ot[t],i=Math.round(r._t*e),a,o;if(n%2){let e=(n-1)/2;a=i-e,o=i+e}else{let e=n/2;a=i-e,o=i+e-1}this.MS[t-this.qt.lt.from]={Na:a,bi:o,SS:i,ce:r._t*e,wt:r.wt}}for(let e=this.qt.lt.from+1;e<this.qt.lt.to;e++){let n=this.MS[e-this.qt.lt.from],r=this.MS[e-this.qt.lt.from-1];n.wt===r.wt+1&&n.Na-r.bi!==t+1&&(r.SS>r.ce?r.bi=n.Na-t-1:n.Na=r.bi+t+1)}let r=Math.ceil(this.qt.ml*e);for(let e=this.qt.lt.from;e<this.qt.lt.to;e++){let t=this.MS[e-this.qt.lt.from];t.bi<t.Na&&(t.bi=t.Na);let n=t.bi-t.Na+1;r=Math.min(n,r)}if(t>0&&r<4)for(let e=this.qt.lt.from;e<this.qt.lt.to;e++){let t=this.MS[e-this.qt.lt.from];t.bi-t.Na+1>r&&(t.SS>t.ce?--t.bi:t.Na+=1)}}},da=class extends Mi{constructor(){super(...arguments),this.Vg=new ua}Bg(e,t){let n=this.ae.Ft().Nt(this.ae.N().base,b(this.ae.Lt()).Wt);return n===null?null:Ir(this.kg,this.Tg,e,t,this.le.Et().ml(),this.ae.N().hitTestTolerance,((e,t)=>{t[0]=e.ut,t[1]=n}))}Rb(e,t,n){return{...this.Tb(e,t),...n.Sh(e)}}Ng(){let e={ot:this.kg,ml:this.le.Et().ml(),lt:this.Tg,bS:this.ae.Ft().Nt(this.ae.N().base,b(this.ae.Lt()).Wt)};this.Vg.ht(e)}},fa={type:`Histogram`,isBuiltIn:!0,defaultOptions:{color:`#26a69a`,base:0},mb:(e,t)=>new da(e,t)},pa=class{constructor(e,t){this.yt=e,this.xS=t,this.CS()}detach(){this.yt.detachPrimitive(this.xS)}getPane(){return this.yt}applyOptions(e){this.xS.vr?.(e)}CS(){this.yt.attachPrimitive(this.xS)}},ma={visible:!0,horzAlign:`center`,vertAlign:`center`,lines:[]},ha={color:`rgba(0, 0, 0, 0.5)`,fontSize:48,fontFamily:j,fontStyle:``,text:``},ga=class{constructor(e){this.yS=new Map,this.qt=e}draw(e){e.useMediaCoordinateSpace((e=>{if(!this.qt.visible)return;let{context:t,mediaSize:n}=e,r=0;for(let e of this.qt.lines){if(e.text.length===0)continue;t.font=e.k;let i=this.PS(t,e.text);i>n.width?e.Uc=n.width/i:e.Uc=1,r+=e.lineHeight*e.Uc}let i=0;switch(this.qt.vertAlign){case`top`:i=0;break;case`center`:i=Math.max((n.height-r)/2,0);break;case`bottom`:i=Math.max(n.height-r,0)}for(let e of this.qt.lines){t.save(),t.fillStyle=e.color;let r=0;switch(this.qt.horzAlign){case`left`:t.textAlign=`left`,r=e.lineHeight/2;break;case`center`:t.textAlign=`center`,r=n.width/2;break;case`right`:t.textAlign=`right`,r=n.width-1-e.lineHeight/2}t.translate(r,i),t.textBaseline=`top`,t.font=e.k,t.scale(e.Uc,e.Uc),t.fillText(e.text,0,e.kS),t.restore(),i+=e.lineHeight*e.Uc}}))}PS(e,t){let n=this.TS(e.font),r=n.get(t);return r===void 0&&(r=e.measureText(t).width,n.set(t,r)),r}TS(e){let t=this.yS.get(e);return t===void 0&&(t=new Map,this.yS.set(e,t)),t}},_a=class{constructor(e){this.yn=ya(e)}Pt(e){this.yn=ya(e)}renderer(){return new ga(this.yn)}};function va(e){return{...e,k:M(e.fontSize,e.fontFamily,e.fontStyle),lineHeight:e.lineHeight||1.2*e.fontSize,kS:0,Uc:0}}function ya(e){return{...e,lines:e.lines.map(va)}}function ba(e){return{...ha,...e}}function xa(e){return{...ma,...e,lines:e.lines?.map(ba)??[]}}var Sa=class{constructor(e){this.yn=xa(e),this.RS=[new _a(this.yn)]}updateAllViews(){this.RS.forEach((e=>e.Pt(this.yn)))}paneViews(){return this.RS}attached({requestUpdate:e}){this.DS=e}detached(){this.DS=void 0}vr(e){this.yn=xa({...this.yn,...e}),this.DS&&this.DS()}};function Ca(e,t){return new pa(e,new Sa(t))}var wa={alpha:1,padding:0},Ta=class{constructor(e){this.qt=e}draw(e){e.useMediaCoordinateSpace((e=>{let t=e.context,n=this.IS(this.qt,e.mediaSize);n&&this.qt.VS&&(t.globalAlpha=this.qt.alpha??1,t.drawImage(this.qt.VS,n._t,n.ut,n.nn,n.$t))}))}IS(e,t){let{maxHeight:n,maxWidth:r,BS:i,ES:a,padding:o}=e,s=Math.round(t.width/2),c=Math.round(t.height/2),l=o??0,u=t.width-2*l,d=t.height-2*l;n&&(d=Math.min(d,n)),r&&(u=Math.min(u,r));let f=u/a,p=d/i,m=Math.min(f,p),h=a*m,g=i*m;return{_t:s-.5*h,ut:c-.5*g,$t:g,nn:h}}},Ea=class{constructor(e){this.AS=null,this.LS=0,this.zS=0,this.yn=e,this.M=Da(this.yn,this.AS,this.LS,this.zS)}OS(e){e.NS!==void 0&&(this.LS=e.NS),e.FS!==void 0&&(this.zS=e.FS),e.WS!==void 0&&(this.AS=e.WS),this.Pt()}HS(e){this.yn=e,this.Pt()}zOrder(){return`bottom`}Pt(){this.M=Da(this.yn,this.AS,this.LS,this.zS)}renderer(){return new Ta(this.M)}};function Da(e,t,n,r){return{...e,VS:t,ES:n,BS:r}}function Oa(e){return{...wa,...e}}var ka=class{constructor(e,t){this.US=null,this.$S=e,this.yn=Oa(t),this.RS=[new Ea(this.yn)]}updateAllViews(){this.RS.forEach((e=>e.Pt()))}paneViews(){return this.RS}attached(e){let{requestUpdate:t}=e;this.jS=t,this.US=new Image,this.US.onload=()=>{let e=this.US?.naturalHeight??1,t=this.US?.naturalWidth??1;this.RS.forEach((n=>n.OS({FS:e,NS:t,WS:this.US}))),this.jS&&this.jS()},this.US.src=this.$S}detached(){this.jS=void 0,this.US=null}vr(e){this.yn=Oa({...this.yn,...e}),this.qS(),this.DS&&this.DS()}DS(){this.jS&&this.jS()}qS(){this.RS.forEach((e=>e.HS(this.yn)))}};function Aa(e,t,n){return new pa(e,new ka(t,n))}var ja=class{constructor(e,t){this.ae=e,this.Jh=t,this.CS()}detach(){this.ae.detachPrimitive(this.Jh)}getSeries(){return this.ae}applyOptions(e){this.Jh&&this.Jh.vr&&this.Jh.vr(e)}CS(){this.ae.attachPrimitive(this.Jh)}},Ma={autoScale:!0,zOrder:`normal`};function Na(e,t){return Tt(Math.min(Math.max(e,12),30)*t)}function $(e,t){return Tt(Math.max(t,12)*(e===`circle`?.8:e===`square`?.7:1))}function Pa(e){return function(e){let t=Math.ceil(e);return t%2==0?t:t-1}(Na(e,1))}function Fa(e){return Math.max(Na(e,.1),3)}function Ia(e,t,n){return t?e:n?Math.ceil(e/2):0}function La(e,t,n,r){let i=($(`arrowUp`,r)-1)/2*n.YS,a=(Tt(r/2)-1)/2*n.YS;t.beginPath(),e?(t.moveTo(n._t-i,n.ut),t.lineTo(n._t,n.ut-i),t.lineTo(n._t+i,n.ut),t.lineTo(n._t+a,n.ut),t.lineTo(n._t+a,n.ut+i),t.lineTo(n._t-a,n.ut+i),t.lineTo(n._t-a,n.ut)):(t.moveTo(n._t-i,n.ut),t.lineTo(n._t,n.ut+i),t.lineTo(n._t+i,n.ut),t.lineTo(n._t+a,n.ut),t.lineTo(n._t+a,n.ut-i),t.lineTo(n._t-a,n.ut-i),t.lineTo(n._t-a,n.ut)),t.fill()}function Ra(e,t,n,r,i,a){let o=($(`arrowUp`,r)-1)/2,s=(Tt(r/2)-1)/2;return i>=t-s-2&&i<=t+s+2&&a>=(e?n:n-o)-2&&a<=(e?n+o:n)+2||(()=>{if(i<t-o-3||i>t+o+3||a<(e?n-o-3:n)||a>(e?n:n+o+3))return!1;let r=Math.abs(i-t);return Math.abs(a-n)+3>=r/2})()}var za=class{constructor(){this.qt=null,this.$s=new L,this.F=-1,this.W=``,this.hm=``,this.KS=`normal`}ht(e){this.qt=e}js(e,t,n){this.F===e&&this.W===t||(this.F=e,this.W=t,this.hm=M(e,t),this.$s.Os()),this.KS=n}Qs(e,t){if(this.qt===null||this.qt.lt===null)return null;for(let n=this.qt.lt.from;n<this.qt.lt.to;n++){let r=this.qt.ot[n];if(r&&Va(r,e,t))return{zOrder:`normal`,externalId:r.te??``,itemType:`marker`}}return null}draw(e){this.KS!==`aboveSeries`&&e.useBitmapCoordinateSpace((e=>{this.et(e)}))}drawBackground(e){this.KS===`aboveSeries`&&e.useBitmapCoordinateSpace((e=>{this.et(e)}))}et({context:e,horizontalPixelRatio:t,verticalPixelRatio:n}){if(this.qt!==null&&this.qt.lt!==null){e.textBaseline=`middle`,e.font=this.hm;for(let r=this.qt.lt.from;r<this.qt.lt.to;r++){let i=this.qt.ot[r];i.ri!==void 0&&(i.ri.nn=this.$s.Ii(e,i.ri.GS),i.ri.$t=this.F,i.ri._t=i._t-i.ri.nn/2),Ba(i,e,t,n)}}}};function Ba(e,t,n,r){t.fillStyle=e.R,e.ri!==void 0&&function(e,t,n,r,i,a){e.save(),e.scale(i,a),e.fillText(t,n,r),e.restore()}(t,e.ri.GS,e.ri._t,e.ri.ut,n,r),function(e,t,n){if(e.Th!==0){switch(e.ZS){case`arrowDown`:La(!1,t,n,e.Th);return;case`arrowUp`:La(!0,t,n,e.Th);return;case`circle`:(function(e,t,n){let r=($(`circle`,n)-1)/2;e.beginPath(),e.arc(t._t,t.ut,r*t.YS,0,2*Math.PI,!1),e.fill()})(t,n,e.Th);return;case`square`:(function(e,t,n){let r=$(`square`,n),i=(r-1)*t.YS/2,a=t._t-i,o=t.ut-i;e.fillRect(a,o,r*t.YS,r*t.YS)})(t,n,e.Th);return}e.ZS}}(e,t,function(e,t,n){let r=Math.max(1,Math.floor(t))%2/2;return{_t:Math.round(e._t*t)+r,ut:e.ut*n,YS:t}}(e,n,r))}function Va(e,t,n){return!(e.ri===void 0||!function(e,t,n,r,i,a){let o=r/2;return i>=e&&i<=e+n&&a>=t-o&&a<=t+o}(e.ri._t,e.ri.ut,e.ri.nn,e.ri.$t,t,n))||function(e,t,n){if(e.Th===0)return!1;switch(e.ZS){case`arrowDown`:return Ra(!0,e._t,e.ut,e.Th,t,n);case`arrowUp`:return Ra(!1,e._t,e.ut,e.Th,t,n);case`circle`:return function(e,t,n,r,i){let a=2+$(`circle`,n)/2,o=e-r,s=t-i;return Math.sqrt(o*o+s*s)<=a}(e._t,e.ut,e.Th,t,n);case`square`:return function(e,t,n,r,i){let a=$(`square`,n),o=(a-1)/2,s=e-o,c=t-o;return r>=s&&r<=s+a&&i>=c&&i<=c+a}(e._t,e.ut,e.Th,t,n)}}(e,t,n)}function Ha(e){return e===`atPriceTop`||e===`atPriceBottom`||e===`atPriceMiddle`}function Ua(e,t,n,r,i,a,o,s){let c=function(e,t,n){if(Ha(t.position)&&t.price!==void 0)return t.price;if(`value`in(r=e)&&typeof r.value==`number`)return e.value;var r;if(function(e){return`open`in e&&`high`in e&&`low`in e&&`close`in e}(e)){if(t.position===`inBar`)return e.close;if(t.position===`aboveBar`)return n?e.low:e.high;if(t.position===`belowBar`)return n?e.high:e.low}}(n,t,o.priceScale().options().invertScale);if(c===void 0)return;let l=Ha(t.position),u=s.timeScale(),d=w(t.size)?Math.max(t.size,0):1,f=Pa(u.options().barSpacing)*d,p=f/2;switch(e.Th=f,t.position){case`inBar`:case`atPriceMiddle`:e.ut=b(o.priceToCoordinate(c)),e.ri!==void 0&&(e.ri.ut=e.ut+p+a+.6*i);return;case`aboveBar`:case`atPriceTop`:{let t=l?0:r.XS;e.ut=b(o.priceToCoordinate(c))-p-t,e.ri!==void 0&&(e.ri.ut=e.ut-p-.6*i,r.XS+=1.2*i),l||(r.XS+=f+a);return}case`belowBar`:case`atPriceBottom`:{let t=l?0:r.JS;e.ut=b(o.priceToCoordinate(c))+p+t,e.ri!==void 0&&(e.ri.ut=e.ut+p+a+.6*i,r.JS+=1.2*i),l||(r.JS+=f+a);return}}}var Wa=class{constructor(e,t,n){this.QS=[],this.xt=!0,this.tx=!0,this.Xt=new za,this.Te=e,this.Gv=t,this.qt={ot:[],lt:null},this.yn=n}renderer(){if(!this.Te.options().visible)return null;this.xt&&this.Ig();let e=this.Gv.options().layout;return this.Xt.js(e.fontSize,e.fontFamily,this.yn.zOrder),this.Xt.ht(this.qt),this.Xt}ix(e){this.QS=e,this.Pt(`data`)}Pt(e){this.xt=!0,e===`data`&&(this.tx=!0)}nx(e){this.xt=!0,this.yn=e}zOrder(){return this.yn.zOrder===`aboveSeries`?`top`:this.yn.zOrder}Ig(){let e=this.Gv.timeScale(),t=this.QS;this.tx&&=(this.qt.ot=t.map((e=>({wt:e.time,_t:0,ut:0,Th:0,ZS:e.shape,R:e.color,te:e.id,sx:e.sx,ri:void 0}))),!1);let n=this.Gv.options().layout;this.qt.lt=null;let r=e.getVisibleLogicalRange();if(r===null)return;let i=new G(Math.floor(r.from),Math.ceil(r.to));if(this.Te.dataByIndex(0,1)===null||this.qt.ot.length===0)return;let a=NaN,o=Fa(e.options().barSpacing),s={XS:o,JS:o};this.qt.lt=zr(this.qt.ot,i,!0);for(let r=this.qt.lt.from;r<this.qt.lt.to;r++){let i=t[r];i.time!==a&&(s.XS=o,s.JS=o,a=i.time);let c=this.qt.ot[r];c._t=b(e.logicalToCoordinate(i.time)),i.text!==void 0&&i.text.length>0&&(c.ri={GS:i.text,_t:0,ut:0,nn:0,$t:0});let l=this.Te.dataByIndex(i.time,0);l!==null&&Ua(c,i,l,s,n.fontSize,o,this.Te,this.Gv)}this.xt=!1}};function Ga(e){return{...Ma,...e}}var Ka=class{constructor(e){this.Yh=null,this.QS=[],this.hx=[],this.lx=null,this.Te=null,this.Gv=null,this.ox=!0,this._x=null,this.ux=null,this.vx=null,this.mx=!0,this.yn=Ga(e)}attached(e){this.wx(),this.Gv=e.chart,this.Te=e.series,this.Yh=new Wa(this.Te,b(this.Gv),this.yn),this.jS=e.requestUpdate,this.Te.subscribeDataChanged((e=>this.Qg(e))),this.mx=!0,this.DS()}DS(){this.jS&&this.jS()}detached(){this.Te&&this.lx&&this.Te.unsubscribeDataChanged(this.lx),this.Gv=null,this.Te=null,this.Yh=null,this.lx=null}ix(e){this.mx=!0,this.QS=e,this.wx(),this.ox=!0,this.ux=null,this.DS()}Mx(){return this.QS}paneViews(){return this.Yh?[this.Yh]:[]}updateAllViews(){this.gx()}hitTest(e,t){return this.Yh?this.Yh.renderer()?.Qs(e,t)??null:null}autoscaleInfo(e,t){if(this.yn.autoScale&&this.Yh){let e=this.bx();if(e)return{priceRange:null,margins:e}}return null}vr(e){this.yn=Ga({...this.yn,...e}),this.DS&&this.DS()}bx(){let e=b(this.Gv).timeScale().options().barSpacing;if(this.ox||e!==this.vx){if(this.vx=e,this.QS.length>0){let t=Fa(e),n=1.5*Pa(e)+2*t,r=this.Sx();this._x={above:Ia(n,r.aboveBar,r.inBar),below:Ia(n,r.belowBar,r.inBar)}}else this._x=null;this.ox=!1}return this._x}Sx(){return this.ux===null&&(this.ux=this.QS.reduce(((e,t)=>(e[t.position]||(e[t.position]=!0),e)),{inBar:!1,aboveBar:!1,belowBar:!1,atPriceTop:!1,atPriceBottom:!1,atPriceMiddle:!1})),this.ux}wx(){if(!this.mx||!this.Gv||!this.Te)return;let e=this.Gv.timeScale(),t=this.Te?.data();if(e.getVisibleLogicalRange()==null||!this.Te||t.length===0)return void(this.hx=[]);let n=e.timeToIndex(b(t[0].time),!0);this.hx=this.QS.map(((t,r)=>{let i=e.timeToIndex(t.time,!0),a=i<n?1:-1,o=b(this.Te).dataByIndex(i,a),s={time:e.timeToIndex(b(o).time,!1),position:t.position,shape:t.shape,color:t.color,id:t.id,sx:r,text:t.text,size:t.size,price:t.price,Qr:t.time};if(t.position===`atPriceTop`||t.position===`atPriceBottom`||t.position===`atPriceMiddle`){if(t.price===void 0)throw Error(`Price is required for position ${t.position}`);return{...s,position:t.position,price:t.price}}return{...s,position:t.position,price:t.price}})),this.mx=!1}gx(e){this.Yh&&(this.wx(),this.Yh.ix(this.hx),this.Yh.nx(this.yn),this.Yh.Pt(e))}Qg(e){this.mx=!0,this.DS()}},qa=class extends ja{constructor(e,t,n){super(e,t),n&&this.setMarkers(n)}setMarkers(e){this.Jh.ix(e)}markers(){return this.Jh.Mx()}};function Ja(e,t,n){let r=new qa(e,new Ka(n??{}));return t&&r.setMarkers(t),r}var Ya=class{constructor(e){this.QS=new Map,this.xx=e}Cx(e,t,n){if(this.yx(t),n!==void 0){let r=window.setTimeout((()=>{this.QS.delete(t),this.Px()}),n),i={...e,kx:r,Tx:Date.now()+n};this.QS.set(t,i)}else this.QS.set(t,{...e,kx:void 0,Tx:void 0});this.Px()}yx(e){let t=this.QS.get(e);t&&t.kx!==void 0&&window.clearTimeout(t.kx),this.QS.delete(e),this.Px()}Rx(){for(let[e]of this.QS)this.yx(e)}Dx(){let e=Date.now(),t=[];for(let[n,r]of this.QS)!r.Tx||r.Tx>e?t.push({time:r.time,sign:r.sign,value:r.value}):this.yx(n);return t}Ix(e){this.xx=e}Px(){this.xx&&this.xx()}},Xa={positiveColor:`#22AB94`,negativeColor:`#F7525F`,updateVisibilityDuration:5e3},Za=class{constructor(e,t,n,r){this.qt=e,this.Vx=t,this.Bx=n,this.Ex=r}draw(e){e.useBitmapCoordinateSpace((e=>{let t=e.context,n=Math.max(1,Math.floor(e.horizontalPixelRatio))%2/2,r=4*e.verticalPixelRatio+n;this.qt.forEach((i=>{let a=Math.round(i._t*e.horizontalPixelRatio)+n;t.beginPath();let o=this.Ax(i.Lx);t.fillStyle=o,t.arc(a,i.ut*e.verticalPixelRatio,r,0,2*Math.PI,!1),t.fill(),i.Lx&&(t.strokeStyle=o,t.lineWidth=Math.floor(2*e.horizontalPixelRatio),t.beginPath(),t.moveTo((i._t-4.7)*e.horizontalPixelRatio+n,(i.ut-7*i.Lx)*e.verticalPixelRatio),t.lineTo(i._t*e.horizontalPixelRatio+n,(i.ut-7*i.Lx-7*i.Lx*.5)*e.verticalPixelRatio),t.lineTo((i._t+4.7)*e.horizontalPixelRatio+n,(i.ut-7*i.Lx)*e.verticalPixelRatio),t.stroke())}))}))}Ax(e){return e===0?this.Vx:e>0?this.Ex:this.Bx}},Qa=class{constructor(e,t,n){this.qt=[],this.Te=e,this.ia=t,this.yn=n}Pt(e){this.qt=e.map((e=>{let t=this.Te.priceToCoordinate(e.value);return t===null?null:{_t:b(this.ia.timeToCoordinate(e.time)),ut:t,Lx:e.sign}})).filter(k)}renderer(){let e=function(e,t){return function(e,t){return t===`Area`}(0,t)?e.lineColor:e.color}(this.Te.options(),this.Te.seriesType());return new Za(this.qt,e,this.yn.negativeColor,this.yn.positiveColor)}};function $a(e,t){return t===`Line`||t===`Area`}var eo=class{constructor(e){this.Gv=void 0,this.Te=void 0,this.RS=[],this.Pu=null,this.zx=new Map,this.Ox=new Ya((()=>this.DS())),this.yn={...Xa,...e}}vr(e){this.yn={...this.yn,...e},this.DS()}ix(e){this.Ox.Rx();let t=this.Pu;t&&e.forEach((e=>{this.Ox.Cx(e,t.key(e.time))}))}Mx(){return this.Ox.Dx()}DS(){this.jS?.()}attached(e){let{chart:t,series:n,requestUpdate:r,horzScaleBehavior:i}=e;this.Gv=t,this.Te=n,this.Pu=i;let a=this.Te.seriesType();if(a!==`Area`&&a!==`Line`)throw Error(`UpDownMarkersPrimitive is only supported for Area and Line series types`);this.RS=[new Qa(this.Te,this.Gv.timeScale(),this.yn)],this.jS=r,this.DS()}detached(){this.Gv=void 0,this.Te=void 0,this.jS=void 0}_m(){return y(this.Gv)}Y_(){return y(this.Te)}updateAllViews(){this.RS.forEach((e=>e.Pt(this.Mx())))}paneViews(){return this.RS}ht(e){if(!this.Te)throw Error(`Primitive not attached to series`);let t=this.Te.seriesType();this.zx.clear();let n=this.Pu;n&&e.forEach((e=>{fr(e)&&$a(0,t)&&this.zx.set(n.key(e.time),e.value)})),y(this.Te).setData(e)}Pt(e,t){if(!this.Te||!this.Pu)throw Error(`Primitive not attached to series`);let n=this.Te.seriesType(),r=this.Pu.key(e.time);if(dr(e)&&this.zx.delete(r),fr(e)&&$a(0,n)){let t=this.zx.get(r);t&&this.Ox.Cx({time:e.time,value:e.value,sign:to(e.value,t)},r,this.yn.updateVisibilityDuration)}y(this.Te).update(e,t)}Nx(){this.Ox.Rx()}};function to(e,t){return e===t?0:e-t>0?1:-1}var no=class extends ja{setData(e){return this.Jh.ht(e)}update(e,t){return this.Jh.Pt(e,t)}markers(){return this.Jh.Mx()}setMarkers(e){return this.Jh.ix(e)}clearMarkers(){return this.Jh.Nx()}};function ro(e,t={}){return new no(e,new eo(t))}var io={...p,color:`#2196f3`};function ao(){return`5.2.1`}export{vi as a,Fi as c,h as i,Ja as n,f as o,la as r,fa as s,cn as t};