dealpos 25.50.4 → 25.51.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/browser/{chunk-TZGHU6I5.js → chunk-243EB36Y.js} +2 -2
  2. package/browser/{chunk-HGSF7LOB.js → chunk-27OXTS7Y.js} +1 -1
  3. package/browser/{chunk-BRNU2JXC.js → chunk-2MAOKHWO.js} +1 -1
  4. package/browser/{chunk-KVMBRL53.js → chunk-2WSP3Y6V.js} +1 -1
  5. package/browser/{chunk-HWPSC7RE.js → chunk-3DL5OLEL.js} +1 -1
  6. package/browser/{chunk-CFWHBIM3.js → chunk-3DUSH3ND.js} +1 -1
  7. package/browser/{chunk-NOYC5PIT.js → chunk-3FS7DBBR.js} +1 -1
  8. package/browser/{chunk-2BO3IFU3.js → chunk-3K2A4Z67.js} +1 -1
  9. package/browser/chunk-3M5FKEPW.js +1 -0
  10. package/browser/{chunk-O2VVATBW.js → chunk-3MAZIRSX.js} +1 -1
  11. package/browser/{chunk-PHH2AA3W.js → chunk-3Q5WV3VF.js} +1 -1
  12. package/browser/{chunk-ZMJLTU5O.js → chunk-3XH2STFE.js} +1 -1
  13. package/browser/{chunk-26YFRPR2.js → chunk-3ZH3XK5V.js} +1 -1
  14. package/browser/{chunk-MLBTUOHX.js → chunk-4467AQLM.js} +1 -1
  15. package/browser/{chunk-2MPRVJXH.js → chunk-4HJHXVYF.js} +1 -1
  16. package/browser/{chunk-S7FOJJP2.js → chunk-4HLKKTIV.js} +1 -1
  17. package/browser/{chunk-MNJSQKLX.js → chunk-4L4MSVOU.js} +1 -1
  18. package/browser/{chunk-NFOJONR6.js → chunk-4OP4E5Q4.js} +1 -1
  19. package/browser/{chunk-OP66LK4H.js → chunk-4PDGY62B.js} +1 -1
  20. package/browser/chunk-54SK3PVO.js +1 -0
  21. package/browser/{chunk-3NPCLTJT.js → chunk-55Z32OLJ.js} +1 -1
  22. package/browser/{chunk-TXJJUZ26.js → chunk-5PDQ5UNO.js} +1 -1
  23. package/browser/{chunk-FW4OCSXV.js → chunk-5RFSSCAR.js} +1 -1
  24. package/browser/{chunk-36GWLMZX.js → chunk-5RYL4EJ2.js} +1 -1
  25. package/browser/{chunk-B36P4U32.js → chunk-5VYU6SHE.js} +1 -1
  26. package/browser/{chunk-KZG64H5Q.js → chunk-5XTMPVSF.js} +1 -1
  27. package/browser/chunk-5YBSS4EL.js +21 -0
  28. package/browser/{chunk-DC3TCY6D.js → chunk-6G7LPAEQ.js} +1 -1
  29. package/browser/{chunk-7F4QLFQQ.js → chunk-6I2YT4SH.js} +1 -1
  30. package/browser/{chunk-RQFU4YVM.js → chunk-6OULAYGH.js} +1 -1
  31. package/browser/{chunk-QMOYHBVM.js → chunk-6VYP636I.js} +1 -1
  32. package/browser/{chunk-OXWQ7ZZS.js → chunk-6WMEGLEF.js} +1 -1
  33. package/browser/{chunk-D7DUI5NF.js → chunk-6XNP4ZXB.js} +1 -1
  34. package/browser/{chunk-YSRJI33K.js → chunk-7264OPXA.js} +1 -1
  35. package/browser/chunk-735YXRQB.js +1 -0
  36. package/browser/{chunk-OYGBAHVX.js → chunk-73ADHCC2.js} +1 -1
  37. package/browser/{chunk-QZZ2NRA3.js → chunk-75FYOZH7.js} +1 -1
  38. package/browser/{chunk-CCD6EYWH.js → chunk-76CUXDTU.js} +1 -1
  39. package/browser/{chunk-DWZ5JTI2.js → chunk-7MRUPBXU.js} +1 -1
  40. package/browser/{chunk-QVKXQ4BK.js → chunk-7OQXKVTC.js} +16 -16
  41. package/browser/{chunk-KZFNI67M.js → chunk-7YYWBCWJ.js} +1 -1
  42. package/browser/{chunk-QI7I46MV.js → chunk-A7C35XPM.js} +1 -1
  43. package/browser/{chunk-W3PBP3KZ.js → chunk-AB7O2ERM.js} +1 -1
  44. package/browser/{chunk-ILTEBIEO.js → chunk-ABOSNV75.js} +1 -1
  45. package/browser/{chunk-AQW4VS3Y.js → chunk-ACXQ2FOW.js} +1 -1
  46. package/browser/{chunk-WMZLH4YK.js → chunk-AHTR7XKG.js} +1 -1
  47. package/browser/{chunk-XTCEZONP.js → chunk-AJAUI7BA.js} +1 -1
  48. package/browser/{chunk-6C2HPRJZ.js → chunk-AQKJ3LSN.js} +1 -1
  49. package/browser/{chunk-RESN2GAB.js → chunk-ARAUAPQU.js} +1 -1
  50. package/browser/{chunk-3HZIDGPN.js → chunk-AXCTEREY.js} +1 -1
  51. package/browser/{chunk-SIQZO2WM.js → chunk-B4TZQBTN.js} +1 -1
  52. package/browser/{chunk-BT7NN7PT.js → chunk-BAXZ74LK.js} +1 -1
  53. package/browser/{chunk-AKRUT4XG.js → chunk-BCGNQKO5.js} +2 -2
  54. package/browser/{chunk-KB4247J2.js → chunk-BHQZXJKQ.js} +1 -1
  55. package/browser/{chunk-MHD5SGI2.js → chunk-BRQVQGLJ.js} +1 -1
  56. package/browser/{chunk-IBGFKSEC.js → chunk-BWVEZ3MZ.js} +1 -1
  57. package/browser/{chunk-RSNEHVIM.js → chunk-C22G4JGX.js} +1 -1
  58. package/browser/{chunk-WWWSD2MX.js → chunk-CAGFIP4G.js} +1 -1
  59. package/browser/{chunk-4BXCIT62.js → chunk-CCIHCGP5.js} +1 -1
  60. package/browser/{chunk-FQZELIHB.js → chunk-CERE2LBX.js} +1 -1
  61. package/browser/{chunk-MLEUJB3A.js → chunk-CJ4ET4PG.js} +1 -1
  62. package/browser/{chunk-O4RWYZYV.js → chunk-CR5CHTI7.js} +1 -1
  63. package/browser/{chunk-FAED643P.js → chunk-CVN6ZXXJ.js} +1 -1
  64. package/browser/{chunk-BYTV42NJ.js → chunk-D6HBPIFD.js} +1 -1
  65. package/browser/chunk-DAH4EEQV.js +149 -0
  66. package/browser/{chunk-E4VY3BC3.js → chunk-DBRZ7F2Z.js} +1 -1
  67. package/browser/{chunk-TYE7PH3R.js → chunk-DIWYKKLA.js} +1 -1
  68. package/browser/{chunk-2LKYW2KM.js → chunk-DNY4JYTC.js} +1 -1
  69. package/browser/{chunk-GWKBJZYT.js → chunk-DODZXMH2.js} +1 -1
  70. package/browser/{chunk-GTPQNPNO.js → chunk-DSXOFWO7.js} +1 -1
  71. package/browser/{chunk-VVYRPW2Y.js → chunk-E4AXPU4U.js} +1 -1
  72. package/browser/{chunk-Y7QIF2WS.js → chunk-E5TUY2II.js} +1 -1
  73. package/browser/{chunk-R2GUMKAU.js → chunk-E634BI4W.js} +1 -1
  74. package/browser/{chunk-DDWKAORH.js → chunk-EFDMYOLZ.js} +2 -2
  75. package/browser/{chunk-C2NCV7VC.js → chunk-EMH25BNO.js} +1 -1
  76. package/browser/{chunk-NVOIIOWN.js → chunk-EMHEIQNS.js} +1 -1
  77. package/browser/{chunk-TCUCRGQD.js → chunk-EXFA6B6P.js} +1 -1
  78. package/browser/{chunk-B5IABJO5.js → chunk-EZNBK62W.js} +3 -3
  79. package/browser/chunk-F3HDP5CA.js +1 -0
  80. package/browser/{chunk-IFIH2CE2.js → chunk-F6LSMAF4.js} +1 -1
  81. package/browser/{chunk-BKTC6IB2.js → chunk-FEHMPX43.js} +1 -1
  82. package/browser/{chunk-ESDXMFGP.js → chunk-FINTUPRM.js} +1 -1
  83. package/browser/{chunk-D4FCXEV4.js → chunk-FM7BHGBW.js} +1 -1
  84. package/browser/{chunk-VZUPDSBH.js → chunk-FMEMQRBJ.js} +1 -1
  85. package/browser/chunk-FVFTYYCC.js +4 -0
  86. package/browser/{chunk-A565EUMD.js → chunk-FVNQ7SQY.js} +1 -1
  87. package/browser/{chunk-X44CHNHS.js → chunk-FZQE7J2C.js} +1 -1
  88. package/browser/{chunk-HSIXOQO7.js → chunk-G7L6AVIG.js} +1 -1
  89. package/browser/{chunk-23VPQAH7.js → chunk-GE5I6JYL.js} +1 -1
  90. package/browser/{chunk-DTVCBHPA.js → chunk-GFSJZHCB.js} +1 -1
  91. package/browser/{chunk-QPAUI5EG.js → chunk-GXAF3JUO.js} +1 -1
  92. package/browser/chunk-GZ6OVEDL.js +380 -0
  93. package/browser/{chunk-7AZJVR4Y.js → chunk-H6RHVRGW.js} +1 -1
  94. package/browser/{chunk-4XJWQAS6.js → chunk-HAXEFEKW.js} +1 -1
  95. package/browser/{chunk-7Q672H4P.js → chunk-HLCZLXPS.js} +1 -1
  96. package/browser/{chunk-FPRM3L6U.js → chunk-HYCKETL4.js} +1 -1
  97. package/browser/{chunk-4OEDK7YE.js → chunk-IDJEXQ5I.js} +1 -1
  98. package/browser/{chunk-XMZLK7EB.js → chunk-IDOUPEKS.js} +1 -1
  99. package/browser/{chunk-H74MLHRV.js → chunk-IET73YWA.js} +1 -1
  100. package/browser/{chunk-VKWSK452.js → chunk-IEX7S7T7.js} +1 -1
  101. package/browser/{chunk-AXUSK4R7.js → chunk-IF6EZMOM.js} +3 -3
  102. package/browser/chunk-IKSROKD5.css +1 -0
  103. package/browser/chunk-ISZRZRCT.js +3 -0
  104. package/browser/{chunk-WM2DGNWH.js → chunk-ITTFNOLB.js} +1 -1
  105. package/browser/{chunk-JXXYVM7W.js → chunk-IZF7S2RF.js} +1 -1
  106. package/browser/{chunk-C3STDN73.js → chunk-JEZMYDZR.js} +1 -1
  107. package/browser/{chunk-QHXZVGLB.js → chunk-JHBK7LOJ.js} +7 -7
  108. package/browser/{chunk-T4MU3R7Y.js → chunk-JIRDK6TJ.js} +1 -1
  109. package/browser/chunk-JOLAOKHD.js +21 -0
  110. package/browser/{chunk-6WATOQG3.js → chunk-JQDS4BXR.js} +1 -1
  111. package/browser/{chunk-J6M7UWVR.js → chunk-JT4M6AIA.js} +1 -1
  112. package/browser/{chunk-USD2ALDX.js → chunk-K355XAWO.js} +1 -1
  113. package/browser/{chunk-WFQIMZGL.js → chunk-KBLVOO4J.js} +1 -1
  114. package/browser/{chunk-VDZXLRMK.js → chunk-KDISSQKT.js} +1 -1
  115. package/browser/{chunk-XFGPCEKV.js → chunk-KFC3V2GW.js} +1 -1
  116. package/browser/{chunk-FHB5KLDR.js → chunk-KFOEUAQT.js} +1 -1
  117. package/browser/{chunk-3TWVKV7J.js → chunk-KHB5Q7IN.js} +1 -1
  118. package/browser/{chunk-W2HVYAUB.js → chunk-KIYO2YC2.js} +1 -1
  119. package/browser/{chunk-VX7AVGUY.js → chunk-KKM7I2BT.js} +1 -1
  120. package/browser/chunk-KOZYTEZI.js +1 -0
  121. package/browser/{chunk-KUG5VVV4.js → chunk-KRBFME4B.js} +1 -1
  122. package/browser/chunk-L3U6V3BF.js +5 -0
  123. package/browser/{chunk-45E6XCHN.js → chunk-LB5UXGDG.js} +1 -1
  124. package/browser/{chunk-NM3IQUNN.js → chunk-LGD5WUG2.js} +1 -1
  125. package/browser/{chunk-X5XDXZ47.js → chunk-LHTHIOAY.js} +1 -1
  126. package/browser/{chunk-M4EQZHIE.js → chunk-LKVUZZ5J.js} +1 -1
  127. package/browser/{chunk-4ZITX27A.js → chunk-LMUFX64W.js} +1 -1
  128. package/browser/{chunk-DWYMJ5NO.js → chunk-M4FNFZNJ.js} +1 -1
  129. package/browser/{chunk-D55YCZRM.js → chunk-MEL6Z4NI.js} +1 -1
  130. package/browser/{chunk-IA5RDP6C.js → chunk-MHPLYS7O.js} +1 -1
  131. package/browser/{chunk-45Z7RKI2.js → chunk-MJCLLJBB.js} +2 -2
  132. package/browser/{chunk-53VS5DA7.js → chunk-MM4IJDHI.js} +1 -1
  133. package/browser/{chunk-LNDHYAFW.js → chunk-MWGICBEB.js} +1 -1
  134. package/browser/{chunk-UEN2SKB2.js → chunk-MZDVGN2B.js} +1 -1
  135. package/browser/{chunk-ZTD4APMR.js → chunk-N5RDRDT7.js} +1 -1
  136. package/browser/{chunk-7P3L3ODB.js → chunk-N7OS7SFI.js} +1 -1
  137. package/browser/{chunk-RACYAEOL.js → chunk-NFWYR26Q.js} +1 -1
  138. package/browser/{chunk-S27D5MBU.js → chunk-NJ4KEQKH.js} +1 -1
  139. package/browser/{chunk-72RZBOHX.js → chunk-NS6IC2PT.js} +1 -1
  140. package/browser/{chunk-QIQOKWUA.js → chunk-NYMHQHNP.js} +1 -1
  141. package/browser/{chunk-BNNKSBQ6.js → chunk-O22HDFH6.js} +1 -1
  142. package/browser/{chunk-L7NMU3EE.js → chunk-O7SYLGUB.js} +2 -2
  143. package/browser/{chunk-7YUPYNWQ.js → chunk-OB6KFXD6.js} +2 -2
  144. package/browser/{chunk-5ZD6KTDH.js → chunk-ODYEJFNJ.js} +1 -1
  145. package/browser/{chunk-EHXF34TI.js → chunk-OEOAWKXA.js} +1 -1
  146. package/browser/chunk-OF3BZHBQ.js +1 -0
  147. package/browser/{chunk-VGTN2T5K.js → chunk-OFWJY5WB.js} +1 -1
  148. package/browser/{chunk-SXYJ7APZ.js → chunk-ORTAUDOX.js} +1 -1
  149. package/browser/{chunk-TSH564VU.js → chunk-OUJXEQKL.js} +1 -1
  150. package/browser/{chunk-PRVQ3NAP.js → chunk-P3TFDLWR.js} +2 -2
  151. package/browser/{chunk-COA4UL2V.js → chunk-P7KMHPVN.js} +1 -1
  152. package/browser/{chunk-7JULWG2B.js → chunk-PCRUTQ3T.js} +1 -1
  153. package/browser/{chunk-T7XU5W5A.js → chunk-PNFJVQUF.js} +1 -1
  154. package/browser/{chunk-WKM2QOAU.js → chunk-PSFQWURP.js} +1 -1
  155. package/browser/{chunk-Q6APDC4Z.js → chunk-PSLGWGNP.js} +1 -1
  156. package/browser/{chunk-ERE6AE7H.js → chunk-Q22HR52N.js} +1 -1
  157. package/browser/{chunk-WJXKZZS2.js → chunk-QEL7CGCP.js} +1 -1
  158. package/browser/{chunk-M5R2CYXH.js → chunk-QHGZQ2IG.js} +1 -1
  159. package/browser/{chunk-2CL5FM3P.js → chunk-QJ3CWKQT.js} +1 -1
  160. package/browser/{chunk-PS7477UG.js → chunk-QLSGGWTW.js} +1 -1
  161. package/browser/{chunk-TEGIL5RZ.js → chunk-QWLNF7VL.js} +1 -1
  162. package/browser/chunk-R3HIQ5AX.js +1 -0
  163. package/browser/chunk-R6DRKF4V.js +136 -0
  164. package/browser/{chunk-TOPX3JFU.js → chunk-RDASAJA5.js} +1 -1
  165. package/browser/{chunk-FU2ZGMX4.js → chunk-RIZ4YVMH.js} +1 -1
  166. package/browser/chunk-RJYFOAYX.js +1 -0
  167. package/browser/{chunk-QR7VN5GL.js → chunk-RPBIQ4ME.js} +1 -1
  168. package/browser/{chunk-PWTUEIUR.js → chunk-RT7OZJYZ.js} +1 -1
  169. package/browser/{chunk-EQ4O2B6P.js → chunk-RWW55Z7V.js} +1 -1
  170. package/browser/{chunk-ZNBXH3TQ.js → chunk-RWZGTR3S.js} +1 -1
  171. package/browser/{chunk-IZLEZJ6U.js → chunk-SCAKRK4B.js} +1 -1
  172. package/browser/{chunk-THT6CY5E.js → chunk-SCGKVOSE.js} +1 -1
  173. package/browser/chunk-SMEVWRVE.js +1 -0
  174. package/browser/{chunk-RTQ4SJP2.js → chunk-SQAFHZEO.js} +1 -1
  175. package/browser/{chunk-IKKPP4JS.js → chunk-SWF6XISV.js} +1 -1
  176. package/browser/{chunk-VVWAYTKN.js → chunk-SWVQK6HM.js} +1 -1
  177. package/browser/{chunk-7DAPNQYU.js → chunk-SXRKKO75.js} +1 -1
  178. package/browser/{chunk-WBWMUDOK.js → chunk-T43ISYOP.js} +1 -1
  179. package/browser/{chunk-LGOSIAUC.js → chunk-TANYEHMZ.js} +1 -1
  180. package/browser/{chunk-PQ6W7KXC.js → chunk-TDHDQRJN.js} +1 -1
  181. package/browser/{chunk-YWOH2LVD.js → chunk-TKHSLAZH.js} +14 -14
  182. package/browser/{chunk-6P2ASCNY.js → chunk-TP6ZUC53.js} +1 -1
  183. package/browser/{chunk-ZKOARDC2.js → chunk-TPJWIEYA.js} +1 -1
  184. package/browser/{chunk-L6PKNRWO.js → chunk-TRK4LJDS.js} +1 -1
  185. package/browser/{chunk-QTAF2OHJ.js → chunk-TYVVSM36.js} +1 -1
  186. package/browser/{chunk-32QBWLTN.js → chunk-U4MC22BG.js} +1 -1
  187. package/browser/{chunk-QJUU75N6.js → chunk-U56LRRCE.js} +1 -1
  188. package/browser/{chunk-BAEWHHDC.js → chunk-U6FO6TSU.js} +1 -1
  189. package/browser/{chunk-7NZLZJYF.js → chunk-UFVN6MTY.js} +1 -1
  190. package/browser/{chunk-HXXX3USD.js → chunk-UI6U53UY.js} +9 -9
  191. package/browser/{chunk-B7AC4RMR.js → chunk-UIVJ2JQT.js} +1 -1
  192. package/browser/chunk-UMFN4AJF.js +1 -0
  193. package/browser/{chunk-QG4B6W6L.js → chunk-UPV6ZIB5.js} +1 -1
  194. package/browser/{chunk-ZTU3TIGR.js → chunk-UPZZHMG6.js} +1 -1
  195. package/browser/{chunk-MZITJQAC.js → chunk-UX4QS4XQ.js} +1 -1
  196. package/browser/{chunk-PPVORSJQ.js → chunk-V4LDEQZZ.js} +1 -1
  197. package/browser/chunk-V4V55JMO.js +1 -0
  198. package/browser/{chunk-JBS5UYZC.js → chunk-V6D6TV7B.js} +1 -1
  199. package/browser/{chunk-KYXB2UQI.js → chunk-VEQJR5VL.js} +1 -1
  200. package/browser/{chunk-S2B6A2P3.js → chunk-VG3B7TDX.js} +1 -1
  201. package/browser/{chunk-5USF4MRW.js → chunk-VGHEGWAM.js} +1 -1
  202. package/browser/{chunk-7BQKGIZM.js → chunk-VL7THV5U.js} +1 -1
  203. package/browser/chunk-VRKJC53Z.js +10 -0
  204. package/browser/{chunk-EJWFW6Y5.js → chunk-VS6CGXUJ.js} +1 -1
  205. package/browser/{chunk-54UGZEAQ.js → chunk-WDUPZI6X.js} +1 -1
  206. package/browser/{chunk-4CPRMZL6.js → chunk-WFVMID6Q.js} +1 -1
  207. package/browser/{chunk-Z6X5UYRZ.js → chunk-WFWUOLEG.js} +1 -1
  208. package/browser/{chunk-ARYZHNFV.js → chunk-WGOUSPMF.js} +1 -1
  209. package/browser/{chunk-3CSCTT6I.js → chunk-WOAKN4QZ.js} +1 -1
  210. package/browser/{chunk-GDNVMJOU.js → chunk-WSFSSHIX.js} +1 -1
  211. package/browser/{chunk-ZZBF7AOW.js → chunk-WSWTWRKJ.js} +1 -1
  212. package/browser/chunk-WTIIZBRC.js +22 -0
  213. package/browser/{chunk-5UMDVS4U.js → chunk-XCSDEGWL.js} +1 -1
  214. package/browser/{chunk-FIOEXMKH.js → chunk-XDFUPYND.js} +1 -1
  215. package/browser/{chunk-COGKLKKE.js → chunk-XEPEGKS2.js} +1 -1
  216. package/browser/{chunk-VBIZF245.js → chunk-XFU3EMCG.js} +1 -1
  217. package/browser/{chunk-3NPP3FHR.js → chunk-XGXXFTMA.js} +1 -1
  218. package/browser/{chunk-EHEOIROM.js → chunk-XMPWQ5UV.js} +1 -1
  219. package/browser/chunk-XPM7J5AN.js +1 -0
  220. package/browser/{chunk-RL24GQSJ.js → chunk-XW7VJLDW.js} +1 -1
  221. package/browser/{chunk-4W3WYXI2.js → chunk-XWYCNPUZ.js} +1 -1
  222. package/browser/{chunk-PJ3DTEH2.js → chunk-Y4MERAVA.js} +1 -1
  223. package/browser/chunk-Y6SAXN2J.js +1 -0
  224. package/browser/{chunk-363IDTE3.js → chunk-Y7ZKGM5U.js} +1 -1
  225. package/browser/{chunk-SIDUUVNA.js → chunk-YDL2MTWE.js} +1 -1
  226. package/browser/{chunk-LOWQOYUL.js → chunk-YLXBICIW.js} +1 -1
  227. package/browser/{chunk-JTZHHVPI.js → chunk-YMKZUNJH.js} +1 -1
  228. package/browser/{chunk-VXPORXGI.js → chunk-YQ5PAXUW.js} +1 -1
  229. package/browser/{chunk-C5N3GKEC.js → chunk-Z4WEJMVU.js} +1 -1
  230. package/browser/{chunk-IISHJIET.js → chunk-Z5BFBI3D.js} +1 -1
  231. package/browser/chunk-Z5HEFUTD.js +1 -0
  232. package/browser/{chunk-SLX34TWD.js → chunk-Z76C52NM.js} +1 -1
  233. package/browser/{chunk-A2EVMYAR.js → chunk-ZBHPM2JC.js} +1 -1
  234. package/browser/{chunk-LGINK7BD.js → chunk-ZOYWCF3Q.js} +1 -1
  235. package/browser/{chunk-VZBXT2TV.js → chunk-ZRC22L45.js} +1 -1
  236. package/browser/{chunk-LUKLFBAY.js → chunk-ZRJU5XBX.js} +1 -1
  237. package/browser/{chunk-BQUL7SGN.js → chunk-ZV4K4PP6.js} +3 -3
  238. package/browser/chunk-ZVWC6CBP.js +1 -0
  239. package/browser/index.html +2 -2
  240. package/browser/main-4BFS7RVV.css +1 -0
  241. package/browser/main-6NLSRECT.js +3 -0
  242. package/browser/{styles-URIEURGQ.css → styles-LFDMQGKE.css} +1 -1
  243. package/package.json +1 -1
  244. package/browser/chunk-2VE2WNSA.js +0 -21
  245. package/browser/chunk-4HEJOI53.js +0 -1
  246. package/browser/chunk-4SRWAPD4.js +0 -1
  247. package/browser/chunk-65JSM2XC.js +0 -1
  248. package/browser/chunk-7SRLQQ53.js +0 -22
  249. package/browser/chunk-CQLZHUT4.js +0 -9
  250. package/browser/chunk-DI2O7SU5.js +0 -4
  251. package/browser/chunk-DOCQN2VL.js +0 -1
  252. package/browser/chunk-DSNA2CBA.js +0 -1
  253. package/browser/chunk-DTX2BFBV.js +0 -1
  254. package/browser/chunk-FBNETY2W.js +0 -1
  255. package/browser/chunk-GRGZQFG6.js +0 -380
  256. package/browser/chunk-IEVGW2RT.js +0 -5
  257. package/browser/chunk-JB7Y2263.js +0 -1
  258. package/browser/chunk-KWWIO4GT.js +0 -1
  259. package/browser/chunk-M3DKYPGC.js +0 -1
  260. package/browser/chunk-NBMH5YL2.css +0 -1
  261. package/browser/chunk-NIDHEU4E.js +0 -3
  262. package/browser/chunk-Q7YUJXQP.js +0 -1
  263. package/browser/chunk-SLYXMED6.js +0 -1
  264. package/browser/chunk-SVVH6PSD.js +0 -137
  265. package/browser/chunk-V432I4ZE.js +0 -21
  266. package/browser/chunk-VLISY5AT.js +0 -149
  267. package/browser/chunk-VM4K4MNV.js +0 -1
  268. package/browser/chunk-XY3FCZN2.js +0 -1
  269. package/browser/chunk-ZCQDZKFQ.js +0 -1
  270. package/browser/main-4WYCY6M5.js +0 -3
  271. package/browser/main-WPNH2WGQ.css +0 -1
@@ -1,2 +1,2 @@
1
- import{b as Ki}from"./chunk-GDRHD33K.js";import{O as Zt}from"./chunk-TEGIL5RZ.js";import{a as to}from"./chunk-WUV22SZ4.js";import{Cd as Jr,Gd as Qr,Ha as Kr,Lb as Zr,Qb as _r,ib as qr,la as Vr,o as jr,pa as $r,t as Ur}from"./chunk-IEVGW2RT.js";import{a as ut,b as zt}from"./chunk-SNAKHGZS.js";var qi;(function(c){c.SVG_NS="http://www.w3.org/2000/svg",c.product="Highcharts",c.version="12.2.0",c.win=typeof window<"u"?window:{},c.doc=c.win.document,c.svg=!!c.doc?.createElementNS?.(c.SVG_NS,"svg")?.createSVGRect,c.pageLang=c.doc?.documentElement?.closest("[lang]")?.lang,c.userAgent=c.win.navigator?.userAgent||"",c.isChrome=c.win.chrome,c.isFirefox=c.userAgent.indexOf("Firefox")!==-1,c.isMS=/(edge|msie|trident)/i.test(c.userAgent)&&!c.win.opera,c.isSafari=!c.isChrome&&c.userAgent.indexOf("Safari")!==-1,c.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(c.userAgent),c.isWebKit=c.userAgent.indexOf("AppleWebKit")!==-1,c.deg2rad=Math.PI*2/360,c.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],c.noop=function(){},c.supportsPassiveEvents=(function(){let e=!1;if(!c.isMS){let t=Object.defineProperty({},"passive",{get:function(){e=!0}});c.win.addEventListener&&c.win.removeEventListener&&(c.win.addEventListener("testPassive",c.noop,t),c.win.removeEventListener("testPassive",c.noop,t))}return e})(),c.charts=[],c.composed=[],c.dateFormats={},c.seriesTypes={},c.symbolSizes={},c.chartCount=0})(qi||(qi={}));var I=qi;var{charts:$a,doc:ii,win:_t}=I;function Pe(c,e,t,i){let s=e?"Highcharts error":"Highcharts warning";c===32&&(c=`${s}: Deprecated member`);let r=Qi(c),o=r?`${s} #${c}: www.highcharts.com/errors/${c}/`:c.toString(),n=function(){if(e)throw new Error(o);_t.console&&Pe.messages.indexOf(o)===-1&&console.warn(o)};if(typeof i<"u"){let a="";r&&(o+="?"),Jt(i,function(l,h){a+=`
1
+ import{b as Ki}from"./chunk-GDRHD33K.js";import{O as Zt}from"./chunk-QWLNF7VL.js";import{a as to}from"./chunk-WUV22SZ4.js";import{Ed as Jr,Ha as Kr,Id as Qr,Nb as Zr,Sb as _r,ib as qr,la as Vr,o as jr,pa as $r,t as Ur}from"./chunk-L3U6V3BF.js";import{a as ut,b as zt}from"./chunk-SNAKHGZS.js";var qi;(function(c){c.SVG_NS="http://www.w3.org/2000/svg",c.product="Highcharts",c.version="12.2.0",c.win=typeof window<"u"?window:{},c.doc=c.win.document,c.svg=!!c.doc?.createElementNS?.(c.SVG_NS,"svg")?.createSVGRect,c.pageLang=c.doc?.documentElement?.closest("[lang]")?.lang,c.userAgent=c.win.navigator?.userAgent||"",c.isChrome=c.win.chrome,c.isFirefox=c.userAgent.indexOf("Firefox")!==-1,c.isMS=/(edge|msie|trident)/i.test(c.userAgent)&&!c.win.opera,c.isSafari=!c.isChrome&&c.userAgent.indexOf("Safari")!==-1,c.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(c.userAgent),c.isWebKit=c.userAgent.indexOf("AppleWebKit")!==-1,c.deg2rad=Math.PI*2/360,c.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],c.noop=function(){},c.supportsPassiveEvents=(function(){let e=!1;if(!c.isMS){let t=Object.defineProperty({},"passive",{get:function(){e=!0}});c.win.addEventListener&&c.win.removeEventListener&&(c.win.addEventListener("testPassive",c.noop,t),c.win.removeEventListener("testPassive",c.noop,t))}return e})(),c.charts=[],c.composed=[],c.dateFormats={},c.seriesTypes={},c.symbolSizes={},c.chartCount=0})(qi||(qi={}));var I=qi;var{charts:$a,doc:ii,win:_t}=I;function Pe(c,e,t,i){let s=e?"Highcharts error":"Highcharts warning";c===32&&(c=`${s}: Deprecated member`);let r=Qi(c),o=r?`${s} #${c}: www.highcharts.com/errors/${c}/`:c.toString(),n=function(){if(e)throw new Error(o);_t.console&&Pe.messages.indexOf(o)===-1&&console.warn(o)};if(typeof i<"u"){let a="";r&&(o+="?"),Jt(i,function(l,h){a+=`
2
2
  - ${h}: ${l}`,r&&(o+=encodeURI(h)+"="+encodeURI(l))}),o+=a}lo(I,"displayError",{chart:t,code:c,message:o,params:i},n),Pe.messages.push(o)}(function(c){c.messages=[]})(Pe||(Pe={}));function Ka(c,...e){let t,i=[c,...e],s={},r=function(n,a){return typeof n!="object"&&(n={}),Jt(a,function(l,h){h==="__proto__"||h==="constructor"||(ce(l,!0)&&!io(l)&&!Ji(l)?n[h]=r(n[h]||{},l):n[h]=a[h])}),n};c===!0&&(s=i[1],i=Array.prototype.slice.call(i,2));let o=i.length;for(t=0;t<o;t++)s=r(s,i[t]);return s}function qa(c,e,t){return c>e?c<t?c:t:e}function Za(c,e=0,t){let i=e%2/2,s=t?-1:1;return(Math.round(c*s-i)+i)*s}function _a(c,e,t,i){let s={};function r(o,n,a,l){let h=t?n:o;Jt(o,function(f,d){if(!l&&i&&i.indexOf(d)>-1&&n[d]){f=ro(f),a[d]=[];for(let p=0;p<Math.max(f.length,n[d].length);p++)n[d][p]&&(f[p]===void 0?a[d][p]=n[d][p]:(a[d][p]={},r(f[p],n[d][p],a[d][p],l+1)))}else ce(f,!0)&&!f.nodeType?(a[d]=si(f)?[]:{},r(f,n[d]||{},a[d],l+1),Object.keys(a[d]).length===0&&!(d==="colorAxis"&&l===0)&&delete a[d]):(o[d]!==n[d]||d in o&&!(d in n))&&d!=="__proto__"&&d!=="constructor"&&(a[d]=h[d])})}return r(c,e,s,0),s}function eo(c,e){return parseInt(c,e||10)}function Te(c){return typeof c=="string"}function si(c){let e=Object.prototype.toString.call(c);return e==="[object Array]"||e==="[object Array Iterator]"}function ce(c,e){return!!c&&typeof c=="object"&&(!e||!si(c))}function Ji(c){return ce(c)&&typeof c.nodeType=="number"}function io(c){let e=c?.constructor;return!!(ce(c,!0)&&!Ji(c)&&e?.name&&e.name!=="Object")}function Qi(c){return typeof c=="number"&&!isNaN(c)&&c<1/0&&c>-1/0}function Ja(c,e){let t=c.length;for(;t--;)if(c[t]===e){c.splice(t,1);break}}function Qa(c,e){let t=c.options.index,i=e.length,s;for(s=c.options.isInternal?i:0;s<i+1;s++)if(!e[s]||Qi(t)&&t<Oe(e[s].options.index,e[s]._i)||e[s].options.isInternal){e.splice(s,0,c);break}return s}function tl(c,e){return c.indexOf(e)<0&&!!c.push(e)}function le(c){return typeof c<"u"&&c!==null}function so(c,e,t){let i=Te(e)&&!le(t),s,r=(o,n)=>{le(o)?c.setAttribute(n,o):i?(s=c.getAttribute(n),!s&&n==="class"&&(s=c.getAttribute(n+"Name"))):c.removeAttribute(n)};return Te(e)?r(t,e):Jt(e,r),s}function ro(c){return si(c)?c:[c]}function el(c,e,t){return e>0?setTimeout(c,e,t):(c.call(0,t),-1)}function il(c){le(c)&&clearTimeout(c)}function he(c,e){let t;c||(c={});for(t in e)c[t]=e[t];return c}function Oe(){let c=arguments,e=c.length;for(let t=0;t<e;t++){let i=c[t];if(typeof i<"u"&&i!==null)return i}}function Zi(c,e){he(c.style,e)}function sl(c,e,t,i,s){let r=ii.createElement(c);return e&&he(r,e),s&&Zi(r,{padding:"0",border:"none",margin:"0"}),t&&Zi(r,t),i&&i.appendChild(r),r}function rl(c,e){let t=function(){};return t.prototype=new c,he(t.prototype,e),t}function ol(c,e,t){return new Array((e||2)+1-String(c).replace("-","").length).join(t||"0")+c}function nl(c,e,t){return/%$/.test(c)?e*parseFloat(c)/100+(t||0):parseFloat(c)}function al(c,...e){let t,i;do{t=c;for(i of e)c=c.replace(i[0],i[1])}while(c!==t);return c}function ll(c,e,t){let i=c[e];c[e]=function(){let s=arguments,r=this;return t.apply(this,[function(){return i.apply(r,arguments.length?arguments:s)}].concat([].slice.call(arguments)))}}function oo(c){return Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function hl(c,e,t,i,s){let r,o=c;t=Oe(t,oo(c));let n=c/t;for(e||(e=s?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],i===!1&&(t===1?e=e.filter(function(a){return a%1===0}):t<=.1&&(e=[1/t]))),r=0;r<e.length&&(o=e[r],!(s&&o*t>=c||!s&&n<=(e[r]+(e[r+1]||e[r]))/2));r++);return o=no(o*t,-Math.round(Math.log(.001)/Math.LN10)),o}function cl(c,e){let t=c.length,i,s;for(s=0;s<t;s++)c[s].safeI=s;for(c.sort(function(r,o){return i=e(r,o),i===0?r.safeI-o.safeI:i}),s=0;s<t;s++)delete c[s].safeI}function dl(c){let e=c.length,t=c[0];for(;e--;)c[e]<t&&(t=c[e]);return t}function fl(c){let e=c.length,t=c[0];for(;e--;)c[e]>t&&(t=c[e]);return t}function pl(c,e,t){Jt(c,function(i,s){i!==e&&i?.destroy&&i.destroy(),(i?.destroy||!t)&&delete c[s]})}function ul(c){c?.parentElement?.removeChild(c)}function no(c,e){return c>1e14?c:parseFloat(c.toPrecision(e||14))}var gl={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:24*36e5,week:168*36e5,month:672*36e5,year:364*24*36e5};Math.easeInOutSine=function(c){return-.5*(Math.cos(Math.PI*c)-1)};var ml=(c="")=>({center:.5,right:1,middle:.5,bottom:1})[c]||0;function xl(c,e){let t=!e,i,s,r,o;return c.forEach(n=>{if(n.length>1)for(s=n.length-1,o=s;o>0;o--)r=n[o]-n[o-1],r<0&&!t?(e?.(),e=void 0):r&&(typeof i>"u"||r<i)&&(i=r)}),i}function yl(c,e){let t=c.split(".");for(;t.length&&le(e);){let i=t.shift();if(typeof i>"u"||i==="__proto__")return;if(i==="this"){let r;return ce(e)&&(r=e["@this"]),r??e}let s=e[i.replace(/[\\'"]/g,"")];if(!le(s)||typeof s=="function"||typeof s.nodeType=="number"||s===_t)return;e=s}return e}function Ae(c,e,t){let i;if(e==="width"){let r=Math.min(c.offsetWidth,c.scrollWidth),o=c.getBoundingClientRect?.().width;return o<r&&o>=r-1&&(r=Math.floor(o)),Math.max(0,r-(Ae(c,"padding-left",!0)||0)-(Ae(c,"padding-right",!0)||0))}if(e==="height")return Math.max(0,Math.min(c.offsetHeight,c.scrollHeight)-(Ae(c,"padding-top",!0)||0)-(Ae(c,"padding-bottom",!0)||0));let s=_t.getComputedStyle(c,void 0);return s&&(i=s.getPropertyValue(e),Oe(t,e!=="opacity")&&(i=eo(i))),i}var bl=Array.prototype.find?function(c,e){return c.find(e)}:function(c,e){let t,i=c.length;for(t=0;t<i;t++)if(e(c[t],t))return c[t]};function vl(c){let e=ii.documentElement,t=c.parentElement||c.parentNode?c.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:t.top+(_t.pageYOffset||e.scrollTop)-(e.clientTop||0),left:t.left+(_t.pageXOffset||e.scrollLeft)-(e.clientLeft||0),width:t.width,height:t.height}}function Jt(c,e,t){for(let i in c)Object.hasOwnProperty.call(c,i)&&e.call(t||c[i],c[i],i,c)}function Sl(c,e,t,i={}){let s=typeof c=="function"&&c.prototype||c;Object.hasOwnProperty.call(s,"hcEvents")||(s.hcEvents={});let r=s.hcEvents;I.Point&&c instanceof I.Point&&c.series&&c.series.chart&&(c.series.chart.runTrackerClick=!0);let o=c.addEventListener;o&&o.call(c,e,t,I.supportsPassiveEvents?{passive:i.passive===void 0?e.indexOf("touch")!==-1:i.passive,capture:!1}:!1),r[e]||(r[e]=[]);let n={fn:t,order:typeof i.order=="number"?i.order:1/0};return r[e].push(n),r[e].sort((a,l)=>a.order-l.order),function(){ao(c,e,t)}}function ao(c,e,t){function i(o,n){let a=c.removeEventListener;a&&a.call(c,o,n,!1)}function s(o){let n,a;c.nodeName&&(e?(n={},n[e]=!0):n=o,Jt(n,function(l,h){if(o[h])for(a=o[h].length;a--;)i(h,o[h][a].fn)}))}let r=typeof c=="function"&&c.prototype||c;if(Object.hasOwnProperty.call(r,"hcEvents")){let o=r.hcEvents;if(e){let n=o[e]||[];t?(o[e]=n.filter(function(a){return t!==a.fn}),i(e,t)):(s(o),o[e]=[])}else s(o),delete r.hcEvents}}function lo(c,e,t,i){if(t=t||{},ii?.createEvent&&(c.dispatchEvent||c.fireEvent&&c!==I)){let s=ii.createEvent("Events");s.initEvent(e,!0,!0),t=he(s,t),c.dispatchEvent?c.dispatchEvent(t):c.fireEvent(e,t)}else if(c.hcEvents){t.target||he(t,{preventDefault:function(){t.defaultPrevented=!0},target:c,type:e});let s=[],r=c,o=!1;for(;r.hcEvents;)Object.hasOwnProperty.call(r,"hcEvents")&&r.hcEvents[e]&&(s.length&&(o=!0),s.unshift.apply(s,r.hcEvents[e])),r=Object.getPrototypeOf(r);o&&s.sort((n,a)=>n.order-a.order),s.forEach(n=>{n.fn.call(c,t)===!1&&t.preventDefault()})}i&&!t.defaultPrevented&&i.call(c,t)}var _i,kl=(function(){let c=Math.random().toString(36).substring(2,9)+"-",e=0;return function(){return"highcharts-"+(_i?"":c)+e++}})();function Ml(c){return _i=Oe(c,_i)}function wl(c){return typeof c=="function"}function Cl(c){return Te(c)?c.substring(0,1).toUpperCase()+c.substring(1):String(c)}_t.jQuery&&(_t.jQuery.fn.highcharts=function(){let c=[].slice.call(arguments);if(this[0])return c[0]?(new I[Te(c[0])?c.shift():"Chart"](this[0],c[0],c[1]),this):$a[so(this[0],"data-highcharts-chart")]});var Al={addEvent:Sl,arrayMax:fl,arrayMin:dl,attr:so,clamp:qa,clearTimeout:il,correctFloat:no,createElement:sl,crisp:Za,css:Zi,defined:le,destroyObjectProperties:pl,diffObjects:_a,discardElement:ul,erase:Ja,error:Pe,extend:he,extendClass:rl,find:bl,fireEvent:lo,getAlignFactor:ml,getClosestDistance:xl,getMagnitude:oo,getNestedProperty:yl,getStyle:Ae,insertItem:Qa,isArray:si,isClass:io,isDOMElement:Ji,isFunction:wl,isNumber:Qi,isObject:ce,isString:Te,merge:Ka,normalizeTickInterval:hl,objectEach:Jt,offset:vl,pad:ol,pick:Oe,pInt:eo,pushUnique:tl,relativeLength:nl,removeEvent:ao,replaceNested:al,splat:ro,stableSort:cl,syncTimeout:el,timeUnits:gl,ucfirst:Cl,uniqueKey:kl,useSerialIds:Ml,wrap:ll},T=Al;var Pl={alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"},ho=Pl;var Tl={colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]},co=Tl;var{pageLang:Ol,win:ri}=I,{defined:fo,error:po,extend:ts,isNumber:uo,isObject:es,isString:Le,merge:Ll,objectEach:Dl,pad:Wt,splat:El,timeUnits:is,ucfirst:Il}=T,Bl=I.isSafari&&ri.Intl&&!ri.Intl.DateTimeFormat.prototype.formatRange,Rl=c=>c.main===void 0,ss=class{constructor(e,t){this.options={timezone:"UTC"},this.variableTimezone=!1,this.Date=ri.Date,this.update(e),this.lang=t}update(e={}){this.dTLCache={},this.options=e=Ll(!0,this.options,e);let{timezoneOffset:t,useUTC:i}=e;this.Date=e.Date||ri.Date||Date;let s=e.timezone;fo(i)&&(s=i?"UTC":void 0),t&&t%60===0&&(s="Etc/GMT"+(t>0?"+":"")+t/60),this.variableTimezone=s!=="UTC"&&s?.indexOf("Etc/GMT")!==0,this.timezone=s,["months","shortMonths","weekdays","shortWeekdays"].forEach(r=>{let o=/months/i.test(r),n=/short/.test(r),a={timeZone:"UTC"};a[o?"month":"weekday"]=n?"short":"long",this[r]=(o?[0,1,2,3,4,5,6,7,8,9,10,11]:[3,4,5,6,7,8,9]).map(l=>this.dateFormat(a,(o?31:1)*24*36e5*l))})}toParts(e){let[t,i,s,r,o,n,a]=this.dateTimeFormat({weekday:"narrow",day:"numeric",month:"numeric",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"},e,"es").split(/(?:, | |\/|:)/g);return[r,+s-1,i,o,n,a,Math.floor(Number(e)||0)%1e3,"DLMXJVS".indexOf(t)].map(Number)}dateTimeFormat(e,t,i=this.options.locale||Ol){let s=JSON.stringify(e)+i;Le(e)&&(e=this.str2dtf(e));let r=this.dTLCache[s];if(!r){e.timeZone??(e.timeZone=this.timezone);try{r=new Intl.DateTimeFormat(i,e)}catch(o){/Invalid time zone/i.test(o.message)?(po(34),e.timeZone="UTC",r=new Intl.DateTimeFormat(i,e)):po(o.message,!1)}}return this.dTLCache[s]=r,r?.format(t)||""}str2dtf(e,t={}){let i={L:{fractionalSecondDigits:3},S:{second:"2-digit"},M:{minute:"numeric"},H:{hour:"2-digit"},k:{hour:"numeric"},E:{weekday:"narrow"},a:{weekday:"short"},A:{weekday:"long"},d:{day:"2-digit"},e:{day:"numeric"},b:{month:"short"},B:{month:"long"},m:{month:"2-digit"},o:{month:"numeric"},y:{year:"2-digit"},Y:{year:"numeric"}};return Object.keys(i).forEach(s=>{e.indexOf(s)!==-1&&ts(t,i[s])}),t}makeTime(e,t,i=1,s=0,r,o,n){let a=this.Date.UTC(e,t,i,s,r||0,o||0,n||0);if(this.timezone!=="UTC"){let l=this.getTimezoneOffset(a);if(a+=l,[2,3,8,9,10,11].indexOf(t)!==-1&&(s<5||s>20)){let h=this.getTimezoneOffset(a);l!==h?a+=h-l:l-36e5===this.getTimezoneOffset(a-36e5)&&!Bl&&(a-=36e5)}}return a}parse(e){if(!Le(e))return e??void 0;e=e.replace(/\//g,"-").replace(/(GMT|UTC)/,"");let t=e.indexOf("Z")>-1||/([+-][0-9]{2}):?[0-9]{2}$/.test(e),i=/^[0-9]{4}-[0-9]{2}(-[0-9]{2}|)$/.test(e);!t&&!i&&(e+="Z");let s=Date.parse(e);if(uo(s))return s+(!t||i?this.getTimezoneOffset(s):0)}getTimezoneOffset(e){if(this.timezone!=="UTC"){let[t,i,s,r,o=0]=this.dateTimeFormat({timeZoneName:"shortOffset"},e,"en").split(/(GMT|:)/).map(Number),n=-(s+o/60)*60*6e4;if(uo(n))return n}return 0}dateFormat(e,t,i){let s=this.lang;if(!fo(t)||isNaN(t))return s?.invalidDate||"";if(e=e??"%Y-%m-%d %H:%M:%S",Le(e)){let r=/%\[([a-zA-Z]+)\]/g,o;for(;o=r.exec(e);)e=e.replace(o[0],this.dateTimeFormat(o[1],t,s?.locale))}if(Le(e)&&e.indexOf("%")!==-1){let r=this,[o,n,a,l,h,f,d,p]=this.toParts(t),g=s?.weekdays||this.weekdays,u=s?.shortWeekdays||this.shortWeekdays,m=s?.months||this.months,x=s?.shortMonths||this.shortMonths,y=ts({a:u?u[p]:g[p].substr(0,3),A:g[p],d:Wt(a),e:Wt(a,2," "),w:p,v:s?.weekFrom??"",b:x[n],B:m[n],m:Wt(n+1),o:n+1,y:o.toString().substr(2,2),Y:o,H:Wt(l),k:l,I:Wt(l%12||12),l:l%12||12,M:Wt(h),p:l<12?"AM":"PM",P:l<12?"am":"pm",S:Wt(f),L:Wt(d,3)},I.dateFormats);Dl(y,function(b,v){if(Le(e))for(;e.indexOf("%"+v)!==-1;)e=e.replace("%"+v,typeof b=="function"?b.call(r,t):b)})}else if(es(e)){let r=(this.getTimezoneOffset(t)||0)/36e5,o=this.timezone||"Etc/GMT"+(r>=0?"+":"")+r,{prefix:n="",suffix:a=""}=e;e=n+this.dateTimeFormat(ts({timeZone:o},e),t)+a}return i?Il(e):e}resolveDTLFormat(e){return es(e,!0)?es(e,!0)&&Rl(e)?{main:e}:e:(e=El(e),{main:e[0],from:e[1],to:e[2]})}getDateFormat(e,t,i,s){let r=this.dateFormat("%m-%d %H:%M:%S.%L",t),o="01-01 00:00:00.000",n={millisecond:15,second:12,minute:9,hour:6,day:3},a="millisecond",l=a;for(a in is){if(e&&e===is.week&&+this.dateFormat("%w",t)===i&&r.substr(6)===o.substr(6)){a="week";break}if(e&&is[a]>e){a=l;break}if(n[a]&&r.substr(n[a])!==o.substr(n[a]))break;a!=="week"&&(l=a)}return this.resolveDTLFormat(s[a]).main}},go=ss;var{defined:mo,extend:Nl,timeUnits:rt}=T,rs=class extends go{getTimeTicks(e,t,i,s){let r=this,o=[],n={},{count:a=1,unitRange:l}=e,[h,f,d,p,g,u]=r.toParts(t),m=(t||0)%1e3,x;if(s??(s=1),mo(t)){if(m=l>=rt.second?0:a*Math.floor(m/a),l>=rt.second&&(u=l>=rt.minute?0:a*Math.floor(u/a)),l>=rt.minute&&(g=l>=rt.hour?0:a*Math.floor(g/a)),l>=rt.hour&&(p=l>=rt.day?0:a*Math.floor(p/a)),l>=rt.day&&(d=l>=rt.month?1:Math.max(1,a*Math.floor(d/a))),l>=rt.month&&(f=l>=rt.year?0:a*Math.floor(f/a)),l>=rt.year&&(h-=h%a),l===rt.week){a&&(t=r.makeTime(h,f,d,p,g,u,m));let v=this.dateTimeFormat({timeZone:this.timezone,weekday:"narrow"},t,"es"),S="DLMXJVS".indexOf(v);d+=-S+s+(S<s?-7:0)}t=r.makeTime(h,f,d,p,g,u,m),r.variableTimezone&&mo(i)&&(x=i-t>4*rt.month||r.getTimezoneOffset(t)!==r.getTimezoneOffset(i));let y=t,b=1;for(;y<i;)o.push(y),l===rt.year?y=r.makeTime(h+b*a,0):l===rt.month?y=r.makeTime(h,f+b*a):x&&(l===rt.day||l===rt.week)?y=r.makeTime(h,f,d+b*a*(l===rt.day?1:7)):x&&l===rt.hour&&a>1?y=r.makeTime(h,f,d,p+b*a):y+=l*a,b++;o.push(y),l<=rt.hour&&o.length<1e4&&o.forEach(v=>{v%18e5===0&&r.dateFormat("%H%M%S%L",v)==="000000000"&&(n[v]="day")})}return o.info=Nl(e,{higherRanks:n,totalRange:l*a}),o}},de=rs;var{isTouchDevice:zl}=I,{fireEvent:Wl,merge:Hl}=T,Dt={colors:co.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{weekFrom:"week from",chartTitle:"Chart title",locale:void 0,loading:"Loading...",months:void 0,seriesName:"Series {add index 1}",shortMonths:void 0,weekdays:void 0,numericSymbols:["k","M","G","T","P","E"],pieSliceName:"Slice",resetZoom:"Reset zoom",yAxisTitle:"Values",resetZoomTitle:"Reset zoom level 1:1"},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,timezone:"UTC",timezoneOffset:0,useUTC:void 0},chart:ho,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",margin:15,minScale:.67},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:""},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:c=>Math.sqrt(1-Math.pow(c-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%[AebHMSL]",second:"%[AebHMS]",minute:"%[AebHM]",hour:"%[AebHM]",day:"%[AebY]",week:"%v %[AebY]",month:"%[BY]",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,position:{x:0,y:3},shared:!1,snap:zl?25:10,headerFormat:'<span style="font-size: 0.8em">{ucfirst point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:"#ffffff",borderWidth:void 0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},useHTML:!1},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"0.6em"},text:"Highcharts.com"}},os=new de(Dt.time,Dt.lang);function Xl(){return Dt}function Fl(c){return Wl(I,"setOptions",{options:c}),Hl(!0,Dt,c),c.time&&os.update(Dt.time),c.lang&&"locale"in c.lang&&os.update({locale:c.lang.locale}),c.lang?.chartTitle&&(Dt.title=zt(ut({},Dt.title),{text:c.lang.chartTitle})),Dt}var Yl={defaultOptions:Dt,defaultTime:os,getOptions:Xl,setOptions:Fl},ot=Yl;var{win:Gl}=I,{isNumber:De,isString:jl,merge:Ul,pInt:gt,defined:xo}=T,yo=(c,e,t)=>`color-mix(in srgb,${c},${e} ${t*100}%)`,ns=c=>jl(c)&&!!c&&c!=="none",Ht=class c{static parse(e){return e?new c(e):c.None}constructor(e){this.rgba=[NaN,NaN,NaN,NaN],this.input=e;let t=I.Color;if(t&&t!==c)return new t(e);let i,s,r,o;if(typeof e=="object"&&typeof e.stops<"u")this.stops=e.stops.map(n=>new c(n[1]));else if(typeof e=="string")for(this.input=e=c.names[e.toLowerCase()]||e,r=c.parsers.length;r--&&!s;)o=c.parsers[r],i=o.regex.exec(e),i&&(s=o.parse(i));s&&(this.rgba=s)}get(e){let t=this.input,i=this.rgba;if(this.output)return this.output;if(typeof t=="object"&&typeof this.stops<"u"){let s=Ul(t);return s.stops=[].slice.call(s.stops),this.stops.forEach((r,o)=>{s.stops[o]=[s.stops[o][0],r.get(e)]}),s}return i&&De(i[0])?e==="rgb"||!e&&i[3]===1?"rgb("+i[0]+","+i[1]+","+i[2]+")":e==="a"?`${i[3]}`:"rgba("+i.join(",")+")":t}brighten(e){let t=this.rgba;if(this.stops)this.stops.forEach(function(i){i.brighten(e)});else if(De(e)&&e!==0)if(De(t[0]))for(let i=0;i<3;i++)t[i]+=gt(e*255),t[i]<0&&(t[i]=0),t[i]>255&&(t[i]=255);else c.useColorMix&&ns(this.input)&&(this.output=yo(this.input,e>0?"white":"black",Math.abs(e)));return this}setOpacity(e){return this.rgba[3]=e,this}tweenTo(e,t){let i=this.rgba,s=e.rgba;if(!De(i[0])||!De(s[0]))return c.useColorMix&&ns(this.input)&&ns(e.input)&&t<.99?yo(this.input,e.input,t):e.input||"none";let r=s[3]!==1||i[3]!==1,o=(a,l)=>a+(i[l]-a)*(1-t),n=s.slice(0,3).map(o).map(Math.round);return r&&n.push(o(s[3],3)),(r?"rgba(":"rgb(")+n.join(",")+")"}};Ht.names={white:"#ffffff",black:"#000000"};Ht.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(c){return[gt(c[1]),gt(c[2]),gt(c[3]),parseFloat(c[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(c){return[gt(c[1]),gt(c[2]),gt(c[3]),1]}},{regex:/^#([a-f0-9])([a-f0-9])([a-f0-9])([a-f0-9])?$/i,parse:function(c){return[gt(c[1]+c[1],16),gt(c[2]+c[2],16),gt(c[3]+c[3],16),xo(c[4])?gt(c[4]+c[4],16)/255:1]}},{regex:/^#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})?$/i,parse:function(c){return[gt(c[1],16),gt(c[2],16),gt(c[3],16),xo(c[4])?gt(c[4],16)/255:1]}}];Ht.useColorMix=Gl.CSS?.supports("color","color-mix(in srgb,red,blue 9%)");Ht.None=new Ht("");var pt=Ht;var{parse:bo}=pt,{win:Vl}=I,{isNumber:as,objectEach:$l}=T,Kl=(()=>{class c{constructor(t,i,s){this.pos=NaN,this.options=i,this.elem=t,this.prop=s}dSetter(){let t=this.paths,i=t?.[0],s=t?.[1],r=this.now||0,o=[];if(r===1||!i||!s)o=this.toD||[];else if(i.length===s.length&&r<1)for(let n=0;n<s.length;n++){let a=i[n],l=s[n],h=[];for(let f=0;f<l.length;f++){let d=a[f],p=l[f];as(d)&&as(p)&&!(l[0]==="A"&&(f===4||f===5))?h[f]=d+r*(p-d):h[f]=p}o.push(h)}else o=s;this.elem.attr("d",o,void 0,!0)}update(){let t=this.elem,i=this.prop,s=this.now,r=this.options.step;this[i+"Setter"]?this[i+"Setter"]():t.attr?t.element&&t.attr(i,s,null,!0):t.style[i]=s+this.unit,r&&r.call(t,s,this)}run(t,i,s){let r=this,o=r.options,n=function(h){return n.stopped?!1:r.step(h)},a=Vl.requestAnimationFrame||function(h){setTimeout(h,13)},l=function(){for(let h=0;h<c.timers.length;h++)c.timers[h]()||c.timers.splice(h--,1);c.timers.length&&a(l)};t===i&&!this.elem["forceAnimate:"+this.prop]?(delete o.curAnim[this.prop],o.complete&&Object.keys(o.curAnim).length===0&&o.complete.call(this.elem)):(this.startTime=+new Date,this.start=t,this.end=i,this.unit=s,this.now=this.start,this.pos=0,n.elem=this.elem,n.prop=this.prop,n()&&c.timers.push(n)===1&&a(l))}step(t){let i=+new Date,s=this.options,r=this.elem,o=s.complete,n=s.duration,a=s.curAnim,l,h;return r.attr&&!r.element?l=!1:t||i>=n+this.startTime?(this.now=this.end,this.pos=1,this.update(),a[this.prop]=!0,h=!0,$l(a,function(f){f!==!0&&(h=!1)}),h&&o&&o.call(r),l=!1):(this.pos=s.easing((i-this.startTime)/n),this.now=this.start+(this.end-this.start)*this.pos,this.update(),l=!0),l}initPath(t,i,s){let r=t.startX,o=t.endX,n=s.slice(),a=t.isArea,l=a?2:1,h=i&&s.length>i.length&&s.hasStackedCliffs,f,d,p,g,u=i?.slice();if(!u||h)return[n,n];function m(y,b){for(;y.length<d;){let v=y[0],S=b[d-y.length];if(S&&v[0]==="M"&&(S[0]==="C"?y[0]=["C",v[1],v[2],v[1],v[2],v[1],v[2]]:y[0]=["L",v[1],v[2]]),y.unshift(v),a){let k=y.pop();y.push(y[y.length-1],k)}}}function x(y){for(;y.length<d;){let b=y[Math.floor(y.length/l)-1].slice();if(b[0]==="C"&&(b[1]=b[5],b[2]=b[6]),!a)y.push(b);else{let v=y[Math.floor(y.length/l)].slice();y.splice(y.length/2,0,b,v)}}}if(r&&o&&o.length){for(p=0;p<r.length;p++)if(r[p]===o[0]){f=p;break}else if(r[0]===o[o.length-r.length+p]){f=p,g=!0;break}else if(r[r.length-1]===o[o.length-r.length+p]){f=r.length-p;break}typeof f>"u"&&(u=[])}return u.length&&as(f)&&(d=n.length+f*l,g?(m(u,n),x(n)):(m(n,u),x(u))),[u,n]}fillSetter(){c.prototype.strokeSetter.apply(this,arguments)}strokeSetter(){this.elem.attr(this.prop,bo(this.start).tweenTo(bo(this.end),this.pos),void 0,!0)}}return c.timers=[],c})(),Et=Kl;var{defined:ql,getStyle:Zl,isArray:_l,isNumber:Jl,isObject:hs,merge:vo,objectEach:Ql,pick:th}=T;function eh(c,e){e.renderer.globalAnimation=th(c,e.options.chart.animation,!0)}function ls(c){return hs(c)?vo({duration:500,defer:0},c):{duration:c?500:0,defer:0}}function ih(c,e,t){let i=ls(e),s=t?[t]:c.series,r=0,o=0;return s.forEach(a=>{let l=ls(a.options.animation);r=hs(e)&&ql(e.defer)?i.defer:Math.max(r,l.duration+l.defer),o=Math.min(i.duration,l.duration)}),c.renderer.forExport&&(r=0),{defer:Math.max(0,r-o),duration:Math.min(r,o)}}function sh(c,e,t){let i,s="",r,o,n;hs(t)||(n=arguments,t={duration:n[2],easing:n[3],complete:n[4]}),Jl(t.duration)||(t.duration=400),t.easing=typeof t.easing=="function"?t.easing:Math[t.easing]||Math.easeInOutSine,t.curAnim=vo(e),Ql(e,function(a,l){So(c,l),o=new Et(c,t,l),r=void 0,l==="d"&&_l(e.d)?(o.paths=o.initPath(c,c.pathArray,e.d),o.toD=e.d,i=0,r=1):c.attr?i=c.attr(l):(i=parseFloat(Zl(c,l))||0,l!=="opacity"&&(s="px")),r||(r=a),typeof r=="string"&&r.match("px")&&(r=r.replace(/px/g,"")),o.run(i,r,s)})}function So(c,e){let t=Et.timers.length;for(;t--;)Et.timers[t].elem===c&&(!e||e===Et.timers[t].prop)&&(Et.timers[t].stopped=!0)}var rh={animate:sh,animObject:ls,getDeferredAnimation:ih,setAnimation:eh,stop:So},_=rh;var{SVG_NS:ko,win:oh}=I,{attr:nh,createElement:ah,css:lh,error:Mo,isFunction:hh,isString:wo,objectEach:Co,splat:ch}=T,{trustedTypes:cs}=oh,oi=cs&&hh(cs.createPolicy)&&cs.createPolicy("highcharts",{createHTML:c=>c}),dh=oi?oi.createHTML(""):"",fh=(()=>{class c{static filterUserAttributes(t){return Co(t,(i,s)=>{let r=!0;c.allowedAttributes.indexOf(s)===-1&&(r=!1),["background","dynsrc","href","lowsrc","src"].indexOf(s)!==-1&&(r=wo(i)&&c.allowedReferences.some(o=>i.indexOf(o)===0)),r||(Mo(33,!1,void 0,{"Invalid attribute in config":`${s}`}),delete t[s]),wo(i)&&t[s]&&(t[s]=i.replace(/</g,"&lt;"))}),t}static parseStyle(t){return t.split(";").reduce((i,s)=>{let r=s.split(":").map(n=>n.trim()),o=r.shift();return o&&r.length&&(i[o.replace(/-([a-z])/g,n=>n[1].toUpperCase())]=r.join(":")),i},{})}static setElementHTML(t,i){t.innerHTML=c.emptyHTML,i&&new c(i).addToDOM(t)}constructor(t){this.nodes=typeof t=="string"?this.parseMarkup(t):t}addToDOM(t){function i(s,r){let o;return ch(s).forEach(function(n){let a=n.tagName,l=n.textContent?I.doc.createTextNode(n.textContent):void 0,h=c.bypassHTMLFiltering,f;if(a)if(a==="#text")f=l;else if(c.allowedTags.indexOf(a)!==-1||h){let d=a==="svg"?ko:r.namespaceURI||ko,p=I.doc.createElementNS(d,a),g=n.attributes||{};Co(n,function(u,m){m!=="tagName"&&m!=="attributes"&&m!=="children"&&m!=="style"&&m!=="textContent"&&(g[m]=u)}),nh(p,h?g:c.filterUserAttributes(g)),n.style&&lh(p,n.style),l&&p.appendChild(l),i(n.children||[],p),f=p}else Mo(33,!1,void 0,{"Invalid tagName in config":a});f&&r.appendChild(f),o=f}),o}return i(this.nodes,t)}parseMarkup(t){let i=[];t=t.trim().replace(/ style=(["'])/g," data-style=$1");let s;try{s=new DOMParser().parseFromString(oi?oi.createHTML(t):t,"text/html")}catch{}if(!s){let o=ah("div");o.innerHTML=t,s={body:o}}let r=(o,n)=>{let a=o.nodeName.toLowerCase(),l={tagName:a};a==="#text"&&(l.textContent=o.textContent||"");let h=o.attributes;if(h){let f={};[].forEach.call(h,d=>{d.name==="data-style"?l.style=c.parseStyle(d.value):f[d.name]=d.value}),l.attributes=f}if(o.childNodes.length){let f=[];[].forEach.call(o.childNodes,d=>{r(d,f)}),f.length&&(l.children=f)}n.push(l)};return[].forEach.call(s.body.childNodes,o=>r(o,i)),i}}return c.allowedAttributes=["alt","aria-controls","aria-describedby","aria-expanded","aria-haspopup","aria-hidden","aria-label","aria-labelledby","aria-live","aria-pressed","aria-readonly","aria-roledescription","aria-selected","class","clip-path","color","colspan","cx","cy","d","dx","dy","disabled","fill","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],c.allowedReferences=["https://","http://","mailto:","/","../","./","#"],c.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],c.emptyHTML=dh,c.bypassHTMLFiltering=!1,c})(),dt=fh;var{defaultOptions:Oo,defaultTime:Lo}=ot,{pageLang:ph}=I,{extend:uh,getNestedProperty:gh,isArray:mh,isNumber:Ao,isObject:xh,isString:yh,pick:bh,ucfirst:vh}=T,ni={add:(c,e)=>c+e,divide:(c,e)=>e!==0?c/e:"",eq:(c,e)=>c==e,each:function(c){let e=arguments[arguments.length-1];return mh(c)?c.map((t,i)=>ai(e.body,uh(xh(t)?t:{"@this":t},{"@index":i,"@first":i===0,"@last":i===c.length-1}))).join(""):!1},ge:(c,e)=>c>=e,gt:(c,e)=>c>e,if:c=>!!c,le:(c,e)=>c<=e,lt:(c,e)=>c<e,multiply:(c,e)=>c*e,ne:(c,e)=>c!=e,subtract:(c,e)=>c-e,ucfirst:vh,unless:c=>!c},Po={},To=c=>/^["'].+["']$/.test(c);function Sh(c,e,t){return Lo.dateFormat(c,e,t)}function ai(c="",e,t){let i=/\{([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'’= #\(\)]+)\}/g,s=/\(([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'= ]+)\)/g,r=[],o=/f$/,n=/\.(\d)/,a=t?.options?.lang||Oo.lang,l=t?.time||Lo,h=t?.numberFormatter||Do,f=(m="")=>{let x;return m==="true"?!0:m==="false"?!1:(x=Number(m)).toString()===m?x:To(m)?m.slice(1,-1):gh(m,e)},d,p,g=0,u;for(;(d=i.exec(c))!==null;){let m=d,x=s.exec(d[1]);x&&(d=x,u=!0),p?.isBlock||(p={ctx:e,expression:d[1],find:d[0],isBlock:d[1].charAt(0)==="#",start:d.index,startInner:d.index+d[0].length,length:d[0].length});let y=(p.isBlock?m:d)[1].split(" ")[0].replace("#","");ni[y]&&(p.isBlock&&y===p.fn&&g++,p.fn||(p.fn=y));let b=d[1]==="else";if(p.isBlock&&p.fn&&(d[1]===`/${p.fn}`||b))if(g)b||g--;else{let v=p.startInner,S=c.substr(v,d.index-v);p.body===void 0?(p.body=S,p.startInner=d.index+d[0].length):p.elseBody=S,p.find+=S+d[0],b||(r.push(p),p=void 0)}else p.isBlock||r.push(p);if(x&&!p?.isBlock)break}return r.forEach(m=>{let{body:x,elseBody:y,expression:b,fn:v}=m,S,k;if(v){let w=[m],M=[],C=b.length,A=0,P;for(k=0;k<=C;k++){let O=b.charAt(k);!P&&(O==='"'||O==="'")?P=O:P===O&&(P=""),!P&&(O===" "||k===C)&&(M.push(b.substr(A,k-A)),A=k+1)}for(k=ni[v].length;k--;)w.unshift(f(M[k+1]));S=ni[v].apply(e,w),m.isBlock&&typeof S=="boolean"&&(S=ai(S?x:y,e,t))}else{let w=To(b)?[b]:b.split(":");if(S=f(w.shift()||""),w.length&&typeof S=="number"){let M=w.join(":");if(o.test(M)){let C=parseInt((M.match(n)||["","-1"])[1],10);S!==null&&(S=h(S,C,a.decimalPoint,M.indexOf(",")>-1?a.thousandsSep:""))}else S=l.dateFormat(M,S)}s.lastIndex=0,s.test(m.find)&&yh(S)&&(S=`"${S}"`)}c=c.replace(m.find,bh(S,""))}),u?ai(c,e,t):c}function Do(c,e,t,i){c=+c||0,e=+e;let s,r,[o,n]=c.toString().split("e").map(Number),a=this?.options?.lang||Oo.lang,l=(c.toString().split(".")[1]||"").split("e")[0].length,h=e,f={};t??(t=a.decimalPoint),i??(i=a.thousandsSep),e===-1?e=Math.min(l,20):Ao(e)?e&&n<0&&(r=e+n,r>=0?(o=+o.toExponential(r).split("e")[0],e=r):(o=Math.floor(o),e<20?c=+(o*Math.pow(10,n)).toFixed(e):c=0,n=0)):e=2,n&&(e??(e=2),c=o),Ao(e)&&e>=0&&(f.minimumFractionDigits=e,f.maximumFractionDigits=e),i===""&&(f.useGrouping=!1);let d=i||t,p=d?"en":this?.locale||a.locale||ph,g=JSON.stringify(f)+p;return s=(Po[g]??(Po[g]=new Intl.NumberFormat(p,f))).format(c),d&&(s=s.replace(/([,\.])/g,"_$1").replace(/_\,/g,i??",").replace("_.",t??".")),(!e&&+s==0||n<0&&!h)&&(s="0"),n&&+s!=0&&(s+="e"+(n<0?"":"+")+n),s}var kh={dateFormat:Sh,format:ai,helpers:ni,numberFormat:Do},nt=kh;var ds;(function(c){c.rendererTypes={};let e;function t(s=e){return c.rendererTypes[s]||c.rendererTypes[e]}c.getRendererType=t;function i(s,r,o){c.rendererTypes[s]=r,(!e||o)&&(e=s,I.Renderer=r)}c.registerRendererType=i})(ds||(ds={}));var wt=ds;var{clamp:Mh,pick:wh,pushUnique:Ch,stableSort:fs}=T,ps;(function(c){function e(t,i,s){let r=t,o=r.reducedLen||i,n=(S,k)=>(k.rank||0)-(S.rank||0),a=(S,k)=>S.target-k.target,l=[],h=t.length,f=[],d=l.push,p,g,u,m=!0,x,y,b=0,v;for(p=h;p--;)b+=t[p].size;if(b>o){for(fs(t,n),v=t[0].rank===t[t.length-1].rank,u=v?h/2:-1,g=v?u:h-1;u&&b>o;)p=Math.floor(g),x=t[p],Ch(f,p)&&(b-=x.size),g+=u,v&&g>=t.length&&(u/=2,g=u);f.sort((S,k)=>k-S).forEach(S=>d.apply(l,t.splice(S,1)))}for(fs(t,a),t=t.map(S=>({size:S.size,targets:[S.target],align:wh(S.align,.5)}));m;){for(p=t.length;p--;)x=t[p],y=(Math.min.apply(0,x.targets)+Math.max.apply(0,x.targets))/2,x.pos=Mh(y-x.size*x.align,0,i-x.size);for(p=t.length,m=!1;p--;)p>0&&t[p-1].pos+t[p-1].size>t[p].pos&&(t[p-1].size+=t[p].size,t[p-1].targets=t[p-1].targets.concat(t[p].targets),t[p-1].align=.5,t[p-1].pos+t[p-1].size>i&&(t[p-1].pos=i-t[p-1].size),t.splice(p,1),m=!0)}return d.apply(r,l),p=0,t.some(S=>{let k=0;return(S.targets||[]).some(()=>(r[p].pos=S.pos+k,typeof s<"u"&&Math.abs(r[p].pos-r[p].target)>s?(r.slice(0,p+1).forEach(w=>delete w.pos),r.reducedLen=(r.reducedLen||i)-i*.1,r.reducedLen>i*.1&&e(r,i,s),!0):(k+=r[p].size,p++,!1)))}),fs(r,a),r}c.distribute=e})(ps||(ps={}));var Xt=ps;var{animate:Ah,animObject:Ph,stop:Eo}=_,{deg2rad:Io,doc:fe,svg:Th,SVG_NS:li,win:Oh,isFirefox:Lh}=I,{addEvent:Dh,attr:us,createElement:Eh,crisp:hi,css:Bo,defined:Ct,erase:Ih,extend:Ee,fireEvent:gs,getAlignFactor:ms,isArray:Ro,isFunction:No,isNumber:Bh,isObject:Rh,isString:zo,merge:xs,objectEach:pe,pick:It,pInt:ci,pushUnique:Nh,replaceNested:zh,syncTimeout:Wh,uniqueKey:Wo}=T,xt=(()=>{class c{_defaultGetter(t){let i=It(this[t+"Value"],this[t],this.element?this.element.getAttribute(t):null,0);return/^-?[\d\.]+$/.test(i)&&(i=parseFloat(i)),i}_defaultSetter(t,i,s){s.setAttribute(i,t)}add(t){let i=this.renderer,s=this.element,r;return t&&(this.parentGroup=t),typeof this.textStr<"u"&&this.element.nodeName==="text"&&i.buildText(this),this.added=!0,(!t||t.handleZ||this.zIndex)&&(r=this.zIndexSetter()),r||(t?t.element:i.box).appendChild(s),this.onAdd&&this.onAdd(),this}addClass(t,i){let s=i?"":this.attr("class")||"";return t=(t||"").split(/ /g).reduce(function(r,o){return s.indexOf(o)===-1&&r.push(o),r},s?[s]:[]).join(" "),t!==s&&this.attr("class",t),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(t,i,s,r=!0){let o=this.renderer,n=o.alignedObjects,a=!!t;t?(this.alignOptions=t,this.alignByTranslate=i,this.alignTo=s):(t=this.alignOptions||{},i=this.alignByTranslate,s=this.alignTo);let l=!s||zo(s)?s||"renderer":void 0;l&&(a&&Nh(n,this),s=void 0);let h=It(s,o[l],o),f=(h.x||0)+(t.x||0)+((h.width||0)-(t.width||0))*ms(t.align),d=(h.y||0)+(t.y||0)+((h.height||0)-(t.height||0))*ms(t.verticalAlign),p={"text-align":t?.align};return p[i?"translateX":"x"]=Math.round(f),p[i?"translateY":"y"]=Math.round(d),r&&(this[this.placed?"animate":"attr"](p),this.placed=!0),this.alignAttr=p,this}alignSetter(t){let i={left:"start",center:"middle",right:"end"};i[t]&&(this.alignValue=t,this.element.setAttribute("text-anchor",i[t]))}animate(t,i,s){let r=Ph(It(i,this.renderer.globalAnimation,!0)),o=r.defer;return fe.hidden&&(r.duration=0),r.duration!==0?(s&&(r.complete=s),Wh(()=>{this.element&&Ah(this,t,r)},o)):(this.attr(t,void 0,s||r.complete),pe(t,function(n,a){r.step&&r.step.call(this,n,{prop:a,pos:1,elem:this})},this)),this}applyTextOutline(t){let i=this.element,s=t.indexOf("contrast")!==-1,r={};s&&(r.textOutline=t=t.replace(/contrast/g,this.renderer.getContrast(i.style.fill)));let o=t.indexOf(" "),n=t.substring(o+1),a=t.substring(0,o);if(a&&a!=="none"&&I.svg){this.fakeTS=!0,a=a.replace(/(^[\d\.]+)(.*?)$/g,function(p,g,u){return 2*Number(g)+u}),this.removeTextOutline();let l=fe.createElementNS(li,"tspan");us(l,{class:"highcharts-text-outline",fill:n,stroke:n,"stroke-width":a,"stroke-linejoin":"round"});let h=i.querySelector("textPath")||i;[].forEach.call(h.childNodes,p=>{let g=p.cloneNode(!0);g.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(u=>g.removeAttribute(u)),l.appendChild(g)});let f=0;[].forEach.call(h.querySelectorAll("text tspan"),p=>{f+=Number(p.getAttribute("dy"))});let d=fe.createElementNS(li,"tspan");d.textContent="\u200B",us(d,{x:Number(i.getAttribute("x")),dy:-f}),l.appendChild(d),h.insertBefore(l,h.firstChild)}}attr(t,i,s,r){let{element:o}=this,n=c.symbolCustomAttribs,a,l,h=this,f,d;return typeof t=="string"&&typeof i<"u"&&(a=t,t={},t[a]=i),typeof t=="string"?h=(this[t+"Getter"]||this._defaultGetter).call(this,t,o):(pe(t,function(g,u){f=!1,r||Eo(this,u),this.symbolName&&n.indexOf(u)!==-1&&(l||(this.symbolAttr(t),l=!0),f=!0),this.rotation&&(u==="x"||u==="y")&&(this.doTransform=!0),f||(d=this[u+"Setter"]||this._defaultSetter,d.call(this,g,u,o))},this),this.afterSetters()),s&&s.call(this),h}clip(t){if(t&&!t.clipPath){let i=Wo()+"-",s=this.renderer.createElement("clipPath").attr({id:i}).add(this.renderer.defs);Ee(t,{clipPath:s,id:i,count:0}),t.add(s)}return this.attr("clip-path",t?`url(${this.renderer.url}#${t.id})`:"none")}crisp(t,i){i=Math.round(i||t.strokeWidth||0);let s=t.x||this.x||0,r=t.y||this.y||0,o=(t.width||this.width||0)+s,n=(t.height||this.height||0)+r,a=hi(s,i),l=hi(r,i),h=hi(o,i),f=hi(n,i);return Ee(t,{x:a,y:l,width:h-a,height:f-l}),Ct(t.strokeWidth)&&(t.strokeWidth=i),t}complexColor(t,i,s){let r=this.renderer,o,n,a,l,h,f,d,p,g,u,m=[],x;gs(this.renderer,"complexColor",{args:arguments},function(){if(t.radialGradient?n="radialGradient":t.linearGradient&&(n="linearGradient"),n){if(a=t[n],h=r.gradients,f=t.stops,g=s.radialReference,Ro(a)&&(t[n]=a={x1:a[0],y1:a[1],x2:a[2],y2:a[3],gradientUnits:"userSpaceOnUse"}),n==="radialGradient"&&g&&!Ct(a.gradientUnits)&&(l=a,a=xs(a,r.getRadialAttr(g,l),{gradientUnits:"userSpaceOnUse"})),pe(a,function(y,b){b!=="id"&&m.push(b,y)}),pe(f,function(y){m.push(y)}),m=m.join(","),h[m])u=h[m].attr("id");else{a.id=u=Wo();let y=h[m]=r.createElement(n).attr(a).add(r.defs);y.radAttr=l,y.stops=[],f.forEach(function(b){b[1].indexOf("rgba")===0?(o=pt.parse(b[1]),d=o.get("rgb"),p=o.get("a")):(d=b[1],p=1);let v=r.createElement("stop").attr({offset:b[0],"stop-color":d,"stop-opacity":p}).add(y);y.stops.push(v)})}x="url("+r.url+"#"+u+")",s.setAttribute(i,x),s.gradient=m,t.toString=function(){return x}}})}css(t){let i=this.styles,s={},r=this.element,o,n=!i;if(i&&pe(t,function(a,l){i&&i[l]!==a&&(s[l]=a,n=!0)}),n){i&&(t=Ee(i,s)),t.width===null||t.width==="auto"?delete this.textWidth:r.nodeName.toLowerCase()==="text"&&t.width&&(o=this.textWidth=ci(t.width)),Ee(this.styles,t),o&&!Th&&this.renderer.forExport&&delete t.width;let a=Lh&&t.fontSize||null;a&&(Bh(a)||/^\d+$/.test(a))&&(t.fontSize+="px");let l=xs(t);r.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","whiteSpace","width"].forEach(h=>l&&delete l[h]),l.color&&(l.fill=l.color,delete l.color)),Bo(r,l)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),t.textOutline&&this.applyTextOutline(t.textOutline)),this}dashstyleSetter(t){let i,s=this["stroke-width"];if(s==="inherit"&&(s=1),t){t=t.toLowerCase();let r=t.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(i=r.length;i--;)r[i]=""+ci(r[i])*It(s,NaN);t=r.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",t)}}destroy(){let t=this,i=t.element||{},s=t.renderer,r=i.ownerSVGElement,o=i.nodeName==="SPAN"&&t.parentGroup||void 0,n,a;if(i.onclick=i.onmouseout=i.onmouseover=i.onmousemove=i.point=null,Eo(t),t.clipPath&&r){let l=t.clipPath;[].forEach.call(r.querySelectorAll("[clip-path],[CLIP-PATH]"),function(h){h.getAttribute("clip-path").indexOf(l.element.id)>-1&&h.removeAttribute("clip-path")}),t.clipPath=l.destroy()}if(t.stops){for(a=0;a<t.stops.length;a++)t.stops[a].destroy();t.stops.length=0,t.stops=void 0}for(t.safeRemoveChild(i);o?.div&&o.div.childNodes.length===0;)n=o.parentGroup,t.safeRemoveChild(o.div),delete o.div,o=n;t.alignOptions&&Ih(s.alignedObjects,t),pe(t,(l,h)=>{(t[h]?.parentGroup===t||["connector","foreignObject"].indexOf(h)!==-1)&&t[h]?.destroy?.(),delete t[h]})}dSetter(t,i,s){Ro(t)&&(typeof t[0]=="string"&&(t=this.renderer.pathToSegments(t)),this.pathArray=t,t=t.reduce((r,o,n)=>o?.join?(n?r+" ":"")+o.join(" "):(o||"").toString(),"")),/(NaN| {2}|^$)/.test(t)&&(t="M 0 0"),this[i]!==t&&(s.setAttribute(i,t),this[i]=t)}fillSetter(t,i,s){typeof t=="string"?s.setAttribute(i,t):t&&this.complexColor(t,i,s)}hrefSetter(t,i,s){s.setAttributeNS("http://www.w3.org/1999/xlink",i,t)}getBBox(t,i){let s=this,{alignValue:r,element:o,renderer:n,styles:a,textStr:l}=s,{cache:h,cacheKeys:f}=n,d=o.namespaceURI===s.SVG_NS,p=It(i,s.rotation,0),g=n.styledMode?o&&c.prototype.getStyle.call(o,"font-size"):a.fontSize,u,m,x,y;if(Ct(l)&&(y=l.toString(),y.indexOf("<")===-1&&(y=y.replace(/\d/g,"0")),y+=["",n.rootFontSize,g,p,s.textWidth,r,a.lineClamp,a.textOverflow,a.fontWeight].join(",")),y&&!t&&(u=h[y]),!u||u.polygon){if(d||n.forExport){try{x=this.fakeTS&&function(v){let S=o.querySelector(".highcharts-text-outline");S&&Bo(S,{display:v})},No(x)&&x("none"),u=o.getBBox?Ee({},o.getBBox()):{width:o.offsetWidth,height:o.offsetHeight,x:0,y:0},No(x)&&x("")}catch{}(!u||u.width<0)&&(u={x:0,y:0,width:0,height:0})}else u=s.htmlGetBBox();m=u.height,d&&(u.height=m={"11px,17":14,"13px,20":16}[`${g||""},${Math.round(m)}`]||m),p&&(u=this.getRotatedBox(u,p));let b={bBox:u};gs(this,"afterGetBBox",b),u=b.bBox}if(y&&(l===""||u.height>0)){for(;f.length>250;)delete h[f.shift()];h[y]||f.push(y),h[y]=u}return u}getRotatedBox(t,i){let{x:s,y:r,width:o,height:n}=t,{alignValue:a,translateY:l,rotationOriginX:h=0,rotationOriginY:f=0}=this,d=ms(a),p=Number(this.element.getAttribute("y")||0)-(l?0:r),g=i*Io,u=(i-90)*Io,m=Math.cos(g),x=Math.sin(g),y=o*m,b=o*x,v=Math.cos(u),S=Math.sin(u),[[k,w],[M,C]]=[h,f].map(X=>[X-X*m,X*x]),A=s+d*(o-y)+k+C,P=r+p-d*b-w+M,O=A+p*v,E=O+y,L=E-n*v,D=L-y,B=P+p*S,z=B+b,F=z-n*S,K=F-b,q=Math.min(O,E,L,D),ct=Math.min(B,z,F,K),Q=Math.max(O,E,L,D)-q,Y=Math.max(B,z,F,K)-ct;return{x:q,y:ct,width:Q,height:Y,polygon:[[O,B],[E,z],[L,F],[D,K]]}}getStyle(t){return Oh.getComputedStyle(this.element||this,"").getPropertyValue(t)}hasClass(t){return(""+this.attr("class")).split(" ").indexOf(t)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(t,i){this.onEvents={},this.opacity=1,this.SVG_NS=li,this.element=i==="span"||i==="body"?Eh(i):fe.createElementNS(this.SVG_NS,i),this.renderer=t,this.styles={},gs(this,"afterInit")}on(t,i){let{onEvents:s}=this;return s[t]&&s[t](),s[t]=Dh(this.element,t,i),this}opacitySetter(t,i,s){let r=Number(Number(t).toFixed(3));this.opacity=r,s.setAttribute(i,r)}reAlign(){this.alignOptions?.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(t){return this.attr("class",(""+this.attr("class")).replace(zo(t)?new RegExp(`(^| )${t}( |$)`):t," ").replace(/ +/g," ").trim())}removeTextOutline(){let t=this.element.querySelector("tspan.highcharts-text-outline");t&&this.safeRemoveChild(t)}safeRemoveChild(t){let i=t.parentNode;i&&i.removeChild(t)}setRadialReference(t){let i=this.element.gradient&&this.renderer.gradients[this.element.gradient]||void 0;return this.element.radialReference=t,i?.radAttr&&i.animate(this.renderer.getRadialAttr(t,i.radAttr)),this}shadow(t){let{renderer:i}=this,s=xs(this.parentGroup?.rotation===90?{offsetX:-1,offsetY:-1}:{},Rh(t)?t:{}),r=i.shadowDefinition(s);return this.attr({filter:t?`url(${i.url}#${r})`:"none"})}show(t=!0){return this.attr({visibility:t?"inherit":"visible"})}"stroke-widthSetter"(t,i,s){this[i]=t,s.setAttribute(i,t)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let t=this.getStyle("stroke-width"),i=0,s;return/px$/.test(t)?i=ci(t):t!==""&&(s=fe.createElementNS(li,"rect"),us(s,{width:t,"stroke-width":0}),this.element.parentNode.appendChild(s),i=s.getBBox().width,s.parentNode.removeChild(s)),i}symbolAttr(t){let i=this;c.symbolCustomAttribs.forEach(function(s){i[s]=It(t[s],i[s])}),i.attr({d:i.renderer.symbols[i.symbolName](i.x,i.y,i.width,i.height,i)})}textSetter(t){t!==this.textStr&&(delete this.textPxLength,this.textStr=t,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(t){let i=this.element,s=i.getElementsByTagName("title")[0]||fe.createElementNS(this.SVG_NS,"title");i.insertBefore?i.insertBefore(s,i.firstChild):i.appendChild(s),s.textContent=zh(It(t,""),[/<[^>]*>/g,""]).replace(/&lt;/g,"<").replace(/&gt;/g,">")}toFront(){let t=this.element;return t.parentNode.appendChild(t),this}translate(t,i){return this.attr({translateX:t,translateY:i})}updateTransform(t="transform"){let{element:i,foreignObject:s,matrix:r,padding:o,rotation:n=0,rotationOriginX:a,rotationOriginY:l,scaleX:h,scaleY:f,text:d,translateX:p=0,translateY:g=0}=this,u=["translate("+p+","+g+")"];Ct(r)&&u.push("matrix("+r.join(",")+")"),n&&(u.push("rotate("+n+" "+(a??i.getAttribute("x")??this.x??0)+" "+(l??i.getAttribute("y")??this.y??0)+")"),d?.element.tagName==="SPAN"&&!d?.foreignObject&&d.attr({rotation:n,rotationOriginX:(a||0)-o,rotationOriginY:(l||0)-o})),(Ct(h)||Ct(f))&&u.push("scale("+It(h,1)+" "+It(f,1)+")"),u.length&&!(d||this).textPath&&(s?.element||i).setAttribute(t,u.join(" "))}visibilitySetter(t,i,s){t==="inherit"?s.removeAttribute(i):this[i]!==t&&s.setAttribute(i,t),this[i]=t}xGetter(t){return this.element.nodeName==="circle"&&(t==="x"?t="cx":t==="y"&&(t="cy")),this._defaultGetter(t)}zIndexSetter(t,i){let s=this.renderer,r=this.parentGroup,o=r||s,n=o.element||s.box,a=this.element,l=n===s.box,h,f,d,p=!1,g,u=this.added,m;if(Ct(t)?(a.setAttribute("data-z-index",t),t=+t,this[i]===t&&(u=!1)):Ct(this[i])&&a.removeAttribute("data-z-index"),this[i]=t,u){for(t=this.zIndex,t&&r&&(r.handleZ=!0),h=n.childNodes,m=h.length-1;m>=0&&!p;m--)f=h[m],d=f.getAttribute("data-z-index"),g=!Ct(d),f!==a&&(t<0&&g&&!l&&!m?(n.insertBefore(a,h[m]),p=!0):(ci(d)<=t||g&&(!Ct(t)||t>=0))&&(n.insertBefore(a,h[m+1]),p=!0));p||(n.insertBefore(a,h[l?3:0]),p=!0)}return p}}return c.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],c})();xt.prototype.strokeSetter=xt.prototype.fillSetter;xt.prototype.yGetter=xt.prototype.xGetter;xt.prototype.matrixSetter=xt.prototype.rotationOriginXSetter=xt.prototype.rotationOriginYSetter=xt.prototype.rotationSetter=xt.prototype.scaleXSetter=xt.prototype.scaleYSetter=xt.prototype.translateXSetter=xt.prototype.translateYSetter=xt.prototype.verticalAlignSetter=function(c,e){this[e]=c,this.doTransform=!0};var mt=xt;var{defined:Ho,extend:Hh,getAlignFactor:Xo,isNumber:Ie,merge:Xh,pick:di,removeEvent:Fo}=T,Fh=(()=>{class c extends mt{constructor(t,i,s,r,o,n,a,l,h,f){super(t,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=i,this.x=s,this.y=r,this.anchorX=n,this.anchorY=a,this.baseline=h,this.className=f,this.addClass(f==="button"?"highcharts-no-tooltip":"highcharts-label"),f&&this.addClass("highcharts-"+f),this.text=t.text(void 0,0,0,l).attr({zIndex:1});let d;typeof o=="string"&&(d=/^url\((.*?)\)$/.test(o),(d||this.renderer.symbols[o])&&(this.symbolKey=o)),this.bBox=c.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=t.styledMode||d,this.deferredAttr={},this.alignFactor=0}alignSetter(t){let i=Xo(t);this.textAlign=t,i!==this.alignFactor&&(this.alignFactor=i,this.bBox&&Ie(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(t,i){this.anchorX=t,this.boxAttr(i,Math.round(t)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(t,i){this.anchorY=t,this.boxAttr(i,t-this.ySetting)}boxAttr(t,i){this.box?this.box.attr(t,i):this.deferredAttr[t]=i}css(t){if(t){let i={};t=Xh(t),c.textProps.forEach(s=>{typeof t[s]<"u"&&(i[s]=t[s],delete t[s])}),this.text.css(i),"fontSize"in i||"fontWeight"in i?this.updateTextPadding():("width"in i||"textOverflow"in i)&&this.updateBoxSize()}return mt.prototype.css.call(this,t)}destroy(){Fo(this.element,"mouseenter"),Fo(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),mt.prototype.destroy.call(this)}fillSetter(t,i){t&&(this.needsBox=!0),this.fill=t,this.boxAttr(i,t)}getBBox(t,i){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:s,height:r=0,translateX:o=0,translateY:n=0,width:a=0}=this,l=di(this.paddingLeft,s),h=i??(this.rotation||0),f={width:a,height:r,x:o+this.bBox.x-l,y:n+this.bBox.y-s+this.baselineOffset};return h&&(f=this.getRotatedBox(f,h)),f}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(t){this.heightSetting=t,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:di(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&Ho(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(t,i){Ie(t)?t!==this[i]&&(this[i]=t,this.updateTextPadding()):this[i]=void 0}rSetter(t,i){this.boxAttr(i,t)}strokeSetter(t,i){this.stroke=t,this.boxAttr(i,t)}"stroke-widthSetter"(t,i){t&&(this.needsBox=!0),this["stroke-width"]=t,this.boxAttr(i,t)}"text-alignSetter"(t){this.textAlign=this["text-align"]=t,this.updateTextPadding()}textSetter(t){typeof t<"u"&&this.text.attr({text:t}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let t=this.text,i={},s=this.padding,r=this.bBox=(!Ie(this.widthSetting)||!Ie(this.heightSetting)||this.textAlign)&&Ho(t.textStr)?t.getBBox(void 0,0):c.emptyBBox,o;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||r.height||0)+2*s;let n=this.renderer.fontMetrics(t);if(this.baselineOffset=s+Math.min((this.text.firstLineMetrics||n).b,r.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-n.h)/2),this.needsBox&&!t.textPath){if(!this.box){let a=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();a.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),a.add(this)}o=this.getCrispAdjust(),i.x=o,i.y=(this.baseline?-this.baselineOffset:0)+o,i.width=Math.round(this.width),i.height=Math.round(this.height),this.box.attr(Hh(i,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let t=this.text,i=t.styles.textAlign||this.textAlign;if(!t.textPath){this.updateBoxSize();let s=this.baseline?0:this.baselineOffset,r=(this.paddingLeft??this.padding)+Xo(i)*(this.widthSetting??this.bBox.width);(r!==t.x||s!==t.y)&&(t.attr({align:i,x:r}),typeof s<"u"&&t.attr("y",s)),t.x=r,t.y=s}}widthSetter(t){this.widthSetting=Ie(t)?t:void 0,this.doUpdate=!0}getPaddedWidth(){let t=this.padding,i=di(this.paddingLeft,t),s=di(this.paddingRight,t);return(this.widthSetting||this.bBox.width||0)+i+s}xSetter(t){this.x=t,this.alignFactor&&(t-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(t),this.attr("translateX",this.xSetting)}ySetter(t){this.ySetting=this.y=Math.round(t),this.attr("translateY",this.ySetting)}}return c.emptyBBox={width:0,height:0,x:0,y:0},c.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineClamp","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],c})(),Yo=Fh;var{defined:Go,isNumber:Yh,pick:Be}=T;function Uo(c,e,t,i,s){let r=[];if(s){let o=s.start||0,n=s.end||0,a=Be(s.r,t),l=Be(s.r,i||t),h=2e-4/(s.borderRadius?1:Math.max(a,1)),f=Math.abs(n-o-2*Math.PI)<h;f&&(o=Math.PI/2,n=Math.PI*2.5-h);let d=s.innerR,p=Be(s.open,f),g=Math.cos(o),u=Math.sin(o),m=Math.cos(n),x=Math.sin(n),y=Be(s.longArc,n-o-Math.PI<h?0:1),b=["A",a,l,0,y,Be(s.clockwise,1),c+a*m,e+l*x];b.params={start:o,end:n,cx:c,cy:e},r.push(["M",c+a*g,e+l*u],b),Go(d)&&(b=["A",d,d,0,y,Go(s.clockwise)?1-s.clockwise:0,c+d*g,e+d*u],b.params={start:n,end:o,cx:c,cy:e},r.push(p?["M",c+d*m,e+d*x]:["L",c+d*m,e+d*x],b)),p||r.push(["Z"])}return r}function Gh(c,e,t,i,s){let n=Math.min(s?.r||0,t,i),a=n+6,l=s?.anchorX,h=s?.anchorY||0,f=ys(c,e,t,i,{r:n});if(!Yh(l)||l<t&&l>0&&h<i&&h>0)return f;if(c+l>t-a)if(h>e+a&&h<e+i-a)f.splice(3,1,["L",c+t,h-6],["L",c+t+6,h],["L",c+t,h+6],["L",c+t,e+i-n]);else if(l<t){let d=h<e+a,p=d?e:e+i,g=d?2:5;f.splice(g,0,["L",l,h],["L",c+t-n,p])}else f.splice(3,1,["L",c+t,i/2],["L",l,h],["L",c+t,i/2],["L",c+t,e+i-n]);else if(c+l<a)if(h>e+a&&h<e+i-a)f.splice(7,1,["L",c,h+6],["L",c-6,h],["L",c,h-6],["L",c,e+n]);else if(l>0){let d=h<e+a,p=d?e:e+i,g=d?1:6;f.splice(g,0,["L",l,h],["L",c+n,p])}else f.splice(7,1,["L",c,i/2],["L",l,h],["L",c,i/2],["L",c,e+n]);else h>i&&l<t-a?f.splice(5,1,["L",l+6,e+i],["L",l,e+i+6],["L",l-6,e+i],["L",c+n,e+i]):h<0&&l>a&&f.splice(1,1,["L",l-6,e],["L",l,e-6],["L",l+6,e],["L",t-n,e]);return f}function jh(c,e,t,i){return Uo(c+t/2,e+i/2,t/2,i/2,{start:Math.PI*.5,end:Math.PI*2.5,open:!1})}function Uh(c,e,t,i){return[["M",c+t/2,e],["L",c+t,e+i/2],["L",c+t/2,e+i],["L",c,e+i/2],["Z"]]}function jo(c,e,t,i,s){return s?.r?ys(c,e,t,i,s):[["M",c,e],["L",c+t,e],["L",c+t,e+i],["L",c,e+i],["Z"]]}function ys(c,e,t,i,s){let r=s?.r||0;return[["M",c+r,e],["L",c+t-r,e],["A",r,r,0,0,1,c+t,e+r],["L",c+t,e+i-r],["A",r,r,0,0,1,c+t-r,e+i],["L",c+r,e+i],["A",r,r,0,0,1,c,e+i-r],["L",c,e+r],["A",r,r,0,0,1,c+r,e],["Z"]]}function Vh(c,e,t,i){return[["M",c+t/2,e],["L",c+t,e+i],["L",c,e+i],["Z"]]}function $h(c,e,t,i){return[["M",c,e],["L",c+t,e],["L",c+t/2,e+i],["Z"]]}var Kh={arc:Uo,callout:Gh,circle:jh,diamond:Uh,rect:jo,roundedRect:ys,square:jo,triangle:Vh,"triangle-down":$h},fi=Kh;var{doc:bs,SVG_NS:qh,win:Vo}=I,{attr:vs,extend:Zh,fireEvent:_h,isString:Jh,objectEach:Qh,pick:tc}=T,Ss=(c,e)=>c.substring(0,e)+"\u2026",ks=class{constructor(e){let t=e.styles;this.renderer=e.renderer,this.svgElement=e,this.width=e.textWidth,this.textLineHeight=t?.lineHeight,this.textOutline=t?.textOutline,this.ellipsis=t?.textOverflow==="ellipsis",this.lineClamp=t?.lineClamp,this.noWrap=t?.whiteSpace==="nowrap"}buildSVG(){let e=this.svgElement,t=e.element,i=e.renderer,s=tc(e.textStr,"").toString(),r=s.indexOf("<")!==-1,o=t.childNodes,n=!e.added&&i.box,a=/<br.*?>/g,l=[s,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,e.getStyle("font-size"),e.styles.lineClamp,this.width].join(",");if(l!==e.textCache){e.textCache=l,delete e.actualWidth;for(let h=o.length;h--;)t.removeChild(o[h]);if(!r&&!this.ellipsis&&!this.width&&!e.textPath&&(s.indexOf(" ")===-1||this.noWrap&&!a.test(s)))t.appendChild(bs.createTextNode(this.unescapeEntities(s)));else if(s!==""){n&&n.appendChild(t);let h=new dt(s);this.modifyTree(h.nodes),h.addToDOM(t),this.modifyDOM(),this.ellipsis&&(t.textContent||"").indexOf("\u2026")!==-1&&e.attr("title",this.unescapeEntities(e.textStr||"",["&lt;","&gt;"])),n&&n.removeChild(t)}Jh(this.textOutline)&&e.applyTextOutline&&e.applyTextOutline(this.textOutline)}}modifyDOM(){let e=this.svgElement,t=vs(e.element,"x");e.firstLineMetrics=void 0;let i;for(;(i=e.element.firstChild)&&/^[\s\u200B]*$/.test(i.textContent||" ");)e.element.removeChild(i);[].forEach.call(e.element.querySelectorAll("tspan.highcharts-br"),(n,a)=>{n.nextSibling&&n.previousSibling&&(a===0&&n.previousSibling.nodeType===1&&(e.firstLineMetrics=e.renderer.fontMetrics(n.previousSibling)),vs(n,{dy:this.getLineHeight(n.nextSibling),x:t}))});let s=this.width||0;if(!s)return;let r=(n,a)=>{let l=n.textContent||"",h=l.replace(/([^\^])-/g,"$1- ").split(" "),f=!this.noWrap&&(h.length>1||e.element.childNodes.length>1),d=this.getLineHeight(a),p=Math.max(0,s-.8*d),g=0,u=e.actualWidth;if(f){let m=[],x=[];for(;a.firstChild&&a.firstChild!==n;)x.push(a.firstChild),a.removeChild(a.firstChild);for(;h.length;)if(h.length&&!this.noWrap&&g>0&&(m.push(n.textContent||""),n.textContent=h.join(" ").replace(/- /g,"-")),this.truncate(n,void 0,h,g===0&&u||0,s,p,(y,b)=>h.slice(0,b).join(" ").replace(/- /g,"-")),u=e.actualWidth,g++,this.lineClamp&&g>=this.lineClamp){h.length&&(this.truncate(n,n.textContent||"",void 0,0,s,p,Ss),n.textContent=n.textContent?.replace("\u2026","")+"\u2026");break}x.forEach(y=>{a.insertBefore(y,n)}),m.forEach(y=>{a.insertBefore(bs.createTextNode(y),n);let b=bs.createElementNS(qh,"tspan");b.textContent="\u200B",vs(b,{dy:d,x:t}),a.insertBefore(b,n)})}else this.ellipsis&&l&&this.truncate(n,l,void 0,0,s,p,Ss)},o=n=>{[].slice.call(n.childNodes).forEach(l=>{l.nodeType===Vo.Node.TEXT_NODE?r(l,n):(l.className.baseVal.indexOf("highcharts-br")!==-1&&(e.actualWidth=0),o(l))})};o(e.element)}getLineHeight(e){let t=e.nodeType===Vo.Node.TEXT_NODE?e.parentElement:e;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(t||this.svgElement.element).h}modifyTree(e){let t=(i,s)=>{let{attributes:r={},children:o,style:n={},tagName:a}=i,l=this.renderer.styledMode;if(a==="b"||a==="strong"?l?r.class="highcharts-strong":n.fontWeight="bold":(a==="i"||a==="em")&&(l?r.class="highcharts-emphasized":n.fontStyle="italic"),n?.color&&(n.fill=n.color),a==="br"){r.class="highcharts-br",i.textContent="\u200B";let h=e[s+1];h?.textContent&&(h.textContent=h.textContent.replace(/^ +/gm,""))}else a==="a"&&o&&o.some(h=>h.tagName==="#text")&&(i.children=[{children:o,tagName:"tspan"}]);a!=="#text"&&a!=="a"&&(i.tagName="tspan"),Zh(i,{attributes:r,style:n}),o&&o.filter(h=>h.tagName!=="#text").forEach(t)};e.forEach(t),_h(this.svgElement,"afterModifyTree",{nodes:e})}truncate(e,t,i,s,r,o,n){let a=this.svgElement,{rotation:l}=a,h=[],f=i&&!s?1:0,d=(t||i||"").length,p=d,g,u;i||(r=o);let m=function(x,y){let b=y||x,v=e.parentNode;if(v&&typeof h[b]>"u"&&v.getSubStringLength)try{h[b]=s+v.getSubStringLength(0,i?b+1:b)}catch{}return h[b]};if(a.rotation=0,u=m(e.textContent.length),s+u>r){for(;f<=d;)p=Math.ceil((f+d)/2),i&&(g=n(i,p)),u=m(p,g&&g.length-1),f===d?f=d+1:u>r?d=p-1:f=p;d===0?e.textContent="":t&&d===t.length-1||(e.textContent=g||n(t||i,p)),this.ellipsis&&u>r&&this.truncate(e,e.textContent||"",void 0,0,r,o,Ss)}i&&i.splice(0,p),a.actualWidth=u,a.rotation=l}unescapeEntities(e,t){return Qh(this.renderer.escapes,function(i,s){(!t||t.indexOf(i)===-1)&&(e=e.toString().replace(new RegExp(i,"g"),s))}),e}},$o=ks;var{defaultOptions:ec}=ot,{charts:ic,deg2rad:Ko,doc:ue,isFirefox:qo,isMS:Zo,isWebKit:sc,noop:rc,SVG_NS:oc,symbolSizes:Ms,win:ws}=I,{addEvent:pi,attr:ui,createElement:nc,crisp:_o,css:gi,defined:Qt,destroyObjectProperties:ac,extend:te,isArray:lc,isNumber:ge,isObject:Re,isString:hc,merge:Cs,pick:As,pInt:cc,replaceNested:dc,uniqueKey:fc}=T,Ps,Ne=class{constructor(e,t,i,s,r,o,n){this.x=0,this.y=0;let a=this,l=a.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),h=l.element;n||l.css(this.getStyle(s||{})),e.appendChild(h),ui(e,"dir","ltr"),e.innerHTML.indexOf("xmlns")===-1&&ui(h,"xmlns",this.SVG_NS),this.box=h,this.boxWrapper=l,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(ue.createTextNode("Created with Highcharts 12.2.0")),this.defs=this.createElement("defs").add(),this.allowHTML=o,this.forExport=r,this.styledMode=n,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=l.getStyle("font-size"),a.setSize(t,i,!1);let d,p;qo&&e.getBoundingClientRect&&(d=function(){gi(e,{left:0,top:0}),p=e.getBoundingClientRect(),gi(e,{left:Math.ceil(p.left)-p.left+"px",top:Math.ceil(p.top)-p.top+"px"})},d(),a.unSubPixelFix=pi(ws,"resize",d))}definition(e){return new dt([e]).addToDOM(this.defs.element)}getReferenceURL(){if((qo||sc)&&ue.getElementsByTagName("base").length){if(!Qt(Ps)){let e=fc(),i=new dt([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:e},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${e})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(ue.body);gi(i,{position:"fixed",top:0,left:0,zIndex:9e5}),Ps=ue.elementFromPoint(6,6)?.id==="hitme",ue.body.removeChild(i)}if(Ps)return dc(ws.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(e){return this.style=te({fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif',fontSize:"1rem"},e),this.style}setStyle(e){this.boxWrapper.css(this.getStyle(e))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let e=this,t=e.defs;return e.box=null,e.boxWrapper=e.boxWrapper.destroy(),ac(e.gradients||{}),e.gradients=null,e.defs=t.destroy(),e.unSubPixelFix&&e.unSubPixelFix(),e.alignedObjects=null,null}createElement(e){return new this.Element(this,e)}getRadialAttr(e,t){return{cx:e[0]-e[2]/2+(t.cx||0)*e[2],cy:e[1]-e[2]/2+(t.cy||0)*e[2],r:(t.r||0)*e[2]}}shadowDefinition(e){let t=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(e).map(s=>`${s}-${e[s]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),i=Cs({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},e);return this.defs.element.querySelector(`#${t}`)||this.definition({tagName:"filter",attributes:{id:t,filterUnits:i.filterUnits},children:this.getShadowFilterContent(i)}),t}getShadowFilterContent(e){return[{tagName:"feDropShadow",attributes:{dx:e.offsetX,dy:e.offsetY,"flood-color":e.color,"flood-opacity":Math.min(e.opacity*5,1),stdDeviation:e.width/2}}]}buildText(e){new $o(e).buildSVG()}getContrast(e){let t=pt.parse(e).rgba,i=" clamp(0,calc(9e9*(0.5 - (0.2126*r + 0.7152*g + 0.0722*b))),1)";if(ge(t[0])||!pt.useColorMix){let s=t.map(o=>{let n=o/255;return n<=.04?n/12.92:Math.pow((n+.055)/1.055,2.4)}),r=.2126*s[0]+.7152*s[1]+.0722*s[2];return 1.05/(r+.05)>(r+.05)/.05?"#FFFFFF":"#000000"}return"color(from "+e+" srgb"+i+i+i+")"}button(e,t,i,s,r={},o,n,a,l,h){let f=this.label(e,t,i,l,void 0,void 0,h,void 0,"button"),d=this.styledMode,p=arguments,g=0;r=Cs(ec.global.buttonTheme,r),d&&(delete r.fill,delete r.stroke,delete r["stroke-width"]);let u=r.states||{},m=r.style||{};delete r.states,delete r.style;let x=[dt.filterUserAttributes(r)],y=[m];return d||["hover","select","disabled"].forEach((b,v)=>{x.push(Cs(x[0],dt.filterUserAttributes(p[v+5]||u[b]||{}))),y.push(x[v+1].style),delete x[v+1].style}),pi(f.element,Zo?"mouseover":"mouseenter",function(){g!==3&&f.setState(1)}),pi(f.element,Zo?"mouseout":"mouseleave",function(){g!==3&&f.setState(g)}),f.setState=(b=0)=>{if(b!==1&&(f.state=g=b),f.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][b]),!d){f.attr(x[b]);let v=y[b];Re(v)&&f.css(v)}},f.attr(x[0]),d||(f.css(te({cursor:"default"},m)),h&&f.text.css({pointerEvents:"none"})),f.on("touchstart",b=>b.stopPropagation()).on("click",function(b){g!==3&&s?.call(f,b)})}crispLine(e,t){let[i,s]=e;return Qt(i[1])&&i[1]===s[1]&&(i[1]=s[1]=_o(i[1],t)),Qt(i[2])&&i[2]===s[2]&&(i[2]=s[2]=_o(i[2],t)),e}path(e){let t=this.styledMode?{}:{fill:"none"};return lc(e)?t.d=e:Re(e)&&te(t,e),this.createElement("path").attr(t)}circle(e,t,i){let s=Re(e)?e:typeof e>"u"?{}:{x:e,y:t,r:i},r=this.createElement("circle");return r.xSetter=r.ySetter=function(o,n,a){a.setAttribute("c"+n,o)},r.attr(s)}arc(e,t,i,s,r,o){let n;Re(e)?(n=e,t=n.y,i=n.r,s=n.innerR,r=n.start,o=n.end,e=n.x):n={innerR:s,start:r,end:o};let a=this.symbol("arc",e,t,i,i,n);return a.r=i,a}rect(e,t,i,s,r,o){let n=Re(e)?e:typeof e>"u"?{}:{x:e,y:t,r,width:Math.max(i||0,0),height:Math.max(s||0,0)},a=this.createElement("rect");return this.styledMode||(typeof o<"u"&&(n["stroke-width"]=o,te(n,a.crisp(n))),n.fill="none"),a.rSetter=function(l,h,f){a.r=l,ui(f,{rx:l,ry:l})},a.rGetter=function(){return a.r||0},a.attr(n)}roundedRect(e){return this.symbol("roundedRect").attr(e)}setSize(e,t,i){let s=this;s.width=e,s.height=t,s.boxWrapper.animate({width:e,height:t},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:As(i,!0)?void 0:0}),s.alignElements()}g(e){let t=this.createElement("g");return e?t.attr({class:"highcharts-"+e}):t}image(e,t,i,s,r,o){let n={preserveAspectRatio:"none"};ge(t)&&(n.x=t),ge(i)&&(n.y=i),ge(s)&&(n.width=s),ge(r)&&(n.height=r);let a=this.createElement("image").attr(n),l=function(h){a.attr({href:e}),o.call(a,h)};if(o){a.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let h=new ws.Image;pi(h,"load",l),h.src=e,h.complete&&l({})}else a.attr({href:e});return a}symbol(e,t,i,s,r,o){let n=this,a=/^url\((.*?)\)$/,l=a.test(e),h=!l&&(this.symbols[e]?e:"circle"),f=h&&this.symbols[h],d,p,g,u;if(f)typeof t=="number"&&(p=f.call(this.symbols,t||0,i||0,s||0,r||0,o)),d=this.path(p),n.styledMode||d.attr("fill","none"),te(d,{symbolName:h||void 0,x:t,y:i,width:s,height:r}),o&&te(d,o);else if(l){g=e.match(a)[1];let m=d=this.image(g);m.imgwidth=As(o?.width,Ms[g]?.width),m.imgheight=As(o?.height,Ms[g]?.height),u=x=>x.attr({width:x.width,height:x.height}),["width","height"].forEach(x=>{m[`${x}Setter`]=function(y,b){this[b]=y;let{alignByTranslate:v,element:S,width:k,height:w,imgwidth:M,imgheight:C}=this,A=b==="width"?M:C,P=1;o&&o.backgroundSize==="within"&&k&&w&&M&&C?(P=Math.min(k/M,w/C),ui(S,{width:Math.round(M*P),height:Math.round(C*P)})):S&&A&&S.setAttribute(b,A),!v&&M&&C&&this.translate(((k||0)-M*P)/2,((w||0)-C*P)/2)}}),Qt(t)&&m.attr({x:t,y:i}),m.isImg=!0,m.symbolUrl=e,Qt(m.imgwidth)&&Qt(m.imgheight)?u(m):(m.attr({width:0,height:0}),nc("img",{onload:function(){let x=ic[n.chartIndex];this.width===0&&(gi(this,{position:"absolute",top:"-999em"}),ue.body.appendChild(this)),Ms[g]={width:this.width,height:this.height},m.imgwidth=this.width,m.imgheight=this.height,m.element&&u(m),this.parentNode&&this.parentNode.removeChild(this),n.imgCount--,!n.imgCount&&x&&!x.hasLoaded&&x.onload()},src:g}),this.imgCount++)}return d}clipRect(e,t,i,s){return this.rect(e,t,i,s,0)}text(e,t,i,s){let r=this,o={};if(s&&(r.allowHTML||!r.forExport))return r.html(e,t,i);o.x=Math.round(t||0),i&&(o.y=Math.round(i)),Qt(e)&&(o.text=e);let n=r.createElement("text").attr(o);return(!s||r.forExport&&!r.allowHTML)&&(n.xSetter=function(a,l,h){let f=h.getElementsByTagName("tspan"),d=h.getAttribute(l);for(let p=0,g;p<f.length;p++)g=f[p],g.getAttribute(l)===d&&g.setAttribute(l,a);h.setAttribute(l,a)}),n}fontMetrics(e){let t=cc(mt.prototype.getStyle.call(e,"font-size")||0),i=t<24?t+3:Math.round(t*1.2),s=Math.round(i*.8);return{h:i,b:s,f:t}}rotCorr(e,t,i){let s=e;return t&&i&&(s=Math.max(s*Math.cos(t*Ko),4)),{x:-e/3*Math.sin(t*Ko),y:s}}pathToSegments(e){let t=[],i=[],s={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2};for(let r=0;r<e.length;r++)hc(i[0])&&ge(e[r])&&i.length===s[i[0].toUpperCase()]&&e.splice(r,0,i[0].replace("M","L").replace("m","l")),typeof e[r]=="string"&&(i.length&&t.push(i.slice(0)),i.length=0),i.push(e[r]);return t.push(i.slice(0)),t}label(e,t,i,s,r,o,n,a,l){return new Yo(this,e,t,i,s,r,o,n,a,l)}alignElements(){this.alignedObjects.forEach(e=>e.align())}};te(Ne.prototype,{Element:mt,SVG_NS:oc,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:fi,draw:rc});wt.registerRendererType("svg",Ne,!0);var mi=Ne;var{composed:pc,isFirefox:uc}=I,{attr:gc,css:Ft,createElement:mc,defined:Jo,extend:xc,getAlignFactor:yc,isNumber:xi,pInt:bc,pushUnique:vc}=T;function Qo(c,e,t){let i=this.div?.style||t.style;mt.prototype[`${e}Setter`].call(this,c,e,t),i&&(i[e]=c)}var Sc=(c,e)=>{if(!c.div){let t=gc(c.element,"class"),i=c.css,s=mc("div",t?{className:t}:void 0,zt(ut({position:"absolute",left:`${c.translateX||0}px`,top:`${c.translateY||0}px`},c.styles),{display:c.display,opacity:c.opacity,visibility:c.visibility}),c.parentGroup?.div||e);c.classSetter=(r,o,n)=>{n.setAttribute("class",r),s.className=r},c.translateXSetter=c.translateYSetter=(r,o)=>{c[o]=r,s.style[o==="translateX"?"left":"top"]=`${r}px`,c.doTransform=!0},c.opacitySetter=c.visibilitySetter=Qo,c.css=r=>(i.call(c,r),r.cursor&&(s.style.cursor=r.cursor),r.pointerEvents&&(s.style.pointerEvents=r.pointerEvents),c),c.on=function(){return mt.prototype.on.apply({element:s,onEvents:c.onEvents},arguments),c},c.div=s}return c.div},yi=class c extends mt{static compose(e){vc(pc,this.compose)&&(e.prototype.html=function(t,i,s){return new c(this,"span").attr({text:t,x:Math.round(i),y:Math.round(s)})})}constructor(e,t){super(e,t),c.useForeignObject?this.foreignObject=e.createElement("foreignObject").attr({zIndex:2}):this.css(ut({position:"absolute"},e.styledMode?{}:{fontFamily:e.style.fontFamily,fontSize:e.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(e,t,i){this.xCorr=-e*i,this.yCorr=-t}css(e){let{element:t}=this,i=t.tagName==="SPAN"&&e&&"width"in e,s=i&&e.width,r;return i&&(delete e.width,this.textWidth=bc(s)||void 0,r=!0),e?.textOverflow==="ellipsis"&&(e.overflow="hidden",e.whiteSpace="nowrap"),e?.lineClamp&&(e.display="-webkit-box",e.WebkitLineClamp=e.lineClamp,e.WebkitBoxOrient="vertical",e.overflow="hidden"),xi(Number(e?.fontSize))&&(e.fontSize+="px"),xc(this.styles,e),Ft(t,e),r&&this.updateTransform(),this}htmlGetBBox(){let{element:e}=this;return{x:e.offsetLeft,y:e.offsetTop,width:e.offsetWidth,height:e.offsetHeight}}updateTransform(){if(!this.added){this.alignOnAdd=!0;return}let{element:e,foreignObject:t,oldTextWidth:i,renderer:s,rotation:r,rotationOriginX:o,rotationOriginY:n,scaleX:a,scaleY:l,styles:{display:h="inline-block",whiteSpace:f},textAlign:d="left",textWidth:p,translateX:g=0,translateY:u=0,x:m=0,y:x=0}=this,y=()=>this.textPxLength?this.textPxLength:(Ft(e,{width:"",whiteSpace:f||"nowrap"}),e.offsetWidth);if(t||Ft(e,{marginLeft:`${g}px`,marginTop:`${u}px`}),e.tagName==="SPAN"){let b=[r,d,e.innerHTML,p,this.textAlign].join(","),v=this.parentGroup?.padding*-1||0,S;if(p!==i){let P=y(),O=p||0,E=e.style.textOverflow===""&&e.style.webkitLineClamp;if((O>i||P>O||E)&&(/[\-\s\u00AD]/.test(e.textContent||e.innerText)||e.style.textOverflow==="ellipsis")){let L=r||a||P>O||E;Ft(e,{width:L&&xi(p)?p+"px":"auto",display:h,whiteSpace:f||"normal"}),this.oldTextWidth=p}}t&&(Ft(e,{display:"inline-block",verticalAlign:"top"}),t.attr({width:s.width,height:s.height})),b!==this.cTT&&(S=s.fontMetrics(e).b,Jo(r)&&!t&&(r!==(this.oldRotation||0)||d!==this.oldAlign)&&Ft(e,{transform:`rotate(${r}deg)`,transformOrigin:`${v}% ${v}px`}),this.getSpanCorrection(!Jo(r)&&!this.textWidth&&this.textPxLength||e.offsetWidth,S,yc(d)));let{xCorr:k=0,yCorr:w=0}=this,M=(o??m)-k-m-v,C=(n??x)-w-x-v,A={left:`${m+k}px`,top:`${x+w}px`,textAlign:d,transformOrigin:`${M}px ${C}px`};(a||l)&&(A.transform=`scale(${a??1},${l??1})`),t?(super.updateTransform(),xi(m)&&xi(x)?(t.attr({x:m+k,y:x+w,width:e.offsetWidth+3,height:e.offsetHeight,"transform-origin":e.getAttribute("transform-origin")||"0 0"}),Ft(e,{display:h,textAlign:d})):uc&&t.attr({width:0,height:0})):Ft(e,A),this.cTT=b,this.oldRotation=r,this.oldAlign=d}}add(e){let{foreignObject:t,renderer:i}=this,s=i.box.parentNode,r=[];if(t)t.add(e),super.add(i.createElement("body").attr({xmlns:"http://www.w3.org/1999/xhtml"}).css({background:"transparent",margin:"0 3px 0 0"}).add(t));else{let o;if(this.parentGroup=e,e&&(o=e.div,!o)){let n=e;for(;n;)r.push(n),n=n.parentGroup;for(let a of r.reverse())o=Sc(a,s)}(o||s).appendChild(this.element)}return this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(e){e!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,dt.setElementHTML(this.element,e??""),this.textStr=e,this.doTransform=!0)}alignSetter(e){this.alignValue=this.textAlign=e,this.doTransform=!0}xSetter(e,t){this[t]=e,this.doTransform=!0}},ee=yi.prototype;ee.visibilitySetter=ee.opacitySetter=Qo;ee.ySetter=ee.rotationSetter=ee.rotationOriginXSetter=ee.rotationOriginYSetter=ee.xSetter;var Ts=yi;var tn=(function(c){return c.xAxis={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%[HMSL]",range:!1},second:{main:"%[HMS]",range:!1},minute:{main:"%[HM]",range:!1},hour:{main:"%[HM]",range:!1},day:{main:"%[eb]"},week:{main:"%[eb]"},month:{main:"%[bY]"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em",textOverflow:"ellipsis"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},c.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:e}=this.axis.chart;return e(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},c})(tn||{}),en=tn;var{addEvent:kc,isFunction:Mc,objectEach:wc,removeEvent:Cc}=T,Os;(function(c){function e(t,i){t.eventOptions=t.eventOptions||{},wc(i.events,function(s,r){t.eventOptions[r]!==s&&(t.eventOptions[r]&&(Cc(t,r,t.eventOptions[r]),delete t.eventOptions[r]),Mc(s)&&(t.eventOptions[r]=s,kc(t,r,s,{order:0})))})}c.registerEventOptions=e})(Os||(Os={}));var Yt=Os;var{deg2rad:Ls}=I,{clamp:Ac,correctFloat:bi,defined:Ds,destroyObjectProperties:Pc,extend:sn,fireEvent:ze,getAlignFactor:Tc,isNumber:vi,merge:Oc,objectEach:Lc,pick:At}=T,Es=class{constructor(e,t,i,s,r){this.isNew=!0,this.isNewLabel=!0,this.axis=e,this.pos=t,this.type=i||"",this.parameters=r||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,ze(this,"init"),!i&&!s&&this.addLabel()}addLabel(){let e=this,t=e.axis,i=t.options,s=t.chart,r=t.categories,o=t.logarithmic,n=t.names,a=e.pos,l=At(e.options?.labels,i.labels),h=t.tickPositions,f=a===h[0],d=a===h[h.length-1],p=(!l.step||l.step===1)&&t.tickInterval===1,g=h.info,u=e.label,m,x,y,b=this.parameters.category||(r?At(r[a],n[a],a):a);o&&vi(b)&&(b=bi(o.lin2log(b))),t.dateTime&&(g?(x=s.time.resolveDTLFormat(i.dateTimeLabelFormats[!i.grid&&g.higherRanks[a]||g.unitName]),m=x.main):vi(b)&&(m=t.dateTime.getXDateFormat(b,i.dateTimeLabelFormats||{}))),e.isFirst=f,e.isLast=d;let v={axis:t,chart:s,dateTimeLabelFormat:m,isFirst:f,isLast:d,pos:a,tick:e,tickPositionInfo:g,value:b};ze(this,"labelFormat",v);let S=M=>l.formatter?l.formatter.call(M,M):l.format?(M.text=t.defaultLabelFormatter.call(M),nt.format(l.format,M,s)):t.defaultLabelFormatter.call(M),k=S.call(v,v),w=x?.list;w?e.shortenLabel=function(){for(y=0;y<w.length;y++)if(sn(v,{dateTimeLabelFormat:w[y]}),u.attr({text:S.call(v,v)}),u.getBBox().width<t.getSlotWidth(e)-2*(l.padding||0))return;u.attr({text:""})}:e.shortenLabel=void 0,p&&t._addedPlotLB&&e.moveLabel(k,l),!Ds(u)&&!e.movedLabel?(e.label=u=e.createLabel(k,l),e.rotation=0):u&&u.textStr!==k&&!p&&(u.textWidth&&!l.style.width&&!u.styles.width&&u.css({width:null}),u.attr({text:k}),u.textPxLength=u.getBBox().width)}createLabel(e,t,i){let s=this.axis,{renderer:r,styledMode:o}=s.chart,n=t.style.whiteSpace,a=Ds(e)&&t.enabled?r.text(e,i?.x,i?.y,t.useHTML).add(s.labelGroup):void 0;return a&&(o||a.css(Oc(t.style)),a.textPxLength=a.getBBox().width,!o&&n&&a.css({whiteSpace:n})),a}destroy(){Pc(this,this.axis)}getPosition(e,t,i,s){let r=this.axis,o=r.chart,n=s&&o.oldChartHeight||o.chartHeight,a={x:e?bi(r.translate(t+i,void 0,void 0,s)+r.transB):r.left+r.offset+(r.opposite?(s&&o.oldChartWidth||o.chartWidth)-r.right-r.left:0),y:e?n-r.bottom+r.offset-(r.opposite?r.height:0):bi(n-r.translate(t+i,void 0,void 0,s)-r.transB)};return a.y=Ac(a.y,-1e9,1e9),ze(this,"afterGetPosition",{pos:a}),a}getLabelPosition(e,t,i,s,r,o,n,a){let l=this.axis,h=l.transA,f=l.isLinked&&l.linkedParent?l.linkedParent.reversed:l.reversed,d=l.staggerLines,p=l.tickRotCorr||{x:0,y:0},g=!s&&!l.reserveSpaceDefault?-l.labelOffset*(l.labelAlign==="center"?.5:1):0,u=r.distance,m={},x,y;return l.side===0?x=i.rotation?-u:-i.getBBox().height:l.side===2?x=p.y+u:x=Math.cos(i.rotation*Ls)*(p.y-i.getBBox(!1,0).height/2),Ds(r.y)&&(x=l.side===0&&l.horiz?r.y+x:r.y),e=e+At(r.x,[0,1,0,-1][l.side]*u)+g+p.x-(o&&s?o*h*(f?-1:1):0),t=t+x-(o&&!s?o*h*(f?1:-1):0),d&&(y=n/(a||1)%d,l.opposite&&(y=d-y-1),t+=y*(l.labelOffset/d)),m.x=e,m.y=Math.round(t),ze(this,"afterGetLabelPosition",{pos:m,tickmarkOffset:o,index:n}),m}getLabelSize(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0}getMarkPath(e,t,i,s,r=!1,o){return o.crispLine([["M",e,t],["L",e+(r?0:-i),t+(r?i:0)]],s)}handleOverflow(e){let t=this,i=this.axis,s=i.options.labels,r=e.x,o=i.chart.chartWidth,n=i.chart.spacing,a=At(i.labelLeft,Math.min(i.pos,n[3])),l=At(i.labelRight,Math.max(i.isRadial?0:i.pos+i.len,o-n[1])),h=this.label,f=this.rotation,d=Tc(i.labelAlign||h.attr("align")),p=h.getBBox().width,g=i.getSlotWidth(t),u=d,m={},x=g,y=1,b,v,S;!f&&s.overflow==="justify"?(b=r-d*p,v=r+(1-d)*p,b<a?x=e.x+x*(1-d)-a:v>l&&(x=l-e.x+x*d,y=-1),x=Math.min(g,x),x<g&&i.labelAlign==="center"&&(e.x+=y*(g-x-u*(g-Math.min(p,x)))),(p>x||i.autoRotation&&h?.styles?.width)&&(S=x)):f<0&&r-d*p<a?S=Math.round(r/Math.cos(f*Ls)-a):f>0&&r+d*p>l&&(S=Math.round((o-r)/Math.cos(f*Ls))),S&&h&&(t.shortenLabel?t.shortenLabel():h.css(sn(m,{width:Math.floor(S)+"px",lineClamp:i.isRadial?0:1})))}moveLabel(e,t){let i=this,s=i.label,r=i.axis,o=!1,n;s&&s.textStr===e?(i.movedLabel=s,o=!0,delete i.label):Lc(r.ticks,function(a){!o&&!a.isNew&&a!==i&&a.label&&a.label.textStr===e&&(i.movedLabel=a.label,o=!0,a.labelPos=i.movedLabel.xy,delete a.label)}),!o&&(i.labelPos||s)&&(n=i.labelPos||s.xy,i.movedLabel=i.createLabel(e,t,n),i.movedLabel&&i.movedLabel.attr({opacity:0}))}render(e,t,i){let s=this,r=s.axis,o=r.horiz,n=s.pos,a=At(s.tickmarkOffset,r.tickmarkOffset),l=s.getPosition(o,n,a,t),h=l.x,f=l.y,d=r.pos,p=d+r.len,g=o?h:f,u=At(i,s.label?.newOpacity,1);!r.chart.polar&&(bi(g)<d||g>p)&&(i=0),i??(i=1),this.isActive=!0,this.renderGridLine(t,i),this.renderMark(l,i),this.renderLabel(l,t,u,e),s.isNew=!1,ze(this,"afterRender")}renderGridLine(e,t){let i=this,s=i.axis,r=s.options,o={},n=i.pos,a=i.type,l=At(i.tickmarkOffset,s.tickmarkOffset),h=s.chart.renderer,f=i.gridLine,d,p=r.gridLineWidth,g=r.gridLineColor,u=r.gridLineDashStyle;i.type==="minor"&&(p=r.minorGridLineWidth,g=r.minorGridLineColor,u=r.minorGridLineDashStyle),f||(s.chart.styledMode||(o.stroke=g,o["stroke-width"]=p||0,o.dashstyle=u),a||(o.zIndex=1),e&&(t=0),i.gridLine=f=h.path().attr(o).addClass("highcharts-"+(a?a+"-":"")+"grid-line").add(s.gridGroup)),f&&(d=s.getPlotLinePath({value:n+l,lineWidth:f.strokeWidth(),force:"pass",old:e,acrossPanes:!1}),d&&f[e||i.isNew?"attr":"animate"]({d,opacity:t}))}renderMark(e,t){let i=this,s=i.axis,r=s.options,o=s.chart.renderer,n=i.type,a=s.tickSize(n?n+"Tick":"tick"),l=e.x,h=e.y,f=At(r[n!=="minor"?"tickWidth":"minorTickWidth"],!n&&s.isXAxis?1:0),d=r[n!=="minor"?"tickColor":"minorTickColor"],p=i.mark,g=!p;a&&(s.opposite&&(a[0]=-a[0]),p||(i.mark=p=o.path().addClass("highcharts-"+(n?n+"-":"")+"tick").add(s.axisGroup),s.chart.styledMode||p.attr({stroke:d,"stroke-width":f})),p[g?"attr":"animate"]({d:i.getMarkPath(l,h,a[0],p.strokeWidth(),s.horiz,o),opacity:t}))}renderLabel(e,t,i,s){let r=this,o=r.axis,n=o.horiz,a=o.options,l=r.label,h=a.labels,f=h.step,d=At(r.tickmarkOffset,o.tickmarkOffset),p=e.x,g=e.y,u=!0;l&&vi(p)&&(l.xy=e=r.getLabelPosition(p,g,l,n,h,d,s,f),r.isFirst&&!r.isLast&&!a.showFirstLabel||r.isLast&&!r.isFirst&&!a.showLastLabel?u=!1:n&&!h.step&&!h.rotation&&!t&&i!==0&&r.handleOverflow(e),f&&s%f&&(u=!1),u&&vi(e.y)?(e.opacity=i,l[r.isNewLabel?"attr":"animate"](e).show(!0),r.isNewLabel=!1):(l.hide(),r.isNewLabel=!0))}replaceMovedLabel(){let e=this,t=e.label,i=e.axis;t&&!e.isNew&&(t.animate({opacity:0},void 0,t.destroy),delete e.label),i.isDirty=!0,e.label=e.movedLabel,delete e.movedLabel}},Bt=Es;var{animObject:Dc}=_,{xAxis:rn,yAxis:Ec}=en,{defaultOptions:Rs}=ot,{registerEventOptions:Ic}=Yt,{deg2rad:Bc}=I,{arrayMax:on,arrayMin:Rc,clamp:Is,correctFloat:yt,defined:J,destroyObjectProperties:Nc,erase:nn,error:Bs,extend:Mi,fireEvent:tt,getClosestDistance:an,insertItem:zc,isArray:ln,isNumber:W,isString:hn,merge:wi,normalizeTickInterval:Wc,objectEach:Si,pick:G,relativeLength:ki,removeEvent:Hc,splat:Xc,syncTimeout:Fc}=T,cn=(c,e)=>Wc(e,void 0,void 0,G(c.options.allowDecimals,e<.5||c.tickAmount!==void 0),!!c.tickAmount);Mi(Rs,{xAxis:rn,yAxis:wi(rn,Ec)});var Yc=(()=>{class c{constructor(t,i,s){this.init(t,i,s)}init(t,i,s=this.coll){let r=s==="xAxis",o=this,n=o.isZAxis||(t.inverted?!r:r);o.chart=t,o.horiz=n,o.isXAxis=r,o.coll=s,tt(this,"init",{userOptions:i}),o.opposite=G(i.opposite,o.opposite),o.side=G(i.side,o.side,n?o.opposite?0:2:o.opposite?1:3),o.setOptions(i);let a=o.options,l=a.labels;o.type??(o.type=a.type||"linear"),o.uniqueNames??(o.uniqueNames=a.uniqueNames??!0),tt(o,"afterSetType"),o.userOptions=i,o.minPixelPadding=0,o.reversed=G(a.reversed,o.reversed),o.visible=a.visible,o.zoomEnabled=a.zoomEnabled,o.hasNames=this.type==="category"||a.categories===!0,o.categories=ln(a.categories)&&a.categories||(o.hasNames?[]:void 0),o.names||(o.names=[],o.names.keys={}),o.plotLinesAndBandsGroups={},o.positiveValuesOnly=!!o.logarithmic,o.isLinked=J(a.linkedTo),o.ticks={},o.labelEdge=[],o.minorTicks={},o.plotLinesAndBands=[],o.alternateBands={},o.len??(o.len=0),o.minRange=o.userMinRange=a.minRange||a.maxZoom,o.range=a.range,o.offset=a.offset||0,o.max=void 0,o.min=void 0;let h=G(a.crosshair,Xc(t.options.tooltip.crosshairs)[r?0:1]);o.crosshair=h===!0?{}:h,t.axes.indexOf(o)===-1&&(r?t.axes.splice(t.xAxis.length,0,o):t.axes.push(o),zc(this,t[this.coll])),t.orderItems(o.coll),o.series=o.series||[],t.inverted&&!o.isZAxis&&r&&!J(o.reversed)&&(o.reversed=!0),o.labelRotation=W(l.rotation)?l.rotation:void 0,Ic(o,a),tt(this,"afterInit")}setOptions(t){let i=this.horiz?{labels:{autoRotation:[-45],padding:3},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=wi(i,this.coll==="yAxis"?{title:{text:this.chart.options.lang.yAxisTitle}}:{},Rs[this.coll],t),tt(this,"afterSetOptions",{userOptions:t})}defaultLabelFormatter(){let t=this.axis,i=this.chart,{numberFormatter:s}=i,r=W(this.value)?this.value:NaN,o=t.chart.time,n=t.categories,a=this.dateTimeLabelFormat,l=Rs.lang,h=l.numericSymbols,f=l.numericSymbolMagnitude||1e3,d=t.logarithmic?Math.abs(r):t.tickInterval,p=h?.length,g,u;if(n)u=`${this.value}`;else if(a)u=o.dateFormat(a,r,!0);else if(p&&h&&d>=1e3)for(;p--&&typeof u>"u";)g=Math.pow(f,p+1),d>=g&&r*10%g===0&&h[p]!==null&&r!==0&&(u=s(r/g,-1)+h[p]);return typeof u>"u"&&(Math.abs(r)>=1e4?u=s(r,-1):u=s(r,-1,void 0,"")),u}getSeriesExtremes(){let t=this,i;tt(this,"getSeriesExtremes",null,function(){t.hasVisibleSeries=!1,t.dataMin=t.dataMax=t.threshold=void 0,t.softThreshold=!t.isXAxis,t.series.forEach(s=>{if(s.reserveSpace()){let r=s.options,o,n=r.threshold,a,l;if(t.hasVisibleSeries=!0,t.positiveValuesOnly&&(n||0)<=0&&(n=void 0),t.isXAxis)o=s.getColumn("x"),o.length&&(o=t.logarithmic?o.filter(h=>h>0):o,i=s.getXExtremes(o),a=i.min,l=i.max,!W(a)&&!(a instanceof Date)&&(o=o.filter(W),i=s.getXExtremes(o),a=i.min,l=i.max),o.length&&(t.dataMin=Math.min(G(t.dataMin,a),a),t.dataMax=Math.max(G(t.dataMax,l),l)));else{let h=s.applyExtremes();W(h.dataMin)&&(a=h.dataMin,t.dataMin=Math.min(G(t.dataMin,a),a)),W(h.dataMax)&&(l=h.dataMax,t.dataMax=Math.max(G(t.dataMax,l),l)),J(n)&&(t.threshold=n),(!r.softThreshold||t.positiveValuesOnly)&&(t.softThreshold=!1)}}})}),tt(this,"afterGetSeriesExtremes")}translate(t,i,s,r,o,n){let a=this.linkedParent||this,l=r&&a.old?a.old.min:a.min;if(!W(l))return NaN;let h=a.minPixelPadding,f=(a.isOrdinal||a.brokenAxis?.hasBreaks||a.logarithmic&&o)&&a.lin2val,d=1,p=0,g=r&&a.old?a.old.transA:a.transA,u=0;return g||(g=a.transA),s&&(d*=-1,p=a.len),a.reversed&&(d*=-1,p-=d*(a.sector||a.len)),i?(t=t*d+p,t-=h,u=t/g+l,f&&(u=a.lin2val(u))):(f&&(t=a.val2lin(t)),u=d*(t-l)*g+p+d*h+(W(n)?g*n:0),a.isRadial||(u=yt(u))),u}toPixels(t,i){return this.translate(this.chart?.time.parse(t)??NaN,!1,!this.horiz,void 0,!0)+(i?0:this.pos)}toValue(t,i){return this.translate(t-(i?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(t){let i=this,s=i.chart,r=i.left,o=i.top,n=t.old,a=t.value,l=t.lineWidth,h=n&&s.oldChartHeight||s.chartHeight,f=n&&s.oldChartWidth||s.chartWidth,d=i.transB,p=t.translatedValue,g=t.force,u,m,x,y,b;function v(k,w,M){return g!=="pass"&&(k<w||k>M)&&(g?k=Is(k,w,M):b=!0),k}let S={value:a,lineWidth:l,old:n,force:g,acrossPanes:t.acrossPanes,translatedValue:p};return tt(this,"getPlotLinePath",S,function(k){p=G(p,i.translate(a,void 0,void 0,n)),p=Is(p,-1e9,1e9),u=x=p+d,m=y=h-p-d,W(p)?i.horiz?(m=o,y=h-i.bottom+(i.options.isInternal?0:s.scrollablePixelsY||0),u=x=v(u,r,r+i.width)):(u=r,x=f-i.right+(s.scrollablePixelsX||0),m=y=v(m,o,o+i.height)):(b=!0,g=!1),k.path=b&&!g?void 0:s.renderer.crispLine([["M",u,m],["L",x,y]],l||1)}),S.path}getLinearTickPositions(t,i,s){let r=yt(Math.floor(i/t)*t),o=yt(Math.ceil(s/t)*t),n=[],a,l,h;if(yt(r+t)===r&&(h=20),this.single)return[i];for(a=r;a<=o&&(n.push(a),a=yt(a+t,h),a!==l);)l=a;return n}getMinorTickInterval(){let{minorTicks:t,minorTickInterval:i}=this.options;if(t===!0)return G(i,"auto");if(t!==!1)return i}getMinorTickPositions(){let t=this,i=t.options,s=t.tickPositions,r=t.minorTickInterval,o=t.pointRangePadding||0,n=(t.min||0)-o,a=(t.max||0)+o,l=t.brokenAxis?.hasBreaks?t.brokenAxis.unitLength:a-n,h=[],f;if(l&&l/r<t.len/3){let d=t.logarithmic;if(d)this.paddedTicks.forEach(function(p,g,u){g&&h.push.apply(h,d.getLogTickPositions(r,u[g-1],u[g],!0))});else if(t.dateTime&&this.getMinorTickInterval()==="auto")h=h.concat(t.getTimeTicks(t.dateTime.normalizeTimeTickInterval(r),n,a,i.startOfWeek));else for(f=n+(s[0]-n)%r;f<=a&&f!==h[0];f+=r)h.push(f)}return h.length!==0&&t.trimTicks(h),h}adjustForMinRange(){let t=this,i=t.options,s=t.logarithmic,r=t.chart.time,{max:o,min:n,minRange:a}=t,l,h,f,d,p;t.isXAxis&&typeof a>"u"&&!s&&(J(i.min)||J(i.max)||J(i.floor)||J(i.ceiling)?a=null:(f=an(t.series.map(g=>{let u=g.getColumn("x");return g.xIncrement?u.slice(0,2):u}))||0,a=Math.min(f*5,t.dataMax-t.dataMin))),W(o)&&W(n)&&W(a)&&o-n<a&&(h=t.dataMax-t.dataMin>=a,l=(a-o+n)/2,d=[n-l,r.parse(i.min)??n-l],h&&(d[2]=s?s.log2lin(t.dataMin):t.dataMin),n=on(d),p=[n+a,r.parse(i.max)??n+a],h&&(p[2]=s?s.log2lin(t.dataMax):t.dataMax),o=Rc(p),o-n<a&&(d[0]=o-a,d[1]=r.parse(i.min)??o-a,n=on(d))),t.minRange=a,t.min=n,t.max=o}getClosest(){let t,i;if(this.categories)i=1;else{let s=[];this.series.forEach(function(r){let o=r.closestPointRange,n=r.getColumn("x");n.length===1?s.push(n[0]):r.sorted&&J(o)&&r.reserveSpace()&&(i=J(i)?Math.min(i,o):o)}),s.length&&(s.sort((r,o)=>r-o),t=an([s]))}return t&&i?Math.min(t,i):t||i}nameToX(t){let i=ln(this.options.categories),s=i?this.categories:this.names,r=t.options.x,o;return t.series.requireSorting=!1,J(r)||(r=this.uniqueNames&&s?i?s.indexOf(t.name):G(s.keys[t.name],-1):t.series.autoIncrement()),r===-1?!i&&s&&(o=s.length):W(r)&&(o=r),typeof o<"u"?(this.names[o]=t.name,this.names.keys[t.name]=o):t.x&&(o=t.x),o}updateNames(){let t=this,i=this.names;i.length>0&&(Object.keys(i.keys).forEach(function(r){delete i.keys[r]}),i.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(r=>{r.xIncrement=null,(!r.points||r.isDirtyData)&&(t.max=Math.max(t.max||0,r.dataTable.rowCount-1),r.processData(),r.generatePoints());let o=r.getColumn("x").slice();r.data.forEach((n,a)=>{let l=o[a];n?.options&&typeof n.name<"u"&&(l=t.nameToX(n),typeof l<"u"&&l!==n.x&&(o[a]=n.x=l))}),r.dataTable.setColumn("x",o)}))}setAxisTranslation(){let t=this,i=t.max-t.min,s=t.linkedParent,r=!!t.categories,o=t.isXAxis,n=t.axisPointRange||0,a,l=0,h=0,f,d=t.transA;(o||r||n)&&(a=t.getClosest(),s?(l=s.minPointOffset,h=s.pointRangePadding):t.series.forEach(function(p){let g=r?1:o?G(p.options.pointRange,a,0):t.axisPointRange||0,u=p.options.pointPlacement;if(n=Math.max(n,g),!t.single||r){let m=p.is("xrange")?!o:o;l=Math.max(l,m&&hn(u)?0:g/2),h=Math.max(h,m&&u==="on"?0:g)}}),f=t.ordinal?.slope&&a?t.ordinal.slope/a:1,t.minPointOffset=l=l*f,t.pointRangePadding=h=h*f,t.pointRange=Math.min(n,t.single&&r?1:i),o&&(t.closestPointRange=a)),t.translationSlope=t.transA=d=t.staticScale||t.len/(i+h||1),t.transB=t.horiz?t.left:t.bottom,t.minPixelPadding=d*l,tt(this,"afterSetAxisTranslation")}minFromRange(){let{max:t,min:i}=this;return W(t)&&W(i)&&t-i||void 0}setTickInterval(t){let i=this,{categories:s,chart:r,dataMax:o,dataMin:n,dateTime:a,isXAxis:l,logarithmic:h,options:f,softThreshold:d}=i,p=r.time,g=W(i.threshold)?i.threshold:void 0,u=i.minRange||0,{ceiling:m,floor:x,linkedTo:y,softMax:b,softMin:v}=f,S=W(y)&&r[i.coll]?.[y],k=f.tickPixelInterval,w=f.maxPadding,M=f.minPadding,C=0,A,P=W(f.tickInterval)&&f.tickInterval>=0?f.tickInterval:void 0,O,E,L,D;if(!a&&!s&&!S&&this.getTickAmount(),L=G(i.userMin,p.parse(f.min)),D=G(i.userMax,p.parse(f.max)),S?(i.linkedParent=S,A=S.getExtremes(),i.min=G(A.min,A.dataMin),i.max=G(A.max,A.dataMax),this.type!==S.type&&Bs(11,!0,r)):(d&&J(g)&&W(o)&&W(n)&&(n>=g?(O=g,M=0):o<=g&&(E=g,w=0)),i.min=G(L,O,n),i.max=G(D,E,o)),W(i.max)&&W(i.min)&&(h&&(i.positiveValuesOnly&&!t&&Math.min(i.min,G(n,i.min))<=0&&Bs(10,!0,r),i.min=yt(h.log2lin(i.min),16),i.max=yt(h.log2lin(i.max),16)),i.range&&W(n)&&(i.userMin=i.min=L=Math.max(n,i.minFromRange()||0),i.userMax=D=i.max,i.range=void 0)),tt(i,"foundExtremes"),i.adjustForMinRange(),W(i.min)&&W(i.max)){if(!W(i.userMin)&&W(v)&&v<i.min&&(i.min=L=v),!W(i.userMax)&&W(b)&&b>i.max&&(i.max=D=b),!s&&!i.axisPointRange&&!i.stacking?.usePercentage&&!S&&(C=i.max-i.min,C&&(!J(L)&&M&&(i.min-=C*M),!J(D)&&w&&(i.max+=C*w))),!W(i.userMin)&&W(x)&&(i.min=Math.max(i.min,x)),!W(i.userMax)&&W(m)&&(i.max=Math.min(i.max,m)),d&&W(n)&&W(o)){let z=g||0;!J(L)&&i.min<z&&n>=z?i.min=f.minRange?Math.min(z,i.max-u):z:!J(D)&&i.max>z&&o<=z&&(i.max=f.minRange?Math.max(z,i.min+u):z)}!r.polar&&i.min>i.max&&(J(f.min)?i.max=i.min:J(f.max)&&(i.min=i.max)),C=i.max-i.min}if(i.min===i.max||!W(i.min)||!W(i.max)?i.tickInterval=1:S&&!P&&k===S.options.tickPixelInterval?i.tickInterval=P=S.tickInterval:i.tickInterval=G(P,this.tickAmount?C/Math.max(this.tickAmount-1,1):void 0,s?1:C*k/Math.max(i.len,k)),l&&!t){let z=i.min!==i.old?.min||i.max!==i.old?.max;i.series.forEach(function(F){F.forceCrop=F.forceCropping?.(),F.processData(z)}),tt(this,"postProcessData",{hasExtremesChanged:z})}i.setAxisTranslation(),tt(this,"initialAxisTranslation"),i.pointRange&&!P&&(i.tickInterval=Math.max(i.pointRange,i.tickInterval));let B=G(f.minTickInterval,a&&!i.series.some(z=>!z.sorted)?i.closestPointRange:0);!P&&B&&i.tickInterval<B&&(i.tickInterval=B),!a&&!h&&!P&&(i.tickInterval=cn(i,i.tickInterval)),this.tickAmount||(i.tickInterval=i.unsquish()),this.setTickPositions()}setTickPositions(){let t=this,i=this.options,s=i.tickPositions,r=i.tickPositioner,o=this.getMinorTickInterval(),n=!this.isPanning,a=n&&i.startOnTick,l=n&&i.endOnTick,h=[],f;if(this.tickmarkOffset=this.categories&&i.tickmarkPlacement==="between"&&this.tickInterval===1?.5:0,this.single=this.min===this.max&&J(this.min)&&!this.tickAmount&&(this.min%1===0||i.allowDecimals!==!1),s)h=s.slice();else if(W(this.min)&&W(this.max)){if(!t.ordinal?.positions&&(this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))h=[this.min,this.max],Bs(19,!1,this.chart);else if(t.dateTime)h=t.getTimeTicks(t.dateTime.normalizeTimeTickInterval(this.tickInterval,i.units),this.min,this.max,i.startOfWeek,t.ordinal?.positions,this.closestPointRange,!0);else if(t.logarithmic)h=t.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let d=this.tickInterval,p=d;for(;p<=d*2&&(h=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&&h.length>this.tickAmount);)this.tickInterval=cn(this,p*=1.1)}h.length>this.len&&(h=[h[0],h[h.length-1]],h[0]===h[1]&&(h.length=1)),r&&(this.tickPositions=h,f=r.apply(t,[this.min,this.max]),f&&(h=f))}this.tickPositions=h,this.minorTickInterval=o==="auto"&&this.tickInterval?this.tickInterval/i.minorTicksPerMajor:o,this.paddedTicks=h.slice(0),this.trimTicks(h,a,l),!this.isLinked&&W(this.min)&&W(this.max)&&(this.single&&h.length<2&&!this.categories&&!this.series.some(d=>d.is("heatmap")&&d.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),!s&&!f&&this.adjustTickAmount()),tt(this,"afterSetTickPositions")}trimTicks(t,i,s){let r=t[0],o=t[t.length-1],n=!this.isOrdinal&&this.minPointOffset||0;if(tt(this,"trimTicks"),!this.isLinked||!this.grid){if(i&&r!==-1/0)this.min=r;else for(;this.min-n>t[0];)t.shift();if(s)this.max=o;else for(;this.max+n<t[t.length-1];)t.pop();t.length===0&&J(r)&&!this.options.tickPositions&&t.push((o+r)/2)}}alignToOthers(){let t=this,i=t.chart,s=[this],r=t.options,o=i.options.chart,n=this.coll==="yAxis"&&o.alignThresholds,a=[],l;if(t.thresholdAlignment=void 0,(o.alignTicks!==!1&&r.alignTicks||n)&&r.startOnTick!==!1&&r.endOnTick!==!1&&!t.logarithmic){let h=d=>{let{horiz:p,options:g}=d;return[p?g.left:g.top,g.width,g.height,g.pane].join(",")},f=h(this);i[this.coll].forEach(function(d){let{series:p}=d;p.length&&p.some(g=>g.visible)&&d!==t&&h(d)===f&&(l=!0,s.push(d))})}if(l&&n){s.forEach(f=>{let d=f.getThresholdAlignment(t);W(d)&&a.push(d)});let h=a.length>1?a.reduce((f,d)=>f+=d,0)/a.length:void 0;s.forEach(f=>{f.thresholdAlignment=h})}return l}getThresholdAlignment(t){if((!W(this.dataMin)||this!==t&&this.series.some(i=>i.isDirty||i.isDirtyData))&&this.getSeriesExtremes(),W(this.threshold)){let i=Is((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(i=1-i),i}}getTickAmount(){let t=this,i=this.options,s=i.tickPixelInterval,r=i.tickAmount;!J(i.tickInterval)&&!r&&this.len<s&&!this.isRadial&&!t.logarithmic&&i.startOnTick&&i.endOnTick&&(r=2),!r&&this.alignToOthers()&&(r=Math.ceil(this.len/s)+1),r<4&&(this.finalTickAmt=r,r=5),this.tickAmount=r}adjustTickAmount(){let t=this,{finalTickAmt:i,max:s,min:r,options:o,tickPositions:n,tickAmount:a,thresholdAlignment:l}=t,h=n?.length,f=G(t.threshold,t.softThreshold?0:null),d,p,g=t.tickInterval,u,m=()=>n.push(yt(n[n.length-1]+g)),x=()=>n.unshift(yt(n[0]-g));if(W(l)&&(u=l<.5?Math.ceil(l*(a-1)):Math.floor(l*(a-1)),o.reversed&&(u=a-1-u)),t.hasData()&&W(r)&&W(s)){let y=()=>{t.transA*=(h-1)/(a-1),t.min=o.startOnTick?n[0]:Math.min(r,n[0]),t.max=o.endOnTick?n[n.length-1]:Math.max(s,n[n.length-1])};if(W(u)&&W(t.threshold)){for(;n[u]!==f||n.length!==a||n[0]>r||n[n.length-1]<s;){for(n.length=0,n.push(t.threshold);n.length<a;)n[u]===void 0||n[u]>t.threshold?x():m();if(g>t.tickInterval*8)break;g*=2}y()}else if(h<a){for(;n.length<a;)n.length%2||r===f?m():x();y()}if(J(i)){for(p=d=n.length;p--;)(i===3&&p%2===1||i<=2&&p>0&&p<d-1)&&n.splice(p,1);t.finalTickAmt=void 0}}}setScale(){let t=this,{coll:i,stacking:s}=t,r=!1,o=!1;t.series.forEach(a=>{r=r||a.isDirtyData||a.isDirty,o=o||a.xAxis?.isDirty||!1}),t.setAxisSize();let n=t.len!==t.old?.len;n||r||o||t.isLinked||t.forceRedraw||t.userMin!==t.old?.userMin||t.userMax!==t.old?.userMax||t.alignToOthers()?(s&&i==="yAxis"&&s.buildStacks(),t.forceRedraw=!1,t.userMinRange||(t.minRange=void 0),t.getSeriesExtremes(),t.setTickInterval(),s&&i==="xAxis"&&s.buildStacks(),t.isDirty||(t.isDirty=n||t.min!==t.old?.min||t.max!==t.old?.max)):s&&s.cleanStacks(),r&&delete t.allExtremes,tt(this,"afterSetScale")}setExtremes(t,i,s=!0,r,o){let n=this.chart;this.series.forEach(a=>{delete a.kdTree}),t=n.time.parse(t),i=n.time.parse(i),o=Mi(o,{min:t,max:i}),tt(this,"setExtremes",o,a=>{this.userMin=a.min,this.userMax=a.max,this.eventArgs=a,s&&n.redraw(r)})}setAxisSize(){let t=this.chart,i=this.options,s=i.offsets||[0,0,0,0],r=this.horiz,o=this.width=Math.round(ki(G(i.width,t.plotWidth-s[3]+s[1]),t.plotWidth)),n=this.height=Math.round(ki(G(i.height,t.plotHeight-s[0]+s[2]),t.plotHeight)),a=this.top=Math.round(ki(G(i.top,t.plotTop+s[0]),t.plotHeight,t.plotTop)),l=this.left=Math.round(ki(G(i.left,t.plotLeft+s[3]),t.plotWidth,t.plotLeft));this.bottom=t.chartHeight-n-a,this.right=t.chartWidth-o-l,this.len=Math.max(r?o:n,0),this.pos=r?l:a}getExtremes(){let t=this,i=t.logarithmic;return{min:i?yt(i.lin2log(t.min)):t.min,max:i?yt(i.lin2log(t.max)):t.max,dataMin:t.dataMin,dataMax:t.dataMax,userMin:t.userMin,userMax:t.userMax}}getThreshold(t){let i=this,s=i.logarithmic,r=s?s.lin2log(i.min):i.min,o=s?s.lin2log(i.max):i.max;return t===null||t===-1/0?t=r:t===1/0?t=o:r>t?t=r:o<t&&(t=o),i.translate(t,0,1,0,1)}autoLabelAlign(t){let i=(G(t,0)-this.side*90+720)%360,s={align:"center"};return tt(this,"autoLabelAlign",s,function(r){i>15&&i<165?r.align="right":i>195&&i<345&&(r.align="left")}),s.align}tickSize(t){let i=this.options,s=G(i[t==="tick"?"tickWidth":"minorTickWidth"],t==="tick"&&this.isXAxis&&!this.categories?1:0),r=i[t==="tick"?"tickLength":"minorTickLength"],o;s&&r&&(i[t+"Position"]==="inside"&&(r=-r),o=[r,s]);let n={tickSize:o};return tt(this,"afterTickSize",n),n.tickSize}labelMetrics(){let t=this.chart.renderer,i=this.ticks,s=i[Object.keys(i)[0]]||{};return this.chart.renderer.fontMetrics(s.label||s.movedLabel||t.box)}unsquish(){let t=this.options.labels,i=t.padding||0,s=this.horiz,r=this.tickInterval,o=this.len/(((this.categories?1:0)+this.max-this.min)/r),n=t.rotation,a=yt(this.labelMetrics().h*.8),l=Math.max(this.max-this.min,0),h=function(u){let m=(u+2*i)/(o||1);return m=m>1?Math.ceil(m):1,m*r>l&&u!==1/0&&o!==1/0&&l&&(m=Math.ceil(l/r)),yt(m*r)},f=r,d,p=Number.MAX_VALUE,g;if(s){if(t.staggerLines||(W(n)?g=[n]:o<t.autoRotationLimit&&(g=t.autoRotation)),g){let u,m;for(let x of g)(x===n||x&&x>=-90&&x<=90)&&(u=h(Math.abs(a/Math.sin(Bc*x))),m=u+Math.abs(x/360),m<p&&(p=m,d=x,f=u))}}else f=h(a*.75);return this.autoRotation=g,this.labelRotation=G(d,W(n)?n:0),t.step?r:f}getSlotWidth(t){let i=this.chart,s=this.horiz,r=this.options.labels,o=Math.max(this.tickPositions.length-(this.categories?0:1),1),n=i.margin[3];if(t&&W(t.slotWidth))return t.slotWidth;if(s&&r.step<2&&!this.isRadial)return r.rotation?0:(this.staggerLines||1)*this.len/o;if(!s){let a=r.style.width;if(a!==void 0)return parseInt(String(a),10);if(n)return n-i.spacing[3]}return i.chartWidth*.33}renderUnsquish(){let t=this.chart,i=t.renderer,s=this.tickPositions,r=this.ticks,o=this.options.labels,n=o.style,a=this.horiz,l=this.getSlotWidth(),h=Math.max(1,Math.round(l-(a?2*(o.padding||0):o.distance||0))),f={},d=this.labelMetrics(),p=n.lineClamp,g,u=p??(Math.floor(this.len/(s.length*d.h))||1),m=0;hn(o.rotation)||(f.rotation=o.rotation||0),s.forEach(function(x){let y=r[x];y.movedLabel&&y.replaceMovedLabel();let b=y.label?.textPxLength||0;b>m&&(m=b)}),this.maxLabelLength=m,this.autoRotation?m>h&&m>d.h?f.rotation=this.labelRotation:this.labelRotation=0:l&&(g=h),f.rotation&&(g=m>t.chartHeight*.5?t.chartHeight*.33:m,p||(u=1)),this.labelAlign=o.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(f.align=this.labelAlign),s.forEach(function(x){let y=r[x],b=y?.label,v=n.width,S={};b&&(b.attr(f),y.shortenLabel?y.shortenLabel():g&&!v&&n.whiteSpace!=="nowrap"&&(g<(b.textPxLength||0)||b.element.tagName==="SPAN")?b.css(Mi(S,{width:`${g}px`,lineClamp:u})):b.styles.width&&!S.width&&!v&&b.css({width:"auto"}),y.rotation=f.rotation)},this),this.tickRotCorr=i.rotCorr(d.b,this.labelRotation||0,this.side!==0)}hasData(){return this.series.some(function(t){return t.hasData()})||this.options.showEmpty&&J(this.min)&&J(this.max)}addTitle(t){let i=this,s=i.chart.renderer,r=i.horiz,o=i.opposite,n=i.options,a=n.title,l=i.chart.styledMode,h;i.axisTitle||(h=a.textAlign,h||(h=(r?{low:"left",middle:"center",high:"right"}:{low:o?"right":"left",middle:"center",high:o?"left":"right"})[a.align]),i.axisTitle=s.text(a.text||"",0,0,a.useHTML).attr({zIndex:7,rotation:a.rotation||0,align:h}).addClass("highcharts-axis-title"),l||i.axisTitle.css(wi(a.style)),i.axisTitle.add(i.axisGroup),i.axisTitle.isNew=!0),!l&&!a.style.width&&!i.isRadial&&i.axisTitle.css({width:i.len+"px"}),i.axisTitle[t?"show":"hide"](t)}generateTick(t){let i=this,s=i.ticks;s[t]?s[t].addLabel():s[t]=new Bt(i,t)}createGroups(){let{axisParent:t,chart:i,coll:s,options:r}=this,o=i.renderer,n=(a,l,h)=>o.g(a).attr({zIndex:h}).addClass(`highcharts-${s.toLowerCase()}${l} `+(this.isRadial?`highcharts-radial-axis${l} `:"")+(r.className||"")).add(t);this.axisGroup||(this.gridGroup=n("grid","-grid",r.gridZIndex),this.axisGroup=n("axis","",r.zIndex),this.labelGroup=n("axis-labels","-labels",r.labels.zIndex))}getOffset(){let t=this,{chart:i,horiz:s,options:r,side:o,ticks:n,tickPositions:a,coll:l}=t,h=i.inverted&&!t.isZAxis?[1,0,3,2][o]:o,f=t.hasData(),d=r.title,p=r.labels,g=W(r.crossing),u=i.axisOffset,m=i.clipOffset,x=[-1,1,1,-1][o],y,b=0,v,S=0,k=0,w,M;if(t.showAxis=y=f||r.showEmpty,t.staggerLines=t.horiz&&p.staggerLines||void 0,t.createGroups(),f||t.isLinked?(a.forEach(function(C){t.generateTick(C)}),t.renderUnsquish(),t.reserveSpaceDefault=o===0||o===2||{1:"left",3:"right"}[o]===t.labelAlign,G(p.reserveSpace,g?!1:null,t.labelAlign==="center"?!0:null,t.reserveSpaceDefault)&&a.forEach(function(C){k=Math.max(n[C].getLabelSize(),k)}),t.staggerLines&&(k*=t.staggerLines),t.labelOffset=k*(t.opposite?-1:1)):Si(n,function(C,A){C.destroy(),delete n[A]}),d?.text&&d.enabled!==!1&&(t.addTitle(y),y&&!g&&d.reserveSpace!==!1&&(t.titleOffset=b=t.axisTitle.getBBox()[s?"height":"width"],v=d.offset,S=J(v)?0:G(d.margin,s?5:10))),t.renderLine(),t.offset=x*G(r.offset,u[o]?u[o]+(r.margin||0):0),t.tickRotCorr=t.tickRotCorr||{x:0,y:0},o===0?M=-t.labelMetrics().h:o===2?M=t.tickRotCorr.y:M=0,w=Math.abs(k)+S,k&&(w-=M,w+=x*(s?G(p.y,t.tickRotCorr.y+x*p.distance):G(p.x,x*p.distance))),t.axisTitleMargin=G(v,w),t.getMaxLabelDimensions&&(t.maxLabelDimensions=t.getMaxLabelDimensions(n,a)),l!=="colorAxis"&&m){let C=this.tickSize("tick");u[o]=Math.max(u[o],(t.axisTitleMargin||0)+b+x*t.offset,w,a?.length&&C?C[0]+x*t.offset:0);let A=!t.axisLine||r.offset?0:t.axisLine.strokeWidth()/2;m[h]=Math.max(m[h],A)}tt(this,"afterGetOffset")}getLinePath(t){let i=this.chart,s=this.opposite,r=this.offset,o=this.horiz,n=this.left+(s?this.width:0)+r,a=i.chartHeight-this.bottom-(s?this.height:0)+r;return s&&(t*=-1),i.renderer.crispLine([["M",o?this.left:n,o?a:this.top],["L",o?i.chartWidth-this.right:n,o?a:i.chartHeight-this.bottom]],t)}renderLine(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))}getTitlePosition(t){let i=this.horiz,s=this.left,r=this.top,o=this.len,n=this.options.title,a=i?s:r,l=this.opposite,h=this.offset,f=n.x,d=n.y,p=this.chart.renderer.fontMetrics(t),g=t?Math.max(t.getBBox(!1,0).height-p.h-1,0):0,u={low:a+(i?0:o),middle:a+o/2,high:a+(i?o:0)}[n.align],m=(i?r+this.height:s)+(i?1:-1)*(l?-1:1)*(this.axisTitleMargin||0)+[-g,g,p.f,-g][this.side],x={x:i?u+f:m+(l?this.width:0)+h+f,y:i?m+d-(l?this.height:0)+h:u+d};return tt(this,"afterGetTitlePosition",{titlePosition:x}),x}renderMinorTick(t,i){let s=this,r=s.minorTicks;r[t]||(r[t]=new Bt(s,t,"minor")),i&&r[t].isNew&&r[t].render(null,!0),r[t].render(null,!1,1)}renderTick(t,i,s){let r=this,o=r.isLinked,n=r.ticks;(!o||t>=r.min&&t<=r.max||r.grid?.isColumn)&&(n[t]||(n[t]=new Bt(r,t)),s&&n[t].isNew&&n[t].render(i,!0,-1),n[t].render(i))}render(){let t=this,i=t.chart,s=t.logarithmic,r=i.renderer,o=t.options,n=t.isLinked,a=t.tickPositions,l=t.axisTitle,h=t.ticks,f=t.minorTicks,d=t.alternateBands,p=o.stackLabels,g=o.alternateGridColor,u=o.crossing,m=t.tickmarkOffset,x=t.axisLine,y=t.showAxis,b=Dc(r.globalAnimation),v,S;if(t.labelEdge.length=0,t.overlap=!1,[h,f,d].forEach(function(k){Si(k,function(w){w.isActive=!1})}),W(u)){let k=this.isXAxis?i.yAxis[0]:i.xAxis[0],w=[1,-1,-1,1][this.side];if(k){let M=k.toPixels(u,!0);t.horiz&&(M=k.len-M),t.offset=w*M}}if(t.hasData()||n){let k=t.chart.hasRendered&&t.old&&W(t.old.min);t.minorTickInterval&&!t.categories&&t.getMinorTickPositions().forEach(function(w){t.renderMinorTick(w,k)}),a.length&&(a.forEach(function(w,M){t.renderTick(w,M,k)}),m&&(t.min===0||t.single)&&(h[-1]||(h[-1]=new Bt(t,-1,null,!0)),h[-1].render(-1))),g&&a.forEach(function(w,M){S=typeof a[M+1]<"u"?a[M+1]+m:t.max-m,M%2===0&&w<t.max&&S<=t.max+(i.polar?-m:m)&&(d[w]||(d[w]=new I.PlotLineOrBand(t,{})),v=w+m,d[w].options={from:s?s.lin2log(v):v,to:s?s.lin2log(S):S,color:g,className:"highcharts-alternate-grid"},d[w].render(),d[w].isActive=!0)}),t._addedPlotLB||(t._addedPlotLB=!0,(o.plotLines||[]).concat(o.plotBands||[]).forEach(function(w){t.addPlotBandOrLine(w)}))}[h,f,d].forEach(function(k){let w=[],M=b.duration,C=function(){let A=w.length;for(;A--;)k[w[A]]&&!k[w[A]].isActive&&(k[w[A]].destroy(),delete k[w[A]])};Si(k,function(A,P){A.isActive||(A.render(P,!1,0),A.isActive=!1,w.push(P))}),Fc(C,k===d||!i.hasRendered||!M?0:M)}),x&&(x[x.isPlaced?"animate":"attr"]({d:this.getLinePath(x.strokeWidth())}),x.isPlaced=!0,x[y?"show":"hide"](y)),l&&y&&(l[l.isNew?"attr":"animate"](t.getTitlePosition(l)),l.isNew=!1),p?.enabled&&t.stacking&&t.stacking.renderStackTotals(),t.old={len:t.len,max:t.max,min:t.min,transA:t.transA,userMax:t.userMax,userMin:t.userMin},t.isDirty=!1,tt(this,"afterRender")}redraw(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(t){t.render()})),this.series.forEach(function(t){t.isDirty=!0})}getKeepProps(){return this.keepProps||c.keepProps}destroy(t){let i=this,s=i.plotLinesAndBands,r=this.eventOptions;if(tt(this,"destroy",{keepEvents:t}),t||Hc(i),[i.ticks,i.minorTicks,i.alternateBands].forEach(function(o){Nc(o)}),s){let o=s.length;for(;o--;)s[o].destroy()}["axisLine","axisTitle","axisGroup","gridGroup","labelGroup","cross","scrollbar"].forEach(function(o){i[o]&&(i[o]=i[o].destroy())});for(let o in i.plotLinesAndBandsGroups)i.plotLinesAndBandsGroups[o]=i.plotLinesAndBandsGroups[o].destroy();Si(i,function(o,n){i.getKeepProps().indexOf(n)===-1&&delete i[n]}),this.eventOptions=r}drawCrosshair(t,i){let s=this.crosshair,r=s?.snap??!0,o=this.chart,n,a,l,h=this.cross,f;if(tt(this,"drawCrosshair",{e:t,point:i}),t||(t=this.cross?.e),!s||(J(i)||!r)===!1)this.hideCrosshair();else{if(r?J(i)&&(a=G(this.coll!=="colorAxis"?i.crosshairPos:null,this.isXAxis?i.plotX:this.len-i.plotY)):a=t&&(this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos),J(a)&&(f={value:i&&(this.isXAxis?i.x:G(i.stackY,i.y)),translatedValue:a},o.polar&&Mi(f,{isCrosshair:!0,chartX:t?.chartX,chartY:t?.chartY,point:i}),n=this.getPlotLinePath(f)||null),!J(n)){this.hideCrosshair();return}l=this.categories&&!this.isRadial,h||(this.cross=h=o.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(l?"category ":"thin ")+(s.className||"")).attr({zIndex:G(s.zIndex,2)}).add(),o.styledMode||(h.attr({stroke:s.color||(l?pt.parse("#ccd3ff").setOpacity(.25).get():"#cccccc"),"stroke-width":G(s.width,1)}).css({"pointer-events":"none"}),s.dashStyle&&h.attr({dashstyle:s.dashStyle}))),h.show().attr({d:n}),l&&!s.width&&h.attr({"stroke-width":this.transA}),this.cross.e=t}tt(this,"afterDrawCrosshair",{e:t,point:i})}hideCrosshair(){this.cross&&this.cross.hide(),tt(this,"afterHideCrosshair")}update(t,i){let s=this.chart;t=wi(this.userOptions,t),this.destroy(!0),this.init(s,t),s.isDirtyBox=!0,G(i,!0)&&s.redraw()}remove(t){let i=this.chart,s=this.coll,r=this.series,o=r.length;for(;o--;)r[o]&&r[o].remove(!1);nn(i.axes,this),nn(i[s]||[],this),i.orderItems(s),this.destroy(),i.isDirtyBox=!0,G(t,!0)&&i.redraw()}setTitle(t,i){this.update({title:t},i)}setCategories(t,i){this.update({categories:t},i)}}return c.keepProps=["coll","extKey","hcEvents","len","names","series","userMax","userMin"],c})(),We=Yc;var{addEvent:Gc,getMagnitude:jc,normalizeTickInterval:Uc,timeUnits:Ci}=T,Ns;(function(c){function e(r){if(!r.keepProps.includes("dateTime")){r.keepProps.push("dateTime");let o=r.prototype;o.getTimeTicks=t,Gc(r,"afterSetType",i)}return r}c.compose=e;function t(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function i(){if(this.type!=="datetime"){this.dateTime=void 0;return}this.dateTime||(this.dateTime=new s(this))}class s{constructor(o){this.axis=o}normalizeTimeTickInterval(o,n){let a=n||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],l=a[a.length-1],h=Ci[l[0]],f=l[1],d;for(d=0;d<a.length;d++)if(l=a[d],h=Ci[l[0]],f=l[1],a[d+1]){let g=(h*f[f.length-1]+Ci[a[d+1][0]])/2;if(o<=g)break}h===Ci.year&&o<5*h&&(f=[1,2,5]);let p=Uc(o/h,f,l[0]==="year"?Math.max(jc(o/h),1):1);return{unitRange:h,count:p,unitName:l[0]}}getXDateFormat(o,n){let{axis:a}=this,l=a.chart.time;return a.closestPointRange?l.getDateFormat(a.closestPointRange,o,a.options.startOfWeek,n)||l.resolveDTLFormat(n.year).main:l.resolveDTLFormat(n.day).main}}c.Additions=s})(Ns||(Ns={}));var dn=Ns;var{addEvent:fn,normalizeTickInterval:Vc,pick:$c}=T,zs;(function(c){function e(r){return r.keepProps.includes("logarithmic")||(r.keepProps.push("logarithmic"),fn(r,"afterSetType",t),fn(r,"afterInit",i)),r}c.compose=e;function t(){this.type!=="logarithmic"?this.logarithmic=void 0:this.logarithmic??(this.logarithmic=new s(this))}function i(){let r=this,o=r.logarithmic;o&&(r.lin2val=function(n){return o.lin2log(n)},r.val2lin=function(n){return o.log2lin(n)})}class s{constructor(o){this.axis=o}getLogTickPositions(o,n,a,l){let h=this,f=h.axis,d=f.len,p=f.options,g=[];if(l||(h.minorAutoInterval=void 0),o>=.5)o=Math.round(o),g=f.getLinearTickPositions(o,n,a);else if(o>=.08){let u=Math.floor(n),m,x,y,b,v,S,k;for(o>.3?m=[1,2,4]:o>.15?m=[1,2,4,6,8]:m=[1,2,3,4,5,6,7,8,9],x=u;x<a+1&&!k;x++)for(b=m.length,y=0;y<b&&!k;y++)v=h.log2lin(h.lin2log(x)*m[y]),v>n&&(!l||S<=a)&&typeof S<"u"&&g.push(S),S>a&&(k=!0),S=v}else{let u=h.lin2log(n),m=h.lin2log(a),x=l?f.getMinorTickInterval():p.tickInterval,y=x==="auto"?null:x,b=p.tickPixelInterval/(l?5:1),v=l?d/f.tickPositions.length:d;o=$c(y,h.minorAutoInterval,(m-u)*b/(v||1)),o=Vc(o),g=f.getLinearTickPositions(o,u,m).map(h.log2lin),l||(h.minorAutoInterval=o/5)}return l||(f.tickInterval=o),g}lin2log(o){return Math.pow(10,o)}log2lin(o){return Math.log(o)/Math.LN10}}c.Additions=s})(zs||(zs={}));var pn=zs;var{erase:Kc,extend:qc,isNumber:un}=T,Ws;(function(c){let e;function t(h){return this.addPlotBandOrLine(h,"plotBands")}function i(h,f){let d=this.userOptions,p=new e(this,h);if(this.visible&&(p=p.render()),p){if(this._addedPlotLB||(this._addedPlotLB=!0,(d.plotLines||[]).concat(d.plotBands||[]).forEach(g=>{this.addPlotBandOrLine(g)})),f){let g=d[f]||[];g.push(h),d[f]=g}this.plotLinesAndBands.push(p)}return p}function s(h){return this.addPlotBandOrLine(h,"plotLines")}function r(h,f){let d=f.prototype;return d.addPlotBand||(e=h,qc(d,{addPlotBand:t,addPlotLine:s,addPlotBandOrLine:i,getPlotBandPath:o,removePlotBand:n,removePlotLine:l,removePlotBandOrLine:a})),f}c.compose=r;function o(h,f,d){d=d||this.options;let p=this.getPlotLinePath({value:f,force:!0,acrossPanes:d.acrossPanes}),g=[],u=this.horiz,m=!un(this.min)||!un(this.max)||h<this.min&&f<this.min||h>this.max&&f>this.max,x=this.getPlotLinePath({value:h,force:!0,acrossPanes:d.acrossPanes}),y,b=1,v;if(x&&p)for(m&&(v=x.toString()===p.toString(),b=0),y=0;y<x.length;y+=2){let S=x[y],k=x[y+1],w=p[y],M=p[y+1];(S[0]==="M"||S[0]==="L")&&(k[0]==="M"||k[0]==="L")&&(w[0]==="M"||w[0]==="L")&&(M[0]==="M"||M[0]==="L")&&(u&&w[1]===S[1]?(w[1]+=b,M[1]+=b):!u&&w[2]===S[2]&&(w[2]+=b,M[2]+=b),g.push(["M",S[1],S[2]],["L",k[1],k[2]],["L",M[1],M[2]],["L",w[1],w[2]],["Z"])),g.isFlat=v}return g}function n(h){this.removePlotBandOrLine(h)}function a(h){let f=this.plotLinesAndBands,d=this.options,p=this.userOptions;if(f){let g=f.length;for(;g--;)f[g].id===h&&f[g].destroy();[d.plotLines||[],p.plotLines||[],d.plotBands||[],p.plotBands||[]].forEach(function(u){for(g=u.length;g--;)u[g]?.id===h&&Kc(u,u[g])})}}function l(h){this.removePlotBandOrLine(h)}})(Ws||(Ws={}));var gn=Ws;var{addEvent:Zc,arrayMax:mn,arrayMin:xn,defined:Pt,destroyObjectProperties:_c,erase:Jc,fireEvent:Qc,merge:yn,objectEach:td,pick:ed}=T,Hs=class c{static compose(e,t){return Zc(e,"afterInit",function(){this.labelCollectors.push(()=>{let i=[];for(let s of this.axes)for(let{label:r,options:o}of s.plotLinesAndBands)r&&!o?.label?.allowOverlap&&i.push(r);return i})}),gn.compose(c,t)}constructor(e,t){this.axis=e,this.options=t,this.id=t.id}render(){Qc(this,"render");let{axis:e,options:t}=this,{horiz:i,logarithmic:s}=e,{color:r,events:o,zIndex:n=0}=t,{renderer:a,time:l}=e.chart,h={},f=l.parse(t.to),d=l.parse(t.from),p=l.parse(t.value),g=t.borderWidth,u=t.label,{label:m,svgElem:x}=this,y=[],b,v=Pt(d)&&Pt(f),S=Pt(p),k=!x,w={class:"highcharts-plot-"+(v?"band ":"line ")+(t.className||"")},M=v?"bands":"lines";if(e.chart.styledMode||(S?(w.stroke=r||"#999999",w["stroke-width"]=ed(t.width,1),t.dashStyle&&(w.dashstyle=t.dashStyle)):v&&(w.fill=r||"#e6e9ff",g&&(w.stroke=t.borderColor,w["stroke-width"]=g))),h.zIndex=n,M+="-"+n,b=e.plotLinesAndBandsGroups[M],b||(e.plotLinesAndBandsGroups[M]=b=a.g("plot-"+M).attr(h).add()),x||(this.svgElem=x=a.path().attr(w).add(b)),Pt(p))y=e.getPlotLinePath({value:s?.log2lin(p)??p,lineWidth:x.strokeWidth(),acrossPanes:t.acrossPanes});else if(Pt(d)&&Pt(f))y=e.getPlotBandPath(s?.log2lin(d)??d,s?.log2lin(f)??f,t);else return;return!this.eventsAdded&&o&&(td(o,(C,A)=>{x?.on(A,P=>{o[A].apply(this,[P])})}),this.eventsAdded=!0),(k||!x.d)&&y?.length?x.attr({d:y}):x&&(y?(x.show(),x.animate({d:y})):x.d&&(x.hide(),m&&(this.label=m=m.destroy()))),u&&(Pt(u.text)||Pt(u.formatter))&&y?.length&&e.width>0&&e.height>0&&!y.isFlat?(u=yn(ut({align:i&&v?"center":void 0,x:i?!v&&4:10,verticalAlign:!i&&v?"middle":void 0,y:i?v?16:10:v?6:-4,rotation:i&&!v?90:0},v?{inside:!0}:{}),u),this.renderLabel(u,y,v,n)):m&&m.hide(),this}renderLabel(e,t,i,s){let r=this,o=r.axis,n=o.chart.renderer,a=e.inside,l=r.label;l||(r.label=l=n.text(this.getLabelText(e),0,0,e.useHTML).attr({align:e.textAlign||e.align,rotation:e.rotation,class:"highcharts-plot-"+(i?"band":"line")+"-label "+(e.className||""),zIndex:s}),o.chart.styledMode||l.css(yn({fontSize:"0.8em",textOverflow:i&&!a?"":"ellipsis"},e.style)),l.add());let h=t.xBounds||[t[0][1],t[1][1],i?t[2][1]:t[0][1]],f=t.yBounds||[t[0][2],t[1][2],i?t[2][2]:t[0][2]],d=xn(h),p=xn(f),g=mn(h)-d;l.align(e,!1,{x:d,y:p,width:g,height:mn(f)-p}),l.alignAttr.y-=n.fontMetrics(l).b,(!l.alignValue||l.alignValue==="left"||Pt(a))&&l.css({width:(e.style?.width||(!i||!a?l.rotation===90?o.height-(l.alignAttr.y-o.top):(e.clip?o.width:o.chart.chartWidth)-(l.alignAttr.x-o.left):g))+"px"}),l.show(!0)}getLabelText(e){return Pt(e.formatter)?e.formatter.call(this):e.text}destroy(){Jc(this.axis.plotLinesAndBands,this),delete this.axis,_c(this)}},Xs=Hs;var{animObject:id}=_,{format:bn}=nt,{composed:sd,dateFormats:rd,doc:vn,isSafari:od}=I,{distribute:nd}=Xt,{addEvent:ad,clamp:me,css:Sn,discardElement:ld,extend:hd,fireEvent:kn,getAlignFactor:Mn,isArray:cd,isNumber:dd,isObject:fd,isString:Fs,merge:pd,pick:xe,pushUnique:ud,splat:Ys,syncTimeout:gd}=T,He=class{constructor(e,t,i){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=e,this.init(e,t),this.pointer=i}bodyFormatter(e){return e.map(t=>{let i=t.series.tooltipOptions,s=t.formatPrefix||"point";return(i[s+"Formatter"]||t.tooltipFormatter).call(t,i[s+"Format"]||"")})}cleanSplit(e){this.chart.series.forEach(function(t){let i=t?.tt;i&&(!i.isActive||e?t.tt=i.destroy():i.isActive=!1)})}defaultFormatter(e){let t=this.points||Ys(this),i;return i=[e.headerFooterFormatter(t[0])],i=i.concat(e.bodyFormatter(t)),i.push(e.headerFooterFormatter(t[0],!0)),i}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),ld(this.container)),T.clearTimeout(this.hideTimer)}getAnchor(e,t){let{chart:i,pointer:s}=this,r=i.inverted,o=i.plotTop,n=i.plotLeft,a;if(e=Ys(e),e[0].series?.yAxis&&!e[0].series.yAxis.options.reversedStacks&&(e=e.slice().reverse()),this.followPointer&&t)typeof t.chartX>"u"&&(t=s.normalize(t)),a=[t.chartX-n,t.chartY-o];else if(e[0].tooltipPos)a=e[0].tooltipPos;else{let l=0,h=0;e.forEach(function(f){let d=f.pos(!0);d&&(l+=d[0],h+=d[1])}),l/=e.length,h/=e.length,this.shared&&e.length>1&&t&&(r?l=t.chartX:h=t.chartY),a=[l-n,h-o]}return a.map(Math.round)}getClassName(e,t,i){let s=this.options,r=e.series,o=r.options;return[s.className,"highcharts-label",i&&"highcharts-tooltip-header",t?"highcharts-tooltip-box":"highcharts-tooltip",!i&&"highcharts-color-"+xe(e.colorIndex,r.colorIndex),o?.className].filter(Fs).join(" ")}getLabel({anchorX:e,anchorY:t}={anchorX:0,anchorY:0}){let i=this,s=this.chart.styledMode,r=this.options,o=this.split&&this.allowShared,n=this.container,a=this.chart.renderer;if(this.label){let l=!this.label.hasClass("highcharts-label");(!o&&l||o&&!l)&&this.destroy()}if(!this.label){if(this.outside){let l=this.chart,h=l.options.chart.style,f=wt.getRendererType();this.container=n=I.doc.createElement("div"),n.className="highcharts-tooltip-container "+(l.renderTo.className.match(/(highcharts[a-zA-Z0-9-]+)\s?/gm)||[].join(" ")),Sn(n,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(h?.zIndex||0)+3)}),this.renderer=a=new f(n,0,0,h,void 0,void 0,a.styledMode)}if(o?this.label=a.g("tooltip"):(this.label=a.label("",e,t,r.shape||"callout",void 0,void 0,r.useHTML,void 0,"tooltip").attr({padding:r.padding,r:r.borderRadius}),s||this.label.attr({fill:r.backgroundColor,"stroke-width":r.borderWidth||0}).css(r.style).css({pointerEvents:r.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),i.outside){let l=this.label;[l.xSetter,l.ySetter].forEach((h,f)=>{l[f?"ySetter":"xSetter"]=d=>{h.call(l,i.distance),l[f?"y":"x"]=d,n&&(n.style[f?"top":"left"]=`${d}px`)}})}this.label.attr({zIndex:8}).shadow(r.shadow??!r.fixed).add()}return n&&!n.parentElement&&I.doc.body.appendChild(n),this.label}getPlayingField(){let{body:e,documentElement:t}=vn,{chart:i,distance:s,outside:r}=this;return{width:r?Math.max(e.scrollWidth,t.scrollWidth,e.offsetWidth,t.offsetWidth,t.clientWidth)-2*s-2:i.chartWidth,height:r?Math.max(e.scrollHeight,t.scrollHeight,e.offsetHeight,t.offsetHeight,t.clientHeight):i.chartHeight}}getPosition(e,t,i){let{distance:s,chart:r,outside:o,pointer:n}=this,{inverted:a,plotLeft:l,plotTop:h,polar:f}=r,{plotX:d=0,plotY:p=0}=i,g={},u=a&&i.h||0,{height:m,width:x}=this.getPlayingField(),y=n.getChartPosition(),b=D=>D*y.scaleX,v=D=>D*y.scaleY,S=D=>{let B=D==="x";return[D,B?x:m,B?e:t].concat(o?[B?b(e):v(t),B?y.left-s+b(d+l):y.top-s+v(p+h),0,B?x:m]:[B?e:t,B?d+l:p+h,B?l:h,B?l+r.plotWidth:h+r.plotHeight])},k=S("y"),w=S("x"),M,C=!!i.negative;!f&&r.hoverSeries?.yAxis?.reversed&&(C=!C);let A=!this.followPointer&&xe(i.ttBelow,f?!1:!a===C),P=function(D,B,z,F,K,q,ct){let Q=o?D==="y"?v(s):b(s):s,Y=(z-F)/2,X=F<K-s,N=K+s+F<B,H=K-Q-z+Y,j=K+Q-Y;if(A&&N)g[D]=j;else if(!A&&X)g[D]=H;else if(X)g[D]=Math.min(ct-F,H-u<0?H:H-u);else if(N)g[D]=Math.max(q,j+u+z>B?j:j+u);else return g[D]=0,!1},O=function(D,B,z,F,K){if(K<s||K>B-s)return!1;K<z/2?g[D]=1:K>B-F/2?g[D]=B-F-2:g[D]=K-z/2},E=function(D){[k,w]=[w,k],M=D},L=()=>{P.apply(0,k)!==!1?O.apply(0,w)===!1&&!M&&(E(!0),L()):M?g.x=g.y=0:(E(!0),L())};return(a&&!f||this.len>1)&&E(),L(),g}getFixedPosition(e,t,i){let s=i.series,{chart:r,options:o,split:n}=this,a=o.position,l=a.relativeTo,h=o.shared||s?.yAxis?.isRadial&&(l==="pane"||!l),f=h?"plotBox":l,d=f==="chart"?r.renderer:r[f]||r.getClipBox(s,!0);return{x:d.x+(d.width-e)*Mn(a.align)+a.x,y:d.y+(d.height-t)*Mn(a.verticalAlign)+(!n&&a.y||0)}}hide(e){let t=this;T.clearTimeout(this.hideTimer),e=xe(e,this.options.hideDelay),this.isHidden||(this.hideTimer=gd(function(){let i=t.getLabel();t.getLabel().animate({opacity:0},{duration:e&&150,complete:()=>{i.hide(),t.container&&t.container.remove()}}),t.isHidden=!0},e))}init(e,t){this.chart=e,this.options=t,this.crosshairs=[],this.isHidden=!0,this.split=t.split&&!e.inverted&&!e.polar,this.shared=t.shared||this.split,this.outside=xe(t.outside,!!(e.scrollablePixelsX||e.scrollablePixelsY))}shouldStickOnContact(e){return!!(!this.followPointer&&this.options.stickOnContact&&(!e||this.pointer.inClass(e.target,"highcharts-tooltip")))}move(e,t,i,s){let{followPointer:r,options:o}=this,n=id(!r&&!this.isHidden&&!o.fixed&&o.animation),a=r||(this.len||0)>1,l={x:e,y:t};a?l.anchorX=l.anchorY=NaN:(l.anchorX=i,l.anchorY=s),n.step=()=>this.drawTracker(),this.getLabel().animate(l,n)}refresh(e,t){let i=this,{chart:s,options:r,pointer:o,shared:n}=this,a=Ys(e),l=a[0],h=r.format,f=r.formatter||i.defaultFormatter,d=s.styledMode,p=i.allowShared;if(!r.enabled||!l.series)return;T.clearTimeout(this.hideTimer),i.allowShared=!(!cd(e)&&e.series&&e.series.noSharedTooltip),p=p&&!i.allowShared,i.followPointer=!i.split&&l.series.tooltipOptions.followPointer;let g=i.getAnchor(e,t),u=g[0],m=g[1];n&&i.allowShared&&(o.applyInactiveState(a),a.forEach(b=>b.setState("hover")),l.points=a),this.len=a.length;let x=Fs(h)?bn(h,l,s):f.call(l,i);l.points=void 0;let y=l.series;if(this.distance=xe(y.tooltipOptions.distance,16),x===!1)this.hide();else{if(i.split&&i.allowShared)this.renderSplit(x,a);else{let b=u,v=m;if(t&&o.isDirectTouch&&(b=t.chartX-s.plotLeft,v=t.chartY-s.plotTop),s.polar||y.options.clip===!1||a.some(S=>o.isDirectTouch||S.series.shouldShowTooltip(b,v))){let S=i.getLabel(p&&i.tt||{});(!r.style.width||d)&&S.css({width:(this.outside?this.getPlayingField():s.spacingBox).width+"px"}),S.attr({class:i.getClassName(l),text:x&&x.join?x.join(""):x}),this.outside&&S.attr({x:me(S.x||0,0,this.getPlayingField().width-(S.width||0)-1)}),d||S.attr({stroke:r.borderColor||l.color||y.color||"#666666"}),i.updatePosition({plotX:u,plotY:m,negative:l.negative,ttBelow:l.ttBelow,series:y,h:g[2]||0})}else{i.hide();return}}i.isHidden&&i.label&&i.label.attr({opacity:1}).show(),i.isHidden=!1}kn(this,"refresh")}renderSplit(e,t){let i=this,{chart:s,chart:{chartWidth:r,chartHeight:o,plotHeight:n,plotLeft:a,plotTop:l,scrollablePixelsY:h=0,scrollablePixelsX:f,styledMode:d},distance:p,options:g,options:{fixed:u,position:m,positioner:x},pointer:y}=i,{scrollLeft:b=0,scrollTop:v=0}=s.scrollablePlotArea?.scrollingContainer||{},S=i.outside&&typeof f!="number"?vn.documentElement.getBoundingClientRect():{left:b,right:b+r,top:v,bottom:v+o},k=i.getLabel(),w=this.renderer||s.renderer,M=!!s.xAxis[0]?.opposite,{left:C,top:A}=y.getChartPosition(),P=x||u,O=l+v,E=0,L=n-h;function D(Y){let{isHeader:X,plotX:N=0,plotY:H=0,series:j}=Y,Z,U;if(X)Z=Math.max(a+N,a),U=l+n/2;else{let{xAxis:it,yAxis:Mt}=j;Z=it.pos+me(N,-p,it.len+p),j.shouldShowTooltip(0,Mt.pos-l+H,{ignoreX:!0})&&(U=Mt.pos+H)}return Z=me(Z,S.left-p,S.right+p),{anchorX:Z,anchorY:U}}let B=function(Y,X,N,H=[0,0],j=!0){let Z,U;if(N.isHeader)U=M?0:L,Z=me(H[0]-Y/2,S.left,S.right-Y-(i.outside?C:0));else if(u&&N){let it=i.getFixedPosition(Y,X,N);Z=it.x,U=it.y-O}else U=H[1]-O,Z=j?H[0]-Y-p:H[0]+p,Z=me(Z,j?Z:S.left,S.right);return{x:Z,y:U}};function z(Y,X,N){let H=Y,{isHeader:j,series:Z}=X,U=Z.tooltipOptions||g;if(!H){let it={padding:U.padding,r:U.borderRadius};d||(it.fill=U.backgroundColor,it["stroke-width"]=U.borderWidth??(u&&!j?0:1)),H=w.label("",0,0,U[j?"headerShape":"shape"]||(u&&!j?"rect":"callout"),void 0,void 0,U.useHTML).addClass(i.getClassName(X,!0,j)).attr(it).add(k)}return H.isActive=!0,H.attr({text:N}),d||H.css(U.style).attr({stroke:U.borderColor||X.color||Z.color||"#333333"}),H}Fs(e)&&(e=[!1,e]);let F=e.slice(0,t.length+1).reduce(function(Y,X,N){if(X!==!1&&X!==""){let H=t[N-1]||{isHeader:!0,plotX:t[0].plotX,plotY:n,series:{}},j=H.isHeader,Z=j?i:H.series,U=Z.tt=z(Z.tt,H,X.toString()),it=U.getBBox(),Mt=it.width+U.strokeWidth();j&&(E=it.height,L+=E,M&&(O-=E));let{anchorX:Ce,anchorY:Nt}=D(H);if(typeof Nt=="number"){let Gr=it.height+1,$i=(x||B).call(i,Mt,Gr,H,[Ce,Nt]);Y.push({align:P?0:void 0,anchorX:Ce,anchorY:Nt,boxWidth:Mt,point:H,rank:xe($i.rank,j?1:0),size:Gr,target:$i.y,tt:U,x:$i.x})}else U.isActive=!1}return Y},[]);!P&&F.some(Y=>{let{outside:X}=i,N=(X?C:0)+Y.anchorX;return N<S.left&&N+Y.boxWidth<S.right?!0:N<C-S.left+Y.boxWidth&&S.right-N>N})&&(F=F.map(Y=>{let{x:X,y:N}=B.call(this,Y.boxWidth,Y.size,Y.point,[Y.anchorX,Y.anchorY],!1);return hd(Y,{target:N,x:X})})),i.cleanSplit(),nd(F,L);let K={left:C,right:C};F.forEach(function(Y){let{x:X,boxWidth:N,isHeader:H}=Y;H||(i.outside&&C+X<K.left&&(K.left=C+X),!H&&i.outside&&K.left+N>K.right&&(K.right=C+X))}),F.forEach(function(Y){let{x:X,anchorX:N,anchorY:H,pos:j,point:{isHeader:Z}}=Y,U={visibility:typeof j>"u"?"hidden":"inherit",x:X,y:(j||0)+O+(u&&m.y||0),anchorX:N,anchorY:H};if(i.outside&&X<N){let it=C-K.left;it>0&&(Z||(U.x=X+it,U.anchorX=N+it),Z&&(U.x=(K.right-K.left)/2,U.anchorX=N+it))}Y.tt.attr(U)});let{container:q,outside:ct,renderer:Q}=i;if(ct&&q&&Q){let{width:Y,height:X,x:N,y:H}=k.getBBox();Q.setSize(Y+N,X+H,!1),q.style.left=K.left+"px",q.style.top=A+"px"}od&&k.attr({opacity:k.opacity===1?.999:1})}drawTracker(){let e=this;if(!this.shouldStickOnContact()){e.tracker&&(e.tracker=e.tracker.destroy());return}let t=e.chart,i=e.label,s=e.shared?t.hoverPoints:t.hoverPoint;if(!i||!s)return;let r={x:0,y:0,width:0,height:0},o=this.getAnchor(s),n=i.getBBox();o[0]+=t.plotLeft-(i.translateX||0),o[1]+=t.plotTop-(i.translateY||0),r.x=Math.min(0,o[0]),r.y=Math.min(0,o[1]),r.width=o[0]<0?Math.max(Math.abs(o[0]),n.width-o[0]):Math.max(Math.abs(o[0]),n.width),r.height=o[1]<0?Math.max(Math.abs(o[1]),n.height-Math.abs(o[1])):Math.max(Math.abs(o[1]),n.height),e.tracker?e.tracker.attr(r):(e.tracker=i.renderer.rect(r).addClass("highcharts-tracker").add(i),t.styledMode||e.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(e){return e.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}headerFooterFormatter(e,t){let i=e.series,s=i.tooltipOptions,r=i.xAxis,o=r?.dateTime,n={isFooter:t,point:e},a=s.xDateFormat||"",l=s[t?"footerFormat":"headerFormat"];return kn(this,"headerFormatter",n,function(h){if(o&&!a&&dd(e.key)&&(a=o.getXDateFormat(e.key,s.dateTimeLabelFormats)),o&&a){if(fd(a)){let f=a;rd[0]=d=>i.chart.time.dateFormat(f,d),a="%0"}(e.tooltipDateKeys||["key"]).forEach(f=>{l=l.replace(new RegExp("point\\."+f+"([ \\)}])"),`(point.${f}:${a})$1`)})}i.chart.styledMode&&(l=this.styledModeFormat(l)),h.text=bn(l,e,this.chart)}),n.text||""}update(e){this.destroy(),this.init(this.chart,pd(!0,this.options,e))}updatePosition(e){let{chart:t,container:i,distance:s,options:r,pointer:o,renderer:n}=this,a=this.getLabel(),{height:l=0,width:h=0}=a,{fixed:f,positioner:d}=r,{left:p,top:g,scaleX:u,scaleY:m}=o.getChartPosition(),x=(d||f&&this.getFixedPosition||this.getPosition).call(this,h,l,e),y=I.doc,b=(e.plotX||0)+t.plotLeft,v=(e.plotY||0)+t.plotTop,S;if(n&&i){if(d||f){let{scrollLeft:k=0,scrollTop:w=0}=t.scrollablePlotArea?.scrollingContainer||{};x.x+=k+p-s,x.y+=w+g-s}S=(r.borderWidth||0)+2*s+2,n.setSize(me(h+S,0,y.documentElement.clientWidth)-1,l+S,!1),(u!==1||m!==1)&&(Sn(i,{transform:`scale(${u}, ${m})`}),b*=u,v*=m),b+=p-x.x,v+=g-x.y}this.move(Math.round(x.x),Math.round(x.y||0),b,v)}};(function(c){function e(t){ud(sd,"Core.Tooltip")&&ad(t,"afterInit",function(){let i=this.chart;i.options.tooltip&&(i.tooltip=new c(i,i.options.tooltip,this))})}c.compose=e})(He||(He={}));var Gs=He;var{animObject:md}=_,{defaultOptions:xd}=ot,{format:yd}=nt,{addEvent:bd,crisp:vd,erase:Sd,extend:Ai,fireEvent:js,getNestedProperty:kd,isArray:Md,isFunction:wd,isNumber:Gt,isObject:Pi,merge:wn,pick:jt,syncTimeout:Cd,removeEvent:Cn,uniqueKey:Ad}=T,Us=class c{animateBeforeDestroy(){let e=this,t={x:e.startXPos,opacity:0},i=e.getGraphicalProps();i.singular.forEach(function(s){let r=s==="dataLabel";e[s]=e[s].animate(r?{x:e[s].startXPos,y:e[s].startYPos,opacity:0}:t)}),i.plural.forEach(function(s){e[s].forEach(function(r){r.element&&r.animate(Ai({x:e.startXPos},r.startYPos?{x:r.startXPos,y:r.startYPos}:{}))})})}applyOptions(e,t){let i=this,s=i.series,r=s.options.pointValKey||s.pointValKey;return e=c.prototype.optionsToObject.call(this,e),Ai(i,e),i.options=i.options?Ai(i.options,e):e,e.group&&delete i.group,e.dataLabels&&delete i.dataLabels,r&&(i.y=c.prototype.getNestedProperty.call(i,r)),i.selected&&(i.state="select"),"name"in i&&typeof t>"u"&&s.xAxis&&s.xAxis.hasNames&&(i.x=s.xAxis.nameToX(i)),typeof i.x>"u"&&s?i.x=t??s.autoIncrement():Gt(e.x)&&s.options.relativeXValue?i.x=s.autoIncrement(e.x):typeof i.x=="string"&&(t??(t=s.chart.time.parse(i.x)),Gt(t)&&(i.x=t)),i.isNull=this.isValid&&!this.isValid(),i.formatPrefix=i.isNull?"null":"point",i}destroy(){if(!this.destroyed){let e=this,t=e.series,i=t.chart,s=t.options.dataSorting,r=i.hoverPoints,o=e.series.chart.renderer.globalAnimation,n=md(o),a=()=>{(e.graphic||e.graphics||e.dataLabel||e.dataLabels)&&(Cn(e),e.destroyElements());for(let l in e)delete e[l]};e.legendItem&&i.legend.destroyItem(e),r&&(e.setState(),Sd(r,e),r.length||(i.hoverPoints=null)),e===i.hoverPoint&&e.onMouseOut(),s?.enabled?(this.animateBeforeDestroy(),Cd(a,n.duration)):a(),i.pointCount--}this.destroyed=!0}destroyElements(e){let t=this,i=t.getGraphicalProps(e);i.singular.forEach(function(s){t[s]=t[s].destroy()}),i.plural.forEach(function(s){t[s].forEach(function(r){r?.element&&r.destroy()}),delete t[s]})}firePointEvent(e,t,i){let s=this,r=this.series,o=r.options;s.manageEvent(e),e==="click"&&o.allowPointSelect&&(i=function(n){!s.destroyed&&s.select&&s.select(null,n.ctrlKey||n.metaKey||n.shiftKey)}),js(s,e,t,i)}getClassName(){let e=this;return"highcharts-point"+(e.selected?" highcharts-point-select":"")+(e.negative?" highcharts-negative":"")+(e.isNull?" highcharts-null-point":"")+(typeof e.colorIndex<"u"?" highcharts-color-"+e.colorIndex:"")+(e.options.className?" "+e.options.className:"")+(e.zone?.className?" "+e.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(e){let t=this,i=[],s={singular:[],plural:[]},r,o;for(e=e||{graphic:1,dataLabel:1},e.graphic&&i.push("graphic","connector"),e.dataLabel&&i.push("dataLabel","dataLabelPath","dataLabelUpper"),o=i.length;o--;)r=i[o],t[r]&&s.singular.push(r);return["graphic","dataLabel"].forEach(function(n){let a=n+"s";e[n]&&t[a]&&s.plural.push(a)}),s}getNestedProperty(e){if(e)return e.indexOf("custom.")===0?kd(e,this.options):this[e]}getZone(){let e=this.series,t=e.zones,i=e.zoneAxis||"y",s,r=0;for(s=t[r];this[i]>=s.value;)s=t[++r];return this.nonZonedColor||(this.nonZonedColor=this.color),s?.color&&!this.options.color?this.color=s.color:this.color=this.nonZonedColor,s}hasNewShapeType(){let e=this;return(e.graphic&&(e.graphic.symbolName||e.graphic.element.nodeName))!==this.shapeType}constructor(e,t,i){this.formatPrefix="point",this.visible=!0,this.point=this,this.series=e,this.applyOptions(t,i),this.id??(this.id=Ad()),this.resolveColor(),this.dataLabelOnNull??(this.dataLabelOnNull=e.options.nullInteraction),e.chart.pointCount++,js(this,"afterInit")}isValid(){return(Gt(this.x)||this.x instanceof Date)&&Gt(this.y)}optionsToObject(e){let t=this.series,i=t.options.keys,s=i||t.pointArrayMap||["y"],r=s.length,o={},n,a=0,l=0;if(Gt(e)||e===null)o[s[0]]=e;else if(Md(e))for(!i&&e.length>r&&(n=typeof e[0],n==="string"?t.xAxis?.dateTime?o.x=t.chart.time.parse(e[0]):o.name=e[0]:n==="number"&&(o.x=e[0]),a++);l<r;)(!i||typeof e[a]<"u")&&(s[l].indexOf(".")>0?c.prototype.setNestedProperty(o,e[a],s[l]):o[s[l]]=e[a]),a++,l++;else typeof e=="object"&&(o=e,e.dataLabels&&(t.hasDataLabels=()=>!0),e.marker&&(t._hasPointMarkers=!0));return o}pos(e,t=this.plotY){if(!this.destroyed){let{plotX:i,series:s}=this,{chart:r,xAxis:o,yAxis:n}=s,a=0,l=0;if(Gt(i)&&Gt(t))return e&&(a=o?o.pos:r.plotLeft,l=n?n.pos:r.plotTop),r.inverted&&o&&n?[n.len-t+l,o.len-i+a]:[i+a,t+l]}}resolveColor(){let e=this.series,t=e.chart.options.chart,i=e.chart.styledMode,s,r,o=t.colorCount,n;delete this.nonZonedColor,e.options.colorByPoint?(i||(r=e.options.colors||e.chart.options.colors,s=r[e.colorCounter],o=r.length),n=e.colorCounter,e.colorCounter++,e.colorCounter===o&&(e.colorCounter=0)):(i||(s=e.color),n=e.colorIndex),this.colorIndex=jt(this.options.colorIndex,n),this.color=jt(this.options.color,s)}setNestedProperty(e,t,i){return i.split(".").reduce(function(r,o,n,a){let l=a.length-1===n;return r[o]=l?t:Pi(r[o],!0)?r[o]:{},r[o]},e),e}shouldDraw(){return!this.isNull}tooltipFormatter(e){let{chart:t,pointArrayMap:i=["y"],tooltipOptions:s}=this.series,{valueDecimals:r="",valuePrefix:o="",valueSuffix:n=""}=s;return t.styledMode&&(e=t.tooltip?.styledModeFormat(e)||e),i.forEach(a=>{a="{point."+a,(o||n)&&(e=e.replace(RegExp(a+"}","g"),o+a+"}"+n)),e=e.replace(RegExp(a+"}","g"),a+":,."+r+"f}")}),yd(e,this,t)}update(e,t,i,s){let r=this,o=r.series,n=r.graphic,a=o.chart,l=o.options,h;t=jt(t,!0);function f(){r.applyOptions(e);let d=n&&r.hasMockGraphic,p=r.y===null?!d:d;n&&p&&(r.graphic=n.destroy(),delete r.hasMockGraphic),Pi(e,!0)&&(n?.element&&e&&e.marker&&typeof e.marker.symbol<"u"&&(r.graphic=n.destroy()),e?.dataLabels&&r.dataLabel&&(r.dataLabel=r.dataLabel.destroy())),h=r.index;let g={};for(let u of o.dataColumnKeys())g[u]=r[u];o.dataTable.setRow(g,h),l.data[h]=Pi(l.data[h],!0)||Pi(e,!0)?r.options:jt(e,l.data[h]),o.isDirty=o.isDirtyData=!0,!o.fixedBox&&o.hasCartesianSeries&&(a.isDirtyBox=!0),l.legendType==="point"&&(a.isDirtyLegend=!0),t&&a.redraw(i)}s===!1?f():r.firePointEvent("update",{options:e},f)}remove(e,t){this.series.removePoint(this.series.data.indexOf(this),e,t)}select(e,t){let i=this,s=i.series,r=s.chart;e=jt(e,!i.selected),this.selectedStaging=e,i.firePointEvent(e?"select":"unselect",{accumulate:t},function(){i.selected=i.options.selected=e,s.options.data[s.data.indexOf(i)]=i.options,i.setState(e&&"select"),t||r.getSelectedPoints().forEach(function(o){let n=o.series;o.selected&&o!==i&&(o.selected=o.options.selected=!1,n.options.data[n.data.indexOf(o)]=o.options,o.setState(r.hoverPoints&&n.options.inactiveOtherPoints?"inactive":""),o.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(e){let t=this,i=t.series,{inverted:s,pointer:r}=i.chart;r&&(e=e?r.normalize(e):r.getChartCoordinatesFromPoint(t,s),r.runPointActions(e,t))}onMouseOut(){let e=this,t=e.series.chart;e.firePointEvent("mouseOut"),e.series.options.inactiveOtherPoints||(t.hoverPoints||[]).forEach(function(i){i.setState()}),t.hoverPoints=t.hoverPoint=null}manageEvent(e){let t=this,i=wn(t.series.options.point,t.options),s=i.events?.[e];wd(s)&&(!t.hcEvents?.[e]||t.hcEvents?.[e]?.map(r=>r.fn).indexOf(s)===-1)?(t.importedUserEvent?.(),t.importedUserEvent=bd(t,e,s),t.hcEvents&&(t.hcEvents[e].userEvent=!0)):t.importedUserEvent&&!s&&t.hcEvents?.[e]&&t.hcEvents?.[e].userEvent&&(Cn(t,e),delete t.hcEvents[e],Object.keys(t.hcEvents)||delete t.importedUserEvent)}setState(e,t){let i=this,s=i.series,r=i.state,o=s.options.states[e||"normal"]||{},n=xd.plotOptions[s.type].marker&&s.options.marker,a=n&&n.enabled===!1,l=n?.states?.[e||"normal"]||{},h=l.enabled===!1,f=i.marker||{},d=s.chart,p=n&&s.markerAttribs,g=s.halo,u,m,x,y=s.stateMarkerGraphic,b;if(e=e||"",e===i.state&&!t||i.selected&&e!=="select"||o.enabled===!1||e&&(h||a&&l.enabled===!1)||e&&f.states&&f.states[e]&&f.states[e].enabled===!1)return;if(i.state=e,p&&(u=s.markerAttribs(i,e)),i.graphic&&!i.hasMockGraphic){if(r&&i.graphic.removeClass("highcharts-point-"+r),e&&i.graphic.addClass("highcharts-point-"+e),!d.styledMode){m=s.pointAttribs(i,e),x=jt(d.options.chart.animation,o.animation);let w=m.opacity;s.options.inactiveOtherPoints&&Gt(w)&&(i.dataLabels||[]).forEach(function(M){M&&!M.hasClass("highcharts-data-label-hidden")&&(M.animate({opacity:w},x),M.connector&&M.connector.animate({opacity:w},x))}),i.graphic.animate(m,x)}u&&i.graphic.animate(u,jt(d.options.chart.animation,l.animation,n.animation)),y&&y.hide()}else e&&l&&(b=f.symbol||s.symbol,y&&y.currentSymbol!==b&&(y=y.destroy()),u&&(y?y[t?"animate":"attr"]({x:u.x,y:u.y}):b&&(s.stateMarkerGraphic=y=d.renderer.symbol(b,u.x,u.y,u.width,u.height,wn(n,l)).add(s.markerGroup),y.currentSymbol=b)),!d.styledMode&&y&&i.state!=="inactive"&&y.attr(s.pointAttribs(i,e))),y&&(y[e&&i.isInside?"show":"hide"](),y.element.point=i,y.addClass(i.getClassName(),!0));let v=o.halo,S=i.graphic||y,k=S?.visibility||"inherit";v?.size&&S&&k!=="hidden"&&!i.isCluster?(g||(s.halo=g=d.renderer.path().add(S.parentGroup)),g.show()[t?"animate":"attr"]({d:i.haloPath(v.size)}),g.attr({class:"highcharts-halo highcharts-color-"+jt(i.colorIndex,s.colorIndex)+(i.className?" "+i.className:""),visibility:k,zIndex:-1}),g.point=i,d.styledMode||g.attr(Ai({fill:i.color||s.color,"fill-opacity":v.opacity},dt.filterUserAttributes(v.attributes||{})))):g?.point?.haloPath&&!g.point.destroyed&&g.animate({d:g.point.haloPath(0)},null,g.hide),js(i,"afterSetState",{state:e})}haloPath(e){let t=this.pos();return t?this.series.chart.renderer.symbols.circle(vd(t[0],1)-e,t[1]-e,e*2,e*2):[]}},bt=Us;var{parse:Pd}=pt,{charts:Vs,composed:Td,isTouchDevice:Od}=I,{addEvent:vt,attr:Ld,css:$s,extend:Ks,find:An,fireEvent:Ut,isNumber:Ti,isObject:Oi,objectEach:Dd,offset:Ed,pick:Tt,pushUnique:Id,splat:Pn}=T,qs=(()=>{class c{applyInactiveState(t=[]){let i=[];t.forEach(s=>{let r=s.series;i.push(r),r.linkedParent&&i.push(r.linkedParent),r.linkedSeries&&i.push.apply(i,r.linkedSeries),r.navigatorSeries&&i.push(r.navigatorSeries),r.boosted&&r.markerGroup&&i.push.apply(i,this.chart.series.filter(o=>o.markerGroup===r.markerGroup))}),this.chart.series.forEach(s=>{i.indexOf(s)===-1?s.setState("inactive",!0):s.options.inactiveOtherPoints&&s.setAllPointsToState("inactive")})}destroy(){let t=this;this.eventsToUnbind.forEach(i=>i()),this.eventsToUnbind=[],I.chartCount||(c.unbindDocumentMouseUp.forEach(i=>i.unbind()),c.unbindDocumentMouseUp.length=0,c.unbindDocumentTouchEnd&&(c.unbindDocumentTouchEnd=c.unbindDocumentTouchEnd())),clearInterval(t.tooltipTimeout),Dd(t,function(i,s){t[s]=void 0})}getSelectionMarkerAttrs(t,i){let s={args:{chartX:t,chartY:i},attrs:{},shapeType:"rect"};return Ut(this,"getSelectionMarkerAttrs",s,r=>{let{chart:o,zoomHor:n,zoomVert:a}=this,{mouseDownX:l=0,mouseDownY:h=0}=o,f=r.attrs,d;f.x=o.plotLeft,f.y=o.plotTop,f.width=n?1:o.plotWidth,f.height=a?1:o.plotHeight,n&&(d=t-l,f.width=Math.max(1,Math.abs(d)),f.x=(d>0?0:d)+l),a&&(d=i-h,f.height=Math.max(1,Math.abs(d)),f.y=(d>0?0:d)+h)}),s}drag(t){let{chart:i}=this,{mouseDownX:s=0,mouseDownY:r=0}=i,{panning:o,panKey:n,selectionMarkerFill:a}=i.options.chart,l=i.plotLeft,h=i.plotTop,f=i.plotWidth,d=i.plotHeight,p=Oi(o)?o.enabled:o,g=n&&t[`${n}Key`],u=t.chartX,m=t.chartY,x,y=this.selectionMarker;if(!(y&&y.touch)&&(u<l?u=l:u>l+f&&(u=l+f),m<h?m=h:m>h+d&&(m=h+d),this.hasDragged=Math.sqrt(Math.pow(s-u,2)+Math.pow(r-m,2)),this.hasDragged>10)){x=i.isInsidePlot(s-l,r-h,{visiblePlotOnly:!0});let{shapeType:b,attrs:v}=this.getSelectionMarkerAttrs(u,m);(i.hasCartesianSeries||i.mapView)&&this.hasZoom&&x&&!g&&(y||(this.selectionMarker=y=i.renderer[b](),y.attr({class:"highcharts-selection-marker",zIndex:7}).add(),i.styledMode||y.attr({fill:a||Pd("#334eff").setOpacity(.25).get()}))),y&&y.attr(v),x&&!y&&p&&i.pan(t,o)}}dragStart(t){let i=this.chart;i.mouseIsDown=t.type,i.cancelClick=!1,i.mouseDownX=t.chartX,i.mouseDownY=t.chartY}getSelectionBox(t){let i={args:{marker:t},result:t.getBBox()};return Ut(this,"getSelectionBox",i),i.result}drop(t){let{chart:i,selectionMarker:s}=this,r;for(let o of i.axes)o.isPanning&&(o.isPanning=!1,(o.options.startOnTick||o.options.endOnTick||o.series.some(n=>n.boosted))&&(o.forceRedraw=!0,o.setExtremes(o.userMin,o.userMax,!1),r=!0));if(r&&i.redraw(),s&&t){if(this.hasDragged){let o=this.getSelectionBox(s);i.transform({axes:i.axes.filter(n=>n.zoomEnabled&&(n.coll==="xAxis"&&this.zoomX||n.coll==="yAxis"&&this.zoomY)),selection:ut({originalEvent:t,xAxis:[],yAxis:[]},o),from:o})}Ti(i.index)&&(this.selectionMarker=s.destroy())}i&&Ti(i.index)&&($s(i.container,{cursor:i._cursor}),i.cancelClick=this.hasDragged>10,i.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(t,i,s){let r;function o(n,a){let l=n.distX-a.distX,h=n.dist-a.dist,f=a.series.group?.zIndex-n.series.group?.zIndex,d;return l!==0&&i?d=l:h!==0?d=h:f!==0?d=f:d=n.series.index>a.series.index?-1:1,d}return t.forEach(function(n){let a=n.noSharedTooltip&&i,l=!a&&n.options.findNearestPointBy.indexOf("y")<0,h=n.searchPoint(s,l);Oi(h,!0)&&h.series&&(!Oi(r,!0)||o(r,h)>0)&&(r=h)}),r}getChartCoordinatesFromPoint(t,i){let{xAxis:s,yAxis:r}=t.series,o=t.shapeArgs;if(s&&r){let n=t.clientX??t.plotX??0,a=t.plotY||0;return t.isNode&&o&&Ti(o.x)&&Ti(o.y)&&(n=o.x,a=o.y),i?{chartX:r.len+r.pos-a,chartY:s.len+s.pos-n}:{chartX:n+s.pos,chartY:a+r.pos}}if(o?.x&&o.y)return{chartX:o.x,chartY:o.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:t}=this.chart,i=Ed(t);this.chartPosition={left:i.left,top:i.top,scaleX:1,scaleY:1};let{offsetHeight:s,offsetWidth:r}=t;return r>2&&s>2&&(this.chartPosition.scaleX=i.width/r,this.chartPosition.scaleY=i.height/s),this.chartPosition}getCoordinates(t){let i={xAxis:[],yAxis:[]};for(let s of this.chart.axes)i[s.isXAxis?"xAxis":"yAxis"].push({axis:s,value:s.toValue(t[s.horiz?"chartX":"chartY"])});return i}getHoverData(t,i,s,r,o,n){let a=[],l=!!(r&&t),h=function(m){return m.visible&&!(!o&&m.directTouch)&&Tt(m.options.enableMouseTracking,!0)},f=i,d,p={chartX:n?n.chartX:void 0,chartY:n?n.chartY:void 0,shared:o};Ut(this,"beforeGetHoverData",p),d=f&&!f.stickyTracking?[f]:s.filter(m=>m.stickyTracking&&(p.filter||h)(m));let u=l||!n?t:this.findNearestKDPoint(d,o,n);return f=u?.series,u&&(o&&!f.noSharedTooltip?(d=s.filter(function(m){return p.filter?p.filter(m):h(m)&&!m.noSharedTooltip}),d.forEach(function(m){let x=m.options?.nullInteraction,y=An(m.points,function(b){return b.x===u.x&&(!b.isNull||!!x)});Oi(y)&&(m.boosted&&m.boost&&(y=m.boost.getPoint(y)),a.push(y))})):a.push(u)),p={hoverPoint:u},Ut(this,"afterGetHoverData",p),{hoverPoint:p.hoverPoint,hoverSeries:f,hoverPoints:a}}getPointFromEvent(t){let i=t.target,s;for(;i&&!s;)s=i.point,i=i.parentNode;return s}onTrackerMouseOut(t){let i=this.chart,s=t.relatedTarget,r=i.hoverSeries;this.isDirectTouch=!1,r&&s&&!r.stickyTracking&&!this.inClass(s,"highcharts-tooltip")&&(!this.inClass(s,"highcharts-series-"+r.index)||!this.inClass(s,"highcharts-tracker"))&&r.onMouseOut()}inClass(t,i){let s=t,r;for(;s;){if(r=Ld(s,"class"),r){if(r.indexOf(i)!==-1)return!0;if(r.indexOf("highcharts-container")!==-1)return!1}s=s.parentElement}}constructor(t,i){this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=i,this.chart=t,this.runChartClick=!!i.chart.events?.click,this.pinchDown=[],this.setDOMEvents(),Ut(this,"afterInit")}normalize(t,i){let s=t.touches,r=s?s.length?s.item(0):Tt(s.changedTouches,t.changedTouches)[0]:t;i||(i=this.getChartPosition());let o=r.pageX-i.left,n=r.pageY-i.top;return o/=i.scaleX,n/=i.scaleY,Ks(t,{chartX:Math.round(o),chartY:Math.round(n)})}onContainerClick(t){let i=this.chart,s=i.hoverPoint,r=this.normalize(t),o=i.plotLeft,n=i.plotTop;i.cancelClick||(s&&this.inClass(r.target,"highcharts-tracker")?(Ut(s.series,"click",Ks(r,{point:s})),i.hoverPoint&&s.firePointEvent("click",r)):(Ks(r,this.getCoordinates(r)),i.isInsidePlot(r.chartX-o,r.chartY-n,{visiblePlotOnly:!0})&&Ut(i,"click",r)))}onContainerMouseDown(t){let i=((t.buttons||t.button)&1)===1;t=this.normalize(t),I.isFirefox&&t.button!==0&&this.onContainerMouseMove(t),(typeof t.button>"u"||i)&&(this.zoomOption(t),i&&t.preventDefault?.(),this.dragStart(t))}onContainerMouseLeave(t){let{pointer:i}=Vs[Tt(c.hoverChartIndex,-1)]||{};t=this.normalize(t),this.onContainerMouseMove(t),i&&!this.inClass(t.relatedTarget,"highcharts-tooltip")&&(i.reset(),i.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(t){let i=this.chart,s=i.tooltip,r=this.normalize(t);this.setHoverChartIndex(t),(i.mouseIsDown==="mousedown"||this.touchSelect(r))&&this.drag(r),!i.openMenu&&(this.inClass(r.target,"highcharts-tracker")||i.isInsidePlot(r.chartX-i.plotLeft,r.chartY-i.plotTop,{visiblePlotOnly:!0}))&&!s?.shouldStickOnContact(r)&&(this.inClass(r.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(r))}onDocumentTouchEnd(t){this.onDocumentMouseUp(t)}onContainerTouchMove(t){this.touchSelect(t)?this.onContainerMouseMove(t):this.touch(t)}onContainerTouchStart(t){this.touchSelect(t)?this.onContainerMouseDown(t):(this.zoomOption(t),this.touch(t,!0))}onDocumentMouseMove(t){let i=this.chart,s=i.tooltip,r=this.chartPosition,o=this.normalize(t,r);r&&!i.isInsidePlot(o.chartX-i.plotLeft,o.chartY-i.plotTop,{visiblePlotOnly:!0})&&!s?.shouldStickOnContact(o)&&(o.target===i.container.ownerDocument||!this.inClass(o.target,"highcharts-tracker"))&&this.reset()}onDocumentMouseUp(t){Vs[Tt(c.hoverChartIndex,-1)]?.pointer?.drop(t)}pinch(t){let i=this,{chart:s,hasZoom:r,lastTouches:o}=i,n=[].map.call(t.touches||[],d=>i.normalize(d)),a=n.length,l=a===1&&(i.inClass(t.target,"highcharts-tracker")&&s.runTrackerClick||i.runChartClick),h=s.tooltip,f=a===1&&Tt(h?.options.followTouchMove,!0);a>1?i.initiated=!0:f&&(i.initiated=!1),r&&i.initiated&&!l&&t.cancelable!==!1&&t.preventDefault(),t.type==="touchstart"?(i.pinchDown=n,i.res=!0,s.mouseDownX=t.chartX):f?this.runPointActions(i.normalize(t)):o&&(Ut(s,"touchpan",{originalEvent:t,touches:n},()=>{let d=p=>{let g=p[0],u=p[1]||g;return{x:g.chartX,y:g.chartY,width:u.chartX-g.chartX,height:u.chartY-g.chartY}};s.transform({axes:s.axes.filter(p=>p.zoomEnabled&&(this.zoomHor&&p.horiz||this.zoomVert&&!p.horiz)),to:d(n),from:d(o),trigger:t.type})}),i.res&&(i.res=!1,this.reset(!1,0))),i.lastTouches=n}reset(t,i){let s=this,r=s.chart,o=r.hoverSeries,n=r.hoverPoint,a=r.hoverPoints,l=r.tooltip,h=l?.shared?a:n;t&&h&&Pn(h).forEach(function(f){f.series.isCartesian&&typeof f.plotX>"u"&&(t=!1)}),t?l&&h&&Pn(h).length&&(l.refresh(h),l.shared&&a?a.forEach(function(f){f.setState(f.state,!0),f.series.isCartesian&&(f.series.xAxis.crosshair&&f.series.xAxis.drawCrosshair(null,f),f.series.yAxis.crosshair&&f.series.yAxis.drawCrosshair(null,f))}):n&&(n.setState(n.state,!0),r.axes.forEach(function(f){f.crosshair&&n.series[f.coll]===f&&f.drawCrosshair(null,n)}))):(n&&n.onMouseOut(),a&&a.forEach(function(f){f.setState()}),o&&o.onMouseOut(),l&&l.hide(i),s.unDocMouseMove&&(s.unDocMouseMove=s.unDocMouseMove()),r.axes.forEach(function(f){f.hideCrosshair()}),r.hoverPoints=r.hoverPoint=void 0)}runPointActions(t,i,s){let r=this,o=r.chart,n=o.series,a=o.tooltip?.options.enabled?o.tooltip:void 0,l=a?a.shared:!1,h=i||o.hoverPoint,f=h?.series||o.hoverSeries,d=(!t||t.type!=="touchmove")&&(!!i||f?.directTouch&&r.isDirectTouch),p=this.getHoverData(h,f,n,d,l,t);h=p.hoverPoint,f=p.hoverSeries;let g=p.hoverPoints,u=f?.tooltipOptions.followPointer&&!f.tooltipOptions.split,m=l&&f&&!f.noSharedTooltip;if(h&&(s||h!==o.hoverPoint||a?.isHidden)){if((o.hoverPoints||[]).forEach(function(x){g.indexOf(x)===-1&&x.setState()}),o.hoverSeries!==f&&f.onMouseOver(),r.applyInactiveState(g),(g||[]).forEach(function(x){x.setState("hover")}),o.hoverPoint&&o.hoverPoint.firePointEvent("mouseOut"),!h.series)return;o.hoverPoints=g,o.hoverPoint=h,h.firePointEvent("mouseOver",void 0,()=>{a&&h&&a.refresh(m?g:h,t)})}else if(u&&a&&!a.isHidden){let x=a.getAnchor([{}],t);o.isInsidePlot(x[0],x[1],{visiblePlotOnly:!0})&&a.updatePosition({plotX:x[0],plotY:x[1]})}r.unDocMouseMove||(r.unDocMouseMove=vt(o.container.ownerDocument,"mousemove",x=>Vs[c.hoverChartIndex??-1]?.pointer?.onDocumentMouseMove(x)),r.eventsToUnbind.push(r.unDocMouseMove)),o.axes.forEach(function(y){let b=y.crosshair?.snap??!0,v;b&&(v=o.hoverPoint,(!v||v.series[y.coll]!==y)&&(v=An(g,S=>S.series?.[y.coll]===y))),v||!b?y.drawCrosshair(t,v):y.hideCrosshair()})}setDOMEvents(){let t=this.chart.container,i=t.ownerDocument;t.onmousedown=this.onContainerMouseDown.bind(this),t.onmousemove=this.onContainerMouseMove.bind(this),t.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(vt(t,"mouseenter",this.onContainerMouseEnter.bind(this)),vt(t,"mouseleave",this.onContainerMouseLeave.bind(this))),c.unbindDocumentMouseUp.some(r=>r.doc===i)||c.unbindDocumentMouseUp.push({doc:i,unbind:vt(i,"mouseup",this.onDocumentMouseUp.bind(this))});let s=this.chart.renderTo.parentElement;for(;s&&s.tagName!=="BODY";)this.eventsToUnbind.push(vt(s,"scroll",()=>{delete this.chartPosition})),s=s.parentElement;this.eventsToUnbind.push(vt(t,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),vt(t,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),c.unbindDocumentTouchEnd||(c.unbindDocumentTouchEnd=vt(i,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),vt(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){if(!Od)return;let t=this,i=t.pointerCaptureEventsToUnbind,s=t.chart,r=s.container,o=Tt(s.options.tooltip?.followTouchMove,!0),n=o&&s.series.some(a=>a.options.findNearestPointBy.indexOf("y")>-1);!t.hasPointerCapture&&n?(i.push(vt(r,"pointerdown",a=>{a.target?.hasPointerCapture(a.pointerId)&&a.target?.releasePointerCapture(a.pointerId)}),vt(r,"pointermove",a=>{s.pointer?.getPointFromEvent(a)?.onMouseOver(a)})),s.styledMode||$s(r,{"touch-action":"none"}),r.className+=" highcharts-no-touch-action",t.hasPointerCapture=!0):t.hasPointerCapture&&!n&&(i.forEach(a=>a()),i.length=0,s.styledMode||$s(r,{"touch-action":Tt(s.options.chart.style?.["touch-action"],"manipulation")}),r.className=r.className.replace(" highcharts-no-touch-action",""),t.hasPointerCapture=!1)}setHoverChartIndex(t){let i=this.chart,s=I.charts[Tt(c.hoverChartIndex,-1)];if(s&&s!==i){let r={relatedTarget:i.container};t&&!t?.relatedTarget&&Object.assign({},t,r),s.pointer?.onContainerMouseLeave(t||r)}s?.mouseIsDown||(c.hoverChartIndex=i.index)}touch(t,i){let{chart:s,pinchDown:r=[]}=this,o,n;this.setHoverChartIndex(),t=this.normalize(t),t.touches.length===1?(n=s.isInsidePlot(t.chartX-s.plotLeft,t.chartY-s.plotTop,{visiblePlotOnly:!0}),n&&!s.openMenu?(i&&this.runPointActions(t),t.type==="touchmove"&&(o=r[0]?Math.pow(r[0].chartX-t.chartX,2)+Math.pow(r[0].chartY-t.chartY,2)>=16:!1),Tt(o,!0)&&this.pinch(t)):i&&this.reset()):t.touches.length===2&&this.pinch(t)}touchSelect(t){return!!(this.chart.zooming.singleTouch&&t.touches&&t.touches.length===1)}zoomOption(t){let i=this.chart,s=i.inverted,r=i.zooming.type||"",o,n;/touch/.test(t.type)&&(r=Tt(i.zooming.pinchType,r)),this.zoomX=o=/x/.test(r),this.zoomY=n=/y/.test(r),this.zoomHor=o&&!s||n&&s,this.zoomVert=n&&!s||o&&s,this.hasZoom=o||n}}return c.unbindDocumentMouseUp=[],c})();(function(c){function e(t){Id(Td,"Core.Pointer")&&vt(t,"beforeRender",function(){this.pointer=new c(this,this.options)})}c.compose=e})(qs||(qs={}));var Zs=qs;var _s;(function(c){function e(i,s,r){return Array.isArray(i)?(i.length=s,i):i[r?"subarray":"slice"](0,s)}c.setLength=e;function t(i,s,r,o,n=[]){if(Array.isArray(i))return Array.isArray(n)||(n=Array.from(n)),{removed:i.splice(s,r,...n),array:i};let a=Object.getPrototypeOf(i).constructor,l=i[o?"subarray":"slice"](s,s+r),h=i.length-r+n.length,f=new a(h);return f.set(i.subarray(0,s),0),f.set(n,s),f.set(i.subarray(s+r),s+n.length),{removed:l,array:f}}c.splice=t})(_s||(_s={}));var Tn=_s;var{setLength:Bd,splice:On}=Tn,{fireEvent:Js,objectEach:Xe,uniqueKey:Fe}=T,Qs=class{constructor(e={}){this.autoId=!e.id,this.columns={},this.id=e.id||Fe(),this.modified=this,this.rowCount=0,this.versionTag=Fe();let t=0;Xe(e.columns||{},(i,s)=>{this.columns[s]=i.slice(),t=Math.max(t,i.length)}),this.applyRowCount(t)}applyRowCount(e){this.rowCount=e,Xe(this.columns,(t,i)=>{t.length!==e&&(this.columns[i]=Bd(t,e))})}deleteRows(e,t=1){if(t>0&&e<this.rowCount){let i=0;Xe(this.columns,(s,r)=>{this.columns[r]=On(s,e,t).array,i=s.length}),this.rowCount=i}Js(this,"afterDeleteRows",{rowIndex:e,rowCount:t}),this.versionTag=Fe()}getColumn(e,t){return this.columns[e]}getColumns(e,t){return(e||Object.keys(this.columns)).reduce((i,s)=>(i[s]=this.columns[s],i),{})}getRow(e,t){return(t||Object.keys(this.columns)).map(i=>this.columns[i]?.[e])}setColumn(e,t=[],i=0,s){this.setColumns({[e]:t},i,s)}setColumns(e,t,i){let s=this.rowCount;Xe(e,(r,o)=>{this.columns[o]=r.slice(),s=r.length}),this.applyRowCount(s),i?.silent||(Js(this,"afterSetColumns"),this.versionTag=Fe())}setRow(e,t=this.rowCount,i,s){let{columns:r}=this,o=i?this.rowCount+1:t+1;Xe(e,(n,a)=>{let l=r[a]||s?.addColumns!==!1&&new Array(o);l&&(i?l=On(l,t,0,!0,[n]).array:l[t]=n,r[a]=l)}),o>this.rowCount&&this.applyRowCount(o),s?.silent||(Js(this,"afterSetRows"),this.versionTag=Fe())}},ye=Qs;var{extend:Rd,merge:Nd,pick:Ln}=T,tr;(function(c){function e(s,r){t.call(this,s,r,!0)}c.areaMarker=e;function t(s,r,o){let n=this.legendItem=this.legendItem||{},{chart:a,options:l}=this,{baseline:h=0,symbolWidth:f,symbolHeight:d}=s,p=this.symbol||"circle",g=d/2,u=a.renderer,m=n.group,x=h-Math.round((s.fontMetrics?.b||d)*(o?.4:.3)),y={},b,v=l.marker,S=0;if(a.styledMode||(y["stroke-width"]=Math.min(l.lineWidth||0,24),l.dashStyle?y.dashstyle=l.dashStyle:l.linecap!=="square"&&(y["stroke-linecap"]="round")),n.line=u.path().addClass("highcharts-graph").attr(y).add(m),o&&(n.area=u.path().addClass("highcharts-area").add(m)),y["stroke-linecap"]&&(S=Math.min(n.line.strokeWidth(),f)/2),f){let k=[["M",S,x],["L",f-S,x]];n.line.attr({d:k}),n.area?.attr({d:[...k,["L",f-S,h],["L",S,h]]})}if(v&&v.enabled!==!1&&f){let k=Math.min(Ln(v.radius,g),g);p.indexOf("url")===0&&(v=Nd(v,{width:d,height:d}),k=0),n.symbol=b=u.symbol(p,f/2-k,x-k,2*k,2*k,Rd({context:"legend"},v)).addClass("highcharts-point").add(m),b.isMarker=!0}}c.lineMarker=t;function i(s,r){let o=r.legendItem||{},n=s.options,a=s.symbolHeight,l=n.squareSymbol,h=l?a:s.symbolWidth;o.symbol=this.chart.renderer.rect(l?(s.symbolWidth-a)/2:0,s.baseline-a+1,h,a,Ln(s.options.symbolRadius,a/2)).addClass("highcharts-point").attr({zIndex:3}).add(o.group)}c.rectangle=i})(tr||(tr={}));var Li=tr;var zd={lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:c}=this.series.chart;return typeof this.y!="number"?"":c(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"},Dn=zd;var{defaultOptions:En}=ot,{extend:Wd,extendClass:Hd,merge:Xd}=T,er;(function(c){c.seriesTypes=I.seriesTypes;function e(i,s){let r=En.plotOptions||{},o=s.defaultOptions,n=s.prototype;return n.type=i,n.pointClass||(n.pointClass=bt),c.seriesTypes[i]?!1:(o&&(r[i]=o),c.seriesTypes[i]=s,!0)}c.registerSeriesType=e;function t(i,s,r,o,n){let a=En.plotOptions||{};if(s=s||"",a[i]=Xd(a[s],r),delete c.seriesTypes[i],e(i,Hd(c.seriesTypes[s]||function(){},o)),c.seriesTypes[i].prototype.type=i,n){class l extends bt{}Wd(l.prototype,n),c.seriesTypes[i].prototype.pointClass=l}return c.seriesTypes[i]}c.seriesType=t})(er||(er={}));var V=er;var{animObject:In,setAnimation:Fd}=_,{defaultOptions:Di}=ot,{registerEventOptions:Yd}=Yt,{svg:Gd,win:jd}=I,{seriesTypes:be}=V,{format:Ud}=nt,{arrayMax:ir,arrayMin:Bn,clamp:Rn,correctFloat:Nn,crisp:Vd,defined:at,destroyObjectProperties:$d,diffObjects:Kd,erase:zn,error:Ei,extend:ve,find:qd,fireEvent:st,getClosestDistance:Zd,getNestedProperty:Wn,insertItem:Hn,isArray:Xn,isNumber:ht,isString:_d,merge:Ye,objectEach:sr,pick:et,removeEvent:Jd,syncTimeout:Fn}=T,Ot=class c{constructor(){this.zoneAxis="y"}init(e,t){st(this,"init",{options:t}),this.dataTable??(this.dataTable=new ye);let i=this,s=e.series;this.eventsToUnbind=[],i.chart=e,i.options=i.setOptions(t);let r=i.options,o=r.visible!==!1;i.linkedSeries=[],i.bindAxes(),ve(i,{name:r.name,state:"",visible:o,selected:r.selected===!0}),Yd(this,r),(r.events?.click||r.point?.events?.click||r.allowPointSelect)&&(e.runTrackerClick=!0),i.getColor(),i.getSymbol(),i.isCartesian&&(e.hasCartesianSeries=!0);let a;s.length&&(a=s[s.length-1]),i._i=et(a?._i,-1)+1,i.opacity=i.options.opacity,e.orderItems("series",Hn(this,s)),r.dataSorting?.enabled?i.setDataSortingOptions():!i.points&&!i.data&&i.setData(r.data,!1),st(this,"afterInit")}is(e){return be[e]&&this instanceof be[e]}bindAxes(){let e=this,t=e.options,i=e.chart,s;st(this,"bindAxes",null,function(){(e.axisTypes||[]).forEach(function(r){(i[r]||[]).forEach(function(o){s=o.options,(et(t[r],0)===o.index||typeof t[r]<"u"&&t[r]===s.id)&&(Hn(e,o.series),e[r]=o,o.isDirty=!0)}),!e[r]&&e.optionalAxis!==r&&Ei(18,!0,i)})}),st(this,"afterBindAxes")}hasData(){return this.visible&&typeof this.dataMax<"u"&&typeof this.dataMin<"u"||this.visible&&this.dataTable.rowCount>0}hasMarkerChanged(e,t){let i=e.marker,s=t.marker||{};return i&&(s.enabled&&!i.enabled||s.symbol!==i.symbol||s.height!==i.height||s.width!==i.width)}autoIncrement(e){let t=this.options,{pointIntervalUnit:i,relativeXValue:s}=this.options,r=this.chart.time,o=this.xIncrement??r.parse(t.pointStart)??0,n;if(this.pointInterval=n=et(this.pointInterval,t.pointInterval,1),s&&ht(e)&&(n*=e),i){let a=r.toParts(o);i==="day"?a[2]+=n:i==="month"?a[1]+=n:i==="year"&&(a[0]+=n),n=r.makeTime.apply(r,a)-o}return s&&ht(e)?o+n:(this.xIncrement=o+n,o)}setDataSortingOptions(){let e=this.options;ve(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),at(e.pointRange)||(e.pointRange=1)}setOptions(e){let t=this.chart,i=t.options,s=i.plotOptions,r=t.userOptions||{},o=Ye(e),n=t.styledMode,a={plotOptions:s,userOptions:o},l;st(this,"setOptions",a);let h=a.plotOptions[this.type],f=r.plotOptions||{},d=f.series||{},p=Di.plotOptions[this.type]||{},g=f[this.type]||{};h.dataLabels=this.mergeArrays(p.dataLabels,h.dataLabels),this.userOptions=a.userOptions;let u=Ye(h,s.series,g,o);this.tooltipOptions=Ye(Di.tooltip,Di.plotOptions.series?.tooltip,p?.tooltip,t.userOptions.tooltip,f.series?.tooltip,g.tooltip,o.tooltip),this.stickyTracking=et(o.stickyTracking,g.stickyTracking,d.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:u.stickyTracking),h.marker===null&&delete u.marker,this.zoneAxis=u.zoneAxis||"y";let m=this.zones=(u.zones||[]).map(x=>ut({},x));return(u.negativeColor||u.negativeFillColor)&&!u.zones&&(l={value:u[this.zoneAxis+"Threshold"]||u.threshold||0,className:"highcharts-negative"},n||(l.color=u.negativeColor,l.fillColor=u.negativeFillColor),m.push(l)),m.length&&at(m[m.length-1].value)&&m.push(n?{}:{color:this.color,fillColor:this.fillColor}),st(this,"afterSetOptions",{options:u}),u}getName(){return this.options.name??Ud(this.chart.options.lang.seriesName,this,this.chart)}getCyclic(e,t,i){let s=this.chart,r=`${e}Index`,o=`${e}Counter`,n=i?.length||s.options.chart.colorCount,a,l;t||(l=et(e==="color"?this.options.colorIndex:void 0,this[r]),at(l)?a=l:(s.series.length||(s[o]=0),a=s[o]%n,s[o]+=1),i&&(t=i[a])),typeof a<"u"&&(this[r]=a),this[e]=t}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||Di.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let e=this.options.marker;this.getCyclic("symbol",e.symbol,this.chart.options.symbols)}getColumn(e,t){return(t?this.dataTable.modified:this.dataTable).getColumn(e,!0)||[]}findPointIndex(e,t){let{id:i,x:s}=e,r=this.points,o=this.options.dataSorting,n=this.cropStart||0,a,l,h;if(i){let f=this.chart.get(i);f instanceof bt&&(a=f)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let f=d=>!d.touched&&d.index===e.index;if(o?.matchByName?f=d=>!d.touched&&d.name===e.name:this.options.relativeXValue&&(f=d=>!d.touched&&d.options.x===e.x),a=qd(r,f),!a)return}return a&&(h=a?.index,typeof h<"u"&&(l=!0)),typeof h>"u"&&ht(s)&&(h=this.getColumn("x").indexOf(s,t)),h!==-1&&typeof h<"u"&&this.cropped&&(h=h>=n?h-n:h),!l&&ht(h)&&r[h]?.touched&&(h=void 0),h}updateData(e,t){let{options:i,requireSorting:s}=this,r=i.dataSorting,o=this.points,n=[],a=e.length===o.length,l,h,f,d,p=!0;if(this.xIncrement=null,e.forEach((u,m)=>{let x=at(u)&&this.pointClass.prototype.optionsToObject.call({series:this},u)||{},{id:y,x:b}=x,v;y||ht(b)?(v=this.findPointIndex(x,d),v===-1||typeof v>"u"?n.push(u):o[v]&&u!==i.data?.[v]?(o[v].update(u,!1,void 0,!1),o[v].touched=!0,s&&(d=v+1)):o[v]&&(o[v].touched=!0),(!a||m!==v||r?.enabled||this.hasDerivedData)&&(l=!0)):n.push(u)},this),l)for(h=o.length;h--;)f=o[h],f&&!f.touched&&f.remove?.(!1,t);else a&&!r?.enabled?(e.forEach((u,m)=>{u!==o[m].y&&!o[m].destroyed&&o[m].update(u,!1,void 0,!1)}),n.length=0):p=!1;if(o.forEach(u=>{u&&(u.touched=!1)}),!p)return!1;n.forEach(u=>{this.addPoint(u,!1,void 0,void 0,!1)},this);let g=this.getColumn("x");return this.xIncrement===null&&g.length&&(this.xIncrement=ir(g),this.autoIncrement()),!0}dataColumnKeys(){return["x",...this.pointArrayMap||["y"]]}setData(e,t=!0,i,s){let r=this,o=r.points,n=o?.length||0,a=r.options,l=r.chart,h=a.dataSorting,f=r.xAxis,d=a.turboThreshold,p=this.dataTable,g=this.dataColumnKeys(),u=r.pointValKey||"y",m=r.pointArrayMap||[],x=m.length,y=a.keys,b,v,S=0,k=1,w;l.options.chart.allowMutatingData||(a.data&&delete r.options.data,r.userOptions.data&&delete r.userOptions.data,w=Ye(!0,e)),e=w||e||[];let M=e.length;if(h?.enabled&&(e=this.sortData(e)),l.options.chart.allowMutatingData&&s!==!1&&M&&n&&!r.cropped&&!r.hasGroupedData&&r.visible&&!r.boosted&&(v=this.updateData(e,i)),!v){r.xIncrement=null,r.colorCounter=0;let C=d&&M>d;if(C){let A=r.getFirstValidPoint(e),P=r.getFirstValidPoint(e,M-1,-1),O=E=>!!(Xn(E)&&(y||ht(E[0])));if(ht(A)&&ht(P)){let E=[],L=[];for(let D of e)E.push(this.autoIncrement()),L.push(D);p.setColumns({x:E,[u]:L})}else if(O(A)&&O(P))if(x){let E=A.length===x?1:0,L=new Array(g.length).fill(0).map(()=>[]);for(let D of e){E&&L[0].push(this.autoIncrement());for(let B=E;B<=x;B++)L[B]?.push(D[B-E])}p.setColumns(g.reduce((D,B,z)=>(D[B]=L[z],D),{}))}else{y&&(S=y.indexOf("x"),k=y.indexOf("y"),S=S>=0?S:0,k=k>=0?k:1),A.length===1&&(k=0);let E=[],L=[];if(S===k)for(let D of e)E.push(this.autoIncrement()),L.push(D[k]);else for(let D of e)E.push(D[S]),L.push(D[k]);p.setColumns({x:E,[u]:L})}else C=!1}if(!C){let A=g.reduce((P,O)=>(P[O]=[],P),{});for(b=0;b<M;b++){let P=r.pointClass.prototype.applyOptions.apply({series:r},[e[b]]);for(let O of g)A[O][b]=P[O]}p.setColumns(A)}for(_d(this.getColumn("y")[0])&&Ei(14,!0,l),r.data=[],r.options.data=r.userOptions.data=e,b=n;b--;)o[b]?.destroy();f&&(f.minRange=f.userMinRange),r.isDirty=l.isDirtyBox=!0,r.isDirtyData=!!o,i=!1}a.legendType==="point"&&(this.processData(),this.generatePoints()),t&&l.redraw(i)}sortData(e){let t=this,i=t.options,s=i.dataSorting,r=s.sortKey||"y",o=function(a,l){return at(l)&&a.pointClass.prototype.optionsToObject.call({series:a},l)||{}};return e.forEach(function(a,l){e[l]=o(t,a),e[l].index=l},this),e.concat().sort((a,l)=>{let h=Wn(r,a),f=Wn(r,l);return f<h?-1:f>h?1:0}).forEach(function(a,l){a.x=l},this),t.linkedSeries&&t.linkedSeries.forEach(function(a){let l=a.options,h=l.data;!l.dataSorting?.enabled&&h&&(h.forEach(function(f,d){h[d]=o(a,f),e[d]&&(h[d].x=e[d].x,h[d].index=d)}),a.setData(h,!1))}),e}getProcessedData(e){let t=this,{dataTable:i,isCartesian:s,options:r,xAxis:o}=t,n=r.cropThreshold,a=e||t.getExtremesFromAll,l=o?.logarithmic,h=i.rowCount,f,d,p=0,g,u,m,x=t.getColumn("x"),y=i,b=!1;o&&(g=o.getExtremes(),u=g.min,m=g.max,b=!!(o.categories&&!o.names.length),s&&t.sorted&&!a&&(!n||h>n||t.forceCrop)&&(x[h-1]<u||x[0]>m?y=new ye:t.getColumn(t.pointValKey||"y").length&&(x[0]<u||x[h-1]>m)&&(f=this.cropData(i,u,m),y=f.modified,p=f.start,d=!0))),x=y.getColumn("x")||[];let v=Zd([l?x.map(l.log2lin):x],()=>t.requireSorting&&!b&&Ei(15,!1,t.chart));return{modified:y,cropped:d,cropStart:p,closestPointRange:v}}processData(e){let t=this,i=t.xAxis,s=t.dataTable;if(t.isCartesian&&!t.isDirty&&!i.isDirty&&!t.yAxis.isDirty&&!e)return!1;let r=t.getProcessedData();s.modified=r.modified,t.cropped=r.cropped,t.cropStart=r.cropStart,t.closestPointRange=t.basePointRange=r.closestPointRange,st(t,"afterProcessData")}cropData(e,t,i){let s=e.getColumn("x",!0)||[],r=s.length,o={},n,a,l=0,h=r;for(n=0;n<r;n++)if(s[n]>=t){l=Math.max(0,n-1);break}for(a=n;a<r;a++)if(s[a]>i){h=a+1;break}for(let f of this.dataColumnKeys()){let d=e.getColumn(f,!0);d&&(o[f]=d.slice(l,h))}return{modified:new ye({columns:o}),start:l,end:h}}generatePoints(){let e=this,t=e.options,i=e.processedData||t.data,s=e.dataTable.modified,r=e.getColumn("x",!0),o=e.pointClass,n=s.rowCount,a=e.cropStart||0,l=e.hasGroupedData,h=t.keys,f=[],d=t.dataGrouping?.groupAll?a:0,p=e.xAxis?.categories,g=e.pointArrayMap||["y"],u=this.dataColumnKeys(),m,x,y,b,v=e.data,S;if(!v&&!l){let k=[];k.length=i?.length||0,v=e.data=k}for(h&&l&&(e.options.keys=!1),b=0;b<n;b++)x=a+b,l?(y=new o(e,s.getRow(b,u)||[]),y.dataGroup=e.groupMap[d+b],y.dataGroup?.options&&(y.options=y.dataGroup.options,ve(y,y.dataGroup.options),delete y.dataLabels)):(y=v[x],S=i?i[x]:s.getRow(b,g),!y&&S!==void 0&&(v[x]=y=new o(e,S,r[b]))),y&&(y.index=l?d+b:x,f[b]=y,y.category=p?.[y.x]??y.x,y.key=y.name??y.category);if(e.options.keys=h,v&&(n!==(m=v.length)||l))for(b=0;b<m;b++)b===a&&!l&&(b+=n),v[b]&&(v[b].destroyElements(),v[b].plotX=void 0);e.data=v,e.points=f,st(this,"afterGeneratePoints")}getXExtremes(e){return{min:Bn(e),max:ir(e)}}getExtremes(e,t){let{xAxis:i,yAxis:s}=this,r=t||this.getExtremesFromAll||this.options.getExtremesFromAll,o=r&&this.cropped?this.dataTable:this.dataTable.modified,n=o.rowCount,a=e||this.stackedYData,l=a?[a]:(this.keysAffectYAxis||this.pointArrayMap||["y"])?.map(S=>o.getColumn(S,!0)||[])||[],h=this.getColumn("x",!0),f=[],d=this.requireSorting&&!this.is("column")?1:0,p=s?s.positiveValuesOnly:!1,g=r||this.cropped||!i,u,m,x,y=0,b=0;for(i&&(u=i.getExtremes(),y=u.min,b=u.max),x=0;x<n;x++)if(m=h[x],g||(h[x+d]||m)>=y&&(h[x-d]||m)<=b)for(let S of l){let k=S[x];ht(k)&&(k>0||!p)&&f.push(k)}let v={activeYData:f,dataMin:Bn(f),dataMax:ir(f)};return st(this,"afterGetExtremes",{dataExtremes:v}),v}applyExtremes(){let e=this.getExtremes();return this.dataMin=e.dataMin,this.dataMax=e.dataMax,e}getFirstValidPoint(e,t=0,i=1){let s=e.length,r=t;for(;r>=0&&r<s;){if(at(e[r]))return e[r];r+=i}}translate(){this.generatePoints();let e=this,t=e.options,i=t.stacking,s=e.xAxis,r=e.enabledDataSorting,o=e.yAxis,n=e.points,a=n.length,l=e.pointPlacementToXValue(),h=!!l,f=t.threshold,d=t.startFromThreshold?f:0,p=t?.nullInteraction&&o.len,g,u,m,x,y=Number.MAX_VALUE;function b(v){return Rn(v,-1e9,1e9)}for(g=0;g<a;g++){let v=n[g],S=v.x,k,w,M=v.y,C=v.low,A=i&&o.stacking?.stacks[(e.negStacks&&M<(d?0:f)?"-":"")+e.stackKey];u=s.translate(S,!1,!1,!1,!0,l),v.plotX=ht(u)?Nn(b(u)):void 0,i&&e.visible&&A&&A[S]&&(x=e.getStackIndicator(x,S,e.index),!v.isNull&&x.key&&(k=A[S],w=k.points[x.key]),k&&Xn(w)&&(C=w[0],M=w[1],C===d&&x.key===A[S].base&&(C=et(ht(f)?f:o.min)),o.positiveValuesOnly&&at(C)&&C<=0&&(C=void 0),v.total=v.stackTotal=et(k.total),v.percentage=at(v.y)&&k.total?v.y/k.total*100:void 0,v.stackY=M,e.irregularWidths||k.setOffset(e.pointXOffset||0,e.barW||0,void 0,void 0,void 0,e.xAxis))),v.yBottom=at(C)?b(o.translate(C,!1,!0,!1,!0)):void 0,e.dataModify&&(M=e.dataModify.modifyValue(M,g));let P;ht(M)&&v.plotX!==void 0?(P=o.translate(M,!1,!0,!1,!0),P=ht(P)?b(P):void 0):!ht(M)&&p&&(P=p),v.plotY=P,v.isInside=this.isPointInside(v),v.clientX=h?Nn(s.translate(S,!1,!1,!1,!0,l)):u,v.negative=(v.y||0)<(f||0),!v.isNull&&v.visible!==!1&&(typeof m<"u"&&(y=Math.min(y,Math.abs(u-m))),m=u),v.zone=this.zones.length?v.getZone():void 0,!v.graphic&&e.group&&r&&(v.isNew=!0)}e.closestPointRangePx=y,st(this,"afterTranslate")}getValidPoints(e,t,i){let s=this.chart;return(e||this.points||[]).filter(function(r){let{plotX:o,plotY:n}=r;return!i&&(r.isNull||!ht(n))||t&&!s.isInsidePlot(o,n,{inverted:s.inverted})?!1:r.visible!==!1})}getSharedClipKey(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0),this.sharedClipKey}setClip(){let{chart:e,group:t,markerGroup:i}=this,s=e.sharedClips,r=e.renderer,o=e.getClipBox(this),n=this.getSharedClipKey(),a=s[n];a?a.animate(o):s[n]=a=r.clipRect(o),t&&t.clip(this.options.clip===!1?void 0:a),i&&i.clip()}animate(e){let{chart:t,group:i,markerGroup:s}=this,r=t.inverted,o=In(this.options.animation),n=[this.getSharedClipKey(),o.duration,o.easing,o.defer].join(","),a=t.sharedClips[n],l=t.sharedClips[n+"m"];if(e&&i){let h=t.getClipBox(this);if(a)a.attr("height",h.height);else{h.width=0,r&&(h.x=t.plotHeight),a=t.renderer.clipRect(h),t.sharedClips[n]=a;let f={x:-99,y:-99,width:r?t.plotWidth+199:99,height:r?99:t.plotHeight+199};l=t.renderer.clipRect(f),t.sharedClips[n+"m"]=l}i.clip(a),s?.clip(l)}else if(a&&!a.hasClass("highcharts-animating")){let h=t.getClipBox(this),f=o.step;(s?.element.childNodes.length||t.series.length>1)&&(o.step=function(d,p){f&&f.apply(p,arguments),p.prop==="width"&&l?.element&&l.attr(r?"height":"width",d+99)}),a.addClass("highcharts-animating").animate(h,o)}}afterAnimate(){this.setClip(),sr(this.chart.sharedClips,(e,t,i)=>{e&&!this.chart.container.querySelector(`[clip-path="url(#${e.id})"]`)&&(e.destroy(),delete i[t])}),this.finishedAnimating=!0,st(this,"afterAnimate")}drawPoints(e=this.points){let t=this,i=t.chart,s=i.styledMode,{colorAxis:r,options:o}=t,n=o.marker,a=o.nullInteraction,l=t[t.specialGroup||"markerGroup"],h=t.xAxis,f=et(n.enabled,!h||h.isRadial?!0:null,t.closestPointRangePx>=n.enabledThreshold*n.radius),d,p,g,u,m,x,y;if(n.enabled!==!1||t._hasPointMarkers)for(d=0;d<e.length;d++){p=e[d],g=p.graphic,u=g?"animate":"attr",m=p.marker||{},x=!!p.marker;let b=p.isNull;if((f&&!at(m.enabled)||m.enabled)&&(!b||a)&&p.visible!==!1){let S=et(m.symbol,t.symbol,"rect");y=t.markerAttribs(p,p.selected&&"select"),t.enabledDataSorting&&(p.startXPos=h.reversed?-(y.width||0):h.width);let k=p.isInside!==!1;if(!g&&k&&((y.width||0)>0||p.hasImage)&&(p.graphic=g=i.renderer.symbol(S,y.x,y.y,y.width,y.height,x?m:n).add(l),t.enabledDataSorting&&i.hasRendered&&(g.attr({x:p.startXPos}),u="animate")),g&&u==="animate"&&g[k?"show":"hide"](k).animate(y),g){let w=t.pointAttribs(p,s||!p.selected?void 0:"select");s?r&&g.css({fill:w.fill}):g[u](w)}g&&g.addClass(p.getClassName(),!0)}else g&&(p.graphic=g.destroy())}}markerAttribs(e,t){let i=this.options,s=i.marker,r=e.marker||{},o=r.symbol||s.symbol,n={},a,l,h=et(r.radius,s?.radius);t&&(a=s.states[t],l=r.states&&r.states[t],h=et(l?.radius,a?.radius,h&&h+(a?.radiusPlus||0))),e.hasImage=o&&o.indexOf("url")===0,e.hasImage&&(h=0);let f=e.pos();return ht(h)&&f&&(i.crisp&&(f[0]=Vd(f[0],e.hasImage?0:o==="rect"?s?.lineWidth||0:1)),n.x=f[0]-h,n.y=f[1]-h),h&&(n.width=n.height=2*h),n}pointAttribs(e,t){let i=this.options,s=i.marker,r=e?.options,o=r?.marker||{},n=r?.color,a=e?.color,l=e?.zone?.color,h,f,d=this.color,p,g,u=et(o.lineWidth,s.lineWidth),m=e?.isNull&&i.nullInteraction?0:1;return d=n||l||a||d,p=o.fillColor||s.fillColor||d,g=o.lineColor||s.lineColor||d,t=t||"normal",t&&(h=s.states[t]||{},f=o.states&&o.states[t]||{},u=et(f.lineWidth,h.lineWidth,u+et(f.lineWidthPlus,h.lineWidthPlus,0)),p=f.fillColor||h.fillColor||p,g=f.lineColor||h.lineColor||g,m=et(f.opacity,h.opacity,m)),{stroke:g,"stroke-width":u,fill:p,opacity:m}}destroy(e){let t=this,i=t.chart,s=/AppleWebKit\/533/.test(jd.navigator.userAgent),r=t.data||[],o,n,a;for(st(t,"destroy",{keepEventsForUpdate:e}),this.removeEvents(e),(t.axisTypes||[]).forEach(function(l){a=t[l],a?.series&&(zn(a.series,t),a.isDirty=a.forceRedraw=!0)}),t.legendItem&&t.chart.legend.destroyItem(t),n=r.length;n--;)r[n]?.destroy?.();for(let l of t.zones)$d(l,void 0,!0);T.clearTimeout(t.animationTimeout),sr(t,function(l,h){l instanceof mt&&!l.survive&&(o=s&&h==="group"?"hide":"destroy",l[o]())}),i.hoverSeries===t&&(i.hoverSeries=void 0),zn(i.series,t),i.orderItems("series"),sr(t,function(l,h){(!e||h!=="hcEvents")&&delete t[h]})}applyZones(){let e=this,{area:t,chart:i,graph:s,zones:r,points:o,xAxis:n,yAxis:a,zoneAxis:l}=e,{inverted:h,renderer:f}=i,d=this[`${l}Axis`],{isXAxis:p,len:g=0,minPointOffset:u=0}=d||{},m=(s?.strokeWidth()||0)/2+1,x=(y,b=0,v=0)=>{h&&(v=g-v);let{translated:S=0,lineClip:k}=y,w=v-S;k?.push(["L",b,Math.abs(w)<m?v-m*(w<=0?-1:1):S])};if(r.length&&(s||t)&&d&&ht(d.min)){let y=d.getExtremes().max+u,b=k=>{k.forEach((w,M)=>{(w[0]==="M"||w[0]==="L")&&(k[M]=[w[0],p?g-w[1]:w[1],p?w[2]:g-w[2]])})};if(r.forEach(k=>{k.lineClip=[],k.translated=Rn(d.toPixels(et(k.value,y),!0)||0,0,g)}),s&&!this.showLine&&s.hide(),t&&t.hide(),l==="y"&&o.length<n.len)for(let k of o){let{plotX:w,plotY:M,zone:C}=k,A=C&&r[r.indexOf(C)-1];C&&x(C,w,M),A&&x(A,w,M)}let v=[],S=d.toPixels(d.getExtremes().min-u,!0);r.forEach(k=>{let w=k.lineClip||[],M=Math.round(k.translated||0);n.reversed&&w.reverse();let{clip:C,simpleClip:A}=k,P=0,O=0,E=n.len,L=a.len;p?(P=M,E=S):(O=M,L=S);let D=[["M",P,O],["L",E,O],["L",E,L],["L",P,L],["Z"]],B=[D[0],...w,D[1],D[2],...v,D[3],D[4]];v=w.reverse(),S=M,h&&(b(B),t&&b(D)),C?(C.animate({d:B}),A?.animate({d:D})):(C=k.clip=f.path(B),t&&(A=k.simpleClip=f.path(D))),s&&k.graph?.clip(C),t&&k.area?.clip(A)})}else e.visible&&(s&&s.show(),t&&t.show())}plotGroup(e,t,i,s,r){let o=this[e],n=!o,a={visibility:i,zIndex:s||.1};return at(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(a.opacity=this.opacity),o||(this[e]=o=this.chart.renderer.g().add(r)),o.addClass("highcharts-"+t+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(at(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(o.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),o.attr(a)[n?"attr":"animate"](this.getPlotBox(t)),o}getPlotBox(e){let t=this.xAxis,i=this.yAxis,s=this.chart,r=s.inverted&&!s.polar&&t&&this.invertible&&e==="series";return s.inverted&&(t=i,i=this.xAxis),{translateX:t?t.left:s.plotLeft,translateY:i?i.top:s.plotTop,rotation:r?90:0,rotationOriginX:r?(t.len-i.len)/2:0,rotationOriginY:r?(t.len+i.len)/2:0,scaleX:r?-1:1,scaleY:1}}removeEvents(e){let{eventsToUnbind:t}=this;e||Jd(this),t.length&&(t.forEach(i=>{i()}),t.length=0)}render(){let e=this,{chart:t,options:i,hasRendered:s}=e,r=In(i.animation),o=e.visible?"inherit":"hidden",n=i.zIndex,a=t.seriesGroup,l=e.finishedAnimating?0:r.duration;st(this,"render"),e.plotGroup("group","series",o,n,a),e.markerGroup=e.plotGroup("markerGroup","markers",o,n,a),i.clip!==!1&&e.setClip(),l&&e.animate?.(!0),e.drawGraph&&(e.drawGraph(),e.applyZones()),e.visible&&e.drawPoints(),e.drawDataLabels?.(),e.redrawPoints?.(),i.enableMouseTracking&&e.drawTracker?.(),l&&e.animate?.(),s||(l&&r.defer&&(l+=r.defer),e.animationTimeout=Fn(()=>{e.afterAnimate()},l||0)),e.isDirty=!1,e.hasRendered=!0,st(e,"afterRender")}redraw(){let e=this.isDirty||this.isDirtyData;this.translate(),this.render(),e&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(e,t){let{xAxis:i,yAxis:s}=this,r=this.chart.inverted;return this.searchKDTree({clientX:r?i.len-e.chartY+i.pos:e.chartX-i.pos,plotY:r?s.len-e.chartX+s.pos:e.chartY-s.pos},t,e)}buildKDTree(e){this.buildingKdTree=!0;let t=this,i=t.options,s=i.findNearestPointBy.indexOf("y")>-1?2:1;function r(n,a,l){let h=n?.length,f,d;if(h)return f=t.kdAxisArray[a%l],n.sort((p,g)=>(p[f]||0)-(g[f]||0)),d=Math.floor(h/2),{point:n[d],left:r(n.slice(0,d),a+1,l),right:r(n.slice(d+1),a+1,l)}}function o(){t.kdTree=r(t.getValidPoints(void 0,!t.directTouch,i?.nullInteraction),s,s),t.buildingKdTree=!1}delete t.kdTree,Fn(o,i.kdNow||e?.type==="touchstart"?0:1)}searchKDTree(e,t,i,s,r){let o=this,[n,a]=this.kdAxisArray,l=t?"distX":"dist",h=(o.options.findNearestPointBy||"").indexOf("y")>-1?2:1,f=!!o.isBubble,d=s||((m,x,y)=>{let b=m[y]||0,v=x[y]||0;return[b===v&&m.index>x.index||b<v?m:x,!1]}),p=r||((m,x)=>m<x);function g(m,x){let y=m[n],b=x[n],v=at(y)&&at(b)?y-b:null,S=m[a],k=x[a],w=at(S)&&at(k)?S-k:0,M=f&&x.marker?.radius||0;x.dist=Math.sqrt((v&&v*v||0)+w*w)-M,x.distX=at(v)?Math.abs(v)-M:Number.MAX_VALUE}function u(m,x,y,b){let v=x.point,S=o.kdAxisArray[y%b],k=v,w=!1;g(m,v);let M=(m[S]||0)-(v[S]||0)+(f&&v.marker?.radius||0),C=M<0?"left":"right",A=M<0?"right":"left";if(x[C]&&([k,w]=d(v,u(m,x[C],y+1,b),l)),x[A]){let P=Math.sqrt(M*M),O=k[l];p(P,O,w)&&(k=d(k,u(m,x[A],y+1,b),l)[0])}return k}if(!this.kdTree&&!this.buildingKdTree&&this.buildKDTree(i),this.kdTree)return u(e,this.kdTree,h,h)}pointPlacementToXValue(){let{options:e,xAxis:t}=this,i=e.pointPlacement;return i==="between"&&(i=t.reversed?-.5:.5),ht(i)?i*(e.pointRange||t.pointRange):0}isPointInside(e){let{chart:t,xAxis:i,yAxis:s}=this,{plotX:r=-1,plotY:o=-1}=e;return o>=0&&o<=(s?s.len:t.plotHeight)&&r>=0&&r<=(i?i.len:t.plotWidth)}drawTracker(){let e=this,t=e.options,i=t.trackByArea,s=[].concat((i?e.areaPath:e.graphPath)||[]),r=e.chart,o=r.pointer,n=r.renderer,a=r.options.tooltip?.snap||0,l=()=>{t.enableMouseTracking&&r.hoverSeries!==e&&e.onMouseOver()},h="rgba(192,192,192,"+(Gd?1e-4:.002)+")",f=e.tracker;f?f.attr({d:s}):e.graph&&(e.tracker=f=n.path(s).attr({visibility:e.visible?"inherit":"hidden",zIndex:2}).addClass(i?"highcharts-tracker-area":"highcharts-tracker-line").add(e.group),r.styledMode||f.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:h,fill:i?h:"none","stroke-width":e.graph.strokeWidth()+(i?0:2*a)}),[e.tracker,e.markerGroup,e.dataLabelsGroup].forEach(d=>{d&&(d.addClass("highcharts-tracker").on("mouseover",l).on("mouseout",p=>{o?.onTrackerMouseOut(p)}),t.cursor&&!r.styledMode&&d.css({cursor:t.cursor}),d.on("touchstart",l))})),st(this,"afterDrawTracker")}addPoint(e,t,i,s,r){let o=this,n=o.options,{chart:a,data:l,dataTable:h,xAxis:f}=o,d=f?.hasNames&&f.names,p=n.data,g=o.getColumn("x"),u,m;t=et(t,!0);let x={series:o};o.pointClass.prototype.applyOptions.apply(x,[e]);let y=x.x;if(m=g.length,o.requireSorting&&y<g[m-1])for(u=!0;m&&g[m-1]>y;)m--;h.setRow(x,m,!0,{addColumns:!1}),d&&x.name&&(d[y]=x.name),p?.splice(m,0,e),(u||o.processedData)&&(o.data.splice(m,0,null),o.processData()),n.legendType==="point"&&o.generatePoints(),i&&(l[0]&&l[0].remove?l[0].remove(!1):([l,p].filter(at).forEach(b=>{b.shift()}),h.deleteRows(0))),r!==!1&&st(o,"addPoint",{point:x}),o.isDirty=!0,o.isDirtyData=!0,t&&a.redraw(s)}removePoint(e,t,i){let s=this,{chart:r,data:o,points:n,dataTable:a}=s,l=o[e],h=function(){[n?.length===o.length?n:void 0,o,s.options.data].filter(at).forEach(f=>{f.splice(e,1)}),a.deleteRows(e),l?.destroy(),s.isDirty=!0,s.isDirtyData=!0,t&&r.redraw()};Fd(i,r),t=et(t,!0),l?l.firePointEvent("remove",null,h):h()}remove(e,t,i,s){let r=this,o=r.chart;function n(){r.destroy(s),o.isDirtyLegend=o.isDirtyBox=!0,o.linkSeries(s),et(e,!0)&&o.redraw(t)}i!==!1?st(r,"remove",null,n):n()}update(e,t){e=Kd(e,this.userOptions),st(this,"update",{options:e});let i=this,s=i.chart,r=i.userOptions,o=i.initialType||i.type,n=s.options.plotOptions,a=be[o].prototype,l=["group","markerGroup","dataLabelsGroup","transformGroup"],h=["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"],f=i.finishedAnimating&&{animation:!1},d={},p,g,u=c.keepProps.slice(),m=e.type||r.type||s.options.chart.type,x=!(this.hasDerivedData||m&&m!==this.type||typeof e.keys<"u"||typeof e.pointStart<"u"||typeof e.pointInterval<"u"||typeof e.relativeXValue<"u"||e.joinBy||e.mapData||h.some(b=>i.hasOptionChanged(b)));m=m||o,x?(u.push.apply(u,c.keepPropsForPoints),e.visible!==!1&&u.push("area","graph"),i.parallelArrays.forEach(function(b){u.push(b+"Data")}),e.data&&(e.dataSorting&&ve(i.options.dataSorting,e.dataSorting),this.setData(e.data,!1))):this.dataTable.modified=this.dataTable,e=Ye(r,{index:r.index===void 0?i.index:r.index,pointStart:n?.series?.pointStart??r.pointStart??i.getColumn("x")[0]},!x&&{data:i.options.data},e,f),x&&e.data&&(e.data=i.options.data),u=l.concat(u),u.forEach(function(b){u[b]=i[b],delete i[b]});let y=!1;if(be[m]){if(y=m!==i.type,i.remove(!1,!1,!1,!0),y)if(s.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(i,be[m].prototype);else{let b=Object.hasOwnProperty.call(i,"hcEvents")&&i.hcEvents;for(g in a)i[g]=void 0;ve(i,be[m].prototype),b?i.hcEvents=b:delete i.hcEvents}}else Ei(17,!0,s,{missingModuleFor:m});if(u.forEach(function(b){i[b]=u[b]}),i.init(s,e),x&&this.points){p=i.options,p.visible===!1?(d.graphic=1,d.dataLabel=1):(this.hasMarkerChanged(p,r)&&(d.graphic=1),i.hasDataLabels?.()||(d.dataLabel=1));for(let b of this.points)b?.series&&(b.resolveColor(),Object.keys(d).length&&b.destroyElements(d),p.showInLegend===!1&&b.legendItem&&s.legend.destroyItem(b))}i.initialType=o,s.linkSeries(),s.setSortedData(),y&&i.linkedSeries.length&&(i.isDirtyData=!0),st(this,"afterUpdate"),et(t,!0)&&s.redraw(x?void 0:!1)}setName(e){this.name=this.options.name=this.userOptions.name=e,this.chart.isDirtyLegend=!0}hasOptionChanged(e){let t=this.chart,i=this.options[e],s=t.options.plotOptions,r=this.userOptions[e],o=et(s?.[this.type]?.[e],s?.series?.[e]);return r&&!at(o)?i!==r:i!==et(o,i)}onMouseOver(){let e=this,t=e.chart,i=t.hoverSeries;t.pointer?.setHoverChartIndex(),i&&i!==e&&i.onMouseOut(),e.options.events.mouseOver&&st(e,"mouseOver"),e.setState("hover"),t.hoverSeries=e}onMouseOut(){let e=this,t=e.options,i=e.chart,s=i.tooltip,r=i.hoverPoint;i.hoverSeries=null,r&&r.onMouseOut(),e&&t.events.mouseOut&&st(e,"mouseOut"),s&&!e.stickyTracking&&(!s.shared||e.noSharedTooltip)&&s.hide(),i.series.forEach(function(o){o.setState("",!0)})}setState(e,t){let i=this,s=i.options,r=i.graph,o=s.inactiveOtherPoints,n=s.states,a=et(n[e||"normal"]&&n[e||"normal"].animation,i.chart.options.chart.animation),l=s.lineWidth,h=s.opacity;if(e=e||"",i.state!==e&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(f){f&&(i.state&&f.removeClass("highcharts-series-"+i.state),e&&f.addClass("highcharts-series-"+e))}),i.state=e,!i.chart.styledMode)){if(n[e]&&n[e].enabled===!1)return;if(e&&(l=n[e].lineWidth||l+(n[e].lineWidthPlus||0),h=et(n[e].opacity,h)),r&&!r.dashstyle&&ht(l))for(let f of[r,...this.zones.map(d=>d.graph)])f?.animate({"stroke-width":l},a);o||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(f){f&&f.animate({opacity:h},a)})}t&&o&&i.points&&i.setAllPointsToState(e||void 0)}setAllPointsToState(e){this.points.forEach(function(t){t.setState&&t.setState(e)})}setVisible(e,t){let i=this,s=i.chart,r=s.options.chart.ignoreHiddenSeries,o=i.visible;i.visible=e=i.options.visible=i.userOptions.visible=typeof e>"u"?!o:e;let n=e?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(a=>{i[a]?.[n]()}),(s.hoverSeries===i||s.hoverPoint?.series===i)&&i.onMouseOut(),i.legendItem&&s.legend.colorizeItem(i,e),i.isDirty=!0,i.options.stacking&&s.series.forEach(a=>{a.options.stacking&&a.visible&&(a.isDirty=!0)}),i.linkedSeries.forEach(a=>{a.setVisible(e,!1)}),r&&(s.isDirtyBox=!0),st(i,n),t!==!1&&s.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(e){let t=this;t.selected=e=this.options.selected=typeof e>"u"?!t.selected:e,t.checkbox&&(t.checkbox.checked=e),st(t,e?"select":"unselect")}shouldShowTooltip(e,t,i={}){return i.series=this,i.visiblePlotOnly=!0,this.chart.isInsidePlot(e,t,i)}drawLegendSymbol(e,t){Li[this.options.legendSymbol||"rectangle"]?.call(this,e,t)}};Ot.defaultOptions=Dn;Ot.types=V.seriesTypes;Ot.registerType=V.registerSeriesType;Ot.keepProps=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"];Ot.keepPropsForPoints=["data","isDirtyData","isDirtyCanvas","points","dataTable","processedData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"];ve(Ot.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:bt,requireSorting:!0,sorted:!0});V.series=Ot;var lt=Ot;var{animObject:Qd,setAnimation:tf}=_,{registerEventOptions:Yn}=Yt,{composed:ef,marginNames:Gn}=I,{distribute:sf}=Xt,{format:rf}=nt,{addEvent:Ii,createElement:of,css:nf,defined:rr,discardElement:af,find:lf,fireEvent:Rt,isNumber:jn,merge:ie,pick:St,pushUnique:hf,relativeLength:cf,stableSort:df,syncTimeout:ff}=T,Ge=class{constructor(e,t){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=e,this.setOptions(t),t.enabled&&(this.render(),Yn(this,t),Ii(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),Ii(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(e){let t=St(e.padding,8);this.options=e,this.chart.styledMode||(this.itemStyle=e.itemStyle,this.itemHiddenStyle=ie(this.itemStyle,e.itemHiddenStyle)),this.itemMarginTop=e.itemMarginTop,this.itemMarginBottom=e.itemMarginBottom,this.padding=t,this.initialItemY=t-5,this.symbolWidth=St(e.symbolWidth,16),this.pages=[],this.proximate=e.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(e,t){let i=this.chart;this.setOptions(ie(!0,this.options,e)),"events"in this.options&&Yn(this,this.options),this.destroy(),i.isDirtyLegend=i.isDirtyBox=!0,St(t,!0)&&i.redraw(),Rt(this,"afterUpdate",{redraw:t})}colorizeItem(e,t){let i=e.color,{area:s,group:r,label:o,line:n,symbol:a}=e.legendItem||{};if((e instanceof lt||e instanceof bt)&&(e.color=e.options?.legendSymbolColor||i),r?.[t?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:l={}}=this,h=l.color,{fillColor:f,fillOpacity:d,lineColor:p,marker:g}=e.options,u=m=>(t||(m.fill&&(m.fill=h),m.stroke&&(m.stroke=h)),m);o?.css(ie(t?this.itemStyle:l)),n?.attr(u({stroke:p||e.color})),a&&a.attr(u(g&&a.isMarker?e.pointAttribs():{fill:e.color})),s?.attr(u({fill:f||e.color,"fill-opacity":f?1:d??.75}))}e.color=i,Rt(this,"afterColorizeItem",{item:e,visible:t})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(e){let t=this,{group:i,x:s=0,y:r=0}=e.legendItem||{},o=t.options,n=o.symbolPadding,a=!o.rtl,l=e.checkbox;if(i?.element){let h={translateX:a?s:t.legendWidth-s-2*n-4,translateY:r},f=()=>{Rt(this,"afterPositionItem",{item:e})};i[rr(i.translateY)?"animate":"attr"](h,void 0,f)}l&&(l.x=s,l.y=r)}destroyItem(e){let t=e.checkbox,i=e.legendItem||{};for(let s of["group","label","line","symbol"])i[s]&&(i[s]=i[s].destroy());t&&af(t),e.legendItem=void 0}destroy(){let e=this;for(let t of this.getAllItems())this.destroyItem(t);for(let t of["clipRect","up","down","pager","nav","box","title","group"])e[t]&&(e[t]=e[t].destroy());this.display=null}positionCheckboxes(){let e=this.group?.alignAttr,t=this.clipHeight||this.legendHeight,i=this.titleHeight,s;e&&(s=e.translateY,this.allItems.forEach(function(r){let o=r.checkbox,n;o&&(n=s+i+o.y+(this.scrollOffset||0)+3,nf(o,{left:e.translateX+r.checkboxOffset+o.x-20+"px",top:n+"px",display:this.proximate||n>s-6&&n<s+t-6?"":"none"}))},this))}renderTitle(){let e=this.options,t=this.padding,i=e.title,s,r=0;i.text&&(this.title||(this.title=this.chart.renderer.label(i.text,t-3,t-4,void 0,void 0,void 0,e.useHTML,void 0,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(i.style),this.title.add(this.group)),i.width||this.title.css({width:this.maxLegendWidth+"px"}),s=this.title.getBBox(),r=s.height,this.offsetWidth=s.width,this.contentGroup.attr({translateY:r})),this.titleHeight=r}setText(e){let t=this.options;e.legendItem.label.attr({text:t.labelFormat?rf(t.labelFormat,e,this.chart):t.labelFormatter.call(e)})}renderItem(e){let t=this,i=e.legendItem=e.legendItem||{},s=t.chart,r=s.renderer,o=t.options,n=o.layout==="horizontal",a=t.symbolWidth,l=o.symbolPadding||0,h=t.itemStyle,f=t.itemHiddenStyle,d=n?St(o.itemDistance,20):0,p=!o.rtl,g=!e.series,u=!g&&e.series.drawLegendSymbol?e.series:e,m=u.options,x=!!t.createCheckboxForItem&&m&&m.showCheckbox,y=o.useHTML,b=e.options.className,v=i.label,S=a+l+d+(x?20:0);v||(i.group=r.g("legend-item").addClass("highcharts-"+u.type+"-series highcharts-color-"+e.colorIndex+(b?" "+b:"")+(g?" highcharts-series-"+e.index:"")).attr({zIndex:1}).add(t.scrollGroup),i.label=v=r.text("",p?a+l:-l,t.baseline||0,y),s.styledMode||v.css(ie(e.visible?h:f)),v.attr({align:p?"left":"right",zIndex:2}).add(i.group),t.baseline||(t.fontMetrics=r.fontMetrics(v),t.baseline=t.fontMetrics.f+3+t.itemMarginTop,v.attr("y",t.baseline),t.symbolHeight=St(o.symbolHeight,t.fontMetrics.f),o.squareSymbol&&(t.symbolWidth=St(o.symbolWidth,Math.max(t.symbolHeight,16)),S=t.symbolWidth+l+d+(x?20:0),p&&v.attr("x",t.symbolWidth+l))),u.drawLegendSymbol(t,e),t.setItemEvents&&t.setItemEvents(e,v,y)),x&&!e.checkbox&&t.createCheckboxForItem&&t.createCheckboxForItem(e),t.colorizeItem(e,e.visible),(s.styledMode||!h.width)&&v.css({width:(o.itemWidth||t.widthOption||s.spacingBox.width)-S+"px"}),t.setText(e);let k=v.getBBox(),w=t.fontMetrics?.h||0;e.itemWidth=e.checkboxOffset=o.itemWidth||i.labelWidth||k.width+S,t.maxItemWidth=Math.max(t.maxItemWidth,e.itemWidth),t.totalItemWidth+=e.itemWidth,t.itemHeight=e.itemHeight=Math.round(i.labelHeight||(k.height>w*1.5?k.height:w))}layoutItem(e){let t=this.options,i=this.padding,s=t.layout==="horizontal",r=e.itemHeight,o=this.itemMarginBottom,n=this.itemMarginTop,a=s?St(t.itemDistance,20):0,l=this.maxLegendWidth,h=t.alignColumns&&this.totalItemWidth>l?this.maxItemWidth:e.itemWidth,f=e.legendItem||{};s&&this.itemX-i+h>l&&(this.itemX=i,this.lastLineHeight&&(this.itemY+=n+this.lastLineHeight+o),this.lastLineHeight=0),this.lastItemY=n+this.itemY+o,this.lastLineHeight=Math.max(r,this.lastLineHeight),f.x=this.itemX,f.y=this.itemY,s?this.itemX+=h:(this.itemY+=n+r+o,this.lastLineHeight=r),this.offsetWidth=this.widthOption||Math.max((s?this.itemX-i-(e.checkbox?0:a):h)+i,this.offsetWidth)}getAllItems(){let e=[];return this.chart.series.forEach(function(t){let i=t?.options;t&&St(i.showInLegend,rr(i.linkedTo)?!1:void 0,!0)&&(e=e.concat(t.legendItem?.labels||(i.legendType==="point"?t.data:t)))}),Rt(this,"afterGetAllItems",{allItems:e}),e}getAlignment(){let e=this.options;return this.proximate?e.align.charAt(0)+"tv":e.floating?"":e.align.charAt(0)+e.verticalAlign.charAt(0)+e.layout.charAt(0)}adjustMargins(e,t){let i=this.chart,s=this.options,r=this.getAlignment();r&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(o,n){o.test(r)&&!rr(e[n])&&(i[Gn[n]]=Math.max(i[Gn[n]],i.legend[(n+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][n]*s[n%2?"x":"y"]+St(s.margin,12)+t[n]+(i.titleOffset[n]||0)))})}proximatePositions(){let e=this.chart,t=[],i=this.options.align==="left";this.allItems.forEach(function(r){let o,n,a=i,l,h;r.yAxis&&(r.xAxis.options.reversed&&(a=!a),r.points&&(o=lf(a?r.points:r.points.slice(0).reverse(),function(f){return jn(f.plotY)})),n=this.itemMarginTop+r.legendItem.label.getBBox().height+this.itemMarginBottom,h=r.yAxis.top-e.plotTop,r.visible?(l=o?o.plotY:r.yAxis.height,l+=h-.3*n):l=h+r.yAxis.height,t.push({target:l,size:n,item:r}))},this);let s;for(let r of sf(t,e.plotHeight))s=r.item.legendItem||{},jn(r.pos)&&(s.y=e.plotTop-e.spacing[0]+r.pos)}render(){let e=this,t=e.chart,i=t.renderer,s=e.options,r=e.padding,o=e.getAllItems(),n,a,l,h=e.group,f,d=e.box;e.itemX=r,e.itemY=e.initialItemY,e.offsetWidth=0,e.lastItemY=0,e.widthOption=cf(s.width,t.spacingBox.width-r),f=t.spacingBox.width-2*r-s.x,["rm","lm"].indexOf(e.getAlignment().substring(0,2))>-1&&(f/=2),e.maxLegendWidth=e.widthOption||f,h||(e.group=h=i.g("legend").addClass(s.className||"").attr({zIndex:7}).add(),e.contentGroup=i.g().attr({zIndex:1}).add(h),e.scrollGroup=i.g().add(e.contentGroup)),e.renderTitle(),df(o,(p,g)=>(p.options?.legendIndex||0)-(g.options?.legendIndex||0)),s.reversed&&o.reverse(),e.allItems=o,e.display=n=!!o.length,e.lastLineHeight=0,e.maxItemWidth=0,e.totalItemWidth=0,e.itemHeight=0,o.forEach(e.renderItem,e),o.forEach(e.layoutItem,e),a=(e.widthOption||e.offsetWidth)+r,l=e.lastItemY+e.lastLineHeight+e.titleHeight,l=e.handleOverflow(l),l+=r,d||(e.box=d=i.rect().addClass("highcharts-legend-box").attr({r:s.borderRadius}).add(h)),t.styledMode||d.attr({stroke:s.borderColor,"stroke-width":s.borderWidth||0,fill:s.backgroundColor||"none"}).shadow(s.shadow),a>0&&l>0&&d[d.placed?"animate":"attr"](d.crisp.call({},{x:0,y:0,width:a,height:l},d.strokeWidth())),h[n?"show":"hide"](),t.styledMode&&h.getStyle("display")==="none"&&(a=l=0),e.legendWidth=a,e.legendHeight=l,n&&e.align(),this.proximate||this.positionItems(),Rt(this,"afterRender")}align(e=this.chart.spacingBox){let t=this.chart,i=this.options,s=e.y;/(lth|ct|rth)/.test(this.getAlignment())&&t.titleOffset[0]>0?s+=t.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&t.titleOffset[2]>0&&(s-=t.titleOffset[2]),s!==e.y&&(e=ie(e,{y:s})),t.hasRendered||(this.group.placed=!1),this.group.align(ie(i,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":i.verticalAlign}),!0,e)}handleOverflow(e){let t=this,i=this.chart,s=i.renderer,r=this.options,o=r.y,n=r.verticalAlign==="top",a=this.padding,l=r.maxHeight,h=r.navigation,f=St(h.animation,!0),d=h.arrowSize||12,p=this.pages,g=this.allItems,u=function(M){typeof M=="number"?w.attr({height:M}):w&&(t.clipRect=w.destroy(),t.contentGroup.clip()),t.contentGroup.div&&(t.contentGroup.div.style.clip=M?"rect("+a+"px,9999px,"+(a+M)+"px,0)":"auto")},m=function(M){return t[M]=s.circle(0,0,d*1.3).translate(d/2,d/2).add(k),i.styledMode||t[M].attr("fill","rgba(0,0,0,0.0001)"),t[M]},x,y,b,v,S=i.spacingBox.height+(n?-o:o)-a,k=this.nav,w=this.clipRect;return r.layout==="horizontal"&&r.verticalAlign!=="middle"&&!r.floating&&(S/=2),l&&(S=Math.min(S,l)),p.length=0,e&&S>0&&e>S&&h.enabled!==!1?(this.clipHeight=x=Math.max(S-20-this.titleHeight-a,0),this.currentPage=St(this.currentPage,1),this.fullHeight=e,g.forEach((M,C)=>{b=M.legendItem||{};let A=b.y||0,P=Math.round(b.label.getBBox().height),O=p.length;(!O||A-p[O-1]>x&&(y||A)!==p[O-1])&&(p.push(y||A),O++),b.pageIx=O-1,y&&v&&(v.pageIx=O-1),C===g.length-1&&A+P-p[O-1]>x&&A>p[O-1]&&(p.push(A),b.pageIx=O),A!==y&&(y=A),v=b}),w||(w=t.clipRect=s.clipRect(0,a-2,9999,0),t.contentGroup.clip(w)),u(x),k||(this.nav=k=s.g().attr({zIndex:1}).add(this.group),this.up=s.symbol("triangle",0,0,d,d).add(k),m("upTracker").on("click",function(){t.scroll(-1,f)}),this.pager=s.text("",15,10).addClass("highcharts-legend-navigation"),!i.styledMode&&h.style&&this.pager.css(h.style),this.pager.add(k),this.down=s.symbol("triangle-down",0,0,d,d).add(k),m("downTracker").on("click",function(){t.scroll(1,f)})),t.scroll(0),e=S):k&&(u(),this.nav=k.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),e}scroll(e,t){let i=this.chart,s=this.pages,r=s.length,o=this.clipHeight,n=this.options.navigation,a=this.pager,l=this.padding,h=this.currentPage+e;if(h>r&&(h=r),h>0){typeof t<"u"&&tf(t,i),this.nav.attr({translateX:l,translateY:o+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(d){d.attr({class:h===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),a.attr({text:h+"/"+r}),[this.down,this.downTracker].forEach(function(d){d.attr({x:18+this.pager.getBBox().width,class:h===r?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),i.styledMode||(this.up.attr({fill:h===1?n.inactiveColor:n.activeColor}),this.upTracker.css({cursor:h===1?"default":"pointer"}),this.down.attr({fill:h===r?n.inactiveColor:n.activeColor}),this.downTracker.css({cursor:h===r?"default":"pointer"})),this.scrollOffset=-s[h-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=h,this.positionCheckboxes();let f=Qd(St(t,i.renderer.globalAnimation,!0));ff(()=>{Rt(this,"afterScroll",{currentPage:h})},f.duration)}}setItemEvents(e,t,i){let s=this,r=e.legendItem||{},o=s.chart.renderer.boxWrapper,n=e instanceof bt,a=e instanceof lt,l="highcharts-legend-"+(n?"point":"series")+"-active",h=s.chart.styledMode,f=i?[t,r.symbol]:[r.group],d=p=>{s.allItems.forEach(g=>{e!==g&&[g].concat(g.linkedSeries||[]).forEach(u=>{u.setState(p,!n)})})};for(let p of f)p&&p.on("mouseover",function(){e.visible&&d("inactive"),e.setState("hover"),e.visible&&o.addClass(l),h||t.css(s.options.itemHoverStyle)}).on("mouseout",function(){s.chart.styledMode||t.css(ie(e.visible?s.itemStyle:s.itemHiddenStyle)),d(""),o.removeClass(l),e.setState()}).on("click",function(g){let u=function(){e.setVisible&&e.setVisible(),d(e.visible?"inactive":"")};o.removeClass(l),Rt(s,"itemClick",{browserEvent:g,legendItem:e},u),n?e.firePointEvent("legendItemClick",{browserEvent:g}):a&&Rt(e,"legendItemClick",{browserEvent:g})})}createCheckboxForItem(e){let t=this;e.checkbox=of("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:e.selected,defaultChecked:e.selected},t.options.itemCheckboxStyle,t.chart.container),Ii(e.checkbox,"click",function(i){let s=i.target;Rt(e.series||e,"checkboxClick",{checked:s.checked,item:e},function(){e.select()})})}};(function(c){function e(t){hf(ef,"Core.Legend")&&Ii(t,"beforeMargins",function(){this.legend=new c(this,this.options.legend)})}c.compose=e})(Ge||(Ge={}));var or=Ge;var{animate:nr,animObject:pf,setAnimation:ar}=_,{defaultOptions:lr}=ot,{numberFormat:uf}=nt,{registerEventOptions:Un}=Yt,{charts:se,doc:je,marginNames:Vn,svg:gf,win:$n}=I,{seriesTypes:hr}=V,{addEvent:cr,attr:Kn,createElement:dr,css:kt,defined:Vt,diffObjects:qn,discardElement:mf,erase:xf,error:fr,extend:$t,find:pr,fireEvent:$,getAlignFactor:yf,getStyle:ur,isArray:bf,isNumber:Se,isObject:vf,isString:Bi,merge:Lt,objectEach:gr,pick:ft,pInt:Sf,relativeLength:Zn,removeEvent:_n,splat:Ri,syncTimeout:kf,uniqueKey:Mf}=T,re=class c{static chart(e,t,i){return new c(e,t,i)}constructor(e,t,i){this.sharedClips={};let s=[...arguments];(Bi(e)||e.nodeName)&&(this.renderTo=s.shift()),this.init(s[0],s[1])}setZoomOptions(){let e=this,t=e.options.chart,i=t.zooming;e.zooming=zt(ut({},i),{type:ft(t.zoomType,i.type),key:ft(t.zoomKey,i.key),pinchType:ft(t.pinchType,i.pinchType),singleTouch:ft(t.zoomBySingleTouch,i.singleTouch,!1),resetButton:Lt(i.resetButton,t.resetZoomButton)})}init(e,t){$(this,"init",{args:arguments},function(){let i=Lt(lr,e),s=i.chart,r=this.renderTo||s.renderTo;this.userOptions=$t({},e),(this.renderTo=Bi(r)?je.getElementById(r):r)||fr(13,!0,this),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=t,this.isResizing=0,this.options=i,this.axes=[],this.series=[],this.locale=i.lang.locale??this.renderTo.closest("[lang]")?.lang,this.time=new de($t(i.time||{},{locale:this.locale}),i.lang),i.time=this.time.options,this.numberFormatter=(s.numberFormatter||uf).bind(this),this.styledMode=s.styledMode,this.hasCartesianSeries=s.showAxes;let o=this;o.index=se.length,se.push(o),I.chartCount++,Un(this,s),o.xAxis=[],o.yAxis=[],o.pointCount=o.colorCounter=o.symbolCounter=0,this.setZoomOptions(),$(o,"afterInit"),o.firstRender()})}initSeries(e){let t=this,i=t.options.chart,s=e.type||i.type,r=hr[s];r||fr(17,!0,t,{missingModuleFor:s});let o=new r;return typeof o.init=="function"&&o.init(t,e),o}setSortedData(){this.getSeriesOrderByLinks().forEach(function(e){!e.points&&!e.data&&e.enabledDataSorting&&e.setData(e.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(e,t){return e.linkedSeries.length||t.linkedSeries.length?t.linkedSeries.length-e.linkedSeries.length:0})}orderItems(e,t=0){let i=this[e],s=this.options[e]=Ri(this.options[e]).slice(),r=this.userOptions[e]=this.userOptions[e]?Ri(this.userOptions[e]).slice():[];if(this.hasRendered&&(s.splice(t),r.splice(t)),i)for(let o=t,n=i.length;o<n;++o){let a=i[o];a&&(a.index=o,a instanceof lt&&(a.name=a.getName()),a.options.isInternal||(s[o]=a.options,r[o]=a.userOptions))}}getClipBox(e,t){let i=this.inverted,{xAxis:s,yAxis:r}=e||{},{x:o,y:n,width:a,height:l}=Lt(this.clipBox);return e&&(s&&s.len!==this.plotSizeX&&(a=s.len),r&&r.len!==this.plotSizeY&&(l=r.len),i&&!e.invertible&&([a,l]=[l,a])),t&&(o+=(i?r:s)?.pos??this.plotLeft,n+=(i?s:r)?.pos??this.plotTop),{x:o,y:n,width:a,height:l}}isInsidePlot(e,t,i={}){let{inverted:s,plotBox:r,plotLeft:o,plotTop:n,scrollablePlotBox:a}=this,{scrollLeft:l=0,scrollTop:h=0}=i.visiblePlotOnly&&this.scrollablePlotArea?.scrollingContainer||{},f=i.series,d=i.visiblePlotOnly&&a||r,p=i.inverted?t:e,g=i.inverted?e:t,u={x:p,y:g,isInsidePlot:!0,options:i};if(!i.ignoreX){let m=f&&(s&&!this.polar?f.yAxis:f.xAxis)||{pos:o,len:1/0},x=i.paneCoordinates?m.pos+p:o+p;x>=Math.max(l+o,m.pos)&&x<=Math.min(l+o+d.width,m.pos+m.len)||(u.isInsidePlot=!1)}if(!i.ignoreY&&u.isInsidePlot){let m=!s&&i.axis&&!i.axis.isXAxis&&i.axis||f&&(s?f.xAxis:f.yAxis)||{pos:n,len:1/0},x=i.paneCoordinates?m.pos+g:n+g;x>=Math.max(h+n,m.pos)&&x<=Math.min(h+n+d.height,m.pos+m.len)||(u.isInsidePlot=!1)}return $(this,"afterIsInsidePlot",u),u.isInsidePlot}redraw(e){$(this,"beforeRedraw");let t=this,i=t.hasCartesianSeries?t.axes:t.colorAxis||[],s=t.series,r=t.pointer,o=t.legend,n=t.userOptions.legend,a=t.renderer,l=a.isHidden(),h=[],f,d,p,g=t.isDirtyBox,u=t.isDirtyLegend,m;for(a.rootFontSize=a.boxWrapper.getStyle("font-size"),t.setResponsive&&t.setResponsive(!1),ar(t.hasRendered?e:!1,t),l&&t.temporaryDisplay(),t.layOutTitles(!1),p=s.length;p--;)if(m=s[p],(m.options.stacking||m.options.centerInCategory)&&(d=!0,m.isDirty)){f=!0;break}if(f)for(p=s.length;p--;)m=s[p],m.options.stacking&&(m.isDirty=!0);s.forEach(function(x){x.isDirty&&(x.options.legendType==="point"?(typeof x.updateTotals=="function"&&x.updateTotals(),u=!0):n&&(n.labelFormatter||n.labelFormat)&&(u=!0)),x.isDirtyData&&$(x,"updatedData")}),u&&o&&o.options.enabled&&(o.render(),t.isDirtyLegend=!1),d&&t.getStacks(),i.forEach(function(x){x.updateNames(),x.setScale()}),t.getMargins(),i.forEach(function(x){x.isDirty&&(g=!0)}),i.forEach(function(x){let y=x.min+","+x.max;x.extKey!==y&&(x.extKey=y,h.push(function(){$(x,"afterSetExtremes",$t(x.eventArgs,x.getExtremes())),delete x.eventArgs})),(g||d)&&x.redraw()}),g&&t.drawChartBox(),$(t,"predraw"),s.forEach(function(x){(g||x.isDirty)&&x.visible&&x.redraw(),x.isDirtyData=!1}),r&&r.reset(!0),a.draw(),$(t,"redraw"),$(t,"render"),l&&t.temporaryDisplay(!0),h.forEach(function(x){x.call()})}get(e){let t=this.series;function i(r){return r.id===e||r.options&&r.options.id===e}let s=pr(this.axes,i)||pr(this.series,i);for(let r=0;!s&&r<t.length;r++)s=pr(t[r].points||[],i);return s}createAxes(){let e=this.userOptions;$(this,"createAxes");for(let t of["xAxis","yAxis"]){let i=e[t]=Ri(e[t]||{});for(let s of i)new We(this,s,t)}$(this,"afterCreateAxes")}getSelectedPoints(){return this.series.reduce((e,t)=>(t.getPointsCollection().forEach(i=>{ft(i.selectedStaging,i.selected)&&e.push(i)}),e),[])}getSelectedSeries(){return this.series.filter(e=>e.selected)}setTitle(e,t,i){this.applyDescription("title",e),this.applyDescription("subtitle",t),this.applyDescription("caption",void 0),this.layOutTitles(i)}applyDescription(e,t){let i=this,s=this.options[e]=Lt(this.options[e],t),r=this[e];r&&t&&(this[e]=r=r.destroy()),s&&!r&&(r=this.renderer.text(s.text,0,0,s.useHTML).attr({align:s.align,class:"highcharts-"+e,zIndex:s.zIndex||4}).css({textOverflow:"ellipsis",whiteSpace:"nowrap"}).add(),r.update=function(o,n){i.applyDescription(e,o),i.layOutTitles(n)},this.styledMode||r.css($t(e==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},s.style)),r.textPxLength=r.getBBox().width,r.css({whiteSpace:s.style?.whiteSpace}),this[e]=r)}layOutTitles(e=!0){let t=[0,0,0],{options:i,renderer:s,spacingBox:r}=this;["title","subtitle","caption"].forEach(n=>{let a=this[n],l=this.options[n],h=Lt(r),f=a?.textPxLength||0;if(a&&l){$(this,"layOutTitle",{alignTo:h,key:n,textPxLength:f});let d=s.fontMetrics(a),p=d.b,g=d.h,u=l.verticalAlign||"top",m=u==="top",x=m&&l.minScale||1,y=n==="title"?m?-3:0:m?t[0]+2:0,b=Math.min(h.width/f,1),v=Math.max(x,b),S=Lt({y:u==="bottom"?p:y+p},{align:n==="title"?b<x?"left":"center":this.title?.alignValue},l),k=(l.width||(b>x?this.chartWidth:h.width)/v)+"px";a.alignValue!==S.align&&(a.placed=!1);let w=Math.round(a.css({width:k}).getBBox(l.useHTML).height);if(S.height=w,a.align(S,!1,h).attr({align:S.align,scaleX:v,scaleY:v,"transform-origin":`${h.x+f*v*yf(S.align)} ${g}`}),!l.floating){let M=w*(w<g*1.2?1:v);u==="top"?t[0]=Math.ceil(t[0]+M):u==="bottom"&&(t[2]=Math.ceil(t[2]+M))}}},this),t[0]&&(i.title?.verticalAlign||"top")==="top"&&(t[0]+=i.title?.margin||0),t[2]&&i.caption?.verticalAlign==="bottom"&&(t[2]+=i.caption?.margin||0);let o=!this.titleOffset||this.titleOffset.join(",")!==t.join(",");this.titleOffset=t,$(this,"afterLayOutTitles"),!this.isDirtyBox&&o&&(this.isDirtyBox=this.isDirtyLegend=o,this.hasRendered&&e&&this.isDirtyBox&&this.redraw())}getContainerBox(){let e=[].map.call(this.renderTo.children,i=>{if(i!==this.container){let s=i.style.display;return i.style.display="none",[i,s]}}),t={width:ur(this.renderTo,"width",!0)||0,height:ur(this.renderTo,"height",!0)||0};return e.filter(Boolean).forEach(([i,s])=>{i.style.display=s}),t}getChartSize(){let e=this,t=e.options.chart,i=t.width,s=t.height,r=e.getContainerBox(),o=r.height<=1||!e.renderTo.parentElement?.style.height&&e.renderTo.style.height==="100%";e.chartWidth=Math.max(0,i||r.width||600),e.chartHeight=Math.max(0,Zn(s,e.chartWidth)||(o?400:r.height)),e.containerBox=r}temporaryDisplay(e){let t=this.renderTo,i;if(e)for(;t?.style;)t.hcOrigStyle&&(kt(t,t.hcOrigStyle),delete t.hcOrigStyle),t.hcOrigDetached&&(je.body.removeChild(t),t.hcOrigDetached=!1),t=t.parentNode;else for(;t?.style&&(!je.body.contains(t)&&!t.parentNode&&(t.hcOrigDetached=!0,je.body.appendChild(t)),(ur(t,"display",!1)==="none"||t.hcOricDetached)&&(t.hcOrigStyle={display:t.style.display,height:t.style.height,overflow:t.style.overflow},i={display:"block",overflow:"hidden"},t!==this.renderTo&&(i.height=0),kt(t,i),t.offsetWidth||t.style.setProperty("display","block","important")),t=t.parentNode,t!==je.body););}setClassName(e){this.container.className="highcharts-container "+(e||"")}getContainer(){let e=this,t=e.options,i=t.chart,s="data-highcharts-chart",r=Mf(),o=e.renderTo,n,a=Sf(Kn(o,s));Se(a)&&se[a]&&se[a].hasRendered&&se[a].destroy(),Kn(o,s,e.index),o.innerHTML=dt.emptyHTML,!i.skipClone&&!o.offsetWidth&&e.temporaryDisplay(),e.getChartSize();let l=e.chartHeight,h=e.chartWidth;kt(o,{overflow:"hidden"}),e.styledMode||(n=$t({position:"relative",overflow:"hidden",width:h+"px",height:l+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},i.style||{}));let f=dr("div",{id:r},n,o);e.container=f,e.getChartSize(),h!==e.chartWidth&&(h=e.chartWidth,e.styledMode||kt(f,{width:ft(i.style?.width,h+"px")})),e.containerBox=e.getContainerBox(),e._cursor=f.style.cursor;let d=i.renderer||!gf?wt.getRendererType(i.renderer):mi;if(e.renderer=new d(f,h,l,void 0,i.forExport,t.exporting?.allowHTML,e.styledMode),ar(void 0,e),e.setClassName(i.className),!e.styledMode)e.renderer.setStyle(i.style);else for(let p in t.defs)this.renderer.definition(t.defs[p]);e.renderer.chartIndex=e.index,$(this,"afterGetContainer")}getMargins(e){let{spacing:t,margin:i,titleOffset:s}=this;this.resetMargins(),s[0]&&!Vt(i[0])&&(this.plotTop=Math.max(this.plotTop,s[0]+t[0])),s[2]&&!Vt(i[2])&&(this.marginBottom=Math.max(this.marginBottom,s[2]+t[2])),this.legend?.display&&this.legend.adjustMargins(i,t),$(this,"getMargins"),e||this.getAxisMargins()}getAxisMargins(){let e=this,t=e.axisOffset=[0,0,0,0],i=e.colorAxis,s=e.margin,r=function(o){o.forEach(function(n){n.visible&&n.getOffset()})};e.hasCartesianSeries?r(e.axes):i?.length&&r(i),Vn.forEach(function(o,n){Vt(s[n])||(e[o]+=t[n])}),e.setChartSize()}getOptions(){return qn(this.userOptions,lr)}reflow(e){let t=this,i=t.containerBox,s=t.getContainerBox();delete t.pointer?.chartPosition,!t.isPrinting&&!t.isResizing&&i&&s.width&&((s.width!==i.width||s.height!==i.height)&&(T.clearTimeout(t.reflowTimeout),t.reflowTimeout=kf(function(){t.container&&t.setSize(void 0,void 0,!1)},e?100:0)),t.containerBox=s)}setReflow(){let e=this,t=i=>{e.options?.chart.reflow&&e.hasLoaded&&e.reflow(i)};if(typeof ResizeObserver=="function")new ResizeObserver(t).observe(e.renderTo);else{let i=cr($n,"resize",t);cr(this,"destroy",i)}}setSize(e,t,i){let s=this,r=s.renderer;s.isResizing+=1,ar(i,s);let o=r.globalAnimation;s.oldChartHeight=s.chartHeight,s.oldChartWidth=s.chartWidth,typeof e<"u"&&(s.options.chart.width=e),typeof t<"u"&&(s.options.chart.height=t),s.getChartSize();let{chartWidth:n,chartHeight:a,scrollablePixelsX:l=0,scrollablePixelsY:h=0}=s;(s.isDirtyBox||n!==s.oldChartWidth||a!==s.oldChartHeight)&&(s.styledMode||(o?nr:kt)(s.container,{width:`${n+l}px`,height:`${a+h}px`},o),s.setChartSize(!0),r.setSize(n,a,o),s.axes.forEach(function(f){f.isDirty=!0,f.setScale()}),s.isDirtyLegend=!0,s.isDirtyBox=!0,s.layOutTitles(),s.getMargins(),s.redraw(o),s.oldChartHeight=void 0,$(s,"resize"),setTimeout(()=>{s&&$(s,"endResize")},pf(o).duration)),s.isResizing-=1}setChartSize(e){let t=this,{chartHeight:i,chartWidth:s,inverted:r,spacing:o,renderer:n}=t,a=t.clipOffset,l=Math[r?"floor":"round"],h,f,d,p;t.plotLeft=h=Math.round(t.plotLeft),t.plotTop=f=Math.round(t.plotTop),t.plotWidth=d=Math.max(0,Math.round(s-h-(t.marginRight??0))),t.plotHeight=p=Math.max(0,Math.round(i-f-(t.marginBottom??0))),t.plotSizeX=r?p:d,t.plotSizeY=r?d:p,t.spacingBox=n.spacingBox={x:o[3],y:o[0],width:s-o[3]-o[1],height:i-o[0]-o[2]},t.plotBox=n.plotBox={x:h,y:f,width:d,height:p},a&&(t.clipBox={x:l(a[3]),y:l(a[0]),width:l(t.plotSizeX-a[1]-a[3]),height:l(t.plotSizeY-a[0]-a[2])}),e||(t.axes.forEach(function(g){g.setAxisSize(),g.setAxisTranslation()}),n.alignElements()),$(t,"afterSetChartSize",{skipAxes:e})}resetMargins(){$(this,"resetMargins");let e=this,t=e.options.chart,i=t.plotBorderWidth||0,s=Math.round(i)/2;["margin","spacing"].forEach(function(o){let n=t[o],a=vf(n)?n:[n,n,n,n];["Top","Right","Bottom","Left"].forEach(function(l,h){e[o][h]=ft(t[o+l],a[h])})}),Vn.forEach(function(r,o){e[r]=ft(e.margin[o],e.spacing[o])}),e.axisOffset=[0,0,0,0],e.clipOffset=[s,s,s,s],e.plotBorderWidth=i}drawChartBox(){let e=this,t=e.options.chart,i=e.renderer,s=e.chartWidth,r=e.chartHeight,o=e.styledMode,n=e.plotBGImage,a=t.backgroundColor,l=t.plotBackgroundColor,h=t.plotBackgroundImage,f=e.plotLeft,d=e.plotTop,p=e.plotWidth,g=e.plotHeight,u=e.plotBox,m=e.clipRect,x=e.clipBox,y=e.chartBackground,b=e.plotBackground,v=e.plotBorder,S,k,w,M="animate";y||(e.chartBackground=y=i.rect().addClass("highcharts-background").add(),M="attr"),o?S=k=y.strokeWidth():(S=t.borderWidth||0,k=S+(t.shadow?8:0),w={fill:a||"none"},(S||y["stroke-width"])&&(w.stroke=t.borderColor,w["stroke-width"]=S),y.attr(w).shadow(t.shadow)),y[M]({x:k/2,y:k/2,width:s-k-S%2,height:r-k-S%2,r:t.borderRadius}),M="animate",b||(M="attr",e.plotBackground=b=i.rect().addClass("highcharts-plot-background").add()),b[M](u),o||(b.attr({fill:l||"none"}).shadow(t.plotShadow),h&&(n?(h!==n.attr("href")&&n.attr("href",h),n.animate(u)):e.plotBGImage=i.image(h,f,d,p,g).add())),m?m.animate({width:x.width,height:x.height}):e.clipRect=i.clipRect(x),M="animate",v||(M="attr",e.plotBorder=v=i.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),o||v.attr({stroke:t.plotBorderColor,"stroke-width":t.plotBorderWidth||0,fill:"none"}),v[M](v.crisp(u,-v.strokeWidth())),e.isDirtyBox=!1,$(this,"afterDrawChartBox")}propFromSeries(){let e=this,t=e.options.chart,i=e.options.series,s,r,o;["inverted","angular","polar"].forEach(function(n){for(r=hr[t.type],o=t[n]||r&&r.prototype[n],s=i?.length;!o&&s--;)r=hr[i[s].type],r&&r.prototype[n]&&(o=!0);e[n]=o})}linkSeries(e){let t=this,i=t.series;i.forEach(function(s){s.linkedSeries.length=0}),i.forEach(function(s){let{linkedTo:r}=s.options;if(Bi(r)){let o;r===":previous"?o=t.series[s.index-1]:o=t.get(r),o&&o.linkedParent!==s&&(o.linkedSeries.push(s),s.linkedParent=o,o.enabledDataSorting&&s.setDataSortingOptions(),s.visible=ft(s.options.visible,o.options.visible,s.visible))}}),$(this,"afterLinkSeries",{isUpdating:e})}renderSeries(){this.series.forEach(function(e){e.translate(),e.render()})}render(){let e=this,t=e.axes,i=e.colorAxis,s=e.renderer,r=e.options.chart.axisLayoutRuns||2,o=f=>{f.forEach(d=>{d.visible&&d.render()})},n=0,a=!0,l,h=0;e.setTitle(),$(e,"beforeMargins"),e.getStacks?.(),e.getMargins(!0),e.setChartSize();for(let f of t){let{options:d}=f,{labels:p}=d;if(e.hasCartesianSeries&&f.horiz&&f.visible&&p.enabled&&f.series.length&&f.coll!=="colorAxis"&&!e.polar){n=d.tickLength,f.createGroups();let g=new Bt(f,0,"",!0),u=g.createLabel("x",p);if(g.destroy(),u&&ft(p.reserveSpace,!Se(d.crossing))&&(n=u.getBBox().height+p.distance+Math.max(d.offset||0,0)),n){u?.destroy();break}}}for(e.plotHeight=Math.max(e.plotHeight-n,0);(a||l||r>1)&&h<r;){let f=e.plotWidth,d=e.plotHeight;for(let p of t)h===0?p.setScale():(p.horiz&&a||!p.horiz&&l)&&p.setTickInterval(!0);h===0?e.getAxisMargins():e.getMargins(),a=f/e.plotWidth>(h?1:1.1),l=d/e.plotHeight>(h?1:1.05),h++}e.drawChartBox(),e.hasCartesianSeries?o(t):i?.length&&o(i),e.seriesGroup||(e.seriesGroup=s.g("series-group").attr({zIndex:3}).shadow(e.options.chart.seriesGroupShadow).add()),e.renderSeries(),e.addCredits(),e.setResponsive&&e.setResponsive(),e.hasRendered=!0}addCredits(e){let t=this,i=Lt(!0,this.options.credits,e);i.enabled&&!this.credits&&(this.credits=this.renderer.text(i.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){i.href&&($n.location.href=i.href)}).attr({align:i.position.align,zIndex:8}),t.styledMode||this.credits.css(i.style),this.credits.add().align(i.position),this.credits.update=function(s){t.credits=t.credits.destroy(),t.addCredits(s)})}destroy(){let e=this,t=e.axes,i=e.series,s=e.container,r=s?.parentNode,o;for($(e,"destroy"),e.renderer.forExport?xf(se,e):se[e.index]=void 0,I.chartCount--,e.renderTo.removeAttribute("data-highcharts-chart"),_n(e),o=t.length;o--;)t[o]=t[o].destroy();for(this.scroller?.destroy?.(),o=i.length;o--;)i[o]=i[o].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(n=>{e[n]=e[n]?.destroy?.()}),s&&(s.innerHTML=dt.emptyHTML,_n(s),r&&mf(s)),gr(e,function(n,a){delete e[a]})}firstRender(){let e=this,t=e.options;e.getContainer(),e.resetMargins(),e.setChartSize(),e.propFromSeries(),e.createAxes();let i=bf(t.series)?t.series:[];t.series=[],i.forEach(function(s){e.initSeries(s)}),e.linkSeries(),e.setSortedData(),$(e,"beforeRender"),e.render(),e.pointer?.getChartPosition(),!e.renderer.imgCount&&!e.hasLoaded&&e.onload(),e.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(e){e&&typeof this.index<"u"&&e.apply(this,[this])},this),$(this,"load"),$(this,"render"),Vt(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:e,title:t}=this;e&&!this.accessibility&&(this.renderer.boxWrapper.attr({role:"img","aria-label":(t?.element.textContent||"").replace(/</g,"&lt;")}),e.accessibility&&e.accessibility.enabled===!1||fr('Highcharts warning: Consider including the "accessibility.js" module to make your chart more usable for people with disabilities. Set the "accessibility.enabled" option to false to remove this warning. See https://www.highcharts.com/docs/accessibility/accessibility-module.',!1,this))}addSeries(e,t,i){let s=this,r;return e&&(t=ft(t,!0),$(s,"addSeries",{options:e},function(){r=s.initSeries(e),s.isDirtyLegend=!0,s.linkSeries(),r.enabledDataSorting&&r.setData(e.data,!1),$(s,"afterAddSeries",{series:r}),t&&s.redraw(i)})),r}addAxis(e,t,i,s){return this.createAxis(t?"xAxis":"yAxis",{axis:e,redraw:i,animation:s})}addColorAxis(e,t,i){return this.createAxis("colorAxis",{axis:e,redraw:t,animation:i})}createAxis(e,t){let i=new We(this,t.axis,e);return ft(t.redraw,!0)&&this.redraw(t.animation),i}showLoading(e){let t=this,i=t.options,s=i.loading,r=function(){o&&kt(o,{left:t.plotLeft+"px",top:t.plotTop+"px",width:t.plotWidth+"px",height:t.plotHeight+"px"})},o=t.loadingDiv,n=t.loadingSpan;o||(t.loadingDiv=o=dr("div",{className:"highcharts-loading highcharts-loading-hidden"},null,t.container)),n||(t.loadingSpan=n=dr("span",{className:"highcharts-loading-inner"},null,o),cr(t,"redraw",r)),o.className="highcharts-loading",dt.setElementHTML(n,ft(e,i.lang.loading,"")),t.styledMode||(kt(o,$t(s.style,{zIndex:10})),kt(n,s.labelStyle),t.loadingShown||(kt(o,{opacity:0,display:""}),nr(o,{opacity:s.style.opacity||.5},{duration:s.showDuration||0}))),t.loadingShown=!0,r()}hideLoading(){let e=this.options,t=this.loadingDiv;t&&(t.className="highcharts-loading highcharts-loading-hidden",this.styledMode||nr(t,{opacity:0},{duration:e.loading.hideDuration||100,complete:function(){kt(t,{display:"none"})}})),this.loadingShown=!1}update(e,t,i,s){let r=this,o={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},n=e.isResponsiveOptions,a=[],l,h,f;$(r,"update",{options:e}),n||r.setResponsive(!1,!0),e=qn(e,r.options),r.userOptions=Lt(r.userOptions,e);let d=e.chart;d&&(Lt(!0,r.options.chart,d),this.setZoomOptions(),"className"in d&&r.setClassName(d.className),("inverted"in d||"polar"in d||"type"in d)&&(r.propFromSeries(),l=!0),"alignTicks"in d&&(l=!0),"events"in d&&Un(this,d),gr(d,function(u,m){r.propsRequireUpdateSeries.indexOf("chart."+m)!==-1&&(h=!0),r.propsRequireDirtyBox.indexOf(m)!==-1&&(r.isDirtyBox=!0),r.propsRequireReflow.indexOf(m)!==-1&&(r.isDirtyBox=!0,n||(f=!0))}),!r.styledMode&&d.style&&r.renderer.setStyle(r.options.chart.style||{})),!r.styledMode&&e.colors&&(this.options.colors=e.colors),gr(e,function(u,m){r[m]&&typeof r[m].update=="function"?r[m].update(u,!1):typeof r[o[m]]=="function"?r[o[m]](u):m!=="colors"&&r.collectionsWithUpdate.indexOf(m)===-1&&Lt(!0,r.options[m],e[m]),m!=="chart"&&r.propsRequireUpdateSeries.indexOf(m)!==-1&&(h=!0)}),this.collectionsWithUpdate.forEach(function(u){e[u]&&(Ri(e[u]).forEach(function(m,x){let y=Vt(m.id),b;y&&(b=r.get(m.id)),!b&&r[u]&&(b=r[u][ft(m.index,x)],b&&(y&&Vt(b.options.id)||b.options.isInternal)&&(b=void 0)),b&&b.coll===u&&(b.update(m,!1),i&&(b.touched=!0)),!b&&i&&r.collectionsWithInit[u]&&(r.collectionsWithInit[u][0].apply(r,[m].concat(r.collectionsWithInit[u][1]||[]).concat([!1])).touched=!0)}),i&&r[u].forEach(function(m){!m.touched&&!m.options.isInternal?a.push(m):delete m.touched}))}),a.forEach(function(u){u.chart&&u.remove&&u.remove(!1)}),l&&r.axes.forEach(function(u){u.update({},!1)}),h&&r.getSeriesOrderByLinks().forEach(function(u){u.chart&&u.update({},!1)},this);let p=d?.width,g=d&&(Bi(d.height)?Zn(d.height,p||r.chartWidth):d.height);f||Se(p)&&p!==r.chartWidth||Se(g)&&g!==r.chartHeight?r.setSize(p,g,s):ft(t,!0)&&r.redraw(s),$(r,"afterUpdate",{options:e,redraw:t,animation:s})}setSubtitle(e,t){this.applyDescription("subtitle",e),this.layOutTitles(t)}setCaption(e,t){this.applyDescription("caption",e),this.layOutTitles(t)}showResetZoom(){let e=this,t=lr.lang,i=e.zooming.resetButton,s=i.theme,r=i.relativeTo==="chart"||i.relativeTo==="spacingBox"?null:"plotBox";function o(){e.zoomOut()}$(this,"beforeShowResetZoom",null,function(){e.resetZoomButton=e.renderer.button(t.resetZoom,null,null,o,s).attr({align:i.position.align,title:t.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(i.position,!1,r)}),$(this,"afterShowResetZoom")}zoomOut(){$(this,"selection",{resetSelection:!0},()=>this.transform({reset:!0,trigger:"zoom"}))}pan(e,t){let i=this,s=typeof t=="object"?t:{enabled:t,type:"x"},r=s.type,o=r&&i[{x:"xAxis",xy:"axes",y:"yAxis"}[r]].filter(a=>a.options.panningEnabled&&!a.options.isInternal),n=i.options.chart;n?.panning&&(n.panning=s),$(this,"pan",{originalEvent:e},()=>{i.transform({axes:o,event:e,to:{x:e.chartX-(i.mouseDownX||0),y:e.chartY-(i.mouseDownY||0)},trigger:"pan"}),kt(i.container,{cursor:"move"})})}transform(e){let{axes:t=this.axes,event:i,from:s={},reset:r,selection:o,to:n={},trigger:a}=e,{inverted:l,time:h}=this,f=!1,d,p;this.hoverPoints?.forEach(g=>g.setState());for(let g of t){let{horiz:u,len:m,minPointOffset:x=0,options:y,reversed:b}=g,v=u?"width":"height",S=u?"x":"y",k=ft(n[v],g.len),w=ft(s[v],g.len),M=Math.abs(k)<10?1:k/w,C=(s[S]||0)+w/2-g.pos,A=(n[S]??g.pos)+k/2-g.pos,P=C-A/M,O=b&&!l||!b&&l?-1:1,E=P;if(!r&&(C<0||C>g.len))continue;let L=g.toValue(E,!0)+(o||g.isOrdinal?0:x*O),D=g.toValue(E+m/M,!0)-(o||g.isOrdinal?0:x*O||0),B=g.allExtremes;if(L>D&&([L,D]=[D,L]),M===1&&!r&&g.coll==="yAxis"&&!B){for(let Ce of g.series){let Nt=Ce.getExtremes(Ce.getProcessedData(!0).modified.getColumn("y")||[],!0);B??(B={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),Se(Nt.dataMin)&&Se(Nt.dataMax)&&(B.dataMin=Math.min(Nt.dataMin,B.dataMin),B.dataMax=Math.max(Nt.dataMax,B.dataMax))}g.allExtremes=B}let{dataMin:z,dataMax:F,min:K,max:q}=$t(g.getExtremes(),B||{}),ct=h.parse(y.min),Q=h.parse(y.max),Y=z??ct,X=F??Q,N=D-L,H=g.categories?0:Math.min(N,X-Y),j=Y-H*(Vt(ct)?0:y.minPadding),Z=X+H*(Vt(Q)?0:y.maxPadding),U=g.allowZoomOutside||M===1||a!=="zoom"&&M>1,it=Math.min(ct??j,j,U?K:j),Mt=Math.max(Q??Z,Z,U?q:Z);(!g.isOrdinal||g.options.overscroll||M!==1||r)&&(L<it&&(L=it,M>=1&&(D=L+N)),D>Mt&&(D=Mt,M>=1&&(L=D-N)),(r||g.series.length&&(L!==K||D!==q)&&L>=it&&D<=Mt)&&(o?o[g.coll].push({axis:g,min:L,max:D}):(g.isPanning=a!=="zoom",g.isPanning&&(p=!0),g.setExtremes(r?void 0:L,r?void 0:D,!1,!1,{move:P,trigger:a,scale:M}),!r&&(L>it||D<Mt)&&a!=="mousewheel"&&(d=!0)),f=!0),i&&(this[u?"mouseDownX":"mouseDownY"]=i[u?"chartX":"chartY"]))}return f&&(o?$(this,"selection",o,()=>{delete e.selection,e.trigger="zoom",this.transform(e)}):(d&&!p&&!this.resetZoomButton?this.showResetZoom():!d&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()),this.redraw(a==="zoom"&&(this.options.chart.animation??this.pointCount<100)))),f}};$t(re.prototype,{callbacks:[],collectionsWithInit:{xAxis:[re.prototype.addAxis,[!0]],yAxis:[re.prototype.addAxis,[!1]],series:[re.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]});var mr=re;var{stop:wf}=_,{composed:Cf}=I,{addEvent:Kt,createElement:Ni,css:xr,defined:yr,erase:Af,merge:Jn,pushUnique:Qn}=T;function Pf(){let c=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!c&&(this.scrollablePlotArea=c=new ea(this)),c?.applyFixed()}function ta(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}var ea=(()=>{class c{static compose(t,i,s){Qn(Cf,this.compose)&&(Kt(t,"afterInit",ta),Kt(i,"afterSetChartSize",r=>this.afterSetSize(r.target,r)),Kt(i,"render",Pf),Kt(s,"show",ta))}static afterSetSize(t,i){let{minWidth:s,minHeight:r}=t.options.chart.scrollablePlotArea||{},{clipBox:o,plotBox:n,inverted:a,renderer:l}=t,h,f,d;if(!l.forExport&&(s?(t.scrollablePixelsX=h=Math.max(0,s-t.chartWidth),h&&(t.scrollablePlotBox=Jn(t.plotBox),n.width=t.plotWidth+=h,o[a?"height":"width"]+=h,d=!0)):r&&(t.scrollablePixelsY=f=Math.max(0,r-t.chartHeight),yr(f)&&(t.scrollablePlotBox=Jn(t.plotBox),n.height=t.plotHeight+=f,o[a?"width":"height"]+=f,d=!1)),yr(d)&&!i.skipAxes))for(let p of t.axes)(p.horiz===d||t.hasParallelCoordinates&&p.coll==="yAxis")&&(p.setAxisSize(),p.setAxisTranslation())}constructor(t){let i=t.options.chart,s=wt.getRendererType(),r=i.scrollablePlotArea||{},o=this.moveFixedElements.bind(this),n={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};t.scrollablePixelsX&&(n.overflowX="auto"),t.scrollablePixelsY&&(n.overflowY="auto"),this.chart=t;let a=this.parentDiv=Ni("div",{className:"highcharts-scrolling-parent"},{position:"relative"},t.renderTo),l=this.scrollingContainer=Ni("div",{className:"highcharts-scrolling"},n,a),h=this.innerContainer=Ni("div",{className:"highcharts-inner-container"},void 0,l),f=this.fixedDiv=Ni("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(i.style?.zIndex||0)+2,top:0},void 0,!0),d=this.fixedRenderer=new s(f,t.chartWidth,t.chartHeight,i.style);this.mask=d.path().attr({fill:i.backgroundColor||"#fff","fill-opacity":r.opacity??.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),l.parentNode.insertBefore(f,l),xr(t.renderTo,{overflow:"visible"}),Kt(t,"afterShowResetZoom",o),Kt(t,"afterApplyDrilldown",o),Kt(t,"afterLayOutTitles",o);let p;Kt(l,"scroll",()=>{let{pointer:g,hoverPoint:u}=t;g&&(delete g.chartPosition,u&&(p=u),g.runPointActions(void 0,p,!0))}),h.appendChild(t.container)}applyFixed(){let{chart:t,fixedRenderer:i,isDirty:s,scrollingContainer:r}=this,{axisOffset:o,chartWidth:n,chartHeight:a,container:l,plotHeight:h,plotLeft:f,plotTop:d,plotWidth:p,scrollablePixelsX:g=0,scrollablePixelsY:u=0}=t,m=t.options.chart,x=m.scrollablePlotArea||{},{scrollPositionX:y=0,scrollPositionY:b=0}=x,v=n+g,S=a+u;i.setSize(n,a),(s??!0)&&(this.isDirty=!1,this.moveFixedElements()),wf(t.container),xr(l,{width:`${v}px`,height:`${S}px`}),t.renderer.boxWrapper.attr({width:v,height:S,viewBox:[0,0,v,S].join(" ")}),t.chartBackground?.attr({width:v,height:S}),xr(r,{width:`${n}px`,height:`${a}px`}),yr(s)||(r.scrollLeft=g*y,r.scrollTop=u*b);let k=d-o[0]-1,w=f-o[3]-1,M=d+h+o[2]+1,C=f+p+o[1]+1,A=f+p-g,P=d+h-u,O=[["M",0,0]];g?O=[["M",0,k],["L",f-1,k],["L",f-1,M],["L",0,M],["Z"],["M",A,k],["L",n,k],["L",n,M],["L",A,M],["Z"]]:u&&(O=[["M",w,0],["L",w,d-1],["L",C,d-1],["L",C,0],["Z"],["M",w,P],["L",w,a],["L",C,a],["L",C,P],["Z"]]),t.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:O})}moveFixedElements(){let{container:t,inverted:i,scrollablePixelsX:s,scrollablePixelsY:r}=this.chart,o=this.fixedRenderer,n=c.fixedSelectors,a;if(s&&!i?a=".highcharts-yaxis":s&&i||r&&!i?a=".highcharts-xaxis":r&&i&&(a=".highcharts-yaxis"),a&&!(this.chart.hasParallelCoordinates&&a===".highcharts-yaxis"))for(let l of[`${a}:not(.highcharts-radial-axis)`,`${a}-labels:not(.highcharts-radial-axis-labels)`])Qn(n,l);else for(let l of[".highcharts-xaxis",".highcharts-yaxis"])for(let h of[`${l}:not(.highcharts-radial-axis)`,`${l}-labels:not(.highcharts-radial-axis-labels)`])Af(n,h);for(let l of n)[].forEach.call(t.querySelectorAll(l),h=>{(h.namespaceURI===o.SVG_NS?o.box:o.box.parentNode).appendChild(h),h.style.pointerEvents="auto"})}}return c.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],c})(),ia=ea;var{format:Tf}=nt,{series:Of}=V,{destroyObjectProperties:Lf,fireEvent:sa,getAlignFactor:br,isNumber:vr,pick:Ue}=T,Sr=class{constructor(e,t,i,s,r){let o=e.chart.inverted,n=e.reversed;this.axis=e;let a=this.isNegative=!!i!=!!n;this.options=t=t||{},this.x=s,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=r,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:t.align||(o?a?"left":"right":"center"),verticalAlign:t.verticalAlign||(o?"middle":a?"bottom":"top"),y:t.y,x:t.x},this.textAlign=t.textAlign||(o?a?"right":"left":"center")}destroy(){Lf(this,this.axis)}render(e){let t=this.axis.chart,i=this.options,s=i.format,r=s?Tf(s,this,t):i.formatter.call(this);if(this.label)this.label.attr({text:r,visibility:"hidden"});else{this.label=t.renderer.label(r,null,void 0,i.shape,void 0,void 0,i.useHTML,!1,"stack-labels");let o={r:i.borderRadius||0,text:r,padding:Ue(i.padding,5),visibility:"hidden"};t.styledMode||(o.fill=i.backgroundColor,o.stroke=i.borderColor,o["stroke-width"]=i.borderWidth,this.label.css(i.style||{})),this.label.attr(o),this.label.added||this.label.add(e)}this.label.labelrank=t.plotSizeY,sa(this,"afterRender")}setOffset(e,t,i,s,r,o){let{alignOptions:n,axis:a,label:l,options:h,textAlign:f}=this,d=a.chart,p=this.getStackBox({xOffset:e,width:t,boxBottom:i,boxTop:s,defaultX:r,xAxis:o}),{verticalAlign:g}=n;if(l&&p){let u=l.getBBox(void 0,0),m=l.padding,x=Ue(h.overflow,"justify")==="justify",y;n.x=h.x||0,n.y=h.y||0;let{x:b,y:v}=this.adjustStackPosition({labelBox:u,verticalAlign:g,textAlign:f});p.x-=b,p.y-=v,l.align(n,!1,p),y=d.isInsidePlot(l.alignAttr.x+n.x+b,l.alignAttr.y+n.y+v),y||(x=!1),x&&Of.prototype.justifyDataLabel.call(a,l,n,l.alignAttr,u,p),l.attr({x:l.alignAttr.x,y:l.alignAttr.y,rotation:h.rotation,rotationOriginX:u.width*br(h.textAlign||"center"),rotationOriginY:u.height/2}),Ue(!x&&h.crop,!0)&&(y=vr(l.x)&&vr(l.y)&&d.isInsidePlot(l.x-m+(l.width||0),l.y)&&d.isInsidePlot(l.x+m,l.y)),l[y?"show":"hide"]()}sa(this,"afterSetOffset",{xOffset:e,width:t})}adjustStackPosition({labelBox:e,verticalAlign:t,textAlign:i}){return{x:e.width/2+e.width/2*(2*br(i)-1),y:e.height/2*2*(1-br(t))}}getStackBox(e){let t=this,i=this.axis,s=i.chart,{boxTop:r,defaultX:o,xOffset:n,width:a,boxBottom:l}=e,h=i.stacking.usePercentage?100:Ue(r,this.total,0),f=i.toPixels(h),d=e.xAxis||s.xAxis[0],p=Ue(o,d.translate(this.x))+n,g=i.toPixels(l||vr(i.min)&&i.logarithmic&&i.logarithmic.lin2log(i.min)||0),u=Math.abs(f-g),m=s.inverted,x=t.isNegative;return m?{x:(x?f:f-u)-s.plotLeft,y:d.height-p-a+d.top-s.plotTop,width:u,height:a}:{x:p+d.transB-s.plotLeft,y:(x?f-u:f)-s.plotTop,width:a,height:u}}},zi=Sr;var{getDeferredAnimation:Df}=_,{series:{prototype:Ef}}=V,{addEvent:ra,correctFloat:Ve,defined:oa,destroyObjectProperties:If,fireEvent:Bf,isNumber:kr,objectEach:oe,pick:Mr}=T;function Rf(){let c=this,e=c.inverted;c.axes.forEach(t=>{t.stacking?.stacks&&t.hasVisibleSeries&&(t.stacking.oldStacks=t.stacking.stacks)}),c.series.forEach(t=>{let i=t.xAxis?.options||{};t.options.stacking&&t.reserveSpace()&&(t.stackKey=[t.type,Mr(t.options.stack,""),e?i.top:i.left,e?i.height:i.width].join(","))})}function Nf(){let c=this.stacking;if(c){let e=c.stacks;oe(e,(t,i)=>{If(t),delete e[i]}),c.stackTotalGroup?.destroy()}}function zf(){this.stacking||(this.stacking=new wr(this))}function Wf(c,e,t,i){return!oa(c)||c.x!==e||i&&c.stackKey!==i?c={x:e,index:0,key:i,stackKey:i}:c.index++,c.key=[t,e,c.index].join(","),c}function Hf(){let c=this,e=c.yAxis,t=c.stackKey||"",i=e.stacking.stacks,s=c.getColumn("x",!0),r=c.options.stacking,o=c[r+"Stacker"],n;o&&[t,"-"+t].forEach(a=>{let l=s.length,h,f,d;for(;l--;)h=s[l],n=c.getStackIndicator(n,h,c.index,a),f=i[a]?.[h],d=f?.points[n.key||""],d&&o.call(c,d,f,l)})}function Xf(c,e,t){let i=e.total?100/e.total:0;c[0]=Ve(c[0]*i),c[1]=Ve(c[1]*i),this.stackedYData[t]=c[1]}function Ff(c){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&this.chart.series.length>1?Ef.setStackedPoints.call(this,c,"group"):c.stacking.resetStacks())}function Yf(c,e){let t=e||this.options.stacking;if(!t||!this.reserveSpace()||({group:"xAxis"}[t]||"yAxis")!==c.coll)return;let i=this,s=i.getColumn("x",!0),r=i.getColumn(i.pointValKey||"y",!0),o=[],n=r.length,a=i.options,l=a.threshold||0,h=a.startFromThreshold?l:0,f=a.stack,d=e?`${i.type},${t}`:i.stackKey||"",p="-"+d,g=i.negStacks,u=c.stacking,m=u.stacks,x=u.oldStacks,y,b,v,S,k,w,M;for(u.stacksTouched+=1,M=0;M<n;M++){let C=s[M]||0,A=r[M],P=kr(A)&&A||0;y=i.getStackIndicator(y,C,i.index),w=y.key||"",b=g&&P<(h?0:l),k=b?p:d,m[k]||(m[k]={}),m[k][C]||(x[k]?.[C]?(m[k][C]=x[k][C],m[k][C].total=null):m[k][C]=new zi(c,c.options.stackLabels,!!b,C,f)),v=m[k][C],A!==null?(v.points[w]=v.points[i.index]=[Mr(v.cumulative,h)],oa(v.cumulative)||(v.base=w),v.touched=u.stacksTouched,y.index>0&&i.singleStacks===!1&&(v.points[w][0]=v.points[i.index+","+C+",0"][0])):(delete v.points[w],delete v.points[i.index]);let O=v.total||0;t==="percent"?(S=b?d:p,g&&m[S]?.[C]?(S=m[S][C],O=S.total=Math.max(S.total||0,O)+Math.abs(P)):O=Ve(O+Math.abs(P))):t==="group"?kr(A)&&O++:O=Ve(O+P),t==="group"?v.cumulative=(O||1)-1:v.cumulative=Ve(Mr(v.cumulative,h)+P),v.total=O,A!==null&&(v.points[w].push(v.cumulative),o[M]=v.cumulative,v.hasValidPoints=!0)}t==="percent"&&(u.usePercentage=!0),t!=="group"&&(this.stackedYData=o),u.oldStacks={}}var wr=class{constructor(e){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=e}buildStacks(){let e=this,t=e.axis,i=t.series,s=t.coll==="xAxis",r=t.options.reversedStacks,o=i.length,n,a;for(this.resetStacks(),e.usePercentage=!1,a=o;a--;)n=i[r?a:o-a-1],s&&n.setGroupedPoints(t),n.setStackedPoints(t);if(!s)for(a=0;a<o;a++)i[a].modifyStacks();Bf(t,"afterBuildStacks")}cleanStacks(){this.oldStacks&&(this.stacks=this.oldStacks,oe(this.stacks,e=>{oe(e,t=>{t.cumulative=t.total})}))}resetStacks(){oe(this.stacks,e=>{oe(e,(t,i)=>{kr(t.touched)&&t.touched<this.stacksTouched?(t.destroy(),delete e[i]):(t.total=null,t.cumulative=null)})})}renderStackTotals(){let e=this,t=e.axis,i=t.chart,s=i.renderer,r=e.stacks,o=t.options.stackLabels?.animation,n=Df(i,o||!1),a=e.stackTotalGroup=e.stackTotalGroup||s.g("stack-labels").attr({zIndex:6,opacity:0}).add();a.translate(i.plotLeft,i.plotTop),oe(r,l=>{oe(l,h=>{h.render(a)})}),a.animate({opacity:1},n)}},Cr;(function(c){function e(t,i,s){let r=i.prototype,o=s.prototype;r.getStacks||(ra(t,"init",zf),ra(t,"destroy",Nf),r.getStacks=Rf,o.getStackIndicator=Wf,o.modifyStacks=Hf,o.percentStacker=Xf,o.setGroupedPoints=Ff,o.setStackedPoints=Yf)}c.compose=e})(Cr||(Cr={}));var na=Cr;var{defined:Gf,merge:aa,isObject:jf}=T,Wi=class extends lt{drawGraph(){let e=this.options,t=(this.gappedPath||this.getGraphPath).call(this),i=this.chart.styledMode;[this,...this.zones].forEach((s,r)=>{let o,n=s.graph,a=n?"animate":"attr",l=s.dashStyle||e.dashStyle;n?(n.endX=this.preventGraphAnimation?null:t.xMap,n.animate({d:t})):t.length&&(s.graph=n=this.chart.renderer.path(t).addClass("highcharts-graph"+(r?` highcharts-zone-graph-${r-1} `:" ")+(r&&s.className||"")).attr({zIndex:1}).add(this.group)),n&&!i&&(o={stroke:!r&&e.lineColor||s.color||this.color||"#cccccc","stroke-width":e.lineWidth||0,fill:this.fillGraph&&this.color||"none"},l?o.dashstyle=l:e.linecap!=="square"&&(o["stroke-linecap"]=o["stroke-linejoin"]="round"),n[a](o).shadow(e.shadow&&aa({filterUnits:"userSpaceOnUse"},jf(e.shadow)?e.shadow:{}))),n&&(n.startX=t.xMap,n.isArea=t.isArea)})}getGraphPath(e,t,i){let s=this,r=s.options,o=[],n=[],a,l=r.step;e=e||s.points;let h=e.reversed;return h&&e.reverse(),l={right:1,center:2}[l]||l&&3,l&&h&&(l=4-l),e=this.getValidPoints(e,!1,r.nullInteraction||!(r.connectNulls&&!t&&!i)),e.forEach(function(f,d){let p=f.plotX,g=f.plotY,u=e[d-1],m=f.isNull||typeof g!="number",x;(f.leftCliff||u?.rightCliff)&&!i&&(a=!0),m&&!Gf(t)&&d>0?a=!r.connectNulls:m&&!t?a=!0:(d===0||a?x=[["M",f.plotX,f.plotY]]:s.getPointSpline?x=[s.getPointSpline(e,f,d)]:l?(l===1?x=[["L",u.plotX,g]]:l===2?x=[["L",(u.plotX+p)/2,u.plotY],["L",(u.plotX+p)/2,g]]:x=[["L",p,u.plotY]],x.push(["L",p,g])):x=[["L",p,g]],n.push(f.x),l&&(n.push(f.x),l===2&&n.push(f.x)),o.push.apply(o,x),a=!1)}),o.xMap=n,s.graphPath=o,o}};Wi.defaultOptions=aa(lt.defaultOptions,{legendSymbol:"lineMarker"});V.registerSeriesType("line",Wi);var Uf={threshold:0,legendSymbol:"areaMarker"},la=Uf;var{seriesTypes:{line:Ar}}=V,{extend:Vf,merge:$f,objectEach:Kf,pick:Hi}=T,$e=class extends Ar{drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:e,options:t}=this;[this,...this.zones].forEach((i,s)=>{let r={},o=i.fillColor||t.fillColor,n=i.area,a=n?"animate":"attr";n?(n.endX=this.preventGraphAnimation?null:e.xMap,n.animate({d:e})):(r.zIndex=0,n=i.area=this.chart.renderer.path(e).addClass("highcharts-area"+(s?` highcharts-zone-area-${s-1} `:" ")+(s&&i.className||"")).add(this.group),n.isArea=!0),this.chart.styledMode||(r.fill=o||i.color||this.color,r["fill-opacity"]=o?1:t.fillOpacity??.75,n.css({pointerEvents:this.stickyTracking?"none":"auto"})),n[a](r),n.startX=e.xMap,n.shiftUnit=t.step?2:1})}getGraphPath(e){let t=Ar.prototype.getGraphPath,i=this.options,s=i.stacking,r=this.yAxis,o=[],n=[],a=this.index,l=r.stacking.stacks[this.stackKey],h=i.threshold,f=Math.round(r.getThreshold(i.threshold)),d=Hi(i.connectNulls,s==="percent"),p=function(k,w,M){let C=e[k],A=s&&l[C.x].points[a],P=C[M+"Null"]||0,O=C[M+"Cliff"]||0,E,L,D=!0;O||P?(E=(P?A[0]:A[1])+O,L=A[0]+O,D=!!P):!s&&e[w]&&e[w].isNull&&(E=L=h),typeof E<"u"&&(n.push({plotX:g,plotY:E===null?f:r.getThreshold(E),isNull:D,isCliff:!0}),o.push({plotX:g,plotY:L===null?f:r.getThreshold(L),doCurve:!1}))},g,u,m;e=e||this.points,s&&(e=this.getStackPoints(e));for(let k=0,w=e.length;k<w;++k)s||(e[k].leftCliff=e[k].rightCliff=e[k].leftNull=e[k].rightNull=void 0),u=e[k].isNull,g=Hi(e[k].rectPlotX,e[k].plotX),m=s?Hi(e[k].yBottom,f):f,(!u||d)&&(d||p(k,k-1,"left"),u&&!s&&d||(n.push(e[k]),o.push({x:k,plotX:g,plotY:m})),d||p(k,k+1,"right"));let x=t.call(this,n,!0,!0);o.reversed=!0;let y=t.call(this,o,!0,!0),b=y[0];b&&b[0]==="M"&&(y[0]=["L",b[1],b[2]]);let v=x.concat(y);v.length&&v.push(["Z"]);let S=t.call(this,n,!1,d);return this.chart.series.length>1&&s&&n.some(k=>k.isCliff)&&(v.hasStackedCliffs=S.hasStackedCliffs=!0),v.xMap=x.xMap,this.areaPath=v,S}getStackPoints(e){let t=this,i=[],s=[],r=this.xAxis,o=this.yAxis,n=o.stacking.stacks[this.stackKey],a={},l=o.series,h=l.length,f=o.options.reversedStacks?1:-1,d=l.indexOf(t);if(e=e||this.points,this.options.stacking){for(let g=0;g<e.length;g++)e[g].leftNull=e[g].rightNull=void 0,a[e[g].x]=e[g];Kf(n,function(g,u){g.total!==null&&s.push(u)}),s.sort(function(g,u){return g-u});let p=l.map(g=>g.visible);s.forEach(function(g,u){let m=0,x,y;if(a[g]&&!a[g].isNull)i.push(a[g]),[-1,1].forEach(function(b){let v=b===1?"rightNull":"leftNull",S=b===1?"rightCliff":"leftCliff",k=n[s[u+b]],w=0;if(k){let M=d;for(;M>=0&&M<h;){let C=l[M].index;x=k.points[C],x||(C===t.index?a[g][v]=!0:p[M]&&(y=n[g].points[C],y&&(w-=y[1]-y[0]))),M+=f}}a[g][S]=w});else{let b=d;for(;b>=0&&b<h;){let v=l[b].index;if(x=n[g].points[v],x){m=x[1];break}b+=f}m=Hi(m,0),m=o.translate(m,0,1,0,1),i.push({isNull:!0,plotX:r.translate(g,0,0,0,1),x:g,plotY:m,yBottom:m})}})}return i}};$e.defaultOptions=$f(Ar.defaultOptions,la);Vf($e.prototype,{singleStacks:!1});V.registerSeriesType("area",$e);var{line:ha}=V.seriesTypes,{merge:qf,pick:Xi}=T,Ke=class extends ha{getPointSpline(e,t,i){let o=t.plotX||0,n=t.plotY||0,a=e[i-1],l=e[i+1],h,f,d,p;function g(m){return m&&!m.isNull&&m.doCurve!==!1&&!t.isCliff}if(g(a)&&g(l)){let m=a.plotX||0,x=a.plotY||0,y=l.plotX||0,b=l.plotY||0,v=0;h=(1.5*o+m)/2.5,f=(1.5*n+x)/2.5,d=(1.5*o+y)/2.5,p=(1.5*n+b)/2.5,d!==h&&(v=(p-f)*(d-o)/(d-h)+n-p),f+=v,p+=v,f>x&&f>n?(f=Math.max(x,n),p=2*n-f):f<x&&f<n&&(f=Math.min(x,n),p=2*n-f),p>b&&p>n?(p=Math.max(b,n),f=2*n-p):p<b&&p<n&&(p=Math.min(b,n),f=2*n-p),t.rightContX=d,t.rightContY=p,t.controlPoints={low:[h,f],high:[d,p]}}let u=["C",Xi(a.rightContX,a.plotX,0),Xi(a.rightContY,a.plotY,0),Xi(h,o,0),Xi(f,n,0),o,n];return a.rightContX=a.rightContY=void 0,u}};Ke.defaultOptions=qf(ha.defaultOptions);V.registerSeriesType("spline",Ke);var Pr=Ke;var{area:Zf,area:{prototype:Tr}}=V.seriesTypes,{extend:_f,merge:Jf}=T,qe=class extends Pr{};qe.defaultOptions=Jf(Pr.defaultOptions,Zf.defaultOptions);_f(qe.prototype,{getGraphPath:Tr.getGraphPath,getStackPoints:Tr.getStackPoints,drawGraph:Tr.drawGraph});V.registerSeriesType("areaspline",qe);var Qf={borderRadius:3,centerInCategory:!1,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"},ca=Qf;var{animObject:tp}=_,{parse:ep}=pt,{noop:ip}=I,{clamp:Fi,crisp:Yi,defined:da,extend:ua,fireEvent:fa,isArray:pa,isNumber:Gi,merge:Or,pick:Ze,objectEach:sp}=T,ke=class extends lt{animate(e){let t=this,i=this.yAxis,s=i.pos,r=i.reversed,o=t.options,{clipOffset:n,inverted:a}=this.chart,l={},h=a?"translateX":"translateY",f,d;e&&n?(l.scaleY=.001,d=Fi(i.toPixels(o.threshold||0),s,s+i.len),a?(d+=r?-Math.floor(n[0]):Math.ceil(n[2]),l.translateX=d-i.len):(d+=r?Math.ceil(n[0]):-Math.floor(n[2]),l.translateY=d),t.clipBox&&t.setClip(),t.group.attr(l)):(f=Number(t.group.attr(h)),t.group.animate({scaleY:1},ua(tp(t.options.animation),{step:function(p,g){t.group&&(l[h]=f+g.pos*(s-f),t.group.attr(l))}})))}init(e,t){super.init.apply(this,arguments);let i=this;e=i.chart,e.hasRendered&&e.series.forEach(function(s){s.type===i.type&&(s.isDirty=!0)})}getColumnMetrics(){let e=this,t=e.options,i=e.xAxis,s=e.yAxis,r=i.options.reversedStacks,o=i.reversed&&!r||!i.reversed&&r,n={},a,l=0;t.grouping===!1?l=1:e.chart.series.forEach(function(y){let b=y.yAxis,v=y.options,S;y.type===e.type&&y.reserveSpace()&&s.len===b.len&&s.pos===b.pos&&(v.stacking&&v.stacking!=="group"?(a=y.stackKey,typeof n[a]>"u"&&(n[a]=l++),S=n[a]):v.grouping!==!1&&(S=l++),y.columnIndex=S)});let h=Math.min(Math.abs(i.transA)*(!i.brokenAxis?.hasBreaks&&i.ordinal?.slope||t.pointRange||i.closestPointRange||i.tickInterval||1),i.len),f=h*t.groupPadding,d=h-2*f,p=d/(l||1),g=Math.min(t.maxPointWidth||i.len,Ze(t.pointWidth,p*(1-2*t.pointPadding))),u=(p-g)/2,m=(e.columnIndex||0)+(o?1:0),x=u+(f+m*p-h/2)*(o?-1:1);return e.columnMetrics={width:g,offset:x,paddedWidth:p,columnCount:l},e.columnMetrics}crispCol(e,t,i,s){let r=this.borderWidth,o=this.chart.inverted,n=Yi(t+s,r,o);if(t=Yi(t,r,o),s=n-t,this.options.crisp){let a=Yi(e+i,r);e=Yi(e,r),i=a-e}return{x:e,y:t,width:i,height:s}}adjustForMissingColumns(e,t,i,s){if(!i.isNull&&s.columnCount>1){let r=this.xAxis.series.filter(l=>l.visible).map(l=>l.index),o=0,n=0;sp(this.xAxis.stacking?.stacks,l=>{let h=typeof i.x=="number"?l[i.x.toString()]?.points:void 0,f=h?.[this.index],d={};if(h&&pa(f)){let p=this.index,g=Object.keys(h).filter(u=>!u.match(",")&&h[u]&&h[u].length>1).map(parseFloat).filter(u=>r.indexOf(u)!==-1).filter(u=>{let m=this.chart.series[u].options,x=m.stacking&&m.stack;if(da(x)){if(Gi(d[x]))return p===u&&(p=d[x]),!1;d[x]=u}return!0}).sort((u,m)=>m-u);o=g.indexOf(p),n=g.length}}),o=this.xAxis.reversed?n-1-o:o;let a=(n-1)*s.paddedWidth+t;e=(i.plotX||0)+a/2-t-o*s.paddedWidth}return e}translate(){let e=this,t=e.chart,i=e.options,s=e.dense=e.closestPointRange*e.xAxis.transA<2,r=e.borderWidth=Ze(i.borderWidth,s?0:1),o=e.xAxis,n=e.yAxis,a=i.threshold,l=Ze(i.minPointLength,5),h=e.getColumnMetrics(),f=h.width,d=e.pointXOffset=h.offset,p=e.dataMin,g=e.dataMax,u=e.translatedThreshold=n.getThreshold(a),m=e.barW=Math.max(f,1+2*r);i.pointPadding&&i.crisp&&(m=Math.ceil(m)),lt.prototype.translate.apply(e),e.points.forEach(function(x){let y=Ze(x.yBottom,u),b=999+Math.abs(y),v=x.plotX||0,S=Fi(x.plotY,-b,n.len+b),k,w=Math.min(S,y),M=Math.max(S,y)-w,C=f,A=v+d,P=m;l&&Math.abs(M)<l&&(M=l,k=!n.reversed&&!x.negative||n.reversed&&x.negative,Gi(a)&&Gi(g)&&x.y===a&&g<=a&&(n.min||0)<a&&(p!==g||(n.max||0)<=a)&&(k=!k,x.negative=!x.negative),w=Math.abs(w-u)>l?y-l:u-(k?l:0)),da(x.options.pointWidth)&&(C=P=Math.ceil(x.options.pointWidth),A-=Math.round((C-f)/2)),i.centerInCategory&&(A=e.adjustForMissingColumns(A,C,x,h)),x.barX=A,x.pointWidth=C,x.tooltipPos=t.inverted?[Fi(n.len+n.pos-t.plotLeft-S,n.pos-t.plotLeft,n.len+n.pos-t.plotLeft),o.len+o.pos-t.plotTop-A-P/2,M]:[o.left-t.plotLeft+A+P/2,Fi(S+n.pos-t.plotTop,n.pos-t.plotTop,n.len+n.pos-t.plotTop),M],x.shapeType=e.pointClass.prototype.shapeType||"roundedRect",x.shapeArgs=e.crispCol(A,w,P,x.isNull?0:M)}),fa(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(e,t){let i=this.options,s=this.pointAttrToOptions||{},r=s.stroke||"borderColor",o=s["stroke-width"]||"borderWidth",n,a,l,h=e&&e.color||this.color,f=e&&e[r]||i[r]||h,d=e&&e.options.dashStyle||i.dashStyle,p=e&&e[o]||i[o]||this[o]||0,g=e?.isNull&&i.nullInteraction?0:e?.opacity??i.opacity??1;e&&this.zones.length&&(a=e.getZone(),h=e.options.color||a&&(a.color||e.nonZonedColor)||this.color,a&&(f=a.borderColor||f,d=a.dashStyle||d,p=a.borderWidth||p)),t&&e&&(n=Or(i.states[t],e.options.states&&e.options.states[t]||{}),l=n.brightness,h=n.color||typeof l<"u"&&ep(h).brighten(n.brightness).get()||h,f=n[r]||f,p=n[o]||p,d=n.dashStyle||d,g=Ze(n.opacity,g));let u={fill:h,stroke:f,"stroke-width":p,opacity:g};return d&&(u.dashstyle=d),u}drawPoints(e=this.points){let t=this,i=this.chart,s=t.options,r=s.nullInteraction,o=i.renderer,n=s.animationLimit||250,a;e.forEach(function(l){let h=l.plotY,f=l.graphic,d=!!f,p=f&&i.pointCount<n?"animate":"attr";Gi(h)&&(l.y!==null||r)?(a=l.shapeArgs,f&&l.hasNewShapeType()&&(f=f.destroy()),t.enabledDataSorting&&(l.startXPos=t.xAxis.reversed?-(a&&a.width||0):t.xAxis.width),f||(l.graphic=f=o[l.shapeType](a).add(l.group||t.group),f&&t.enabledDataSorting&&i.hasRendered&&i.pointCount<n&&(f.attr({x:l.startXPos}),d=!0,p="animate")),f&&d&&f[p](Or(a)),i.styledMode||f[p](t.pointAttribs(l,l.selected&&"select")).shadow(l.allowShadow!==!1&&s.shadow),f&&(f.addClass(l.getClassName(),!0),f.attr({visibility:l.visible?"inherit":"hidden"}))):f&&(l.graphic=f.destroy())})}drawTracker(e=this.points){let t=this,i=t.chart,s=i.pointer,r=function(n){s?.normalize(n);let a=s?.getPointFromEvent(n);s&&a&&t.options.enableMouseTracking&&(i.isInsidePlot(n.chartX-i.plotLeft,n.chartY-i.plotTop,{visiblePlotOnly:!0})||s?.inClass(n.target,"highcharts-data-label"))&&(s.isDirectTouch=!0,a.onMouseOver(n))},o;e.forEach(function(n){o=pa(n.dataLabels)?n.dataLabels:n.dataLabel?[n.dataLabel]:[],n.graphic&&(n.graphic.element.point=n),o.forEach(function(a){(a.div||a.element).point=n})}),t._hasTracking||(t.trackerGroups.forEach(function(n){t[n]&&(t[n].addClass("highcharts-tracker").on("mouseover",r).on("mouseout",function(a){s?.onTrackerMouseOut(a)}).on("touchstart",r),!i.styledMode&&t.options.cursor&&t[n].css({cursor:t.options.cursor}))}),t._hasTracking=!0),fa(this,"afterDrawTracker")}remove(){let e=this,t=e.chart;t.hasRendered&&t.series.forEach(function(i){i.type===e.type&&(i.isDirty=!0)}),lt.prototype.remove.apply(e,arguments)}};ke.defaultOptions=Or(lt.defaultOptions,ca);ua(ke.prototype,{directTouch:!0,getSymbol:ip,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]});V.registerSeriesType("column",ke);var Me=ke;var{getDeferredAnimation:rp}=_,{format:op}=nt,{defined:ne,extend:ga,fireEvent:Lr,getAlignFactor:ma,isArray:qt,isString:_e,merge:Je,objectEach:np,pick:Qe,pInt:ap,splat:xa}=T,Dr;(function(c){function e(){return h(this).some(d=>d?.enabled)}function t(d,p,g,u,m){let x=this,{chart:y,enabledDataSorting:b}=this,v=this.isCartesian&&y.inverted,S=d.plotX,k=d.plotY,w=g.rotation||0,M=ne(S)&&ne(k)&&y.isInsidePlot(S,Math.round(k),{inverted:v,paneCoordinates:!0,series:x}),C=E=>{b&&x.xAxis&&!A&&x.setDataLabelStartPos(d,p,m,M,E)},A=w===0?Qe(g.overflow,b?"none":"justify")==="justify":!1,P=this.visible&&d.visible!==!1&&ne(S)&&(d.series.forceDL||b&&!A||M||Qe(g.inside,!!this.options.stacking)&&u&&y.isInsidePlot(S,v?u.x+1:u.y+u.height-1,{inverted:v,paneCoordinates:!0,series:x})),O=d.pos();if(P&&O){let E=p.getBBox(),L=p.getBBox(void 0,0);if(u=ga({x:O[0],y:Math.round(O[1]),width:0,height:0},u||{}),g.alignTo==="plotEdges"&&x.isCartesian&&(u[v?"x":"y"]=0,u[v?"width":"height"]=this.yAxis?.len||0),ga(g,{width:E.width,height:E.height}),C(u),p.align(Je(g,{width:L.width,height:L.height}),!1,u,!1),p.alignAttr.x+=ma(g.align)*(L.width-E.width),p.alignAttr.y+=ma(g.verticalAlign)*(L.height-E.height),p[p.placed?"animate":"attr"]({"text-align":p.alignAttr["text-align"]||"center",x:p.alignAttr.x+(E.width-L.width)/2,y:p.alignAttr.y+(E.height-L.height)/2,rotationOriginX:(p.width||0)/2,rotationOriginY:(p.height||0)/2}),A&&u.height>=0)this.justifyDataLabel(p,g,p.alignAttr,E,u,m);else if(Qe(g.crop,!0)){let{x:D,y:B}=p.alignAttr,z=1;P=y.isInsidePlot(D,B,{paneCoordinates:!0,series:x})&&y.isInsidePlot(D+E.width-z,B+E.height-z,{paneCoordinates:!0,series:x})}g.shape&&!w&&p[m?"attr":"animate"]({anchorX:O[0],anchorY:O[1]})}m&&b&&(p.placed=!1),!P&&(!b||A)?(p.hide(),p.placed=!1):(p.show(),p.placed=!0)}function i(d,p){let g=p.filter;if(g){let u=g.operator,m=d[g.property],x=g.value;return u===">"&&m>x||u==="<"&&m<x||u===">="&&m>=x||u==="<="&&m<=x||u==="=="&&m==x||u==="==="&&m===x||u==="!="&&m!=x||u==="!=="&&m!==x}return!0}function s(d){let p=d.prototype;p.initDataLabels||(p.initDataLabels=o,p.initDataLabelsGroup=r,p.alignDataLabel=t,p.drawDataLabels=n,p.justifyDataLabel=a,p.mergeArrays=l,p.setDataLabelStartPos=f,p.hasDataLabels=e)}c.compose=s;function r(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function o(d){let p=this,g=p.hasRendered||0,u=this.initDataLabelsGroup().attr({opacity:+g});return!g&&u&&(p.visible&&u.show(),p.options.animation?u.animate({opacity:1},d):u.attr({opacity:1})),u}function n(d){d=d||this.points;let p=this,g=p.chart,u=p.options,m=g.renderer,{backgroundColor:x,plotBackgroundColor:y}=g.options.chart,b=m.getContrast(_e(y)&&y||_e(x)&&x||"#000000"),v=h(p),S,k,{animation:w,defer:M}=v[0],C=M?rp(g,w,p):{defer:0,duration:0};Lr(this,"drawDataLabels"),p.hasDataLabels?.()&&(k=this.initDataLabels(C),d.forEach(A=>{let P=A.dataLabels||[],O=A.color||p.color;S=xa(l(v,A.dlOptions||A.options?.dataLabels)),S.forEach((L,D)=>{let B=L.enabled&&(A.visible||A.dataLabelOnHidden)&&(!A.isNull||A.dataLabelOnNull)&&i(A,L),{backgroundColor:z,borderColor:F,distance:K,style:q={}}=L,ct,Q,Y,X={},N=P[D],H=!N,j;B&&(ct=Qe(L[A.formatPrefix+"Format"],L.format),Q=ne(ct)?op(ct,A,g):(L[A.formatPrefix+"Formatter"]||L.formatter).call(A,L),Y=L.rotation,g.styledMode||(q.color=Qe(L.color,q.color,_e(p.color)?p.color:void 0,"#000000"),q.color==="contrast"?(z!=="none"&&(j=z),A.contrastColor=m.getContrast(j!=="auto"&&_e(j)&&j||(_e(O)?O:"")),q.color=j||!ne(K)&&L.inside||ap(K||0)<0||u.stacking?A.contrastColor:b):delete A.contrastColor,u.cursor&&(q.cursor=u.cursor)),X={r:L.borderRadius||0,rotation:Y,padding:L.padding,zIndex:1},g.styledMode||(X.fill=z==="auto"?A.color:z,X.stroke=F==="auto"?A.color:F,X["stroke-width"]=L.borderWidth),np(X,(Z,U)=>{typeof Z>"u"&&delete X[U]})),N&&(!B||!ne(Q)||!!(N.div||N.text?.foreignObject)!=!!L.useHTML||(!N.rotation||!L.rotation)&&N.rotation!==L.rotation)&&(N=void 0,H=!0),B&&ne(Q)&&(N?X.text=Q:(N=m.label(Q,0,0,L.shape,void 0,void 0,L.useHTML,void 0,"data-label"),N.addClass(" highcharts-data-label-color-"+A.colorIndex+" "+(L.className||"")+(L.useHTML?" highcharts-tracker":""))),N&&(N.options=L,N.attr(X),g.styledMode?q.width&&N.css({width:q.width,textOverflow:q.textOverflow,whiteSpace:q.whiteSpace}):N.css(q).shadow(L.shadow),Lr(N,"beforeAddingDataLabel",{labelOptions:L,point:A}),N.added||N.add(k),p.alignDataLabel(A,N,L,void 0,H),N.isActive=!0,P[D]&&P[D]!==N&&P[D].destroy(),P[D]=N))});let E=P.length;for(;E--;)P[E]?.isActive?P[E].isActive=!1:(P[E]?.destroy(),P.splice(E,1));A.dataLabel=P[0],A.dataLabels=P})),Lr(this,"afterDrawDataLabels")}function a(d,p,g,u,m,x){let y=this.chart,b=p.align,v=p.verticalAlign,S=d.box?0:d.padding||0,k=y.inverted?this.yAxis:this.xAxis,w=k?k.left-y.plotLeft:0,M=y.inverted?this.xAxis:this.yAxis,C=M?M.top-y.plotTop:0,{x:A=0,y:P=0}=p,O,E;return O=(g.x||0)+S+w,O<0&&(b==="right"&&A>=0?(p.align="left",p.inside=!0):A-=O,E=!0),O=(g.x||0)+u.width-S+w,O>y.plotWidth&&(b==="left"&&A<=0?(p.align="right",p.inside=!0):A+=y.plotWidth-O,E=!0),O=g.y+S+C,O<0&&(v==="bottom"&&P>=0?(p.verticalAlign="top",p.inside=!0):P-=O,E=!0),O=(g.y||0)+u.height-S+C,O>y.plotHeight&&(v==="top"&&P<=0?(p.verticalAlign="bottom",p.inside=!0):P+=y.plotHeight-O,E=!0),E&&(p.x=A,p.y=P,d.placed=!x,d.align(p,void 0,m)),E}function l(d,p){let g=[],u;if(qt(d)&&!qt(p))g=d.map(function(m){return Je(m,p)});else if(qt(p)&&!qt(d))g=p.map(function(m){return Je(d,m)});else if(!qt(d)&&!qt(p))g=Je(d,p);else if(qt(d)&&qt(p))for(u=Math.max(d.length,p.length);u--;)g[u]=Je(d[u],p[u]);return g}function h(d){let p=d.chart.options.plotOptions;return xa(l(l(p?.series?.dataLabels,p?.[d.type]?.dataLabels),d.options.dataLabels))}function f(d,p,g,u,m){let x=this.chart,y=x.inverted,b=this.xAxis,v=b.reversed,S=((y?p.height:p.width)||0)/2,k=d.pointWidth,w=k?k/2:0;p.startXPos=y?m.x:v?-S-w:b.width-S+w,p.startYPos=y?v?this.yAxis.height-S+w:-S-w:m.y,u?p.visibility==="hidden"&&(p.show(),p.attr({opacity:0}).animate({opacity:1})):p.attr({opacity:1}).animate({opacity:0},void 0,p.hide),x.hasRendered&&(g&&p.attr({x:p.startXPos,y:p.startYPos}),p.placed=!0)}})(Dr||(Dr={}));var ae=Dr;var{composed:lp}=I,{series:ya}=V,{merge:hp,pushUnique:cp}=T,Er;(function(c){function e(i,s,r,o,n){let{chart:a,options:l}=this,h=a.inverted,f=this.xAxis?.len||a.plotSizeX||0,d=this.yAxis?.len||a.plotSizeY||0,p=i.dlBox||i.shapeArgs,g=i.below??(i.plotY||0)>(this.translatedThreshold??d),u=r.inside??!!l.stacking;if(p){if(o=hp(p),r.overflow!=="allow"||r.crop!==!1||l.clip!==!1){o.y<0&&(o.height+=o.y,o.y=0);let m=o.y+o.height-d;m>0&&m<o.height-1&&(o.height-=m)}h&&(o={x:d-o.y-o.height,y:f-o.x-o.width,width:o.height,height:o.width}),u||(h?(o.x+=g?0:o.width,o.width=0):(o.y+=g?o.height:0,o.height=0))}r.align??(r.align=!h||u?"center":g?"right":"left"),r.verticalAlign??(r.verticalAlign=h||u?"middle":g?"top":"bottom"),ya.prototype.alignDataLabel.call(this,i,s,r,o,n),r.inside&&i.contrastColor&&s.css({color:i.contrastColor})}function t(i){ae.compose(ya),cp(lp,"ColumnDataLabel")&&(i.prototype.alignDataLabel=e)}c.compose=t})(Er||(Er={}));var ba=Er;var{extend:dp,merge:fp}=T,ti=class extends Me{};ti.defaultOptions=fp(Me.defaultOptions,{});dp(ti.prototype,{inverted:!0});V.registerSeriesType("bar",ti);var pp={lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25CF</span> <span style="font-size: 0.8em"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}},va=pp;var{column:up,line:Sa}=V.seriesTypes,{addEvent:gp,extend:mp,merge:xp}=T,we=class extends Sa{applyJitter(){let e=this,t=this.options.jitter,i=this.points.length;function s(r){let o=Math.sin(r)*1e4;return o-Math.floor(o)}t&&this.points.forEach(function(r,o){["x","y"].forEach(function(n,a){if(t[n]&&!r.isNull){let l=`plot${n.toUpperCase()}`,h=e[`${n}Axis`],f=t[n]*h.transA;if(h&&!h.logarithmic){let d=Math.max(0,(r[l]||0)-f),p=Math.min(h.len,(r[l]||0)+f);r[l]=d+(p-d)*s(o+a*i),n==="x"&&(r.clientX=r.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}};we.defaultOptions=xp(Sa.defaultOptions,va);mp(we.prototype,{drawTracker:up.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]});gp(we,"afterTranslate",function(){this.applyJitter()});V.registerSeriesType("scatter",we);var{deg2rad:ka}=I,{fireEvent:yp,isNumber:Ir,pick:ji,relativeLength:bp}=T,Br;(function(c){function e(){let i=this.options,s=this.chart,r=2*(i.slicedOffset||0),o=s.plotWidth-2*r,n=s.plotHeight-2*r,a=i.center,l=Math.min(o,n),h=i.thickness,f,d=i.size,p=i.innerSize||0,g,u;typeof d=="string"&&(d=parseFloat(d)),typeof p=="string"&&(p=parseFloat(p));let m=[ji(a?.[0],"50%"),ji(a?.[1],"50%"),ji(d&&d<0?void 0:i.size,"100%"),ji(p&&p<0?void 0:i.innerSize||0,"0%")];for(s.angular&&!(this instanceof lt)&&(m[3]=0),g=0;g<4;++g)u=m[g],f=g<2||g===2&&/%$/.test(u),m[g]=bp(u,[o,n,l,m[2]][g])+(f?r:0);return m[3]>m[2]&&(m[3]=m[2]),Ir(h)&&h*2<m[2]&&h>0&&(m[3]=m[2]-h*2),yp(this,"afterGetCenter",{positions:m}),m}c.getCenter=e;function t(i,s){let r=Ir(i)?i:0,o=Ir(s)&&s>r&&s-r<360?s:r+360,n=-90;return{start:ka*(r+n),end:ka*(o+n)}}c.getStartAndEndRadians=t})(Br||(Br={}));var Rr=Br;var{setAnimation:vp}=_,{addEvent:Ma,defined:Sp,extend:kp,isNumber:Mp,pick:wp,relativeLength:Cp}=T,Ui=class extends bt{getConnectorPath(e){let t=e.dataLabelPosition,i=e.options||{},s=i.connectorShape,r=this.connectorShapes[s]||s;return t&&r.call(this,zt(ut({},t.computed),{alignment:t.alignment}),t.connectorPosition,i)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(e){let t=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(t.x,t.y,t.r+e,t.r+e,{innerR:t.r-1,start:t.start,end:t.end,borderRadius:t.borderRadius})}constructor(e,t,i){super(e,t,i),this.half=0,this.name??(this.name=e.chart.options.lang.pieSliceName);let s=r=>{this.slice(r.type==="select")};Ma(this,"select",s),Ma(this,"unselect",s)}isValid(){return Mp(this.y)&&this.y>=0}setVisible(e,t=!0){e!==this.visible&&this.update({visible:e??!this.visible},t,void 0,!1)}slice(e,t,i){let s=this.series,r=s.chart;vp(i,r),t=wp(t,!0),this.sliced=this.options.sliced=e=Sp(e)?e:!this.sliced,s.options.data[s.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}};kp(Ui.prototype,{connectorShapes:{fixedOffset:function(c,e,t){let i=e.breakAt,s=e.touchingSliceAt,r=t.softConnector?["C",c.x+(c.alignment==="left"?-5:5),c.y,2*i.x-s.x,2*i.y-s.y,i.x,i.y]:["L",i.x,i.y];return[["M",c.x,c.y],r,["L",s.x,s.y]]},straight:function(c,e){let t=e.touchingSliceAt;return[["M",c.x,c.y],["L",t.x,t.y]]},crookedLine:function(c,e,t){let{angle:i=this.angle||0,breakAt:s,touchingSliceAt:r}=e,{series:o}=this,[n,a,l]=o.center,h=l/2,{plotLeft:f,plotWidth:d}=o.chart,p=c.alignment==="left",{x:g,y:u}=c,m=s.x;if(t.crookDistance){let y=Cp(t.crookDistance,1);m=p?n+h+(d+f-n-h)*(1-y):f+(n-h)*y}else m=n+(a-u)*Math.tan(i-Math.PI/2);let x=[["M",g,u]];return(p?m<=g&&m>=s.x:m>=g&&m<=s.x)&&x.push(["L",m,u]),x.push(["L",s.x,s.y],["L",r.x,r.y]),x}}});var wa=Ui;var Ap={borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,distance:30,enabled:!0,formatter:function(){return this.isNull?void 0:this.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}},Ca=Ap;var{getStartAndEndRadians:Pp}=Rr,{noop:Aa}=I,{clamp:Tp,extend:Op,fireEvent:Pa,merge:Nr,pick:Lp}=T,ei=class extends lt{animate(e){let t=this,i=t.points,s=t.startAngleRad;e||i.forEach(function(r){let o=r.graphic,n=r.shapeArgs;o&&n&&(o.attr({r:Lp(r.startR,t.center&&t.center[3]/2),start:s,end:s}),o.animate({r:n.r,start:n.start,end:n.end},t.options.animation))})}drawEmpty(){let e=this.startAngleRad,t=this.endAngleRad,i=this.options,s,r;this.total===0&&this.center?(s=this.center[0],r=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(s,r,this.center[1]/2,0,e,t).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:fi.arc(s,r,this.center[2]/2,0,{start:e,end:t,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":i.borderWidth,fill:i.fillColor||"none",stroke:i.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let e=this.chart.renderer;this.points.forEach(function(t){t.graphic&&t.hasNewShapeType()&&(t.graphic=t.graphic.destroy()),t.graphic||(t.graphic=e[t.shapeType](t.shapeArgs).add(t.series.group),t.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(e,t,i,s){let r=this.center,o=this.radii?this.radii[i.index]||0:r[2]/2,n=s.dataLabelPosition,a=n?.distance||0,l=Math.asin(Tp((e-r[1])/(o+a),-1,1));return r[0]+(t?-1:1)*(Math.cos(l)*(o+a))+(a>0?(t?-1:1)*(s.padding||0):0)}hasData(){return!!this.dataTable.rowCount}redrawPoints(){let e=this,t=e.chart,i,s,r,o;this.drawEmpty(),e.group&&!t.styledMode&&e.group.shadow(e.options.shadow),e.points.forEach(function(n){let a={};s=n.graphic,!n.isNull&&s?(o=n.shapeArgs,i=n.getTranslate(),t.styledMode||(r=e.pointAttribs(n,n.selected&&"select")),n.delayedRendering?(s.setRadialReference(e.center).attr(o).attr(i),t.styledMode||s.attr(r).attr({"stroke-linejoin":"round"}),n.delayedRendering=!1):(s.setRadialReference(e.center),t.styledMode||Nr(!0,a,r),Nr(!0,a,o,i),s.animate(a)),s.attr({visibility:n.visible?"inherit":"hidden"}),s.addClass(n.getClassName(),!0)):s&&(n.graphic=s.destroy())})}sortByAngle(e,t){e.sort(function(i,s){return typeof i.angle<"u"&&(s.angle-i.angle)*t})}translate(e){Pa(this,"translate"),this.generatePoints();let t=this,i=1e3,s=t.options,r=s.slicedOffset,o=Pp(s.startAngle,s.endAngle),n=t.startAngleRad=o.start,a=t.endAngleRad=o.end,l=a-n,h=t.points,f=s.ignoreHiddenPoint,d=h.length,p,g,u,m,x,y,b,v=0;for(e||(t.center=e=t.getCenter()),y=0;y<d;y++){b=h[y],p=n+v*l,b.isValid()&&(!f||b.visible)&&(v+=b.percentage/100),g=n+v*l;let S={x:e[0],y:e[1],r:e[2]/2,innerR:e[3]/2,start:Math.round(p*i)/i,end:Math.round(g*i)/i};b.shapeType="arc",b.shapeArgs=S,u=(g+p)/2,u>1.5*Math.PI?u-=2*Math.PI:u<-Math.PI/2&&(u+=2*Math.PI),b.slicedTranslation={translateX:Math.round(Math.cos(u)*r),translateY:Math.round(Math.sin(u)*r)},m=Math.cos(u)*e[2]/2,x=Math.sin(u)*e[2]/2,b.tooltipPos=[e[0]+m*.7,e[1]+x*.7],b.half=u<-Math.PI/2||u>Math.PI/2?1:0,b.angle=u}Pa(t,"afterTranslate")}updateTotals(){let e=this.points,t=e.length,i=this.options.ignoreHiddenPoint,s,r,o=0;for(s=0;s<t;s++)r=e[s],r.isValid()&&(!i||r.visible)&&(o+=r.y);for(this.total=o,s=0;s<t;s++)r=e[s],r.percentage=o>0&&(r.visible||!i)?r.y/o*100:0,r.total=o}};ei.defaultOptions=Nr(lt.defaultOptions,Ca);Op(ei.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:Me.prototype.drawTracker,getCenter:Rr.getCenter,getSymbol:Aa,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:Me.prototype.pointAttribs,pointClass:wa,requireSorting:!1,searchPoint:Aa,trackerGroups:["group","dataLabelsGroup"]});V.registerSeriesType("pie",ei);var{composed:Dp,noop:Ep}=I,{distribute:Ip}=Xt,{series:Ta}=V,{arrayMax:Bp,clamp:Oa,defined:La,pick:Rp,pushUnique:Np,relativeLength:Da}=T,zr;(function(c){let e={radialDistributionY:function(n,a){return(a.dataLabelPosition?.top||0)+n.distributeBox.pos},radialDistributionX:function(n,a,l,h,f){let d=f.dataLabelPosition;return n.getX(l<(d?.top||0)+2||l>(d?.bottom||0)-2?h:l,a.half,a,f)},justify:function(n,a,l,h){return h[0]+(n.half?-1:1)*(l+(a.dataLabelPosition?.distance||0))},alignToPlotEdges:function(n,a,l,h){let f=n.getBBox().width;return a?f+h:l-f-h},alignToConnectors:function(n,a,l,h){let f=0,d;return n.forEach(function(p){d=p.dataLabel.getBBox().width,d>f&&(f=d)}),a?f+h:l-f-h}};function t(n){if(ae.compose(Ta),Np(Dp,"PieDataLabel")){let a=n.prototype;a.dataLabelPositioners=e,a.alignDataLabel=Ep,a.drawDataLabels=s,a.getDataLabelPosition=i,a.placeDataLabels=r,a.verifyDataLabelOverflow=o}}c.compose=t;function i(n,a){let l=Math.PI/2,{start:h=0,end:f=0}=n.shapeArgs||{},d=n.angle||0;a>0&&h<l&&f>l&&d>l/2&&d<l*1.5&&(d=d<=l?Math.max(l/2,(h+l)/2):Math.min(l*1.5,(l+f)/2));let{center:p,options:g}=this,u=p[2]/2,m=Math.cos(d),x=Math.sin(d),y=p[0]+m*u,b=p[1]+x*u,v=Math.min((g.slicedOffset||0)+(g.borderWidth||0),a/5);return{natural:{x:y+m*a,y:b+x*a},computed:{},alignment:a<0?"center":n.half?"right":"left",connectorPosition:{angle:d,breakAt:{x:y+m*v,y:b+x*v},touchingSliceAt:{x:y,y:b}},distance:a}}function s(){let n=this,a=n.points,l=n.chart,h=l.plotWidth,f=l.plotHeight,d=l.plotLeft,p=Math.round(l.chartWidth/3),g=n.center,u=g[2]/2,m=g[1],x=[[],[]],y=[0,0,0,0],b=n.dataLabelPositioners,v,S,k,w=0;!n.visible||!n.hasDataLabels?.()||(a.forEach(M=>{(M.dataLabels||[]).forEach(C=>{C.shortened&&(C.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),C.shortened=!1)})}),Ta.prototype.drawDataLabels.apply(n),a.forEach(M=>{(M.dataLabels||[]).forEach((C,A)=>{let P=g[2]/2,O=C.options,E=Da(O?.distance||0,P);A===0&&x[M.half].push(M),La(O?.style?.width)||C.getBBox().width>p&&(C.css({width:Math.round(p*.7)+"px"}),C.shortened=!0),C.dataLabelPosition=this.getDataLabelPosition(M,E),w=Math.max(w,E)})}),x.forEach((M,C)=>{let A=M.length,P=[],O,E,L=0,D;A&&(n.sortByAngle(M,C-.5),w>0&&(O=Math.max(0,m-u-w),E=Math.min(m+u+w,l.plotHeight),M.forEach(B=>{(B.dataLabels||[]).forEach(z=>{let F=z.dataLabelPosition;F&&F.distance>0&&(F.top=Math.max(0,m-u-F.distance),F.bottom=Math.min(m+u+F.distance,l.plotHeight),L=z.getBBox().height||21,z.lineHeight=l.renderer.fontMetrics(z.text||z).h+2*z.padding,B.distributeBox={target:(z.dataLabelPosition?.natural.y||0)-F.top+z.lineHeight/2,size:L,rank:B.y},P.push(B.distributeBox))})}),D=E+L-O,Ip(P,D,D/5)),M.forEach(B=>{(B.dataLabels||[]).forEach(z=>{let F=z.options||{},K=B.distributeBox,q=z.dataLabelPosition,ct=q?.natural.y||0,Q=F.connectorPadding||0,Y=z.lineHeight||21,X=z.getBBox(),N=(Y-X.height)/2,H=0,j=ct,Z="inherit";if(q){if(P&&La(K)&&q.distance>0&&(typeof K.pos>"u"?Z="hidden":(k=K.size,j=b.radialDistributionY(B,z))),F.justify)H=b.justify(B,z,u,g);else switch(F.alignTo){case"connectors":H=b.alignToConnectors(M,C,h,d);break;case"plotEdges":H=b.alignToPlotEdges(z,C,h,d);break;default:H=b.radialDistributionX(n,B,j-N,ct,z)}if(q.attribs={visibility:Z,align:q.alignment},q.posAttribs={x:H+(F.x||0)+({left:Q,right:-Q}[q.alignment]||0),y:j+(F.y||0)-Y/2},q.computed.x=H,q.computed.y=j-N,Rp(F.crop,!0)){S=z.getBBox().width;let U;H-S<Q&&C===1?(U=Math.round(S-H+Q),y[3]=Math.max(U,y[3])):H+S>h-Q&&C===0&&(U=Math.round(H+S-h+Q),y[1]=Math.max(U,y[1])),j-k/2<0?y[0]=Math.max(Math.round(-j+k/2),y[0]):j+k/2>f&&(y[2]=Math.max(Math.round(j+k/2-f),y[2])),q.sideOverflow=U}}})}))}),(Bp(y)===0||this.verifyDataLabelOverflow(y))&&(this.placeDataLabels(),this.points.forEach(M=>{(M.dataLabels||[]).forEach(C=>{let{connectorColor:A,connectorWidth:P=1}=C.options||{},O=C.dataLabelPosition;if(P){let E;v=C.connector,O&&O.distance>0?(E=!v,v||(C.connector=v=l.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+M.colorIndex+(M.className?" "+M.className:"")).add(n.dataLabelsGroup)),l.styledMode||v.attr({"stroke-width":P,stroke:A||M.color||"#666666"}),v[E?"attr":"animate"]({d:M.getConnectorPath(C)}),v.attr({visibility:O.attribs?.visibility})):v&&(C.connector=v.destroy())}})})))}function r(){this.points.forEach(n=>{(n.dataLabels||[]).forEach(a=>{let l=a.dataLabelPosition;l?(l.sideOverflow&&(a.css({width:Math.max(a.getBBox().width-l.sideOverflow,0)+"px",textOverflow:a.options?.style?.textOverflow||"ellipsis"}),a.shortened=!0),a.attr(l.attribs),a[a.moved?"animate":"attr"](l.posAttribs),a.moved=!0):a&&a.attr({y:-9999})}),delete n.distributeBox},this)}function o(n){let a=this.center,l=this.options,h=l.center,f=l.minSize||80,d=f,p=l.size!==null;return p||(h[0]!==null?d=Math.max(a[2]-Math.max(n[1],n[3]),f):(d=Math.max(a[2]-n[1]-n[3],f),a[0]+=(n[3]-n[1])/2),h[1]!==null?d=Oa(d,f,a[2]-Math.max(n[0],n[2])):(d=Oa(d,f,a[2]-n[0]-n[2]),a[1]+=(n[0]-n[2])/2),d<a[2]?(a[2]=d,a[3]=Math.min(l.thickness?Math.max(0,d-l.thickness*2):Math.max(0,Da(l.innerSize||0,d)),d),this.translate(a),this.drawDataLabels&&this.drawDataLabels()):p=!0),p}})(zr||(zr={}));var Ea=zr;var Wr;(function(c){function e(r){let o=r.reduce((n,a)=>(n.x+=a.x,n.y+=a.y,n),{x:0,y:0});return{x:o.x/r.length,y:o.y/r.length}}c.getCenterOfPoints=e;function t(r,o){return Math.sqrt(Math.pow(o.x-r.x,2)+Math.pow(o.y-r.y,2))}c.getDistanceBetweenPoints=t;function i(r,o){return Math.atan2(o.x-r.x,o.y-r.y)}c.getAngleBetweenPoints=i;function s({x:r,y:o},n){let a=n.length,l,h,f=!1;for(l=0,h=a-1;l<a;h=l++){let[d,p]=n[l],[g,u]=n[h];p>o!=u>o&&r<(g-d)*(o-p)/(u-p)+d&&(f=!f)}return f}c.pointInPolygon=s})(Wr||(Wr={}));var Ia=Wr;var{pointInPolygon:zp}=Ia,{addEvent:Wp,getAlignFactor:Hp,fireEvent:Ra,objectEach:Ba,pick:Xp}=T;function Fp(c){let e=this,t=c.length,i=(d,p)=>!(p.x>=d.x+d.width||p.x+p.width<=d.x||p.y>=d.y+d.height||p.y+p.height<=d.y),s=(d,p)=>{for(let g of d)if(zp({x:g[0],y:g[1]},p))return!0;return!1};function r(d){if(d&&(!d.alignAttr||d.placed)){let p=d.box?0:d.padding||0,g=d.alignAttr||{x:d.attr("x"),y:d.attr("y")},{height:u,polygon:m,width:x}=d.getBBox(),y=Hp(d.alignValue)*x;return d.width=x,d.height=u,{x:g.x+(d.parentGroup?.translateX||0)+p-y,y:g.y+(d.parentGroup?.translateY||0)+p,width:x-2*p,height:u-2*p,polygon:m}}}let o,n,a,l,h,f=!1;for(let d=0;d<t;d++)o=c[d],o&&(o.oldOpacity=o.opacity,o.newOpacity=1,o.absoluteBox=r(o));c.sort((d,p)=>(p.labelrank||0)-(d.labelrank||0));for(let d=0;d<t;++d){n=c[d],l=n&&n.absoluteBox;let p=l?.polygon;for(let g=d+1;g<t;++g){a=c[g],h=a&&a.absoluteBox;let u=!1;if(l&&h&&n!==a&&n.newOpacity!==0&&a.newOpacity!==0&&n.visibility!=="hidden"&&a.visibility!=="hidden"){let m=h.polygon;if(p&&m&&p!==m?s(p,m)&&(u=!0):i(l,h)&&(u=!0),u){let x=n.labelrank<a.labelrank?n:a,y=x.text;x.newOpacity=0,y?.element.querySelector("textPath")&&y.hide()}}}}for(let d of c)Na(d,e)&&(f=!0);f&&Ra(e,"afterHideAllOverlappingLabels")}function Yp(c){let e=c.prototype;e.hideOverlappingLabels||(e.hideOverlappingLabels=Fp,Wp(c,"render",Gp))}function Na(c,e){let t,i,s=!1;return c&&(i=c.newOpacity,c.oldOpacity!==i&&(c.hasClass("highcharts-data-label")?(c[i?"removeClass":"addClass"]("highcharts-data-label-hidden"),t=function(){e.styledMode||c.css({pointerEvents:i?"auto":"none"})},s=!0,c[c.isOld?"animate":"attr"]({opacity:i},void 0,t),Ra(e,"afterHideOverlappingLabel")):c.attr({opacity:i})),c.isOld=!0),s}function Gp(){let c=this,e=[];for(let t of c.labelCollectors||[])e=e.concat(t());for(let t of c.yAxis||[])t.stacking&&t.options.stackLabels&&!t.options.stackLabels.allowOverlap&&Ba(t.stacking.stacks,i=>{Ba(i,s=>{s.label&&e.push(s.label)})});for(let t of c.series||[])if(t.visible&&t.hasDataLabels?.()){let i=s=>{for(let r of s)r.visible&&(r.dataLabels||[]).forEach(o=>{let n=o.options||{};o.labelrank=Xp(n.labelrank,r.labelrank,r.shapeArgs?.height),n.allowOverlap??Number(n.distance)>0?(o.oldOpacity=o.opacity,o.newOpacity=1,Na(o,c)):e.push(o)})};i(t.nodes||[]),i(t.points)}this.hideOverlappingLabels(e)}var jp={compose:Yp},Hr=jp;var{defaultOptions:Up}=ot,{noop:Wa}=I,{addEvent:za,extend:Vp,isObject:Ha,merge:$p,relativeLength:Xr}=T,Kp={radius:0,scope:"stack",where:void 0},Xa=Wa,Fa=Wa;function qp(c,e,t){let i=c[e],s=c[e+1];s[0]==="Z"&&(s=c[0]);let r,o,n;if((i[0]==="M"||i[0]==="L")&&s[0]==="A"?(r=i,o=s,n=!0):i[0]==="A"&&(s[0]==="M"||s[0]==="L")&&(r=s,o=i),r&&o&&o.params){let a=o[1],l=o[5],h=o.params,{start:f,end:d,cx:p,cy:g}=h,u=l?a-t:a+t,m=u?Math.asin(t/u):0,x=l?m:-m,y=Math.cos(m)*u;n?(h.start=f+x,r[1]=p+y*Math.cos(f),r[2]=g+y*Math.sin(f),c.splice(e+1,0,["A",t,t,0,0,1,p+a*Math.cos(h.start),g+a*Math.sin(h.start)])):(h.end=d-x,o[6]=p+a*Math.cos(h.end),o[7]=g+a*Math.sin(h.end),c.splice(e+1,0,["A",t,t,0,0,1,p+y*Math.cos(d),g+y*Math.sin(d)])),o[4]=Math.abs(h.end-h.start)<Math.PI?0:1}}function Zp(c,e,t,i,s={}){let r=Xa(c,e,t,i,s),{innerR:o=0,r:n=t,start:a=0,end:l=0}=s;if(s.open||!s.borderRadius)return r;let h=l-a,f=Math.sin(h/2),d=Math.max(Math.min(Xr(s.borderRadius||0,n-o),(n-o)/2,n*f/(1+f)),0),p=Math.min(d,2*(h/Math.PI)*o),g=r.length-1;for(;g--;)qp(r,g,g>1?p:d);return r}function _p(){if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:c,yAxis:e}=this,t=c.stacking==="percent",i=Up.plotOptions?.[this.type]?.borderRadius,s=Fr(c.borderRadius,Ha(i)?i:{}),r=e.options.reversed;for(let o of this.points){let{shapeArgs:n}=o;if(o.shapeType==="roundedRect"&&n){let{width:a=0,height:l=0,y:h=0}=n,f=h,d=l;if(s.scope==="stack"&&o.stackTotal){let m=e.translate(t?100:o.stackTotal,!1,!0,!1,!0),x=e.translate(c.threshold||0,!1,!0,!1,!0),y=this.crispCol(0,Math.min(m,x),0,Math.abs(m-x));f=y.y,d=y.height}let p=(o.negative?-1:1)*(r?-1:1)===-1,g=s.where;!g&&this.is("waterfall")&&Math.abs((o.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(g="all"),g||(g="end");let u=Math.min(Xr(s.radius,a),a/2,g==="all"?l/2:1/0)||0;g==="end"&&(p&&(f-=u),d+=u),Vp(n,{brBoxHeight:d,brBoxY:f,r:u})}}}}function Jp(c,e,t){let i=c.types.pie;if(!e.symbolCustomAttribs.includes("borderRadius")){let s=t.prototype.symbols;za(c,"afterColumnTranslate",_p,{order:9}),za(i,"afterTranslate",Qp),e.symbolCustomAttribs.push("borderRadius","brBoxHeight","brBoxY"),Xa=s.arc,Fa=s.roundedRect,s.arc=Zp,s.roundedRect=tu}}function Fr(c,e){return Ha(c)||(c={radius:c||0}),$p(Kp,e,c)}function Qp(){let c=Fr(this.options.borderRadius);for(let e of this.points){let t=e.shapeArgs;t&&(t.borderRadius=Xr(c.radius,(t.r||0)-(t.innerR||0)))}}function tu(c,e,t,i,s={}){let r=Fa(c,e,t,i,s),{r:o=0,brBoxHeight:n=i,brBoxY:a=e}=s,l=e-a,h=a+n-(e+i),f=l-o>-.1?0:o,d=h-o>-.1?0:o,p=Math.max(f&&l,0),g=Math.max(d&&h,0),u=[c+f,e],m=[c+t-f,e],x=[c+t,e+f],y=[c+t,e+i-d],b=[c+t-d,e+i],v=[c+d,e+i],S=[c,e+i-d],k=[c,e+f],w=(M,C)=>Math.sqrt(Math.pow(M,2)-Math.pow(C,2));if(p){let M=w(f,f-p);u[0]-=M,m[0]+=M,x[1]=k[1]=e+f-p}if(i<f-p){let M=w(f,f-p-i);x[0]=y[0]=c+t-f+M,b[0]=Math.min(x[0],b[0]),v[0]=Math.max(y[0],v[0]),S[0]=k[0]=c+f-M,x[1]=k[1]=e+i}if(g){let M=w(d,d-g);b[0]+=M,v[0]-=M,y[1]=S[1]=e+i-d+g}if(i<d-g){let M=w(d,d-g-i);x[0]=y[0]=c+t-d+M,m[0]=Math.min(x[0],m[0]),u[0]=Math.max(y[0],u[0]),S[0]=k[0]=c+d-M,y[1]=S[1]=e}return r.length=0,r.push(["M",...u],["L",...m],["A",f,f,0,0,1,...x],["L",...y],["A",d,d,0,0,1,...b],["L",...v],["A",d,d,0,0,1,...S],["L",...k],["A",f,f,0,0,1,...u],["Z"]),r}var eu={compose:Jp,optionsToObject:Fr},Ya=eu;var{diffObjects:iu,extend:su,find:ru,merge:ou,pick:Vi,uniqueKey:nu}=T,Yr;(function(c){function e(s){let r=s.prototype;return r.matchResponsiveRule||su(r,{matchResponsiveRule:t,setResponsive:i}),s}c.compose=e;function t(s,r){let o=s.condition;(o.callback||function(){return this.chartWidth<=Vi(o.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=Vi(o.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=Vi(o.minWidth,0)&&this.chartHeight>=Vi(o.minHeight,0)}).call(this)&&r.push(s._id)}function i(s,r){let o=this.options.responsive,n=this.currentResponsive,a=[],l;!r&&o&&o.rules&&o.rules.forEach(d=>{typeof d._id>"u"&&(d._id=nu()),this.matchResponsiveRule(d,a)},this);let h=ou(...a.map(d=>ru(o?.rules||[],p=>p._id===d)).map(d=>d?.chartOptions));h.isResponsiveOptions=!0,a=a.toString()||void 0;let f=n?.ruleIds;a!==f&&(n&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(n.undoOptions,s,!0),this.updatingResponsive=!1),a?(l=iu(h,this.options,!0,this.collectionsWithUpdate),l.isResponsiveOptions=!0,this.currentResponsive={ruleIds:a,mergedOptions:h,undoOptions:l},this.updatingResponsive||this.update(h,s,!0)):this.currentResponsive=void 0)}})(Yr||(Yr={}));var Ga=Yr;var R=I;R.AST=dt;R.Axis=We;R.Chart=mr;R.Color=pt;R.DataLabel=ae;R.DataTableCore=ye;R.Fx=Et;R.HTMLElement=Ts;R.Legend=or;R.LegendSymbol=Li;R.OverlappingDataLabels=R.OverlappingDataLabels||Hr;R.PlotLineOrBand=Xs;R.Point=bt;R.Pointer=Zs;R.RendererRegistry=wt;R.Series=lt;R.SeriesRegistry=V;R.StackItem=zi;R.SVGElement=mt;R.SVGRenderer=mi;R.Templating=nt;R.Tick=Bt;R.Time=de;R.Tooltip=Gs;R.animate=_.animate;R.animObject=_.animObject;R.chart=mr.chart;R.color=pt.parse;R.dateFormat=nt.dateFormat;R.defaultOptions=ot.defaultOptions;R.distribute=Xt.distribute;R.format=nt.format;R.getDeferredAnimation=_.getDeferredAnimation;R.getOptions=ot.getOptions;R.numberFormat=nt.numberFormat;R.seriesType=V.seriesType;R.setAnimation=_.setAnimation;R.setOptions=ot.setOptions;R.stop=_.stop;R.time=ot.defaultTime;R.timers=Et.timers;Ya.compose(R.Series,R.SVGElement,R.SVGRenderer);ba.compose(R.Series.types.column);ae.compose(R.Series);dn.compose(R.Axis);Ts.compose(R.SVGRenderer);or.compose(R.Chart);pn.compose(R.Axis);Hr.compose(R.Chart);Ea.compose(R.Series.types.pie);Xs.compose(R.Chart,R.Axis);Zs.compose(R.Chart);Ga.compose(R.Chart);ia.compose(R.Axis,R.Chart,R.Series);na.compose(R.Axis,R.Chart,R.Series);Gs.compose(R.Pointer);T.extend(R,T);var ja=R;var Ua=class c{httpClient=$r(Qr);widgets$=jr([{id:"SALES",title:"Sales",value:null,showValue:!0,tooltip:"Total Sales Today"},{id:"PAYMENT",title:"Payment",value:null,showValue:!0,tooltip:"Total Payment Today"},{id:"PURCHASE",title:"Purchase",value:null,showValue:!0,tooltip:"Total Purchase Today"},{id:"DEBT",title:"Receivable",value:null,showValue:!0},{id:"PRODUCT",title:"Product",showValue:!1},{id:"INVENTORY",title:"Inventory",showValue:!1}]);setWidgetData(e,t){return this.widgets$=this.widgets$.pipe(Ur(i=>i.map(s=>(s.id==t&&(s.value=e),s)))),this.widgets$}getDashboardSales(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardSales,e,t)}getDashboardPayment(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardPayment,e,t)}getDashboardPurchase(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardPurchase,e,t)}getDashboardDebt(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardDebt,e,t)}getDashboardProduct(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardProduct,e,t)}getDashboardInventory(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Zt.GetDashboardInventory,e,t)}getHttpheaders(){let e=localStorage.getItem("Token"),t=new Jr({"Content-Type":"application/json","Cache-Control":"no-cache"});return e?t=t.append("Authorization","Bearer "+e):window.location.href="/",t}getLineChartConfig(){return{credits:{enabled:!1},accessibility:{enabled:!1},chart:{type:"areaspline",ignoreHiddenSeries:!1,height:410,spacingTop:-20,spacingRight:15},title:{text:"<br/>"},legend:{enabled:!0,squareSymbol:!0},xAxis:{type:"datetime",labels:{style:{color:"gray"}},lineColor:"gray",tickColor:"gray"},yAxis:{min:0,title:{text:""},labels:{formatter:function(){let t=this.value;if(t==0)return"";var i=parseInt(t).toString();if(i.length<=4)return parseFloat(t).toString();if(i.length>=5&&i.length<=6)return t/1e3+" k";if(i.length>=7&&i.length<=9)return t/1e6+" MM";if(i.length>=10)return t/1e9+" BN"},style:{color:"gray"}}},plotOptions:{series:{pointInterval:864e5,dataLabels:{enabled:!1}},areaspline:{fillOpacity:.1,lineWidth:1.5,marker:{enabled:!0}}},tooltip:{shared:!0},series:[]}}getLinierGradient(e){let t=new ja.Color(e);return{linearGradient:[0,0,0,290],stops:[[0,t.setOpacity(.1).get("rgba")],[1,"#ffffff70"]]}}setSeriesPointStart(e,t){let i=new Date(e);return t.plotOptions.series.pointStart=Date.UTC(i.getFullYear(),i.getMonth(),i.getDate()),t}getTotalData(e,t,i=1){let s=0;if(e!="All"){let r=this.filterSeriesByName(e,t);s=r?.data?.slice(r?.data?.length-i,r?.data?.length).reduce((o,n)=>o+n,0)}else s=t.reduce((r,o)=>r+o?.data?.slice(o?.data?.length-i,o?.data?.length).reduce((n,a)=>n+a,0),0);return s}filterSeriesByName(e,t){return t?.find(s=>s.name==e)}static \u0275fac=function(t){return new(t||c)};static \u0275prov=Vr({token:c,factory:c.\u0275fac})};var Va=class c{config;containerId;htmlIsRendered=!1;constructor(){}ngAfterViewInit(){to.IsNotEmpty(this.containerId)&&(this.initChart(),this.htmlIsRendered=!0)}ngOnChanges(e){e.config&&e.config.currentValue&&this.htmlIsRendered&&this.initChart()}initChart(){Ki.chart(this.containerId,this.config);let e={lang:{thousandsSep:","}};Ki.setOptions(e)}static \u0275fac=function(t){return new(t||c)};static \u0275cmp=qr({type:c,selectors:[["app-chart-container"]],inputs:{config:"config",containerId:"containerId"},features:[Kr],decls:1,vars:1,consts:[[3,"id"]],template:function(t,i){t&1&&Zr(0,"div",0),t&2&&_r("id",i.containerId)},encapsulation:2})};export{Ua as a,Va as b};