rapidfireai 0.0.1__py3-none-any.whl → 0.9.10__py3-none-any.whl

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.

Potentially problematic release.


This version of rapidfireai might be problematic. Click here for more details.

Files changed (320) hide show
  1. rapidfireai/__init__.py +11 -5
  2. rapidfireai/automl/__init__.py +20 -0
  3. rapidfireai/automl/base.py +48 -0
  4. rapidfireai/automl/datatypes.py +42 -0
  5. rapidfireai/automl/grid_search.py +125 -0
  6. rapidfireai/automl/model_config.py +102 -0
  7. rapidfireai/automl/random_search.py +145 -0
  8. rapidfireai/backend/__init__.py +0 -0
  9. rapidfireai/backend/chunks.py +63 -0
  10. rapidfireai/backend/controller.py +637 -0
  11. rapidfireai/backend/scheduler.py +137 -0
  12. rapidfireai/backend/worker.py +272 -0
  13. rapidfireai/cli.py +380 -0
  14. rapidfireai/db/__init__.py +0 -0
  15. rapidfireai/db/db_interface.py +135 -0
  16. rapidfireai/db/rf_db.py +694 -0
  17. rapidfireai/db/tables.sql +64 -0
  18. rapidfireai/dispatcher/dispatcher.py +391 -0
  19. rapidfireai/dispatcher/gunicorn.conf.py +25 -0
  20. rapidfireai/experiment.py +168 -0
  21. rapidfireai/frontend/build/asset-manifest.json +276 -0
  22. rapidfireai/frontend/build/favicon.ico +0 -0
  23. rapidfireai/frontend/build/index.html +1 -0
  24. rapidfireai/frontend/build/manifest.json +15 -0
  25. rapidfireai/frontend/build/pdf.worker.js +1 -0
  26. rapidfireai/frontend/build/report.html +39 -0
  27. rapidfireai/frontend/build/static/css/1482.3b7bf531.chunk.css +1 -0
  28. rapidfireai/frontend/build/static/css/2730.3f8937ff.chunk.css +1 -0
  29. rapidfireai/frontend/build/static/css/318.0def90a7.css +7 -0
  30. rapidfireai/frontend/build/static/css/4762.9b7b71f7.chunk.css +1 -0
  31. rapidfireai/frontend/build/static/css/4950.487ecc8b.chunk.css +1 -0
  32. rapidfireai/frontend/build/static/css/5170.2574ce9d.chunk.css +1 -0
  33. rapidfireai/frontend/build/static/css/6121.4d541986.chunk.css +1 -0
  34. rapidfireai/frontend/build/static/css/6343.dd6979f2.chunk.css +1 -0
  35. rapidfireai/frontend/build/static/css/6534.433c213f.chunk.css +1 -0
  36. rapidfireai/frontend/build/static/css/6920.ffac4b2a.css +2 -0
  37. rapidfireai/frontend/build/static/css/7246.bf2f0c87.css +9 -0
  38. rapidfireai/frontend/build/static/css/7367.dd6979f2.chunk.css +1 -0
  39. rapidfireai/frontend/build/static/css/8690.05d081e5.chunk.css +1 -0
  40. rapidfireai/frontend/build/static/css/9531.d0910d3c.chunk.css +1 -0
  41. rapidfireai/frontend/build/static/css/9780.363e4943.chunk.css +1 -0
  42. rapidfireai/frontend/build/static/css/main~d91a9049.c0be472c.css +1 -0
  43. rapidfireai/frontend/build/static/js/1000.e5ed264b.chunk.js +1 -0
  44. rapidfireai/frontend/build/static/js/1012.ac98ab59.chunk.js +1 -0
  45. rapidfireai/frontend/build/static/js/1079.6c13ac0d.js +1 -0
  46. rapidfireai/frontend/build/static/js/110.9059f3b8.chunk.js +1 -0
  47. rapidfireai/frontend/build/static/js/1142.872d0010.chunk.js +1 -0
  48. rapidfireai/frontend/build/static/js/1167.9a6da14c.chunk.js +1 -0
  49. rapidfireai/frontend/build/static/js/1248.60890b4f.chunk.js +1 -0
  50. rapidfireai/frontend/build/static/js/1262.83dc7673.chunk.js +1 -0
  51. rapidfireai/frontend/build/static/js/1273.56da3e13.chunk.js +2 -0
  52. rapidfireai/frontend/build/static/js/1273.56da3e13.chunk.js.LICENSE.txt +9 -0
  53. rapidfireai/frontend/build/static/js/1303.7d19305c.chunk.js +1 -0
  54. rapidfireai/frontend/build/static/js/1351.45076ff3.chunk.js +1 -0
  55. rapidfireai/frontend/build/static/js/1355.b896a592.js +1 -0
  56. rapidfireai/frontend/build/static/js/1357.02c46a02.chunk.js +1 -0
  57. rapidfireai/frontend/build/static/js/1470.c51d60c6.chunk.js +1 -0
  58. rapidfireai/frontend/build/static/js/1482.23b74f50.chunk.js +1 -0
  59. rapidfireai/frontend/build/static/js/1500.19799d8d.chunk.js +1 -0
  60. rapidfireai/frontend/build/static/js/1648.d3b9edc7.chunk.js +1 -0
  61. rapidfireai/frontend/build/static/js/1860.7d96e3f9.chunk.js +1 -0
  62. rapidfireai/frontend/build/static/js/1909.5b1d9ff4.chunk.js +1 -0
  63. rapidfireai/frontend/build/static/js/1928.44245110.chunk.js +2 -0
  64. rapidfireai/frontend/build/static/js/1928.44245110.chunk.js.LICENSE.txt +11 -0
  65. rapidfireai/frontend/build/static/js/1933.deba26ca.chunk.js +1 -0
  66. rapidfireai/frontend/build/static/js/21.aac92802.chunk.js +1 -0
  67. rapidfireai/frontend/build/static/js/2103.0ca12071.chunk.js +1 -0
  68. rapidfireai/frontend/build/static/js/2258.b3b8fab4.chunk.js +1 -0
  69. rapidfireai/frontend/build/static/js/2289.9ad51e87.chunk.js +1 -0
  70. rapidfireai/frontend/build/static/js/2323.7dd927d7.js +2 -0
  71. rapidfireai/frontend/build/static/js/2323.7dd927d7.js.LICENSE.txt +1 -0
  72. rapidfireai/frontend/build/static/js/2346.ed99ca72.chunk.js +1 -0
  73. rapidfireai/frontend/build/static/js/2386.0a660834.chunk.js +1 -0
  74. rapidfireai/frontend/build/static/js/2402.465048f9.chunk.js +1 -0
  75. rapidfireai/frontend/build/static/js/243.5a83bbca.chunk.js +1 -0
  76. rapidfireai/frontend/build/static/js/2589.68571e16.js +1 -0
  77. rapidfireai/frontend/build/static/js/2647.65092bab.chunk.js +1 -0
  78. rapidfireai/frontend/build/static/js/2691.65d4a4e7.js +1 -0
  79. rapidfireai/frontend/build/static/js/2730.b38dd6f3.chunk.js +1 -0
  80. rapidfireai/frontend/build/static/js/2746.ef752da4.chunk.js +1 -0
  81. rapidfireai/frontend/build/static/js/2779.580d4491.chunk.js +1 -0
  82. rapidfireai/frontend/build/static/js/2799.fe5993b2.chunk.js +1 -0
  83. rapidfireai/frontend/build/static/js/2844.9708db79.chunk.js +2 -0
  84. rapidfireai/frontend/build/static/js/2844.9708db79.chunk.js.LICENSE.txt +21 -0
  85. rapidfireai/frontend/build/static/js/2901.ee0c606b.chunk.js +1 -0
  86. rapidfireai/frontend/build/static/js/2932.7cc0689b.chunk.js +2 -0
  87. rapidfireai/frontend/build/static/js/2932.7cc0689b.chunk.js.LICENSE.txt +6 -0
  88. rapidfireai/frontend/build/static/js/2956.a393c8cc.chunk.js +1 -0
  89. rapidfireai/frontend/build/static/js/2972.679bed05.chunk.js +1 -0
  90. rapidfireai/frontend/build/static/js/2985.7e51cdfa.chunk.js +2 -0
  91. rapidfireai/frontend/build/static/js/2985.7e51cdfa.chunk.js.LICENSE.txt +51 -0
  92. rapidfireai/frontend/build/static/js/3093.488df653.js +1 -0
  93. rapidfireai/frontend/build/static/js/3145.66ee61b9.js +1 -0
  94. rapidfireai/frontend/build/static/js/3170.a22f966a.chunk.js +2 -0
  95. rapidfireai/frontend/build/static/js/3170.a22f966a.chunk.js.LICENSE.txt +21 -0
  96. rapidfireai/frontend/build/static/js/3307.f6fb258c.chunk.js +1 -0
  97. rapidfireai/frontend/build/static/js/3325.d5b03d65.js +1 -0
  98. rapidfireai/frontend/build/static/js/3334.2d6704df.chunk.js +2 -0
  99. rapidfireai/frontend/build/static/js/3334.2d6704df.chunk.js.LICENSE.txt +6 -0
  100. rapidfireai/frontend/build/static/js/3387.bb8edad3.chunk.js +1 -0
  101. rapidfireai/frontend/build/static/js/3448.438e6579.chunk.js +1 -0
  102. rapidfireai/frontend/build/static/js/3460.735eea87.chunk.js +1 -0
  103. rapidfireai/frontend/build/static/js/3505.7fd3921a.js +2 -0
  104. rapidfireai/frontend/build/static/js/3505.7fd3921a.js.LICENSE.txt +9 -0
  105. rapidfireai/frontend/build/static/js/3510.cd167a00.js +2 -0
  106. rapidfireai/frontend/build/static/js/3510.cd167a00.js.LICENSE.txt +18 -0
  107. rapidfireai/frontend/build/static/js/3563.cc828e19.chunk.js +1 -0
  108. rapidfireai/frontend/build/static/js/359.08960b84.chunk.js +2 -0
  109. rapidfireai/frontend/build/static/js/359.08960b84.chunk.js.LICENSE.txt +4 -0
  110. rapidfireai/frontend/build/static/js/3608.403b4b79.chunk.js +1 -0
  111. rapidfireai/frontend/build/static/js/3652.cb8add7f.js +1 -0
  112. rapidfireai/frontend/build/static/js/3775.5230b157.chunk.js +1 -0
  113. rapidfireai/frontend/build/static/js/3817.53555d18.js +2 -0
  114. rapidfireai/frontend/build/static/js/3817.53555d18.js.LICENSE.txt +18 -0
  115. rapidfireai/frontend/build/static/js/3835.d9946ff9.chunk.js +1 -0
  116. rapidfireai/frontend/build/static/js/3964.874f0297.chunk.js +1 -0
  117. rapidfireai/frontend/build/static/js/3968.275cbc3d.chunk.js +1 -0
  118. rapidfireai/frontend/build/static/js/3999.765cbd82.chunk.js +1 -0
  119. rapidfireai/frontend/build/static/js/4020.4452c046.chunk.js +1 -0
  120. rapidfireai/frontend/build/static/js/4138.2f6f6d9f.js +1 -0
  121. rapidfireai/frontend/build/static/js/4160.f424554c.js +1 -0
  122. rapidfireai/frontend/build/static/js/4180.50cea095.chunk.js +1 -0
  123. rapidfireai/frontend/build/static/js/4221.b0bba3f5.chunk.js +1 -0
  124. rapidfireai/frontend/build/static/js/4250.5bb49278.chunk.js +1 -0
  125. rapidfireai/frontend/build/static/js/4297.15777d8f.chunk.js +1 -0
  126. rapidfireai/frontend/build/static/js/4349.c965f2de.js +2 -0
  127. rapidfireai/frontend/build/static/js/4349.c965f2de.js.LICENSE.txt +1 -0
  128. rapidfireai/frontend/build/static/js/4484.4cbe5e7f.js +2 -0
  129. rapidfireai/frontend/build/static/js/4484.4cbe5e7f.js.LICENSE.txt +10 -0
  130. rapidfireai/frontend/build/static/js/4578.a8124588.js +1 -0
  131. rapidfireai/frontend/build/static/js/4596.89a97480.js +1 -0
  132. rapidfireai/frontend/build/static/js/4748.566f435a.chunk.js +1 -0
  133. rapidfireai/frontend/build/static/js/4762.928e8a90.chunk.js +1 -0
  134. rapidfireai/frontend/build/static/js/4768.7945be63.js +2 -0
  135. rapidfireai/frontend/build/static/js/4768.7945be63.js.LICENSE.txt +1 -0
  136. rapidfireai/frontend/build/static/js/4804.26b50dd4.chunk.js +1 -0
  137. rapidfireai/frontend/build/static/js/4850.62390a45.chunk.js +1 -0
  138. rapidfireai/frontend/build/static/js/4862.a0ccb221.chunk.js +1 -0
  139. rapidfireai/frontend/build/static/js/491.5dc8ed40.chunk.js +1 -0
  140. rapidfireai/frontend/build/static/js/492.9262f038.chunk.js +2 -0
  141. rapidfireai/frontend/build/static/js/492.9262f038.chunk.js.LICENSE.txt +6 -0
  142. rapidfireai/frontend/build/static/js/4943.6d345fd3.chunk.js +1 -0
  143. rapidfireai/frontend/build/static/js/4950.bc182e62.chunk.js +1 -0
  144. rapidfireai/frontend/build/static/js/5042.d4f0c65a.chunk.js +2 -0
  145. rapidfireai/frontend/build/static/js/5042.d4f0c65a.chunk.js.LICENSE.txt +6 -0
  146. rapidfireai/frontend/build/static/js/5170.0065e96f.chunk.js +1 -0
  147. rapidfireai/frontend/build/static/js/5222.35c74a52.js +2 -0
  148. rapidfireai/frontend/build/static/js/5222.35c74a52.js.LICENSE.txt +10 -0
  149. rapidfireai/frontend/build/static/js/5223.3224f019.chunk.js +2 -0
  150. rapidfireai/frontend/build/static/js/5223.3224f019.chunk.js.LICENSE.txt +3 -0
  151. rapidfireai/frontend/build/static/js/5229.7dd42316.chunk.js +1 -0
  152. rapidfireai/frontend/build/static/js/5286.4c1ad26b.js +1 -0
  153. rapidfireai/frontend/build/static/js/5486.21cff711.chunk.js +1 -0
  154. rapidfireai/frontend/build/static/js/5526.7b368956.chunk.js +1 -0
  155. rapidfireai/frontend/build/static/js/5605.1ee4d87b.chunk.js +1 -0
  156. rapidfireai/frontend/build/static/js/5682.40b42d8b.chunk.js +1 -0
  157. rapidfireai/frontend/build/static/js/5794.9433d867.chunk.js +1 -0
  158. rapidfireai/frontend/build/static/js/5826.38a56e8c.chunk.js +2 -0
  159. rapidfireai/frontend/build/static/js/5826.38a56e8c.chunk.js.LICENSE.txt +1 -0
  160. rapidfireai/frontend/build/static/js/5862.50f42a0b.js +1 -0
  161. rapidfireai/frontend/build/static/js/5895.e26742f1.chunk.js +1 -0
  162. rapidfireai/frontend/build/static/js/5919.edd4a5cf.chunk.js +1 -0
  163. rapidfireai/frontend/build/static/js/598.a0e792ae.js +1 -0
  164. rapidfireai/frontend/build/static/js/6058.74162bf9.chunk.js +1 -0
  165. rapidfireai/frontend/build/static/js/618.06051134.chunk.js +2 -0
  166. rapidfireai/frontend/build/static/js/618.06051134.chunk.js.LICENSE.txt +21 -0
  167. rapidfireai/frontend/build/static/js/6335.9fca442d.chunk.js +1 -0
  168. rapidfireai/frontend/build/static/js/6336.e05e1154.chunk.js +1 -0
  169. rapidfireai/frontend/build/static/js/6343.2bcd28ff.chunk.js +1 -0
  170. rapidfireai/frontend/build/static/js/6363.a319b8f2.chunk.js +1 -0
  171. rapidfireai/frontend/build/static/js/6478.344abf25.chunk.js +1 -0
  172. rapidfireai/frontend/build/static/js/6504.1c004564.js +1 -0
  173. rapidfireai/frontend/build/static/js/6534.ec7e149b.chunk.js +1 -0
  174. rapidfireai/frontend/build/static/js/6715.55a5c19c.chunk.js +1 -0
  175. rapidfireai/frontend/build/static/js/6756.e6cb993c.chunk.js +2 -0
  176. rapidfireai/frontend/build/static/js/6756.e6cb993c.chunk.js.LICENSE.txt +10 -0
  177. rapidfireai/frontend/build/static/js/6762.acfde9fd.chunk.js +2 -0
  178. rapidfireai/frontend/build/static/js/6762.acfde9fd.chunk.js.LICENSE.txt +19 -0
  179. rapidfireai/frontend/build/static/js/6846.67103d0e.chunk.js +1 -0
  180. rapidfireai/frontend/build/static/js/6861.34cf0198.chunk.js +1 -0
  181. rapidfireai/frontend/build/static/js/6899.0eaf36a8.chunk.js +2 -0
  182. rapidfireai/frontend/build/static/js/6899.0eaf36a8.chunk.js.LICENSE.txt +5 -0
  183. rapidfireai/frontend/build/static/js/6933.8b564944.chunk.js +1 -0
  184. rapidfireai/frontend/build/static/js/699.d0437920.js +1 -0
  185. rapidfireai/frontend/build/static/js/7076.4182f63a.chunk.js +1 -0
  186. rapidfireai/frontend/build/static/js/7186.42ad86d5.chunk.js +1 -0
  187. rapidfireai/frontend/build/static/js/7248.a46635fd.js +1 -0
  188. rapidfireai/frontend/build/static/js/725.6b15a14a.chunk.js +1 -0
  189. rapidfireai/frontend/build/static/js/7266.3575539d.chunk.js +1 -0
  190. rapidfireai/frontend/build/static/js/7270.0a1e84fc.chunk.js +2 -0
  191. rapidfireai/frontend/build/static/js/7270.0a1e84fc.chunk.js.LICENSE.txt +6 -0
  192. rapidfireai/frontend/build/static/js/7367.7120474f.chunk.js +1 -0
  193. rapidfireai/frontend/build/static/js/7436.8e226055.js +1 -0
  194. rapidfireai/frontend/build/static/js/7504.ef223844.chunk.js +1 -0
  195. rapidfireai/frontend/build/static/js/7603.ee049fe3.chunk.js +1 -0
  196. rapidfireai/frontend/build/static/js/7670.2835b49a.chunk.js +2 -0
  197. rapidfireai/frontend/build/static/js/7670.2835b49a.chunk.js.LICENSE.txt +6 -0
  198. rapidfireai/frontend/build/static/js/7721.7390b3cc.chunk.js +1 -0
  199. rapidfireai/frontend/build/static/js/7731.5796cced.chunk.js +1 -0
  200. rapidfireai/frontend/build/static/js/775.660a5deb.chunk.js +2 -0
  201. rapidfireai/frontend/build/static/js/775.660a5deb.chunk.js.LICENSE.txt +6 -0
  202. rapidfireai/frontend/build/static/js/7832.7976a3e4.chunk.js +1 -0
  203. rapidfireai/frontend/build/static/js/7844.72cc2e81.chunk.js +1 -0
  204. rapidfireai/frontend/build/static/js/7948.48eab032.js +1 -0
  205. rapidfireai/frontend/build/static/js/7972.085079d4.chunk.js +2 -0
  206. rapidfireai/frontend/build/static/js/7972.085079d4.chunk.js.LICENSE.txt +6 -0
  207. rapidfireai/frontend/build/static/js/8017.a9e7dc5a.chunk.js +1 -0
  208. rapidfireai/frontend/build/static/js/8023.75f1f3df.js +2 -0
  209. rapidfireai/frontend/build/static/js/8023.75f1f3df.js.LICENSE.txt +41 -0
  210. rapidfireai/frontend/build/static/js/8123.b69db974.js +1 -0
  211. rapidfireai/frontend/build/static/js/813.065a87e5.chunk.js +1 -0
  212. rapidfireai/frontend/build/static/js/819.2056f122.chunk.js +2 -0
  213. rapidfireai/frontend/build/static/js/819.2056f122.chunk.js.LICENSE.txt +6 -0
  214. rapidfireai/frontend/build/static/js/8262.04bc17d1.chunk.js +1 -0
  215. rapidfireai/frontend/build/static/js/8300.75adcc4f.chunk.js +1 -0
  216. rapidfireai/frontend/build/static/js/8336.b1d3e764.chunk.js +1 -0
  217. rapidfireai/frontend/build/static/js/8365.26cf64ea.chunk.js +1 -0
  218. rapidfireai/frontend/build/static/js/8398.8bca8e0e.chunk.js +2 -0
  219. rapidfireai/frontend/build/static/js/8398.8bca8e0e.chunk.js.LICENSE.txt +6 -0
  220. rapidfireai/frontend/build/static/js/847.33ceed50.chunk.js +2 -0
  221. rapidfireai/frontend/build/static/js/847.33ceed50.chunk.js.LICENSE.txt +6 -0
  222. rapidfireai/frontend/build/static/js/8486.8ec852a7.chunk.js +1 -0
  223. rapidfireai/frontend/build/static/js/8497.19378265.chunk.js +1 -0
  224. rapidfireai/frontend/build/static/js/8541.4c55c9f4.chunk.js +1 -0
  225. rapidfireai/frontend/build/static/js/8690.e305a804.chunk.js +2 -0
  226. rapidfireai/frontend/build/static/js/8690.e305a804.chunk.js.LICENSE.txt +6 -0
  227. rapidfireai/frontend/build/static/js/8712.a9445fe6.chunk.js +1 -0
  228. rapidfireai/frontend/build/static/js/8763.61761e08.js +1 -0
  229. rapidfireai/frontend/build/static/js/8823.baf9bffd.chunk.js +2 -0
  230. rapidfireai/frontend/build/static/js/8823.baf9bffd.chunk.js.LICENSE.txt +6 -0
  231. rapidfireai/frontend/build/static/js/8867.767462b7.chunk.js +1 -0
  232. rapidfireai/frontend/build/static/js/8953.c0f88dea.chunk.js +1 -0
  233. rapidfireai/frontend/build/static/js/8960.357cb1eb.chunk.js +2 -0
  234. rapidfireai/frontend/build/static/js/8960.357cb1eb.chunk.js.LICENSE.txt +6 -0
  235. rapidfireai/frontend/build/static/js/9.f4492795.chunk.js +2 -0
  236. rapidfireai/frontend/build/static/js/9.f4492795.chunk.js.LICENSE.txt +12 -0
  237. rapidfireai/frontend/build/static/js/9079.88a8d2a3.js +1 -0
  238. rapidfireai/frontend/build/static/js/9082.37c40520.chunk.js +10 -0
  239. rapidfireai/frontend/build/static/js/9133.90ae330d.js +2 -0
  240. rapidfireai/frontend/build/static/js/9133.90ae330d.js.LICENSE.txt +8 -0
  241. rapidfireai/frontend/build/static/js/9151.1ac359d5.js +2 -0
  242. rapidfireai/frontend/build/static/js/9151.1ac359d5.js.LICENSE.txt +8 -0
  243. rapidfireai/frontend/build/static/js/9168.027bf2fd.chunk.js +1 -0
  244. rapidfireai/frontend/build/static/js/9194.9c5cc548.chunk.js +10 -0
  245. rapidfireai/frontend/build/static/js/9244.026f4aee.chunk.js +1 -0
  246. rapidfireai/frontend/build/static/js/936.2e02d037.js +2 -0
  247. rapidfireai/frontend/build/static/js/936.2e02d037.js.LICENSE.txt +6 -0
  248. rapidfireai/frontend/build/static/js/9369.7d1a0a1d.chunk.js +1 -0
  249. rapidfireai/frontend/build/static/js/9427.7c8442e7.chunk.js +1 -0
  250. rapidfireai/frontend/build/static/js/944.55948859.chunk.js +1 -0
  251. rapidfireai/frontend/build/static/js/9499.c53a82da.js +2 -0
  252. rapidfireai/frontend/build/static/js/9499.c53a82da.js.LICENSE.txt +62 -0
  253. rapidfireai/frontend/build/static/js/9531.3ce05781.chunk.js +1 -0
  254. rapidfireai/frontend/build/static/js/9547.92fac952.chunk.js +2 -0
  255. rapidfireai/frontend/build/static/js/9547.92fac952.chunk.js.LICENSE.txt +6 -0
  256. rapidfireai/frontend/build/static/js/9620.b6e973a7.chunk.js +1 -0
  257. rapidfireai/frontend/build/static/js/9645.6fddfa65.chunk.js +1 -0
  258. rapidfireai/frontend/build/static/js/9669.d38dda6d.js +1 -0
  259. rapidfireai/frontend/build/static/js/9682.41b6b807.chunk.js +1 -0
  260. rapidfireai/frontend/build/static/js/9720.19d5ae76.chunk.js +2 -0
  261. rapidfireai/frontend/build/static/js/9720.19d5ae76.chunk.js.LICENSE.txt +23 -0
  262. rapidfireai/frontend/build/static/js/9723.d3c7fe9e.js +1 -0
  263. rapidfireai/frontend/build/static/js/9780.02a27630.chunk.js +10 -0
  264. rapidfireai/frontend/build/static/js/9808.d0ca9674.chunk.js +2 -0
  265. rapidfireai/frontend/build/static/js/9808.d0ca9674.chunk.js.LICENSE.txt +6 -0
  266. rapidfireai/frontend/build/static/js/9815.b8db3c5d.js +1 -0
  267. rapidfireai/frontend/build/static/js/9886.2940b53a.chunk.js +1 -0
  268. rapidfireai/frontend/build/static/js/main~1f912138.fa9d03b1.js +1 -0
  269. rapidfireai/frontend/build/static/js/main~43dd7041.2e00860d.js +1 -0
  270. rapidfireai/frontend/build/static/js/main~84781932.68deffff.js +1 -0
  271. rapidfireai/frontend/build/static/media/404-overflow.fad9a31861b0afba6f921ebb8e769688.svg +32 -0
  272. rapidfireai/frontend/build/static/media/RapidFire_Square_Bug.27ceb48296314a4bc0d4.png +0 -0
  273. rapidfireai/frontend/build/static/media/chart-bar.0fd4a63680fba840a7b69fbf07969f79.svg +7 -0
  274. rapidfireai/frontend/build/static/media/chart-contour.0d4b306f2669f3ad25375568935e3ce3.svg +5 -0
  275. rapidfireai/frontend/build/static/media/chart-difference.16174216d6f3b7c24f40e3541fe0ca2c.svg +20 -0
  276. rapidfireai/frontend/build/static/media/chart-image.cc434c4dc50780966344e2385a15f8fe.svg +6 -0
  277. rapidfireai/frontend/build/static/media/chart-line.0adaa2036bb4eb5956db6d0c7e925a3d.svg +4 -0
  278. rapidfireai/frontend/build/static/media/chart-parallel.da7dedf539b2af4b654d377c679173e4.svg +7 -0
  279. rapidfireai/frontend/build/static/media/chart-scatter.69118d0023a6ff3973f7fa913834ac47.svg +9 -0
  280. rapidfireai/frontend/build/static/media/default-error.f246ddf367c6fbd67942e5a13382a7f1.svg +26 -0
  281. rapidfireai/frontend/build/static/media/fontawesome-webfont.1e59d2330b4c6deb84b3.ttf +0 -0
  282. rapidfireai/frontend/build/static/media/fontawesome-webfont.20fd1704ea223900efa9.woff2 +0 -0
  283. rapidfireai/frontend/build/static/media/fontawesome-webfont.8b43027f47b20503057d.eot +0 -0
  284. rapidfireai/frontend/build/static/media/fontawesome-webfont.c1e38fd9e0e74ba58f7a.svg +2671 -0
  285. rapidfireai/frontend/build/static/media/fontawesome-webfont.f691f37e57f04c152e23.woff +0 -0
  286. rapidfireai/frontend/build/static/media/icon-visible-fill.8d34cd35303828fdfc15154f5536e63b.svg +7 -0
  287. rapidfireai/frontend/build/static/media/no-experiments.0e4f4a114ef73e7d81c09474aba64b6c.svg +22 -0
  288. rapidfireai/frontend/build/static/media/parallel-chart-placeholder.234ef0c5b220ef2a5a6fa5bafff173f7.svg +16 -0
  289. rapidfireai/frontend/build/static/media/permission-denied-lock.16036747d57cd663d7df223781a447b2.svg +14 -0
  290. rapidfireai/frontend/build/static/media/promo-modal-content.e3b2c6c568ac192b9bec54b838b54850.svg +30 -0
  291. rapidfireai/frontend/build/static/media/registered-model-grey-ok.8274b58d39504c8d1b8c358aa1c9aa35.svg +23 -0
  292. rapidfireai/frontend/build/static/media/warning.290a3b14118933547965e91ea61c5a61.svg +3 -0
  293. rapidfireai/frontend/proxy_middleware.py +233 -0
  294. rapidfireai/frontend/server.py +25 -0
  295. rapidfireai/ml/__init__.py +0 -0
  296. rapidfireai/ml/callbacks.py +176 -0
  297. rapidfireai/ml/checkpoint_utils.py +540 -0
  298. rapidfireai/ml/trainer.py +309 -0
  299. rapidfireai/start.sh +634 -0
  300. rapidfireai/utils/__init__.py +0 -0
  301. rapidfireai/utils/automl_utils.py +51 -0
  302. rapidfireai/utils/constants.py +141 -0
  303. rapidfireai/utils/datapaths.py +69 -0
  304. rapidfireai/utils/exceptions.py +82 -0
  305. rapidfireai/utils/experiment_utils.py +370 -0
  306. rapidfireai/utils/logging.py +87 -0
  307. rapidfireai/utils/mlflow_manager.py +121 -0
  308. rapidfireai/utils/serialize.py +15 -0
  309. rapidfireai/utils/shm_manager.py +469 -0
  310. rapidfireai/utils/trainer_config.py +23 -0
  311. rapidfireai/utils/worker_manager.py +219 -0
  312. rapidfireai/version.py +6 -0
  313. rapidfireai-0.9.10.dist-info/METADATA +247 -0
  314. rapidfireai-0.9.10.dist-info/RECORD +318 -0
  315. rapidfireai-0.9.10.dist-info/entry_points.txt +2 -0
  316. rapidfireai-0.0.1.dist-info/METADATA +0 -37
  317. rapidfireai-0.0.1.dist-info/RECORD +0 -6
  318. {rapidfireai-0.0.1.dist-info → rapidfireai-0.9.10.dist-info}/WHEEL +0 -0
  319. {rapidfireai-0.0.1.dist-info → rapidfireai-0.9.10.dist-info}/licenses/LICENSE +0 -0
  320. {rapidfireai-0.0.1.dist-info → rapidfireai-0.9.10.dist-info}/top_level.txt +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_mlflow_mlflow=self.webpackChunk_mlflow_mlflow||[]).push([[8541],{16333:function(e){e.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]},10494:function(e,t,r){var o=r(16333),a=r(5153),n=r(56890),i=r(92704).templatedArray,l=r(24729);function s(e){return["In order for absolute positioning of the arrow to work, *a"+e+"ref* must be exactly the same as *"+e+"ref*, otherwise *a"+e+"ref* will revert to *pixel* (explained next).","For relative positioning, *a"+e+"ref* can be set to *pixel*,","in which case the *a"+e+"* value is specified in pixels","relative to *"+e+"*.","Absolute positioning is useful","for trendline annotations which should continue to indicate","the correct trend when zoomed. Relative positioning is useful","for specifying the text offset for an annotated point."].join(" ")}function c(e,t,r){return["Sets the",e,"component of the arrow tail about the arrow head.","If `a"+e+"ref` is `pixel`, a positive (negative)","component corresponds to an arrow pointing","from",r,"to",t,"("+t,"to",r+").","If `a"+e+"ref` is not `pixel` and is exactly the same as `"+e+"ref`,","this is an absolute value on that axis,","like `"+e+"`, specified in the same coordinates as `"+e+"ref`."].join(" ")}e.exports=i("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw",description:["Determines whether or not this annotation is visible."].join(" ")},text:{valType:"string",editType:"calc+arraydraw",description:["Sets the text associated with this annotation.","Plotly uses a subset of HTML tags to do things like","newline (<br>), bold (<b></b>), italics (<i></i>),","hyperlinks (<a href='...'></a>). Tags <em>, <sup>, <sub>","<span> are also supported."].join(" ")},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw",description:["Sets the angle at which the `text` is drawn","with respect to the horizontal."].join(" ")},font:a({editType:"calc+arraydraw",colorEditType:"arraydraw",description:"Sets the annotation text font."}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw",description:["Sets an explicit width for the text box. null (default) lets the","text set the box width. Wider text will be clipped.","There is no automatic wrapping; use <br> to start a new line."].join(" ")},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw",description:["Sets an explicit height for the text box. null (default) lets the","text set the box height. Taller text will be clipped."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw",description:"Sets the opacity of the annotation (text + arrow)."},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw",description:["Sets the horizontal alignment of the `text` within the box.","Has an effect only if `text` spans two or more lines","(i.e. `text` contains one or more <br> HTML tags) or if an","explicit width is set to override the text width."].join(" ")},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw",description:["Sets the vertical alignment of the `text` within the box.","Has an effect only if an explicit height is set to override","the text height."].join(" ")},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw",description:"Sets the background color of the annotation."},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw",description:["Sets the color of the border enclosing the annotation `text`."].join(" ")},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw",description:["Sets the padding (in px) between the `text`","and the enclosing border."].join(" ")},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw",description:["Sets the width (in px) of the border enclosing","the annotation `text`."].join(" ")},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw",description:["Determines whether or not the annotation is drawn with an arrow.","If *true*, `text` is placed near the arrow's tail.","If *false*, `text` lines up with the `x` and `y` provided."].join(" ")},arrowcolor:{valType:"color",editType:"arraydraw",description:"Sets the color of the annotation arrow."},arrowhead:{valType:"integer",min:0,max:o.length,dflt:1,editType:"arraydraw",description:"Sets the end annotation arrow head style."},startarrowhead:{valType:"integer",min:0,max:o.length,dflt:1,editType:"arraydraw",description:"Sets the start annotation arrow head style."},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw",description:"Sets the annotation arrow head position."},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw",description:["Sets the size of the end annotation arrow head, relative to `arrowwidth`.","A value of 1 (default) gives a head about 3x as wide as the line."].join(" ")},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw",description:["Sets the size of the start annotation arrow head, relative to `arrowwidth`.","A value of 1 (default) gives a head about 3x as wide as the line."].join(" ")},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw",description:"Sets the width (in px) of annotation arrow line."},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw",description:["Sets a distance, in pixels, to move the end arrowhead away from the","position it is pointing at, for example to point at the edge of","a marker independent of zoom. Note that this shortens the arrow","from the `ax` / `ay` vector, in contrast to `xshift` / `yshift`","which moves everything by this amount."].join(" ")},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw",description:["Sets a distance, in pixels, to move the start arrowhead away from the","position it is pointing at, for example to point at the edge of","a marker independent of zoom. Note that this shortens the arrow","from the `ax` / `ay` vector, in contrast to `xshift` / `yshift`","which moves everything by this amount."].join(" ")},ax:{valType:"any",editType:"calc+arraydraw",description:[c("x","left","right")].join(" ")},ay:{valType:"any",editType:"calc+arraydraw",description:[c("y","top","bottom")].join(" ")},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",n.idRegex.x.toString()],editType:"calc",description:["Indicates in what coordinates the tail of the","annotation (ax,ay) is specified.",l.axisRefDescription("ax","left","right"),s("x")].join(" ")},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",n.idRegex.y.toString()],editType:"calc",description:["Indicates in what coordinates the tail of the","annotation (ax,ay) is specified.",l.axisRefDescription("ay","bottom","top"),s("y")].join(" ")},xref:{valType:"enumerated",values:["paper",n.idRegex.x.toString()],editType:"calc",description:["Sets the annotation's x coordinate axis.",l.axisRefDescription("x","left","right")].join(" ")},x:{valType:"any",editType:"calc+arraydraw",description:["Sets the annotation's x position.","If the axis `type` is *log*, then you must take the","log of your desired range.","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw",description:["Sets the text box's horizontal position anchor","This anchor binds the `x` position to the *left*, *center*","or *right* of the annotation.","For example, if `x` is set to 1, `xref` to *paper* and","`xanchor` to *right* then the right-most portion of the","annotation lines up with the right-most edge of the","plotting area.","If *auto*, the anchor is equivalent to *center* for","data-referenced annotations or if there is an arrow,","whereas for paper-referenced with no arrow, the anchor picked","corresponds to the closest side."].join(" ")},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw",description:["Shifts the position of the whole annotation and arrow to the","right (positive) or left (negative) by this many pixels."].join(" ")},yref:{valType:"enumerated",values:["paper",n.idRegex.y.toString()],editType:"calc",description:["Sets the annotation's y coordinate axis.",l.axisRefDescription("y","bottom","top")].join(" ")},y:{valType:"any",editType:"calc+arraydraw",description:["Sets the annotation's y position.","If the axis `type` is *log*, then you must take the","log of your desired range.","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw",description:["Sets the text box's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the annotation.","For example, if `y` is set to 1, `yref` to *paper* and","`yanchor` to *top* then the top-most portion of the","annotation lines up with the top-most edge of the","plotting area.","If *auto*, the anchor is equivalent to *middle* for","data-referenced annotations or if there is an arrow,","whereas for paper-referenced with no arrow, the anchor picked","corresponds to the closest side."].join(" ")},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw",description:["Shifts the position of the whole annotation and arrow up","(positive) or down (negative) by this many pixels."].join(" ")},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw",description:["Makes this annotation respond to clicks on the plot.","If you click a data point that exactly matches the `x` and `y`","values of this annotation, and it is hidden (visible: false),","it will appear. In *onoff* mode, you must click the same point","again to make it disappear, so if you click multiple points,","you can show multiple annotations. In *onout* mode, a click","anywhere else in the plot (on another data point or not) will","hide this annotation.","If you need to show/hide this annotation in response to different","`x` or `y` values, you can set `xclick` and/or `yclick`. This is","useful for example to label the side of a bar. To label markers","though, `standoff` is preferred over `xclick` and `yclick`."].join(" ")},xclick:{valType:"any",editType:"arraydraw",description:["Toggle this annotation when clicking a data point whose `x` value","is `xclick` rather than the annotation's `x` value."].join(" ")},yclick:{valType:"any",editType:"arraydraw",description:["Toggle this annotation when clicking a data point whose `y` value","is `yclick` rather than the annotation's `y` value."].join(" ")},hovertext:{valType:"string",editType:"arraydraw",description:["Sets text to appear when hovering over this annotation.","If omitted or blank, no hover label will appear."].join(" ")},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw",description:["Sets the background color of the hover label.","By default uses the annotation's `bgcolor` made opaque,","or white if it was transparent."].join(" ")},bordercolor:{valType:"color",editType:"arraydraw",description:["Sets the border color of the hover label.","By default uses either dark grey or white, for maximum","contrast with `hoverlabel.bgcolor`."].join(" ")},font:a({editType:"arraydraw",description:["Sets the hover label text font.","By default uses the global hover font and size,","with color from `hoverlabel.bordercolor`."].join(" ")}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw",description:["Determines whether the annotation text box captures mouse move","and click events, or allows those events to pass through to data","points in the plot that may be behind the annotation. By default","`captureevents` is *false* unless `hovertext` is provided.","If you use the event `plotly_clickannotation` without `hovertext`","you must explicitly enable `captureevents`."].join(" ")},editType:"calc",_deprecated:{ref:{valType:"string",editType:"calc",description:["Obsolete. Set `xref` and `yref` separately instead."].join(" ")}}})},25165:function(e,t,r){var o=r(47401),a=r(37762),n=r(95297).draw;function i(e){var t=e._fullLayout;o.filterVisible(t.annotations).forEach((function(t){var r=a.getFromId(e,t.xref),o=a.getFromId(e,t.yref),n=a.getRefType(t.xref),i=a.getRefType(t.yref);t._extremes={},"range"===n&&l(t,r),"range"===i&&l(t,o)}))}function l(e,t){var r,o=t._id,n=o.charAt(0),i=e[n],l=e["a"+n],s=e[n+"ref"],c=e["a"+n+"ref"],d=e["_"+n+"padplus"],u=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],h=3*e.arrowsize*e.arrowwidth||0,p=h+f,y=h-f,v=3*e.startarrowsize*e.arrowwidth||0,m=v+f,g=v-f;if(c===s){var x=a.findExtremes(t,[t.r2c(i)],{ppadplus:p,ppadminus:y}),b=a.findExtremes(t,[t.r2c(l)],{ppadplus:Math.max(d,m),ppadminus:Math.max(u,g)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else m=l?m+l:m,g=l?g-l:g,r=a.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(d,p,m),ppadminus:Math.max(u,y,g)});e._extremes[o]=r}e.exports=function(e){var t=e._fullLayout;if(o.filterVisible(t.annotations).length&&e._fullData.length)return o.syncOrAsync([n,i],e)}},48227:function(e,t,r){var o=r(47401),a=r(62282),n=r(92704).arrayEditor;function i(e,t){var r,o,a,n,i,s,c,d=e._fullLayout.annotations,u=[],f=[],h=[],p=(t||[]).length;for(r=0;r<d.length;r++)if(n=(a=d[r]).clicktoshow){for(o=0;o<p;o++)if(s=(i=t[o]).xaxis,c=i.yaxis,s._id===a.xref&&c._id===a.yref&&s.d2r(i.x)===l(a._xclick,s)&&c.d2r(i.y)===l(a._yclick,c)){(a.visible?"onout"===n?f:h:u).push(r);break}o===p&&a.visible&&"onout"===n&&f.push(r)}return{on:u,off:f,explicitOff:h}}function l(e,t){return"log"===t.type?t.l2r(e):t.d2r(e)}e.exports={hasClickToShow:function(e,t){var r=i(e,t);return r.on.length>0||r.explicitOff.length>0},onClick:function(e,t){var r,l,s=i(e,t),c=s.on,d=s.off.concat(s.explicitOff),u={},f=e._fullLayout.annotations;if(!c.length&&!d.length)return;for(r=0;r<c.length;r++)(l=n(e.layout,"annotations",f[c[r]])).modifyItem("visible",!0),o.extendFlat(u,l.getUpdateObj());for(r=0;r<d.length;r++)(l=n(e.layout,"annotations",f[d[r]])).modifyItem("visible",!1),o.extendFlat(u,l.getUpdateObj());return a.call("update",e,{},u)}}},21895:function(e,t,r){var o=r(47401),a=r(31454);e.exports=function(e,t,r,n){n("opacity");var i=n("bgcolor"),l=n("bordercolor"),s=a.opacity(l);n("borderpad");var c=n("borderwidth"),d=n("showarrow");if(n("text",d?" ":r._dfltTitle.annotation),n("textangle"),o.coerceFont(n,"font",r.font),n("width"),n("align"),n("height")&&n("valign"),d){var u,f,h=n("arrowside");-1!==h.indexOf("end")&&(u=n("arrowhead"),f=n("arrowsize")),-1!==h.indexOf("start")&&(n("startarrowhead",u),n("startarrowsize",f)),n("arrowcolor",s?t.bordercolor:a.defaultLine),n("arrowwidth",2*(s&&c||1)),n("standoff"),n("startstandoff")}var p=n("hovertext"),y=r.hoverlabel||{};if(p){var v=n("hoverlabel.bgcolor",y.bgcolor||(a.opacity(i)?a.rgb(i):a.defaultLine)),m=n("hoverlabel.bordercolor",y.bordercolor||a.contrast(v));o.coerceFont(n,"hoverlabel.font",{family:y.font.family,size:y.font.size,color:y.font.color||m})}n("captureevents",!!p)}},12493:function(e,t,r){var o=r(83491),a=r(1379);e.exports=function(e,t,r,n){t=t||{};var i="log"===r&&"linear"===t.type,l="linear"===r&&"log"===t.type;if(i||l)for(var s,c,d=e._fullLayout.annotations,u=t._id.charAt(0),f=0;f<d.length;f++)s=d[f],c="annotations["+f+"].",s[u+"ref"]===t._id&&h(u),s["a"+u+"ref"]===t._id&&h("a"+u);function h(e){var r=s[e],l=null;l=i?a(r,t.range):Math.pow(10,r),o(l)||(l=null),n(c+e,l)}}},3881:function(e,t,r){var o=r(47401),a=r(37762),n=r(26800),i=r(21895),l=r(10494);function s(e,t,r){function n(r,a){return o.coerce(e,t,l,r,a)}var s=n("visible"),c=n("clicktoshow");if(s||c){i(e,t,r,n);for(var d=t.showarrow,u=["x","y"],f=[-10,-30],h={_fullLayout:r},p=0;p<2;p++){var y=u[p],v=a.coerceRef(e,t,h,y,"","paper");if("paper"!==v)a.getFromId(h,v)._annIndices.push(t._index);if(a.coercePosition(t,h,n,v,y,.5),d){var m="a"+y,g=a.coerceRef(e,t,h,m,"pixel",["pixel","paper"]);"pixel"!==g&&g!==v&&(g=t[m]="pixel");var x="pixel"===g?f[p]:.4;a.coercePosition(t,h,n,g,m,x)}n(y+"anchor"),n(y+"shift")}if(o.noneOrAll(e,t,["x","y"]),d&&o.noneOrAll(e,t,["ax","ay"]),c){var b=n("xclick"),w=n("yclick");t._xclick=void 0===b?t.x:a.cleanPosition(b,h,t.xref),t._yclick=void 0===w?t.y:a.cleanPosition(w,h,t.yref)}}}e.exports=function(e,t){n(e,t,{name:"annotations",handleItemDefaults:s})}},95297:function(e,t,r){var o=r(62258),a=r(62282),n=r(35722),i=r(47401),l=i.strTranslate,s=r(37762),c=r(31454),d=r(41707),u=r(21661),f=r(43995),h=r(82559),p=r(52783),y=r(92704).arrayEditor,v=r(36872);function m(e,t){var r=e._fullLayout.annotations[t]||{},o=s.getFromId(e,r.xref),a=s.getFromId(e,r.yref);o&&o.setScale(),a&&a.setScale(),x(e,r,t,!1,o,a)}function g(e,t,r,o,a){var n=a[r],i=a[r+"ref"],l=-1!==r.indexOf("y"),c="domain"===s.getRefType(i),d=l?o.h:o.w;return e?c?n+(l?-t:t)/e._length:e.p2r(e.r2p(n)+t):n+(l?-t:t)/d}function x(e,t,r,n,m,x){var b,w,k=e._fullLayout,_=e._fullLayout._size,T=e._context.edits;n?(b="annotation-"+n,w=n+".annotations"):(b="annotation",w="annotations");var M=y(e.layout,w,t),L=M.modifyBase,S=M.modifyItem,A=M.getUpdateObj;k._infolayer.selectAll("."+b+'[data-index="'+r+'"]').remove();var j="clip"+k._uid+"_ann"+r;if(t._input&&!1!==t.visible){var F={x:{},y:{}},z=+t.textangle||0,D=k._infolayer.append("g").classed(b,!0).attr("data-index",String(r)).style("opacity",t.opacity),O=D.append("g").classed("annotation-text-g",!0),P=T[t.showarrow?"annotationTail":"annotationPosition"],C=t.captureevents||T.annotationText||P,I=O.append("g").style("pointer-events",C?"all":null).call(h,"pointer").on("click",(function(){e._dragging=!1,e.emit("plotly_clickannotation",U(o.event))}));t.hovertext&&I.on("mouseover",(function(){var r=t.hoverlabel,o=r.font,a=this.getBoundingClientRect(),n=e.getBoundingClientRect();u.loneHover({x0:a.left-n.left,x1:a.right-n.left,y:(a.top+a.bottom)/2-n.top,text:t.hovertext,color:r.bgcolor,borderColor:r.bordercolor,fontFamily:o.family,fontSize:o.size,fontColor:o.color},{container:k._hoverlayer.node(),outerContainer:k._paper.node(),gd:e})})).on("mouseout",(function(){u.loneUnhover(k._hoverlayer.node())}));var R=t.borderwidth,V=t.borderpad,N=R+V,H=I.append("rect").attr("class","bg").style("stroke-width",R+"px").call(c.stroke,t.bordercolor).call(c.fill,t.bgcolor),q=t.width||t.height,B=k._topclips.selectAll("#"+j).data(q?[0]:[]);B.enter().append("clipPath").classed("annclip",!0).attr("id",j).append("rect"),B.exit().remove();var Z=t.font,E=k._meta?i.templateString(t.text,k._meta):t.text,G=I.append("text").classed("annotation-text",!0).text(E);T.annotationText?G.call(f.makeEditable,{delegate:I,gd:e}).call(Y).on("edit",(function(r){t.text=r,this.call(Y),S("text",r),m&&m.autorange&&L(m._name+".autorange",!0),x&&x.autorange&&L(x._name+".autorange",!0),a.call("_guiRelayout",e,A())})):G.call(Y)}else o.selectAll("#"+j).remove();function U(e){var o={index:r,annotation:t._input,fullAnnotation:t,event:e};return n&&(o.subplotId=n),o}function Y(r){return r.call(d.font,Z).attr({"text-anchor":{left:"start",right:"end"}[t.align]||"middle"}),f.convertToTspans(r,e,K),r}function K(){var r=G.selectAll("a");1===r.size()&&r.text()===G.text()&&I.insert("a",":first-child").attr({"xlink:xlink:href":r.attr("xlink:href"),"xlink:xlink:show":r.attr("xlink:show")}).style({cursor:"pointer"}).node().appendChild(H.node());var o=I.select(".annotation-text-math-group"),u=!o.empty(),y=d.bBox((u?o:G).node()),b=y.width,w=y.height,M=t.width||b,C=t.height||w,V=Math.round(M+2*N),Z=Math.round(C+2*N);function E(e,t){return"auto"===t&&(t=e<1/3?"left":e>2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[t]}for(var Y=!1,K=["x","y"],W=0;W<K.length;W++){var X,Q,J,$,ee,te=K[W],re=t[te+"ref"]||te,oe=t["a"+te+"ref"],ae={x:m,y:x}[te],ne=(z+("x"===te?0:-90))*Math.PI/180,ie=V*Math.cos(ne),le=Z*Math.sin(ne),se=Math.abs(ie)+Math.abs(le),ce=t[te+"anchor"],de=t[te+"shift"]*("x"===te?1:-1),ue=F[te],fe=s.getRefType(re);if(ae&&"domain"!==fe){var he=ae.r2fraction(t[te]);(he<0||he>1)&&(oe===re?((he=ae.r2fraction(t["a"+te]))<0||he>1)&&(Y=!0):Y=!0),X=ae._offset+ae.r2p(t[te]),$=.5}else{var pe="domain"===fe;"x"===te?(J=t[te],X=pe?ae._offset+ae._length*J:X=_.l+_.w*J):(J=1-t[te],X=pe?ae._offset+ae._length*J:X=_.t+_.h*J),$=t.showarrow?.5:J}if(t.showarrow){ue.head=X;var ye=t["a"+te];if(ee=ie*E(.5,t.xanchor)-le*E(.5,t.yanchor),oe===re){var ve=s.getRefType(oe);"domain"===ve?("y"===te&&(ye=1-ye),ue.tail=ae._offset+ae._length*ye):"paper"===ve?"y"===te?(ye=1-ye,ue.tail=_.t+_.h*ye):ue.tail=_.l+_.w*ye:ue.tail=ae._offset+ae.r2p(ye),Q=ee}else ue.tail=X+ye,Q=ee+ye;ue.text=ue.tail+ee;var me=k["x"===te?"width":"height"];if("paper"===re&&(ue.head=i.constrain(ue.head,1,me-1)),"pixel"===oe){var ge=-Math.max(ue.tail-3,ue.text),xe=Math.min(ue.tail+3,ue.text)-me;ge>0?(ue.tail+=ge,ue.text+=ge):xe>0&&(ue.tail-=xe,ue.text-=xe)}ue.tail+=de,ue.head+=de}else Q=ee=se*E($,ce),ue.text=X+ee;ue.text+=de,ee+=de,Q+=de,t["_"+te+"padplus"]=se/2+Q,t["_"+te+"padminus"]=se/2-Q,t["_"+te+"size"]=se,t["_"+te+"shift"]=ee}if(Y)I.remove();else{var be=0,we=0;if("left"!==t.align&&(be=(M-b)*("center"===t.align?.5:1)),"top"!==t.valign&&(we=(C-w)*("middle"===t.valign?.5:1)),u)o.select("svg").attr({x:N+be-1,y:N+we}).call(d.setClipUrl,q?j:null,e);else{var ke=N+we-y.top,_e=N+be-y.left;G.call(f.positionText,_e,ke).call(d.setClipUrl,q?j:null,e)}B.select("rect").call(d.setRect,N,N,M,C),H.call(d.setRect,R/2,R/2,V-R,Z-R),I.call(d.setTranslate,Math.round(F.x.text-V/2),Math.round(F.y.text-Z/2)),O.attr({transform:"rotate("+z+","+F.x.text+","+F.y.text+")"});var Te,Me=function(r,o){D.selectAll(".annotation-arrow-g").remove();var s=F.x.head,u=F.y.head,f=F.x.tail+r,h=F.y.tail+o,y=F.x.text+r,b=F.y.text+o,w=i.rotationXYMatrix(z,y,b),k=i.apply2DTransform(w),M=i.apply2DTransform2(w),j=+H.attr("width"),P=+H.attr("height"),C=y-.5*j,R=C+j,V=b-.5*P,N=V+P,q=[[C,V,C,N],[C,N,R,N],[R,N,R,V],[R,V,C,V]].map(M);if(!q.reduce((function(e,t){return e^!!i.segmentsIntersect(s,u,s+1e6,u+1e6,t[0],t[1],t[2],t[3])}),!1)){q.forEach((function(e){var t=i.segmentsIntersect(f,h,s,u,e[0],e[1],e[2],e[3]);t&&(f=t.x,h=t.y)}));var B=t.arrowwidth,Z=t.arrowcolor,E=t.arrowside,G=D.append("g").style({opacity:c.opacity(Z)}).classed("annotation-arrow-g",!0),U=G.append("path").attr("d","M"+f+","+h+"L"+s+","+u).style("stroke-width",B+"px").call(c.stroke,c.rgb(Z));if(v(U,E,t),T.annotationPosition&&U.node().parentNode&&!n){var Y=s,K=u;if(t.standoff){var W=Math.sqrt(Math.pow(s-f,2)+Math.pow(u-h,2));Y+=t.standoff*(f-s)/W,K+=t.standoff*(h-u)/W}var X,Q,J=G.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(f-Y)+","+(h-K),transform:l(Y,K)}).style("stroke-width",B+6+"px").call(c.stroke,"rgba(0,0,0,0)").call(c.fill,"rgba(0,0,0,0)");p.init({element:J.node(),gd:e,prepFn:function(){var e=d.getTranslate(I);X=e.x,Q=e.y,m&&m.autorange&&L(m._name+".autorange",!0),x&&x.autorange&&L(x._name+".autorange",!0)},moveFn:function(e,r){var o=k(X,Q),a=o[0]+e,n=o[1]+r;I.call(d.setTranslate,a,n),S("x",g(m,e,"x",_,t)),S("y",g(x,r,"y",_,t)),t.axref===t.xref&&S("ax",g(m,e,"ax",_,t)),t.ayref===t.yref&&S("ay",g(x,r,"ay",_,t)),G.attr("transform",l(e,r)),O.attr({transform:"rotate("+z+","+a+","+n+")"})},doneFn:function(){a.call("_guiRelayout",e,A());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}};if(t.showarrow&&Me(0,0),P)p.init({element:I.node(),gd:e,prepFn:function(){Te=O.attr("transform")},moveFn:function(e,r){var o="pointer";if(t.showarrow)t.axref===t.xref?S("ax",g(m,e,"ax",_,t)):S("ax",t.ax+e),t.ayref===t.yref?S("ay",g(x,r,"ay",_.w,t)):S("ay",t.ay+r),Me(e,r);else{if(n)return;var a,i;if(m)a=g(m,e,"x",_,t);else{var s=t._xsize/_.w,c=t.x+(t._xshift-t.xshift)/_.w-s/2;a=p.align(c+e/_.w,s,0,1,t.xanchor)}if(x)i=g(x,r,"y",_,t);else{var d=t._ysize/_.h,u=t.y-(t._yshift+t.yshift)/_.h-d/2;i=p.align(u-r/_.h,d,0,1,t.yanchor)}S("x",a),S("y",i),m&&x||(o=p.getCursor(m?.5:a,x?.5:i,t.xanchor,t.yanchor))}O.attr({transform:l(e,r)+Te}),h(I,o)},clickFn:function(r,o){t.captureevents&&e.emit("plotly_clickannotation",U(o))},doneFn:function(){h(I),a.call("_guiRelayout",e,A());var t=document.querySelector(".js-notes-box-panel");t&&t.redraw(t.selectedObj)}})}}}e.exports={draw:function(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r<t.annotations.length;r++)t.annotations[r].visible&&m(e,r);return n.previousPromises(e)},drawOne:m,drawRaw:x}},36872:function(e,t,r){var o=r(62258),a=r(31454),n=r(16333),i=r(47401),l=i.strScale,s=i.strRotate,c=i.strTranslate;e.exports=function(e,t,r){var i,d,u,f,h=e.node(),p=n[r.arrowhead||0],y=n[r.startarrowhead||0],v=(r.arrowwidth||1)*(r.arrowsize||1),m=(r.arrowwidth||1)*(r.startarrowsize||1),g=t.indexOf("start")>=0,x=t.indexOf("end")>=0,b=p.backoff*v+r.standoff,w=y.backoff*m+r.startstandoff;if("line"===h.nodeName){i={x:+e.attr("x1"),y:+e.attr("y1")},d={x:+e.attr("x2"),y:+e.attr("y2")};var k=i.x-d.x,_=i.y-d.y;if(f=(u=Math.atan2(_,k))+Math.PI,b&&w&&b+w>Math.sqrt(k*k+_*_))return void P();if(b){if(b*b>k*k+_*_)return void P();var T=b*Math.cos(u),M=b*Math.sin(u);d.x+=T,d.y+=M,e.attr({x2:d.x,y2:d.y})}if(w){if(w*w>k*k+_*_)return void P();var L=w*Math.cos(u),S=w*Math.sin(u);i.x-=L,i.y-=S,e.attr({x1:i.x,y1:i.y})}}else if("path"===h.nodeName){var A=h.getTotalLength(),j="";if(A<b+w)return void P();var F=h.getPointAtLength(0),z=h.getPointAtLength(.1);u=Math.atan2(F.y-z.y,F.x-z.x),i=h.getPointAtLength(Math.min(w,A)),j="0px,"+w+"px,";var D=h.getPointAtLength(A),O=h.getPointAtLength(A-.1);f=Math.atan2(D.y-O.y,D.x-O.x),d=h.getPointAtLength(Math.max(0,A-b)),j+=A-(j?w+b:b)+"px,"+A+"px",e.style("stroke-dasharray",j)}function P(){e.style("stroke-dasharray","0px,100px")}function C(t,n,i,d){t.path&&(t.noRotate&&(i=0),o.select(h.parentNode).append("path").attr({class:e.attr("class"),d:t.path,transform:c(n.x,n.y)+s(180*i/Math.PI)+l(d)}).style({fill:a.rgb(r.arrowcolor),"stroke-width":0}))}g&&C(y,i,u,m),x&&C(p,d,f,v)}},21567:function(e,t,r){var o=r(95297),a=r(48227);e.exports={moduleType:"component",name:"annotations",layoutAttributes:r(10494),supplyLayoutDefaults:r(3881),includeBasePlot:r(11698)("annotations"),calcAutorange:r(25165),draw:o.draw,drawOne:o.drawOne,drawRaw:o.drawRaw,hasClickToShow:a.hasClickToShow,onClick:a.onClick,convertCoords:r(12493)}},72911:function(e,t,r){var o=r(10494),a=r(17342).overrideAll,n=r(92704).templatedArray;e.exports=a(n("annotation",{visible:o.visible,x:{valType:"any",description:["Sets the annotation's x position."].join(" ")},y:{valType:"any",description:["Sets the annotation's y position."].join(" ")},z:{valType:"any",description:["Sets the annotation's z position."].join(" ")},ax:{valType:"number",description:["Sets the x component of the arrow tail about the arrow head (in pixels)."].join(" ")},ay:{valType:"number",description:["Sets the y component of the arrow tail about the arrow head (in pixels)."].join(" ")},xanchor:o.xanchor,xshift:o.xshift,yanchor:o.yanchor,yshift:o.yshift,text:o.text,textangle:o.textangle,font:o.font,width:o.width,height:o.height,opacity:o.opacity,align:o.align,valign:o.valign,bgcolor:o.bgcolor,bordercolor:o.bordercolor,borderpad:o.borderpad,borderwidth:o.borderwidth,showarrow:o.showarrow,arrowcolor:o.arrowcolor,arrowhead:o.arrowhead,startarrowhead:o.startarrowhead,arrowside:o.arrowside,arrowsize:o.arrowsize,startarrowsize:o.startarrowsize,arrowwidth:o.arrowwidth,standoff:o.standoff,startstandoff:o.startstandoff,hovertext:o.hovertext,hoverlabel:o.hoverlabel,captureevents:o.captureevents}),"calc","from-root")},1115:function(e,t,r){var o=r(47401),a=r(37762);function n(e,t){var r=t.fullSceneLayout.domain,n=t.fullLayout._size,i={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};e._xa={},o.extendFlat(e._xa,i),a.setConvert(e._xa),e._xa._offset=n.l+r.x[0]*n.w,e._xa.l2p=function(){return.5*(1+e._pdata[0]/e._pdata[3])*n.w*(r.x[1]-r.x[0])},e._ya={},o.extendFlat(e._ya,i),a.setConvert(e._ya),e._ya._offset=n.t+(1-r.y[1])*n.h,e._ya.l2p=function(){return.5*(1-e._pdata[1]/e._pdata[3])*n.h*(r.y[1]-r.y[0])}}e.exports=function(e){for(var t=e.fullSceneLayout.annotations,r=0;r<t.length;r++)n(t[r],e);e.fullLayout._infolayer.selectAll(".annotation-"+e.id).remove()}},91048:function(e,t,r){var o=r(47401),a=r(37762),n=r(26800),i=r(21895),l=r(72911);function s(e,t,r,n){function s(r,a){return o.coerce(e,t,l,r,a)}function c(e){var o=e+"axis",n={_fullLayout:{}};return n._fullLayout[o]=r[o],a.coercePosition(t,n,s,e,e,.5)}s("visible")&&(i(e,t,n.fullLayout,s),c("x"),c("y"),c("z"),o.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",s("xanchor"),s("yanchor"),s("xshift"),s("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",s("ax",-10),s("ay",-30),o.noneOrAll(e,t,["ax","ay"])))}e.exports=function(e,t,r){n(e,t,{name:"annotations",handleItemDefaults:s,fullLayout:r.fullLayout})}},63852:function(e,t,r){var o=r(95297).drawRaw,a=r(98138),n=["x","y","z"];e.exports=function(e){for(var t=e.fullSceneLayout,r=e.dataScale,i=t.annotations,l=0;l<i.length;l++){for(var s=i[l],c=!1,d=0;d<3;d++){var u=n[d],f=s[u],h=t[u+"axis"].r2fraction(f);if(h<0||h>1){c=!0;break}}c?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+l+'"]').remove():(s._pdata=a(e.glplot.cameraParams,[t.xaxis.r2l(s.x)*r[0],t.yaxis.r2l(s.y)*r[1],t.zaxis.r2l(s.z)*r[2]]),o(e.graphDiv,s,l,e.id,s._xa,s._ya))}}},33700:function(e,t,r){var o=r(62282),a=r(47401);e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:r(72911)}}},layoutAttributes:r(72911),handleDefaults:r(91048),includeBasePlot:function(e,t){var r=o.subplotsRegistry.gl3d;if(!r)return;for(var n=r.attrRegex,i=Object.keys(e),l=0;l<i.length;l++){var s=i[l];n.test(s)&&(e[s].annotations||[]).length&&(a.pushUnique(t._basePlotModules,r),a.pushUnique(t._subplots.gl3d,s))}},convert:r(1115),draw:r(63852)}},13513:function(e,t,r){e.exports=r(97615),r(25422),r(70427),r(11672),r(58859),r(61491),r(15933),r(29366),r(8695),r(8558),r(92600),r(65891),r(28188),r(97814),r(52084),r(62643)},18002:function(e,t,r){var o=r(13513),a=r(47401),n=r(9405),i=n.EPOCHJD,l=n.ONEDAY,s={valType:"enumerated",values:a.sortObjectKeys(o.calendars),editType:"calc",dflt:"gregorian"},c=function(e,t,r,o){var n={};return n[r]=s,a.coerce(e,t,n,r,o)},d="##",u={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:d,w:d,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};var f={};function h(e){var t=f[e];return t||(t=f[e]=o.instance(e))}function p(e){return a.extendFlat({},s,{description:e})}function y(e){return"Sets the calendar system to use with `"+e+"` date data."}var v={xcalendar:p(y("x"))},m=a.extendFlat({},v,{ycalendar:p(y("y"))}),g=a.extendFlat({},m,{zcalendar:p(y("z"))}),x=p(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));e.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:m,bar:m,box:m,heatmap:m,contour:m,histogram:m,histogram2d:m,histogram2dcontour:m,scatter3d:g,surface:g,mesh3d:g,scattergl:m,ohlc:v,candlestick:v},layout:{calendar:p(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:x},yaxis:{calendar:x},scene:{xaxis:{calendar:x},yaxis:{calendar:x},zaxis:{calendar:x}},polar:{radialaxis:{calendar:x}}},transforms:{filter:{valuecalendar:p(["WARNING: All transforms are deprecated and may be removed from the API in next major version.","Sets the calendar system to use for `value`, if it is a date."].join(" ")),targetcalendar:p(["WARNING: All transforms are deprecated and may be removed from the API in next major version.","Sets the calendar system to use for `target`, if it is an","array of dates. If `target` is a string (eg *x*) we use the","corresponding trace attribute (eg `xcalendar`) if it exists,","even if `targetcalendar` is provided."].join(" "))}}},layoutAttributes:s,handleDefaults:c,handleTraceDefaults:function(e,t,r,o){for(var a=0;a<r.length;a++)c(e,t,r[a]+"calendar",o.calendar)},CANONICAL_SUNDAY:{chinese:"2000-01-02",coptic:"2000-01-03",discworld:"2000-01-03",ethiopian:"2000-01-05",hebrew:"5000-01-01",islamic:"1000-01-02",julian:"2000-01-03",mayan:"5000-01-01",nanakshahi:"1000-01-05",nepali:"2000-01-05",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-04",thai:"2000-01-04",ummalqura:"1400-01-06"},CANONICAL_TICK:{chinese:"2000-01-01",coptic:"2000-01-01",discworld:"2000-01-01",ethiopian:"2000-01-01",hebrew:"5000-01-01",islamic:"1000-01-01",julian:"2000-01-01",mayan:"5000-01-01",nanakshahi:"1000-01-01",nepali:"2000-01-01",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-01",thai:"2000-01-01",ummalqura:"1400-01-01"},DFLTRANGE:{chinese:["2000-01-01","2001-01-01"],coptic:["1700-01-01","1701-01-01"],discworld:["1800-01-01","1801-01-01"],ethiopian:["2000-01-01","2001-01-01"],hebrew:["5700-01-01","5701-01-01"],islamic:["1400-01-01","1401-01-01"],julian:["2000-01-01","2001-01-01"],mayan:["5200-01-01","5201-01-01"],nanakshahi:["0500-01-01","0501-01-01"],nepali:["2000-01-01","2001-01-01"],persian:["1400-01-01","1401-01-01"],jalali:["1400-01-01","1401-01-01"],taiwan:["0100-01-01","0101-01-01"],thai:["2500-01-01","2501-01-01"],ummalqura:["1400-01-01","1401-01-01"]},getCal:h,worldCalFmt:function(e,t,r){for(var o,a,n,s,c,f=Math.floor((t+.05)/l)+i,p=h(r).fromJD(f),y=0;-1!==(y=e.indexOf("%",y));)"0"===(o=e.charAt(y+1))||"-"===o||"_"===o?(n=3,a=e.charAt(y+2),"_"===o&&(o="-")):(a=o,o="0",n=2),(s=u[a])?(c=s===d?d:p.formatDate(s[o]),e=e.substr(0,y)+c+e.substr(y+n),y+=c.length):y+=n;return e}}},62405:function(e,t){t.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],t.defaultLine="#444",t.lightLine="#eee",t.background="#fff",t.borderLine="#BEC8D9",t.lightFraction=1e3/11},31454:function(e,t,r){var o=r(91771),a=r(83491),n=r(20168).isTypedArray,i=e.exports={},l=r(62405);i.defaults=l.defaults;var s=i.defaultLine=l.defaultLine;i.lightLine=l.lightLine;var c=i.background=l.background;function d(e){if(a(e)||"string"!==typeof e)return e;var t=e.trim();if("rgb"!==t.substr(0,3))return e;var r=t.match(/^rgba?\s*\(([^()]*)\)$/);if(!r)return e;var o=r[1].trim().split(/\s*[\s,]\s*/),n="a"===t.charAt(3)&&4===o.length;if(!n&&3!==o.length)return e;for(var i=0;i<o.length;i++){if(!o[i].length)return e;if(o[i]=Number(o[i]),!(o[i]>=0))return e;if(3===i)o[i]>1&&(o[i]=1);else if(o[i]>=1)return e}var l=Math.round(255*o[0])+", "+Math.round(255*o[1])+", "+Math.round(255*o[2]);return n?"rgba("+l+", "+o[3]+")":"rgb("+l+")"}i.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"},i.rgb=function(e){return i.tinyRGB(o(e))},i.opacity=function(e){return e?o(e).getAlpha():0},i.addOpacity=function(e,t){var r=o(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"},i.combine=function(e,t){var r=o(e).toRgb();if(1===r.a)return o(e).toRgbString();var a=o(t||c).toRgb(),n=1===a.a?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-r.a)+r.r*r.a,g:n.g*(1-r.a)+r.g*r.a,b:n.b*(1-r.a)+r.b*r.a};return o(i).toRgbString()},i.contrast=function(e,t,r){var a=o(e);return 1!==a.getAlpha()&&(a=o(i.combine(e,c))),(a.isDark()?t?a.lighten(t):c:r?a.darken(r):s).toString()},i.stroke=function(e,t){var r=o(t);e.style({stroke:i.tinyRGB(r),"stroke-opacity":r.getAlpha()})},i.fill=function(e,t){var r=o(t);e.style({fill:i.tinyRGB(r),"fill-opacity":r.getAlpha()})},i.clean=function(e){if(e&&"object"===typeof e){var t,r,o,a,l=Object.keys(e);for(t=0;t<l.length;t++)if(a=e[o=l[t]],"color"===o.substr(o.length-5))if(Array.isArray(a))for(r=0;r<a.length;r++)a[r]=d(a[r]);else e[o]=d(a);else if("colorscale"===o.substr(o.length-10)&&Array.isArray(a))for(r=0;r<a.length;r++)Array.isArray(a[r])&&(a[r][1]=d(a[r][1]));else if(Array.isArray(a)){var s=a[0];if(!Array.isArray(s)&&s&&"object"===typeof s)for(r=0;r<a.length;r++)i.clean(a[r])}else a&&"object"===typeof a&&!n(a)&&i.clean(a)}}},66806:function(e,t,r){var o=r(33333),a=r(5153),n=r(87241).extendFlat,i=r(17342).overrideAll;e.exports=i({thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",description:["Determines whether this color bar's thickness","(i.e. the measure in the constant color direction)","is set in units of plot *fraction* or in *pixels*.","Use `thickness` to set the value."].join(" ")},thickness:{valType:"number",min:0,dflt:30,description:["Sets the thickness of the color bar","This measure excludes the size of the padding, ticks and labels."].join(" ")},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction",description:["Determines whether this color bar's length","(i.e. the measure in the color variation direction)","is set in units of plot *fraction* or in *pixels.","Use `len` to set the value."].join(" ")},len:{valType:"number",min:0,dflt:1,description:["Sets the length of the color bar","This measure excludes the padding of both ends.","That is, the color bar length is this length minus the","padding on both ends."].join(" ")},x:{valType:"number",dflt:1.02,min:-2,max:3,description:["Sets the x position of the color bar (in plot fraction)."].join(" ")},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",description:["Sets this color bar's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the color bar."].join(" ")},xpad:{valType:"number",min:0,dflt:10,description:"Sets the amount of padding (in px) along the x direction."},y:{valType:"number",dflt:.5,min:-2,max:3,description:["Sets the y position of the color bar (in plot fraction)."].join(" ")},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",description:["Sets this color bar's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the color bar."].join(" ")},ypad:{valType:"number",min:0,dflt:10,description:"Sets the amount of padding (in px) along the y direction."},outlinecolor:o.linecolor,outlinewidth:o.linewidth,bordercolor:o.linecolor,borderwidth:{valType:"number",min:0,dflt:0,description:["Sets the width (in px) or the border enclosing this color bar."].join(" ")},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",description:"Sets the color of padded area."},tickmode:o.tickmode,nticks:o.nticks,tick0:o.tick0,dtick:o.dtick,tickvals:o.tickvals,ticktext:o.ticktext,ticks:n({},o.ticks,{dflt:""}),ticklabeloverflow:n({},o.ticklabeloverflow,{description:["Determines how we handle tick labels that would overflow either the graph div or the domain of the axis.","The default value for inside tick labels is *hide past domain*.","In other cases the default is *hide past div*."].join(" ")}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside bottom","inside bottom"],dflt:"outside",description:["Determines where tick labels are drawn."].join(" ")},ticklen:o.ticklen,tickwidth:o.tickwidth,tickcolor:o.tickcolor,showticklabels:o.showticklabels,tickfont:a({description:"Sets the color bar's tick label font"}),tickangle:o.tickangle,tickformat:o.tickformat,tickformatstops:o.tickformatstops,tickprefix:o.tickprefix,showtickprefix:o.showtickprefix,ticksuffix:o.ticksuffix,showticksuffix:o.showticksuffix,separatethousands:o.separatethousands,exponentformat:o.exponentformat,minexponent:o.minexponent,showexponent:o.showexponent,title:{text:{valType:"string",description:["Sets the title of the color bar.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:a({description:["Sets this color bar's title font.","Note that the title's font used to be set","by the now deprecated `titlefont` attribute."].join(" ")}),side:{valType:"enumerated",values:["right","top","bottom"],dflt:"top",description:["Determines the location of color bar's title","with respect to the color bar.","Note that the title's location used to be set","by the now deprecated `titleside` attribute."].join(" ")}},_deprecated:{title:{valType:"string",description:["Deprecated in favor of color bar's `title.text`.","Note that value of color bar's `title` is no longer a simple","*string* but a set of sub-attributes."].join(" ")},titlefont:a({description:"Deprecated in favor of color bar's `title.font`."}),titleside:{valType:"enumerated",values:["right","top","bottom"],dflt:"top",description:"Deprecated in favor of color bar's `title.side`."}}},"colorbars","from-root")},64906:function(e){e.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}},49025:function(e,t,r){var o=r(47401),a=r(92704),n=r(37801),i=r(49593),l=r(51860),s=r(66806);e.exports=function(e,t,r){var c=a.newContainer(t,"colorbar"),d=e.colorbar||{};function u(e,t){return o.coerce(d,c,s,e,t)}var f=u("thicknessmode");u("thickness","fraction"===f?30/(r.width-r.margin.l-r.margin.r):30);var h=u("lenmode");u("len","fraction"===h?1:r.height-r.margin.t-r.margin.b),u("x"),u("xanchor"),u("xpad"),u("y"),u("yanchor"),u("ypad"),o.noneOrAll(d,c,["x","y"]),u("outlinecolor"),u("outlinewidth"),u("bordercolor"),u("borderwidth"),u("bgcolor");var p=u("ticklabelposition");u("ticklabeloverflow",-1!==p.indexOf("inside")?"hide past domain":"hide past div"),n(d,c,u,"linear");var y=r.font,v={outerTicks:!1,font:y};-1!==p.indexOf("inside")&&(v.bgColor="black"),l(d,c,u,"linear",v),i(d,c,u,"linear",v),u("title.text",r._dfltTitle.colorbar);var m=c.tickfont,g=o.extendFlat({},m,{color:y.color,size:o.bigFont(m.size)});o.coerceFont(u,"title.font",g),u("title.side")}},2313:function(e,t,r){var o=r(62258),a=r(91771),n=r(35722),i=r(62282),l=r(37762),s=r(52783),c=r(47401),d=c.strTranslate,u=r(87241).extendFlat,f=r(82559),h=r(41707),p=r(31454),y=r(50075),v=r(43995),m=r(8757).flipScale,g=r(90407),x=r(84269),b=r(33333),w=r(60482),k=w.LINE_SPACING,_=w.FROM_TL,T=w.FROM_BR,M=r(64906).cn;e.exports={draw:function(e){var t=e._fullLayout._infolayer.selectAll("g."+M.colorbar).data(function(e){var t,r,o,a,n=e._fullLayout,i=e.calcdata,l=[];function s(e){return u(e,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function c(){"function"===typeof a.calc?a.calc(e,o,t):(t._fillgradient=r.reversescale?m(r.colorscale):r.colorscale,t._zrange=[r[a.min],r[a.max]])}for(var d=0;d<i.length;d++){var f=i[d],h=(o=f[0].trace)._module.colorbar;if(!0===o.visible&&h)for(var p=Array.isArray(h),y=p?h:[h],v=0;v<y.length;v++){var g=(a=y[v]).container;(r=g?o[g]:o)&&r.showscale&&((t=s(r.colorbar))._id="cb"+o.uid+(p&&g?"-"+g:""),t._traceIndex=o.index,t._propPrefix=(g?g+".":"")+"colorbar.",t._meta=o._meta,c(),l.push(t))}}for(var x in n._colorAxes)if((r=n[x]).showscale){var b=n._colorAxes[x];(t=s(r.colorbar))._id="cb"+x,t._propPrefix=x+".colorbar.",t._meta=n._meta,a={min:"cmin",max:"cmax"},"heatmap"!==b[0]&&(o=b[1],a.calc=o._module.colorbar.calc),c(),l.push(t)}return l}(e),(function(e){return e._id}));t.enter().append("g").attr("class",(function(e){return e._id})).classed(M.colorbar,!0),t.each((function(t){var r=o.select(this);c.ensureSingle(r,"rect",M.cbbg),c.ensureSingle(r,"g",M.cbfills),c.ensureSingle(r,"g",M.cblines),c.ensureSingle(r,"g",M.cbaxis,(function(e){e.classed(M.crisp,!0)})),c.ensureSingle(r,"g",M.cbtitleunshift,(function(e){e.append("g").classed(M.cbtitle,!0)})),c.ensureSingle(r,"rect",M.cboutline);var m=function(e,t,r){var i=r._fullLayout,s=i._size,f=t._fillcolor,m=t._line,w=t.title,L=w.side,S=t._zrange||o.extent(("function"===typeof f?f:m.color).domain()),A="function"===typeof m.color?m.color:function(){return m.color},j="function"===typeof f?f:function(){return f},F=t._levels,z=function(e,t,r){var o,a,n=t._levels,i=[],l=[],s=n.end+n.size/100,c=n.size,d=1.001*r[0]-.001*r[1],u=1.001*r[1]-.001*r[0];for(a=0;a<1e5&&(o=n.start+a*c,!(c>0?o>=s:o<=s));a++)o>d&&o<u&&i.push(o);if(t._fillgradient)l=[0];else if("function"===typeof t._fillcolor){var f=t._filllevels;if(f)for(s=f.end+f.size/100,c=f.size,a=0;a<1e5&&(o=f.start+a*c,!(c>0?o>=s:o<=s));a++)o>r[0]&&o<r[1]&&l.push(o);else(l=i.map((function(e){return e-n.size/2}))).push(l[l.length-1]+n.size)}else t._fillcolor&&"string"===typeof t._fillcolor&&(l=[0]);n.size<0&&(i.reverse(),l.reverse());return{line:i,fill:l}}(0,t,S),D=z.fill,O=z.line,P=Math.round(t.thickness*("fraction"===t.thicknessmode?s.w:1)),C=P/s.w,I=Math.round(t.len*("fraction"===t.lenmode?s.h:1)),R=I/s.h,V=t.xpad/s.w,N=(t.borderwidth+t.outlinewidth)/2,H=t.ypad/s.h,q=Math.round(t.x*s.w+t.xpad),B=t.x-C*({middle:.5,right:1}[t.xanchor]||0),Z=t.y+R*(({top:-.5,bottom:.5}[t.yanchor]||0)-.5),E=Math.round(s.h*(1-Z)),G=E-I;t._lenFrac=R,t._thickFrac=C,t._xLeftFrac=B,t._yBottomFrac=Z;var U=t._axis=function(e,t,r){var o=e._fullLayout,a={type:"linear",range:r,tickmode:t.tickmode,nticks:t.nticks,tick0:t.tick0,dtick:t.dtick,tickvals:t.tickvals,ticktext:t.ticktext,ticks:t.ticks,ticklen:t.ticklen,tickwidth:t.tickwidth,tickcolor:t.tickcolor,showticklabels:t.showticklabels,ticklabelposition:t.ticklabelposition,ticklabeloverflow:t.ticklabeloverflow,tickfont:t.tickfont,tickangle:t.tickangle,tickformat:t.tickformat,exponentformat:t.exponentformat,minexponent:t.minexponent,separatethousands:t.separatethousands,showexponent:t.showexponent,showtickprefix:t.showtickprefix,tickprefix:t.tickprefix,showticksuffix:t.showticksuffix,ticksuffix:t.ticksuffix,title:t.title,showline:!0,anchor:"free",side:"right",position:1},n={type:"linear",_id:"y"+t._id},i={letter:"y",font:o.font,noHover:!0,noTickson:!0,noTicklabelmode:!0,calendar:o.calendar};function l(e,t){return c.coerce(a,n,b,e,t)}return g(a,n,l,i,o),x(a,n,l,i),n}(r,t,S);U.position=t.x+V+C,-1!==["top","bottom"].indexOf(L)&&(U.title.side=L,U.titlex=t.x+V,U.titley=Z+("top"===w.side?R-H:H));if(m.color&&"auto"===t.tickmode){U.tickmode="linear",U.tick0=F.start;var Y=F.size,K=c.constrain((E-G)/50,4,15)+1,W=(S[1]-S[0])/((t.nticks||K)*Y);if(W>1){var X=Math.pow(10,Math.floor(Math.log(W)/Math.LN10));Y*=X*c.roundUp(W/X,[2,5,10]),(Math.abs(F.start)/F.size+1e-6)%1<2e-6&&(U.tick0=0)}U.dtick=Y}U.domain=[Z+H,Z+R-H],U.setScale(),e.attr("transform",d(Math.round(s.l),Math.round(s.t)));var Q,J=e.select("."+M.cbtitleunshift).attr("transform",d(-Math.round(s.l),-Math.round(s.t))),$=e.select("."+M.cbaxis),ee=0;function te(o,a){var n={propContainer:U,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:i._dfltTitle.colorbar,containerGroup:e.select("."+M.cbtitle)},l="h"===o.charAt(0)?o.substr(1):"h"+o;e.selectAll("."+l+",."+l+"-math-group").remove(),y.draw(r,o,u(n,a||{}))}function re(){if(-1!==["top","bottom"].indexOf(L)){var e,r=s.l+(t.x+V)*s.w,o=U.title.font.size;e="top"===L?(1-(Z+R-H))*s.h+s.t+3+.75*o:(1-(Z+H))*s.h+s.t-3-.25*o,te(U._id+"title",{attributes:{x:r,y:e,"text-anchor":"start"}})}}function oe(){if(-1===["top","bottom"].indexOf(L)){var e=U.title.font.size,t=U._offset+U._length/2,a=s.l+(U.position||0)*s.w+("right"===U.side?10+e*(U.showticklabels?1:.5):-10-e*(U.showticklabels?.5:0));te("h"+U._id+"title",{avoid:{selection:o.select(r).selectAll("g."+U._id+"tick"),side:L,offsetLeft:s.l,offsetTop:0,maxShift:i.width},attributes:{x:a,y:t,"text-anchor":"middle"},transform:{rotate:"-90",offset:0}})}}function ae(){if(-1!==["top","bottom"].indexOf(L)){var n=e.select("."+M.cbtitle),i=n.select("text"),u=[-t.outlinewidth/2,t.outlinewidth/2],f=n.select(".h"+U._id+"title-math-group").node(),p=15.6;if(i.node()&&(p=parseInt(i.node().style.fontSize,10)*k),f?(ee=h.bBox(f).height)>p&&(u[1]-=(ee-p)/2):i.node()&&!i.classed(M.jsPlaceholder)&&(ee=h.bBox(i.node()).height),ee){if(ee+=5,"top"===L)U.domain[1]-=ee/s.h,u[1]*=-1;else{U.domain[0]+=ee/s.h;var y=v.lineCount(i);u[1]+=(1-y)*p}n.attr("transform",d(u[0],u[1])),U.setScale()}}e.selectAll("."+M.cbfills+",."+M.cblines).attr("transform",d(0,Math.round(s.h*(1-U.domain[1])))),$.attr("transform",d(0,Math.round(-s.t)));var g=e.select("."+M.cbfills).selectAll("rect."+M.cbfill).attr("style","").data(D);g.enter().append("rect").classed(M.cbfill,!0).style("stroke","none"),g.exit().remove();var x=S.map(U.c2p).map(Math.round).sort((function(e,t){return e-t}));g.each((function(e,n){var i=[0===n?S[0]:(D[n]+D[n-1])/2,n===D.length-1?S[1]:(D[n]+D[n+1])/2].map(U.c2p).map(Math.round);i[1]=c.constrain(i[1]+(i[1]>i[0])?1:-1,x[0],x[1]);var l=o.select(this).attr({x:q,width:Math.max(P,2),y:o.min(i),height:Math.max(o.max(i)-o.min(i),2)});if(t._fillgradient)h.gradient(l,r,t._id,"vertical",t._fillgradient,"fill");else{var s=j(e).replace("e-","");l.attr("fill",a(s).toHexString())}}));var b=e.select("."+M.cblines).selectAll("path."+M.cbline).data(m.color&&m.width?O:[]);b.enter().append("path").classed(M.cbline,!0),b.exit().remove(),b.each((function(e){o.select(this).attr("d","M"+q+","+(Math.round(U.c2p(e))+m.width/2%1)+"h"+P).call(h.lineGroupStyle,m.width,A(e),m.dash)})),$.selectAll("g."+U._id+"tick,path").remove();var w=q+P+(t.outlinewidth||0)/2-("outside"===t.ticks?1:0),_=l.calcTicks(U),T=l.getTickSigns(U)[2];return l.drawTicks(r,U,{vals:"inside"===U.ticks?l.clipEnds(U,_):_,layer:$,path:l.makeTickPath(U,w,T),transFn:l.makeTransTickFn(U)}),l.drawLabels(r,U,{vals:_,layer:$,transFn:l.makeTransTickLabelFn(U),labelFns:l.makeLabelFns(U,w)})}function ne(){var o=P+t.outlinewidth/2;if(-1===U.ticklabelposition.indexOf("inside")&&(o+=h.bBox($.node()).width),(Q=J.select("text")).node()&&!Q.classed(M.jsPlaceholder)){var a,i=J.select(".h"+U._id+"title-math-group").node();a=i&&-1!==["top","bottom"].indexOf(L)?h.bBox(i).width:h.bBox(J.node()).right-q-s.l,o=Math.max(o,a)}var l=2*t.xpad+o+t.borderwidth+t.outlinewidth/2,c=E-G;e.select("."+M.cbbg).attr({x:q-t.xpad-(t.borderwidth+t.outlinewidth)/2,y:G-N,width:Math.max(l,2),height:Math.max(c+2*N,2)}).call(p.fill,t.bgcolor).call(p.stroke,t.bordercolor).style("stroke-width",t.borderwidth),e.selectAll("."+M.cboutline).attr({x:q,y:G+t.ypad+("top"===L?ee:0),width:Math.max(P,2),height:Math.max(c-2*t.ypad-ee,2)}).call(p.stroke,t.outlinecolor).style({fill:"none","stroke-width":t.outlinewidth});var u=({center:.5,right:1}[t.xanchor]||0)*l;e.attr("transform",d(s.l-u,s.t));var f={},y=_[t.yanchor],v=T[t.yanchor];"pixels"===t.lenmode?(f.y=t.y,f.t=c*y,f.b=c*v):(f.t=f.b=0,f.yt=t.y+t.len*y,f.yb=t.y-t.len*v);var m=_[t.xanchor],g=T[t.xanchor];if("pixels"===t.thicknessmode)f.x=t.x,f.l=l*m,f.r=l*g;else{var x=l-P;f.l=x*m,f.r=x*g,f.xl=t.x-t.thickness*m,f.xr=t.x+t.thickness*g}n.autoMargin(r,t._id,f)}return c.syncOrAsync([n.previousPromises,re,ae,oe,n.previousPromises,ne],r)}(r,t,e);m&&m.then&&(e._promises||[]).push(m),e._context.edits.colorbarPosition&&function(e,t,r){var o,a,n,l=r._fullLayout,c=l._size;s.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),f(e)},moveFn:function(r,i){e.attr("transform",o+d(r,i)),a=s.align(t._xLeftFrac+r/c.w,t._thickFrac,0,1,t.xanchor),n=s.align(t._yBottomFrac-i/c.h,t._lenFrac,0,1,t.yanchor);var l=s.getCursor(a,n,t.xanchor,t.yanchor);f(e,l)},doneFn:function(){if(f(e),void 0!==a&&void 0!==n){var o={};o[t._propPrefix+"x"]=a,o[t._propPrefix+"y"]=n,void 0!==t._traceIndex?i.call("_guiRestyle",r,o,t._traceIndex):i.call("_guiRelayout",r,o)}}})}(r,t,e)})),t.exit().each((function(t){n.autoMargin(e,t._id)})).remove(),t.order()}}},19538:function(e,t,r){var o=r(47401);e.exports=function(e){return o.isPlainObject(e.colorbar)}},54919:function(e,t,r){e.exports={moduleType:"component",name:"colorbar",attributes:r(66806),supplyDefaults:r(49025),draw:r(2313).draw,hasColorbar:r(19538)}},97451:function(e,t,r){var o=r(66806),a=r(44790).counter,n=r(73314),i=r(39257).scales,l=n(i);function s(e){return"`"+e+"`"}e.exports=function(e,t){e=e||"";var r,n,c=(t=t||{}).cLetter||"c",d="onlyIfNumerical"in t?t.onlyIfNumerical:Boolean(e),u="noScale"in t?t.noScale:"marker.line"===e,f="showScaleDflt"in t?t.showScaleDflt:"z"===c,h="string"===typeof t.colorscaleDflt?i[t.colorscaleDflt]:null,p=t.editTypeOverride||"",y=e?e+".":"";"colorAttr"in t?(r=t.colorAttr,n=t.colorAttr):n="in "+s(y+(r={z:"z",c:"color"}[c]));var v=d?" Has an effect only if "+n+"is set to a numerical array.":"",m=c+"auto",g=c+"min",x=c+"max",b=c+"mid",w=s(y+m),k=s(y+g),_=s(y+x),T=k+" and "+_,M={};M[g]=M[x]=void 0;var L={};L[m]=!1;var S={};return"color"===r&&(S.color={valType:"color",arrayOk:!0,editType:p||"style",description:["Sets the",e,"color."," It accepts either a specific color"," or an array of numbers that are mapped to the colorscale"," relative to the max and min values of the array or relative to"," "+T+" if set."].join("")},t.anim&&(S.color.anim=!0)),S[m]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:M,description:["Determines whether or not the color domain is computed"," with respect to the input data (here "+n+") or the bounds set in"," ",T," ",v," Defaults to `false` when ",T," are set by the user."].join("")},S[g]={valType:"number",dflt:null,editType:p||"plot",impliedEdits:L,description:["Sets the lower bound of the color domain.",v," Value should have the same units as ",n," and if set, ",_," must be set as well."].join("")},S[x]={valType:"number",dflt:null,editType:p||"plot",impliedEdits:L,description:["Sets the upper bound of the color domain.",v," Value should have the same units as ",n," and if set, ",k," must be set as well."].join("")},S[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:M,description:["Sets the mid-point of the color domain by scaling ",k," and/or ",_," to be equidistant to this point.",v," Value should have the same units as ",n,". ","Has no effect when ",w," is `false`."].join("")},S.colorscale={valType:"colorscale",editType:"calc",dflt:h,impliedEdits:{autocolorscale:!1},description:["Sets the colorscale.",v," The colorscale must be an array containing"," arrays mapping a normalized value to an"," rgb, rgba, hex, hsl, hsv, or named color string."," At minimum, a mapping for the lowest (0) and highest (1)"," values are required. For example,"," `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`."," To control the bounds of the colorscale in color space,"," use",T,"."," Alternatively, `colorscale` may be a palette name string"," of the following list: "+l+"."].join("")},S.autocolorscale={valType:"boolean",dflt:!1!==t.autoColorDflt,editType:"calc",impliedEdits:{colorscale:void 0},description:["Determines whether the colorscale is a default palette (`autocolorscale: true`)"," or the palette determined by ",s(y+"colorscale"),".",v," In case `colorscale` is unspecified or `autocolorscale` is true, the default "," palette will be chosen according to whether numbers in the `color` array are"," all positive, all negative or mixed."].join("")},S.reversescale={valType:"boolean",dflt:!1,editType:"plot",description:["Reverses the color mapping if true.",v," If true, ",k," will correspond to the last color"," in the array and ",_," will correspond to the first color."].join("")},u||(S.showscale={valType:"boolean",dflt:f,editType:"calc",description:["Determines whether or not a colorbar is displayed for this trace.",v].join("")},S.colorbar=o),t.noColorAxis||(S.coloraxis={valType:"subplotid",regex:a("coloraxis"),dflt:null,editType:"calc",description:["Sets a reference to a shared color axis.","References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc.","Settings for these shared color axes are set in the layout, under","`layout.coloraxis`, `layout.coloraxis2`, etc.","Note that multiple color scales can be linked to the same color axis."].join(" ")}),S}},92171:function(e,t,r){var o=r(83491),a=r(47401),n=r(8757).extractOpts;e.exports=function(e,t,r){var i,l=e._fullLayout,s=r.vals,c=r.containerStr,d=c?a.nestedProperty(t,c).get():t,u=n(d),f=!1!==u.auto,h=u.min,p=u.max,y=u.mid,v=function(){return a.aggNums(Math.min,null,s)},m=function(){return a.aggNums(Math.max,null,s)};(void 0===h?h=v():f&&(h=d._colorAx&&o(h)?Math.min(h,v()):v()),void 0===p?p=m():f&&(p=d._colorAx&&o(p)?Math.max(p,m()):m()),f&&void 0!==y&&(p-y>y-h?h=y-(p-y):p-y<y-h&&(p=y+(y-h))),h===p&&(h-=.5,p+=.5),u._sync("min",h),u._sync("max",p),u.autocolorscale)&&(i=h*p<0?l.colorscale.diverging:h>=0?l.colorscale.sequential:l.colorscale.sequentialminus,u._sync("colorscale",i))}},32727:function(e,t,r){var o=r(47401),a=r(8757).hasColorscale,n=r(8757).extractOpts;e.exports=function(e,t){function r(e,t){var r=e["_"+t];void 0!==r&&(e[t]=r)}function i(e,a){var i=a.container?o.nestedProperty(e,a.container).get():e;if(i)if(i.coloraxis)i._colorAx=t[i.coloraxis];else{var l=n(i),s=l.auto;(s||void 0===l.min)&&r(i,a.min),(s||void 0===l.max)&&r(i,a.max),l.autocolorscale&&r(i,"colorscale")}}for(var l=0;l<e.length;l++){var s=e[l],c=s._module.colorbar;if(c)if(Array.isArray(c))for(var d=0;d<c.length;d++)i(s,c[d]);else i(s,c);a(s,"marker.line")&&i(s,{container:"marker.line",min:"cmin",max:"cmax"})}for(var u in t._colorAxes)i(t[u],{min:"cmin",max:"cmax"})}},94060:function(e,t,r){var o=r(83491),a=r(47401),n=r(19538),i=r(49025),l=r(39257).isValid,s=r(62282).traceIs;function c(e,t){var r=t.slice(0,t.length-1);return t?a.nestedProperty(e,r).get()||{}:e}e.exports=function e(t,r,d,u,f){var h=f.prefix,p=f.cLetter,y="_module"in r,v=c(t,h),m=c(r,h),g=c(r._template||{},h)||{},x=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,d,u,f)};if(y){var b=d._colorAxes||{},w=u(h+"coloraxis");if(w){var k=s(r,"contour")&&a.nestedProperty(r,"contours.coloring").get()||"heatmap",_=b[w];return void(_?(_[2].push(x),_[0]!==k&&(_[0]=!1,a.warn(["Ignoring coloraxis:",w,"setting","as it is linked to incompatible colorscales."].join(" ")))):b[w]=[k,r,[x]])}}var T=v[p+"min"],M=v[p+"max"],L=o(T)&&o(M)&&T<M;u(h+p+"auto",!L)?u(h+p+"mid"):(u(h+p+"min"),u(h+p+"max"));var S,A,j=v.colorscale,F=g.colorscale;(void 0!==j&&(S=!l(j)),void 0!==F&&(S=!l(F)),u(h+"autocolorscale",S),u(h+"colorscale"),u(h+"reversescale"),"marker.line."!==h)&&(h&&y&&(A=n(v)),u(h+"showscale",A)&&(h&&g&&(m._template=g),i(v,m,d)))}},8757:function(e,t,r){var o=r(62258),a=r(91771),n=r(83491),i=r(47401),l=r(31454),s=r(39257).isValid;var c=["showscale","autocolorscale","colorscale","reversescale","colorbar"],d=["min","max","mid","auto"];function u(e){var t,r,o,a=e._colorAx,n=a||e,i={};for(r=0;r<c.length;r++)i[o=c[r]]=n[o];if(a)for(t="c",r=0;r<d.length;r++)i[o=d[r]]=n["c"+o];else{var l;for(r=0;r<d.length;r++)((l="c"+(o=d[r]))in n||(l="z"+o)in n)&&(i[o]=n[l]);t=l.charAt(0)}return i._sync=function(e,r){var o=-1!==d.indexOf(e)?t+e:e;n[o]=n["_"+o]=r},i}function f(e){for(var t=u(e),r=t.min,o=t.max,a=t.reversescale?h(t.colorscale):t.colorscale,n=a.length,i=new Array(n),l=new Array(n),s=0;s<n;s++){var c=a[s];i[s]=r+c[0]*(o-r),l[s]=c[1]}return{domain:i,range:l}}function h(e){for(var t=e.length,r=new Array(t),o=t-1,a=0;o>=0;o--,a++){var n=e[o];r[a]=[1-n[0],n[1]]}return r}function p(e,t){t=t||{};for(var r=e.domain,i=e.range,s=i.length,c=new Array(s),d=0;d<s;d++){var u=a(i[d]).toRgb();c[d]=[u.r,u.g,u.b,u.a]}var f,h=o.scale.linear().domain(r).range(c).clamp(!0),p=t.noNumericCheck,v=t.returnArray;return(f=p&&v?h:p?function(e){return y(h(e))}:v?function(e){return n(e)?h(e):a(e).isValid()?e:l.defaultLine}:function(e){return n(e)?y(h(e)):a(e).isValid()?e:l.defaultLine}).domain=h.domain,f.range=function(){return i},f}function y(e){var t={r:e[0],g:e[1],b:e[2],a:e[3]};return a(t).toRgbString()}e.exports={hasColorscale:function(e,t,r){var o=t?i.nestedProperty(e,t).get()||{}:e,a=o[r||"color"],l=!1;if(i.isArrayOrTypedArray(a))for(var c=0;c<a.length;c++)if(n(a[c])){l=!0;break}return i.isPlainObject(o)&&(l||!0===o.showscale||n(o.cmin)&&n(o.cmax)||s(o.colorscale)||i.isPlainObject(o.colorbar))},extractOpts:u,extractScale:f,flipScale:h,makeColorScaleFunc:p,makeColorScaleFuncFromTrace:function(e,t){return p(f(e),t)}}},47624:function(e,t,r){var o=r(39257),a=r(8757);e.exports={moduleType:"component",name:"colorscale",attributes:r(97451),layoutAttributes:r(88290),supplyLayoutDefaults:r(34165),handleDefaults:r(94060),crossTraceDefaults:r(32727),calc:r(92171),scales:o.scales,defaultScale:o.defaultScale,getScale:o.get,isValidScale:o.isValid,hasColorscale:a.hasColorscale,extractOpts:a.extractOpts,extractScale:a.extractScale,flipScale:a.flipScale,makeColorScaleFunc:a.makeColorScaleFunc,makeColorScaleFuncFromTrace:a.makeColorScaleFuncFromTrace}},88290:function(e,t,r){var o=r(87241).extendFlat,a=r(97451),n=r(39257).scales,i="Note that `autocolorscale` must be true for this attribute to work.";e.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:n.Reds,editType:"calc",description:["Sets the default sequential colorscale for positive values.",i].join(" ")},sequentialminus:{valType:"colorscale",dflt:n.Blues,editType:"calc",description:["Sets the default sequential colorscale for negative values.",i].join(" ")},diverging:{valType:"colorscale",dflt:n.RdBu,editType:"calc",description:["Sets the default diverging colorscale.",i].join(" ")}},coloraxis:o({_isSubplotObj:!0,editType:"calc",description:[""].join(" ")},a("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}},34165:function(e,t,r){var o=r(47401),a=r(92704),n=r(88290),i=r(94060);e.exports=function(e,t){function r(r,a){return o.coerce(e,t,n,r,a)}r("colorscale.sequential"),r("colorscale.sequentialminus"),r("colorscale.diverging");var l,s,c=t._colorAxes;function d(e,t){return o.coerce(l,s,n.coloraxis,e,t)}for(var u in c){var f=c[u];if(f[0])l=e[u]||{},(s=a.newContainer(t,u,"coloraxis"))._name=u,i(l,s,t,d,{prefix:"",cLetter:"c"});else{for(var h=0;h<f[2].length;h++)f[2][h]();delete t._colorAxes[u]}}}},39257:function(e,t,r){var o=r(91771),a={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},n=a.RdBu;function i(e){var t=0;if(!Array.isArray(e)||e.length<2)return!1;if(!e[0]||!e[e.length-1])return!1;if(0!==+e[0][0]||1!==+e[e.length-1][0])return!1;for(var r=0;r<e.length;r++){var a=e[r];if(2!==a.length||+a[0]<t||!o(a[1]).isValid())return!1;t=+a[0]}return!0}e.exports={scales:a,defaultScale:n,get:function(e,t){if(t||(t=n),!e)return t;function r(){try{e=a[e]||JSON.parse(e)}catch(r){e=t}}return"string"===typeof e&&(r(),"string"===typeof e&&r()),i(e)?e:t},isValid:function(e){return void 0!==a[e]||i(e)}}},20474:function(e){e.exports=function(e,t,r,o,a){var n=(e-r)/(o-r),i=n+t/(o-r),l=(n+i)/2;return"left"===a||"bottom"===a?n:"center"===a||"middle"===a?l:"right"===a||"top"===a?i:n<2/3-l?n:i>4/3-l?i:l}},10065:function(e,t,r){var o=r(47401),a=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];e.exports=function(e,t,r,n){return e="left"===r?0:"center"===r?1:"right"===r?2:o.constrain(Math.floor(3*e),0,2),t="bottom"===n?0:"middle"===n?1:"top"===n?2:o.constrain(Math.floor(3*t),0,2),a[t][e]}},42910:function(e,t){t.selectMode=function(e){return"lasso"===e||"select"===e},t.drawMode=function(e){return"drawclosedpath"===e||"drawopenpath"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.openMode=function(e){return"drawline"===e||"drawopenpath"===e},t.rectMode=function(e){return"select"===e||"drawline"===e||"drawrect"===e||"drawcircle"===e},t.freeMode=function(e){return"lasso"===e||"drawclosedpath"===e||"drawopenpath"===e},t.selectingOrDrawing=function(e){return t.freeMode(e)||t.rectMode(e)}},52783:function(e,t,r){var o=r(17481),a=r(66982),n=r(473),i=r(47401).removeElement,l=r(56890),s=e.exports={};s.align=r(20474),s.getCursor=r(10065);var c=r(26948);function d(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}function u(e){return o(e.changedTouches?e.changedTouches[0]:e,document.body)}s.unhover=c.wrapped,s.unhoverRaw=c.raw,s.init=function(e){var t,r,o,c,f,h,p,y,v=e.gd,m=1,g=v._context.doubleClickDelay,x=e.element;v._mouseDownTime||(v._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=w,n?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=w,x.addEventListener("touchstart",w,{passive:!1})):x.ontouchstart=w;var b=e.clampFn||function(e,t,r){return Math.abs(e)<r&&(e=0),Math.abs(t)<r&&(t=0),[e,t]};function w(n){v._dragged=!1,v._dragging=!0;var i=u(n);t=i[0],r=i[1],p=n.target,h=n,y=2===n.buttons||n.ctrlKey,"undefined"===typeof n.clientX&&"undefined"===typeof n.clientY&&(n.clientX=t,n.clientY=r),(o=(new Date).getTime())-v._mouseDownTime<g?m+=1:(m=1,v._mouseDownTime=o),e.prepFn&&e.prepFn(n,t,r),a&&!y?(f=d()).style.cursor=window.getComputedStyle(x).cursor:a||(f=document,c=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(x).cursor),document.addEventListener("mouseup",_),document.addEventListener("touchend",_),!1!==e.dragmode&&(n.preventDefault(),document.addEventListener("mousemove",k),document.addEventListener("touchmove",k,{passive:!1}))}function k(o){o.preventDefault();var a=u(o),n=e.minDrag||l.MINDRAG,i=b(a[0]-t,a[1]-r,n),c=i[0],d=i[1];(c||d)&&(v._dragged=!0,s.unhover(v,o)),v._dragged&&e.moveFn&&!y&&(v._dragdata={element:x,dx:c,dy:d},e.moveFn(c,d))}function _(t){if(delete v._dragdata,!1!==e.dragmode&&(t.preventDefault(),document.removeEventListener("mousemove",k),document.removeEventListener("touchmove",k)),document.removeEventListener("mouseup",_),document.removeEventListener("touchend",_),a?i(f):c&&(f.documentElement.style.cursor=c,c=null),v._dragging){if(v._dragging=!1,(new Date).getTime()-v._mouseDownTime>g&&(m=Math.max(m-1,1)),v._dragged)e.doneFn&&e.doneFn();else if(e.clickFn&&e.clickFn(m,h),!y){var r;try{r=new MouseEvent("click",t)}catch(n){var o=u(t);(r=document.createEvent("MouseEvents")).initMouseEvent("click",t.bubbles,t.cancelable,t.view,t.detail,t.screenX,t.screenY,o[0],o[1],t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget)}p.dispatchEvent(r)}v._dragging=!1,v._dragged=!1}else v._dragged=!1}},s.coverSlip=d},26948:function(e,t,r){var o=r(19428),a=r(57257),n=r(38705).getGraphDiv,i=r(90260),l=e.exports={};l.wrapped=function(e,t,r){(e=n(e))._fullLayout&&a.clear(e._fullLayout._uid+i.HOVERID),l.raw(e,t,r)},l.raw=function(e,t){var r=e._fullLayout,a=e._hoverdata;t||(t={}),t.target&&!e._dragged&&!1===o.triggerHandler(e,"plotly_beforehover",t)||(r._hoverlayer.selectAll("g").remove(),r._hoverlayer.selectAll("line").remove(),r._hoverlayer.selectAll("circle").remove(),e._hoverdata=void 0,t.target&&a&&e.emit("plotly_unhover",{event:t,points:a}))}},34418:function(e,t){t.T={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style",description:["Sets the dash style of lines. Set to a dash type string","(*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*)","or a dash length list in px (eg *5px,10px,2px,2px*)."].join(" ")},t.k={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style",description:["Sets the shape of the pattern fill.","By default, no pattern is used for filling the area."].join(" ")},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style",description:["Determines whether `marker.color` should be used","as a default to `bgcolor` or a `fgcolor`."].join(" ")},bgcolor:{valType:"color",arrayOk:!0,editType:"style",description:["When there is no colorscale sets the color of background pattern fill.","Defaults to a `marker.color` background when `fillmode` is *overlay*.","Otherwise, defaults to a transparent background."].join(" ")},fgcolor:{valType:"color",arrayOk:!0,editType:"style",description:["When there is no colorscale sets the color of foreground pattern fill.","Defaults to a `marker.color` background when `fillmode` is *replace*.","Otherwise, defaults to dark grey or white","to increase contrast with the `bgcolor`."].join(" ")},fgopacity:{valType:"number",editType:"style",min:0,max:1,description:["Sets the opacity of the foreground pattern fill.","Defaults to a 0.5 when `fillmode` is *overlay*.","Otherwise, defaults to 1."].join(" ")},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style",description:["Sets the size of unit squares of the pattern fill in pixels,","which corresponds to the interval of repetition of the pattern."].join(" ")},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style",description:["Sets the solidity of the pattern fill.","Solidity is roughly the fraction of the area filled by the pattern.","Solidity of 0 shows only the background color without pattern","and solidty of 1 shows only the foreground color without pattern."].join(" ")},editType:"style",description:["Sets the pattern within the marker."].join(" ")}},41707:function(e,t,r){var o=r(62258),a=r(47401),n=a.numberFormat,i=r(83491),l=r(91771),s=r(62282),c=r(31454),d=r(47624),u=a.strTranslate,f=r(43995),h=r(6412),p=r(60482).LINE_SPACING,y=r(49158).DESELECTDIM,v=r(77638),m=r(69407),g=r(14904).appendArrayPointValue,x=e.exports={};x.font=function(e,t,r,o){a.isPlainObject(t)&&(o=t.color,r=t.size,t=t.family),t&&e.style("font-family",t),r+1&&e.style("font-size",r+"px"),o&&e.call(c.fill,o)},x.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)},x.setSize=function(e,t,r){e.attr("width",t).attr("height",r)},x.setRect=function(e,t,r,o,a){e.call(x.setPosition,t,r).call(x.setSize,o,a)},x.translatePoint=function(e,t,r,o){var a=r.c2p(e.x),n=o.c2p(e.y);return!!(i(a)&&i(n)&&t.node())&&("text"===t.node().nodeName?t.attr("x",a).attr("y",n):t.attr("transform",u(a,n)),!0)},x.translatePoints=function(e,t,r){e.each((function(e){var a=o.select(this);x.translatePoint(e,a,t,r)}))},x.hideOutsideRangePoint=function(e,t,r,o,a,n){t.attr("display",r.isPtWithinRange(e,a)&&o.isPtWithinRange(e,n)?null:"none")},x.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,a=t.yaxis;e.each((function(t){var n=t[0].trace,i=n.xcalendar,l=n.ycalendar,c=s.traceIs(n,"bar-like")?".bartext":".point,.textpoint";e.selectAll(c).each((function(e){x.hideOutsideRangePoint(e,o.select(this),r,a,i,l)}))}))}},x.crispRound=function(e,t,r){return t&&i(t)?e._context.staticPlot?t:t<1?1:Math.round(t):r||0},x.singleLineStyle=function(e,t,r,o,a){t.style("fill","none");var n=(((e||[])[0]||{}).trace||{}).line||{},i=r||n.width||0,l=a||n.dash||"";c.stroke(t,o||n.color),x.dashLine(t,l,i)},x.lineGroupStyle=function(e,t,r,a){e.style("fill","none").each((function(e){var n=(((e||[])[0]||{}).trace||{}).line||{},i=t||n.width||0,l=a||n.dash||"";o.select(this).call(c.stroke,r||n.color).call(x.dashLine,l,i)}))},x.dashLine=function(e,t,r){r=+r||0,t=x.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})},x.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return"solid"===e?e="":"dot"===e?e=r+"px,"+r+"px":"dash"===e?e=3*r+"px,"+3*r+"px":"longdash"===e?e=5*r+"px,"+5*r+"px":"dashdot"===e?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":"longdashdot"===e&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e},x.singleFillStyle=function(e){var t=(((o.select(e.node()).data()[0]||[])[0]||{}).trace||{}).fillcolor;t&&e.call(c.fill,t)},x.fillGroupStyle=function(e){e.style("stroke-width",0).each((function(e){var t=o.select(this);e[0].trace&&t.call(c.fill,e[0].trace.fillcolor)}))};var b=r(9746);x.symbolNames=[],x.symbolFuncs=[],x.symbolNeedLines={},x.symbolNoDot={},x.symbolNoFill={},x.symbolList=[],Object.keys(b).forEach((function(e){var t=b[e],r=t.n;x.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),x.symbolNames[r]=e,x.symbolFuncs[r]=t.f,t.needLine&&(x.symbolNeedLines[r]=!0),t.noDot?x.symbolNoDot[r]=!0:x.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(x.symbolNoFill[r]=!0)}));var w=x.symbolNames.length;function k(e,t){var r=e%100;return x.symbolFuncs[r](t)+(e>=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}x.symbolNumber=function(e){if(i(e))e=+e;else if("string"===typeof e){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),(e=x.symbolNames.indexOf(e))>=0&&(e+=t)}return e%100>=w||e>=400?0:Math.floor(Math.max(e,0))};var _={x1:1,x2:0,y1:0,y2:0},T={x1:0,x2:0,y1:1,y2:0},M=n("~f"),L={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:_},horizontalreversed:{node:"linearGradient",attrs:_,reversed:!0},vertical:{node:"linearGradient",attrs:T},verticalreversed:{node:"linearGradient",attrs:T,reversed:!0}};x.gradient=function(e,t,r,n,i,s){for(var d=i.length,u=L[n],f=new Array(d),h=0;h<d;h++)u.reversed?f[d-1-h]=[M(100*(1-i[h][0])),i[h][1]]:f[h]=[M(100*i[h][0]),i[h][1]];var p=t._fullLayout,y="g"+p._uid+"-"+r,v=p._defs.select(".gradients").selectAll("#"+y).data([n+f.join(";")],a.identity);v.exit().remove(),v.enter().append(u.node).each((function(){var e=o.select(this);u.attrs&&e.attr(u.attrs),e.attr("id",y);var t=e.selectAll("stop").data(f);t.exit().remove(),t.enter().append("stop"),t.each((function(e){var t=l(e[1]);o.select(this).attr({offset:e[0]+"%","stop-color":c.tinyRGB(t),"stop-opacity":t.getAlpha()})}))})),e.style(s,C(y,t)).style(s+"-opacity",null);var m=function(e){return"."+e.attr("class").replace(/\s/g,".")},g=m(o.select(e.node().parentNode))+">"+m(e);p._gradientUrlQueryParts[g]=1},x.pattern=function(e,t,r,n,i,l,s,d,u,f,h,p){var y="legend"===t;d&&("overlay"===u?(f=d,h=c.contrast(f)):(f=void 0,h=d));var v,m,g,x,b,w,k,_,T,M,L,S=r._fullLayout,A="p"+S._uid+"-"+n,j={};switch(i){case"/":v=l*Math.sqrt(2),m=l*Math.sqrt(2),w="path",j={d:g="M-"+v/4+","+m/4+"l"+v/2+",-"+m/2+"M0,"+m+"L"+v+",0M"+v/4*3+","+m/4*5+"l"+v/2+",-"+m/2,opacity:p,stroke:h,"stroke-width":(x=s*l)+"px"};break;case"\\":v=l*Math.sqrt(2),m=l*Math.sqrt(2),w="path",j={d:g="M"+v/4*3+",-"+m/4+"l"+v/2+","+m/2+"M0,0L"+v+","+m+"M-"+v/4+","+m/4*3+"l"+v/2+","+m/2,opacity:p,stroke:h,"stroke-width":(x=s*l)+"px"};break;case"x":v=l*Math.sqrt(2),m=l*Math.sqrt(2),g="M-"+v/4+","+m/4+"l"+v/2+",-"+m/2+"M0,"+m+"L"+v+",0M"+v/4*3+","+m/4*5+"l"+v/2+",-"+m/2+"M"+v/4*3+",-"+m/4+"l"+v/2+","+m/2+"M0,0L"+v+","+m+"M-"+v/4+","+m/4*3+"l"+v/2+","+m/2,x=l-l*Math.sqrt(1-s),w="path",j={d:g,opacity:p,stroke:h,"stroke-width":x+"px"};break;case"|":w="path",w="path",j={d:g="M"+(v=l)/2+",0L"+v/2+","+(m=l),opacity:p,stroke:h,"stroke-width":(x=s*l)+"px"};break;case"-":w="path",w="path",j={d:g="M0,"+(m=l)/2+"L"+(v=l)+","+m/2,opacity:p,stroke:h,"stroke-width":(x=s*l)+"px"};break;case"+":w="path",g="M"+(v=l)/2+",0L"+v/2+","+(m=l)+"M0,"+m/2+"L"+v+","+m/2,x=l-l*Math.sqrt(1-s),w="path",j={d:g,opacity:p,stroke:h,"stroke-width":x+"px"};break;case".":v=l,m=l,s<Math.PI/4?b=Math.sqrt(s*l*l/Math.PI):(k=s,_=Math.PI/4,T=1,M=l/2,L=l/Math.sqrt(2),b=M+(L-M)*(k-_)/(T-_)),w="circle",j={cx:v/2,cy:m/2,r:b,opacity:p,fill:h}}var F=[i||"noSh",f||"noBg",h||"noFg",l,s].join(";"),z=S._defs.select(".patterns").selectAll("#"+A).data([F],a.identity);z.exit().remove(),z.enter().append("pattern").each((function(){var e=o.select(this);if(e.attr({id:A,width:v+"px",height:m+"px",patternUnits:"userSpaceOnUse",patternTransform:y?"scale(0.8)":""}),f){var t=e.selectAll("rect").data([0]);t.exit().remove(),t.enter().append("rect").attr({width:v+"px",height:m+"px",fill:f})}var r=e.selectAll(w).data([0]);r.exit().remove(),r.enter().append(w).attr(j)})),e.style("fill",C(A,r)).style("fill-opacity",null),e.classed("pattern_filled",!0);var D="."+o.select(e.node().parentNode).attr("class").replace(/\s/g,".")+">.pattern_filled";S._patternUrlQueryParts[D]=1},x.initGradients=function(e){var t=e._fullLayout;a.ensureSingle(t._defs,"g","gradients").selectAll("linearGradient,radialGradient").remove(),t._gradientUrlQueryParts={}},x.initPatterns=function(e){var t=e._fullLayout;a.ensureSingle(t._defs,"g","patterns").selectAll("pattern").remove(),t._patternUrlQueryParts={}},x.getPatternAttr=function(e,t,r){return e&&a.isArrayOrTypedArray(e)?t<e.length?e[t]:r:e},x.pointStyle=function(e,t,r){if(e.size()){var a=x.makePointStyleFns(t);e.each((function(e){x.singlePointStyle(e,o.select(this),t,a,r)}))}},x.singlePointStyle=function(e,t,r,o,n){var i=r.marker,l=i.line;if(t.style("opacity",o.selectedOpacityFn?o.selectedOpacityFn(e):void 0===e.mo?i.opacity:e.mo),o.ms2mrc){var s;s="various"===e.ms||"various"===i.size?3:o.ms2mrc(e.ms),e.mrc=s,o.selectedSizeFn&&(s=e.mrc=o.selectedSizeFn(e));var d=x.symbolNumber(e.mx||i.symbol)||0;e.om=d%200>=100,t.attr("d",k(d,s))}var u,f,h,p=!1;if(e.so)h=l.outlierwidth,f=l.outliercolor,u=i.outliercolor;else{var y=(l||{}).width;h=(e.mlw+1||y+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,f="mlc"in e?e.mlcc=o.lineScale(e.mlc):a.isArrayOrTypedArray(l.color)?c.defaultLine:l.color,a.isArrayOrTypedArray(i.color)&&(u=c.defaultLine,p=!0),u="mc"in e?e.mcc=o.markerScale(e.mc):i.color||"rgba(0,0,0,0)",o.selectedColorFn&&(u=o.selectedColorFn(e))}if(e.om)t.call(c.stroke,u).style({"stroke-width":(h||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:h)+"px");var v=i.gradient,m=e.mgt;m?p=!0:m=v&&v.type,a.isArrayOrTypedArray(m)&&(m=m[0],L[m]||(m=0));var g=i.pattern,b=g&&x.getPatternAttr(g.shape,e.i,"");if(m&&"none"!==m){var w=e.mgc;w?p=!0:w=v.color;var _=r.uid;p&&(_+="-"+e.i),x.gradient(t,n,_,m,[[0,w],[1,u]],"fill")}else if(b){var T=x.getPatternAttr(g.bgcolor,e.i,null),M=x.getPatternAttr(g.fgcolor,e.i,null),S=g.fgopacity,A=x.getPatternAttr(g.size,e.i,8),j=x.getPatternAttr(g.solidity,e.i,.3),F=e.mcc||a.isArrayOrTypedArray(g.shape)||a.isArrayOrTypedArray(g.bgcolor)||a.isArrayOrTypedArray(g.size)||a.isArrayOrTypedArray(g.solidity),z=r.uid;F&&(z+="-"+e.i),x.pattern(t,"point",n,z,b,A,j,e.mcc,g.fillmode,T,M,S)}else c.fill(t,u);h&&c.stroke(t,f)}},x.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=x.tryColorscale(r,""),t.lineScale=x.tryColorscale(r,"line"),s.traceIs(e,"symbols")&&(t.ms2mrc=v.isBubble(e)?m(e):function(){return(r.size||6)/2}),e.selectedpoints&&a.extendFlat(t,x.makeSelectedPointStyleFns(e)),t},x.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},o=e.unselected||{},n=e.marker||{},i=r.marker||{},l=o.marker||{},c=n.opacity,d=i.opacity,u=l.opacity,f=void 0!==d,h=void 0!==u;(a.isArrayOrTypedArray(c)||f||h)&&(t.selectedOpacityFn=function(e){var t=void 0===e.mo?n.opacity:e.mo;return e.selected?f?d:t:h?u:y*t});var p=n.color,v=i.color,m=l.color;(v||m)&&(t.selectedColorFn=function(e){var t=e.mcc||p;return e.selected?v||t:m||t});var g=n.size,x=i.size,b=l.size,w=void 0!==x,k=void 0!==b;return s.traceIs(e,"symbols")&&(w||k)&&(t.selectedSizeFn=function(e){var t=e.mrc||g/2;return e.selected?w?x/2:t:k?b/2:t}),t},x.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},o=e.unselected||{},a=e.textfont||{},n=r.textfont||{},i=o.textfont||{},l=a.color,s=n.color,d=i.color;return t.selectedTextColorFn=function(e){var t=e.tc||l;return e.selected?s||t:d||(s?t:c.addOpacity(t,y))},t},x.selectedPointStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedPointStyleFns(t),a=t.marker||{},n=[];r.selectedOpacityFn&&n.push((function(e,t){e.style("opacity",r.selectedOpacityFn(t))})),r.selectedColorFn&&n.push((function(e,t){c.fill(e,r.selectedColorFn(t))})),r.selectedSizeFn&&n.push((function(e,t){var o=t.mx||a.symbol||0,n=r.selectedSizeFn(t);e.attr("d",k(x.symbolNumber(o),n)),t.mrc2=n})),n.length&&e.each((function(e){for(var t=o.select(this),r=0;r<n.length;r++)n[r](t,e)}))}},x.tryColorscale=function(e,t){var r=t?a.nestedProperty(e,t).get():e;if(r){var o=r.color;if((r.colorscale||r._colorAx)&&a.isArrayOrTypedArray(o))return d.makeColorScaleFuncFromTrace(r)}return a.identity};var S={start:1,end:-1,middle:0,bottom:1,top:-1};function A(e,t,r,a){var n=o.select(e.node().parentNode),i=-1!==t.indexOf("top")?"top":-1!==t.indexOf("bottom")?"bottom":"middle",l=-1!==t.indexOf("left")?"end":-1!==t.indexOf("right")?"start":"middle",s=a?a/.8+1:0,c=(f.lineCount(e)-1)*p+1,d=S[l]*s,h=.75*r+S[i]*s+(S[i]-1)*c*r/2;e.attr("text-anchor",l),n.attr("transform",u(d,h))}function j(e,t){var r=e.ts||t.textfont.size;return i(r)&&r>0?r:0}x.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=x.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var l=t.texttemplate,s=r._fullLayout;e.each((function(e){var i=o.select(this),c=l?a.extractOption(e,t,"txt","texttemplate"):a.extractOption(e,t,"tx","text");if(c||0===c){if(l){var d=t._module.formatLabels,u=d?d(e,t,s):{},h={};g(h,t,e.i);var p=t._meta||{};c=a.texttemplateString(c,u,s._d3locale,h,e,p)}var y=e.tp||t.textposition,v=j(e,t),m=n?n(e):e.tc||t.textfont.color;i.call(x.font,e.tf||t.textfont.family,v,m).text(c).call(f.convertToTspans,r).call(A,y,v,e.mrc)}else i.remove()}))}},x.selectedTextStyle=function(e,t){if(e.size()&&t.selectedpoints){var r=x.makeSelectedTextStyleFns(t);e.each((function(e){var a=o.select(this),n=r.selectedTextColorFn(e),i=e.tp||t.textposition,l=j(e,t);c.fill(a,n),A(a,i,l,e.mrc2||e.mrc)}))}};function F(e,t,r,a){var n=e[0]-t[0],i=e[1]-t[1],l=r[0]-t[0],s=r[1]-t[1],c=Math.pow(n*n+i*i,.25),d=Math.pow(l*l+s*s,.25),u=(d*d*n-c*c*l)*a,f=(d*d*i-c*c*s)*a,h=3*d*(c+d),p=3*c*(c+d);return[[o.round(t[0]+(h&&u/h),2),o.round(t[1]+(h&&f/h),2)],[o.round(t[0]-(p&&u/p),2),o.round(t[1]-(p&&f/p),2)]]}x.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r,o="M"+e[0],a=[];for(r=1;r<e.length-1;r++)a.push(F(e[r-1],e[r],e[r+1],t));for(o+="Q"+a[0][0]+" "+e[1],r=2;r<e.length-1;r++)o+="C"+a[r-2][1]+" "+a[r-1][0]+" "+e[r];return o+="Q"+a[e.length-3][1]+" "+e[e.length-1]},x.smoothclosed=function(e,t){if(e.length<3)return"M"+e.join("L")+"Z";var r,o="M"+e[0],a=e.length-1,n=[F(e[a],e[0],e[1],t)];for(r=1;r<a;r++)n.push(F(e[r-1],e[r],e[r+1],t));for(n.push(F(e[a-1],e[a],e[0],t)),r=1;r<=a;r++)o+="C"+n[r-1][1]+" "+n[r][0]+" "+e[r];return o+="C"+n[a][1]+" "+n[0][0]+" "+e[0]+"Z"};var z={hv:function(e,t){return"H"+o.round(t[0],2)+"V"+o.round(t[1],2)},vh:function(e,t){return"V"+o.round(t[1],2)+"H"+o.round(t[0],2)},hvh:function(e,t){return"H"+o.round((e[0]+t[0])/2,2)+"V"+o.round(t[1],2)+"H"+o.round(t[0],2)},vhv:function(e,t){return"V"+o.round((e[1]+t[1])/2,2)+"H"+o.round(t[0],2)+"V"+o.round(t[1],2)}},D=function(e,t){return"L"+o.round(t[0],2)+","+o.round(t[1],2)};x.steps=function(e){var t=z[e]||D;return function(e){for(var r="M"+o.round(e[0][0],2)+","+o.round(e[0][1],2),a=1;a<e.length;a++)r+=t(e[a-1],e[a]);return r}},x.makeTester=function(){var e=a.ensureSingleById(o.select("body"),"svg","js-plotly-tester",(function(e){e.attr(h.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})})),t=a.ensureSingle(e,"path","js-reference-point",(function(e){e.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})}));x.tester=e,x.testref=t},x.savedBBoxes={};var O=0;function P(e){var t=e.getAttribute("data-unformatted");if(null!==t)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}function C(e,t){if(!e)return null;var r=t._context,o=r._exportedPlot?"":r._baseUrl||"";return o?"url('"+o+"#"+e+"')":"url(#"+e+")"}x.bBox=function(e,t,r){var n,i,l;if(r||(r=P(e)),r){if(n=x.savedBBoxes[r])return a.extendFlat({},n)}else if(1===e.childNodes.length){var s=e.childNodes[0];if(r=P(s)){var c=+s.getAttribute("x")||0,d=+s.getAttribute("y")||0,u=s.getAttribute("transform");if(!u){var h=x.bBox(s,!1,r);return c&&(h.left+=c,h.right+=c),d&&(h.top+=d,h.bottom+=d),h}if(r+="~"+c+"~"+d+"~"+u,n=x.savedBBoxes[r])return a.extendFlat({},n)}}t?i=e:(l=x.tester.node(),i=e.cloneNode(!0),l.appendChild(i)),o.select(i).attr("transform",null).call(f.positionText,0,0);var p=i.getBoundingClientRect(),y=x.testref.node().getBoundingClientRect();t||l.removeChild(i);var v={height:p.height,width:p.width,left:p.left-y.left,top:p.top-y.top,right:p.right-y.left,bottom:p.bottom-y.top};return O>=1e4&&(x.savedBBoxes={},O=0),r&&(x.savedBBoxes[r]=v),O++,a.extendFlat({},v)},x.setClipUrl=function(e,t,r){e.attr("clip-path",C(t,r))},x.getTranslate=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||0,y:+t[1]||0}},x.setTranslate=function(e,t,r){var o=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",n=e[o]("transform")||"";return t=t||0,r=r||0,n=n.replace(/(\btranslate\(.*?\);?)/,"").trim(),n=(n+=u(t,r)).trim(),e[a]("transform",n),n},x.getScale=function(e){var t=(e[e.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(e,t,r){return[t,r].join(" ")})).split(" ");return{x:+t[0]||1,y:+t[1]||1}},x.setScale=function(e,t,r){var o=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",n=e[o]("transform")||"";return t=t||1,r=r||1,n=n.replace(/(\bscale\(.*?\);?)/,"").trim(),n=(n+="scale("+t+","+r+")").trim(),e[a]("transform",n),n};var I=/\s*sc.*/;x.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,e){var o=1===t&&1===r?"":"scale("+t+","+r+")";e.each((function(){var e=(this.getAttribute("transform")||"").replace(I,"");e=(e+=o).trim(),this.setAttribute("transform",e)}))}};var R=/translate\([^)]*\)\s*$/;x.setTextPointsScale=function(e,t,r){e&&e.each((function(){var e,a=o.select(this),n=a.select("text");if(n.node()){var i=parseFloat(n.attr("x")||0),l=parseFloat(n.attr("y")||0),s=(a.attr("transform")||"").match(R);e=1===t&&1===r?[]:[u(i,l),"scale("+t+","+r+")",u(-i,-l)],s&&e.push(s),a.attr("transform",e.join(""))}}))}},9746:function(e,t,r){var o=r(62258);e.exports={circle:{n:0,f:function(e){var t=o.round(e,2);return"M"+t+",0A"+t+","+t+" 0 1,1 0,-"+t+"A"+t+","+t+" 0 0,1 "+t+",0Z"}},square:{n:1,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"H-"+t+"V-"+t+"H"+t+"Z"}},diamond:{n:2,f:function(e){var t=o.round(1.3*e,2);return"M"+t+",0L0,"+t+"L-"+t+",0L0,-"+t+"Z"}},cross:{n:3,f:function(e){var t=o.round(.4*e,2),r=o.round(1.2*e,2);return"M"+r+","+t+"H"+t+"V"+r+"H-"+t+"V"+t+"H-"+r+"V-"+t+"H-"+t+"V-"+r+"H"+t+"V-"+t+"H"+r+"Z"}},x:{n:4,f:function(e){var t=o.round(.8*e/Math.sqrt(2),2),r="l"+t+","+t,a="l"+t+",-"+t,n="l-"+t+",-"+t,i="l-"+t+","+t;return"M0,"+t+r+a+n+a+n+i+n+i+r+i+r+"Z"}},"triangle-up":{n:5,f:function(e){var t=o.round(2*e/Math.sqrt(3),2);return"M-"+t+","+o.round(e/2,2)+"H"+t+"L0,-"+o.round(e,2)+"Z"}},"triangle-down":{n:6,f:function(e){var t=o.round(2*e/Math.sqrt(3),2);return"M-"+t+",-"+o.round(e/2,2)+"H"+t+"L0,"+o.round(e,2)+"Z"}},"triangle-left":{n:7,f:function(e){var t=o.round(2*e/Math.sqrt(3),2);return"M"+o.round(e/2,2)+",-"+t+"V"+t+"L-"+o.round(e,2)+",0Z"}},"triangle-right":{n:8,f:function(e){var t=o.round(2*e/Math.sqrt(3),2);return"M-"+o.round(e/2,2)+",-"+t+"V"+t+"L"+o.round(e,2)+",0Z"}},"triangle-ne":{n:9,f:function(e){var t=o.round(.6*e,2),r=o.round(1.2*e,2);return"M-"+r+",-"+t+"H"+t+"V"+r+"Z"}},"triangle-se":{n:10,f:function(e){var t=o.round(.6*e,2),r=o.round(1.2*e,2);return"M"+t+",-"+r+"V"+t+"H-"+r+"Z"}},"triangle-sw":{n:11,f:function(e){var t=o.round(.6*e,2),r=o.round(1.2*e,2);return"M"+r+","+t+"H-"+t+"V-"+r+"Z"}},"triangle-nw":{n:12,f:function(e){var t=o.round(.6*e,2),r=o.round(1.2*e,2);return"M-"+t+","+r+"V-"+t+"H"+r+"Z"}},pentagon:{n:13,f:function(e){var t=o.round(.951*e,2),r=o.round(.588*e,2),a=o.round(-e,2),n=o.round(-.309*e,2);return"M"+t+","+n+"L"+r+","+o.round(.809*e,2)+"H-"+r+"L-"+t+","+n+"L0,"+a+"Z"}},hexagon:{n:14,f:function(e){var t=o.round(e,2),r=o.round(e/2,2),a=o.round(e*Math.sqrt(3)/2,2);return"M"+a+",-"+r+"V"+r+"L0,"+t+"L-"+a+","+r+"V-"+r+"L0,-"+t+"Z"}},hexagon2:{n:15,f:function(e){var t=o.round(e,2),r=o.round(e/2,2),a=o.round(e*Math.sqrt(3)/2,2);return"M-"+r+","+a+"H"+r+"L"+t+",0L"+r+",-"+a+"H-"+r+"L-"+t+",0Z"}},octagon:{n:16,f:function(e){var t=o.round(.924*e,2),r=o.round(.383*e,2);return"M-"+r+",-"+t+"H"+r+"L"+t+",-"+r+"V"+r+"L"+r+","+t+"H-"+r+"L-"+t+","+r+"V-"+r+"Z"}},star:{n:17,f:function(e){var t=1.4*e,r=o.round(.225*t,2),a=o.round(.951*t,2),n=o.round(.363*t,2),i=o.round(.588*t,2),l=o.round(-t,2),s=o.round(-.309*t,2),c=o.round(.118*t,2),d=o.round(.809*t,2);return"M"+r+","+s+"H"+a+"L"+n+","+c+"L"+i+","+d+"L0,"+o.round(.382*t,2)+"L-"+i+","+d+"L-"+n+","+c+"L-"+a+","+s+"H-"+r+"L0,"+l+"Z"}},hexagram:{n:18,f:function(e){var t=o.round(.66*e,2),r=o.round(.38*e,2),a=o.round(.76*e,2);return"M-"+a+",0l-"+r+",-"+t+"h"+a+"l"+r+",-"+t+"l"+r+","+t+"h"+a+"l-"+r+","+t+"l"+r+","+t+"h-"+a+"l-"+r+","+t+"l-"+r+",-"+t+"h-"+a+"Z"}},"star-triangle-up":{n:19,f:function(e){var t=o.round(e*Math.sqrt(3)*.8,2),r=o.round(.8*e,2),a=o.round(1.6*e,2),n=o.round(4*e,2),i="A "+n+","+n+" 0 0 1 ";return"M-"+t+","+r+i+t+","+r+i+"0,-"+a+i+"-"+t+","+r+"Z"}},"star-triangle-down":{n:20,f:function(e){var t=o.round(e*Math.sqrt(3)*.8,2),r=o.round(.8*e,2),a=o.round(1.6*e,2),n=o.round(4*e,2),i="A "+n+","+n+" 0 0 1 ";return"M"+t+",-"+r+i+"-"+t+",-"+r+i+"0,"+a+i+t+",-"+r+"Z"}},"star-square":{n:21,f:function(e){var t=o.round(1.1*e,2),r=o.round(2*e,2),a="A "+r+","+r+" 0 0 1 ";return"M-"+t+",-"+t+a+"-"+t+","+t+a+t+","+t+a+t+",-"+t+a+"-"+t+",-"+t+"Z"}},"star-diamond":{n:22,f:function(e){var t=o.round(1.4*e,2),r=o.round(1.9*e,2),a="A "+r+","+r+" 0 0 1 ";return"M-"+t+",0"+a+"0,"+t+a+t+",0"+a+"0,-"+t+a+"-"+t+",0Z"}},"diamond-tall":{n:23,f:function(e){var t=o.round(.7*e,2),r=o.round(1.4*e,2);return"M0,"+r+"L"+t+",0L0,-"+r+"L-"+t+",0Z"}},"diamond-wide":{n:24,f:function(e){var t=o.round(1.4*e,2),r=o.round(.7*e,2);return"M0,"+r+"L"+t+",0L0,-"+r+"L-"+t+",0Z"}},hourglass:{n:25,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"H-"+t+"L"+t+",-"+t+"H-"+t+"Z"},noDot:!0},bowtie:{n:26,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"V-"+t+"L-"+t+","+t+"V-"+t+"Z"},noDot:!0},"circle-cross":{n:27,f:function(e){var t=o.round(e,2);return"M0,"+t+"V-"+t+"M"+t+",0H-"+t+"M"+t+",0A"+t+","+t+" 0 1,1 0,-"+t+"A"+t+","+t+" 0 0,1 "+t+",0Z"},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e){var t=o.round(e,2),r=o.round(e/Math.sqrt(2),2);return"M"+r+","+r+"L-"+r+",-"+r+"M"+r+",-"+r+"L-"+r+","+r+"M"+t+",0A"+t+","+t+" 0 1,1 0,-"+t+"A"+t+","+t+" 0 0,1 "+t+",0Z"},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e){var t=o.round(e,2);return"M0,"+t+"V-"+t+"M"+t+",0H-"+t+"M"+t+","+t+"H-"+t+"V-"+t+"H"+t+"Z"},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"L-"+t+",-"+t+"M"+t+",-"+t+"L-"+t+","+t+"M"+t+","+t+"H-"+t+"V-"+t+"H"+t+"Z"},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e){var t=o.round(1.3*e,2);return"M"+t+",0L0,"+t+"L-"+t+",0L0,-"+t+"ZM0,-"+t+"V"+t+"M-"+t+",0H"+t},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e){var t=o.round(1.3*e,2),r=o.round(.65*e,2);return"M"+t+",0L0,"+t+"L-"+t+",0L0,-"+t+"ZM-"+r+",-"+r+"L"+r+","+r+"M-"+r+","+r+"L"+r+",-"+r},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e){var t=o.round(1.4*e,2);return"M0,"+t+"V-"+t+"M"+t+",0H-"+t},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"L-"+t+",-"+t+"M"+t+",-"+t+"L-"+t+","+t},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e){var t=o.round(1.2*e,2),r=o.round(.85*e,2);return"M0,"+t+"V-"+t+"M"+t+",0H-"+t+"M"+r+","+r+"L-"+r+",-"+r+"M"+r+",-"+r+"L-"+r+","+r},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e){var t=o.round(e/2,2),r=o.round(e,2);return"M"+t+","+r+"V-"+r+"m-"+r+",0V"+r+"M"+r+","+t+"H-"+r+"m0,-"+r+"H"+r},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e){var t=o.round(1.2*e,2),r=o.round(1.6*e,2),a=o.round(.8*e,2);return"M-"+t+","+a+"L0,0M"+t+","+a+"L0,0M0,-"+r+"L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e){var t=o.round(1.2*e,2),r=o.round(1.6*e,2),a=o.round(.8*e,2);return"M-"+t+",-"+a+"L0,0M"+t+",-"+a+"L0,0M0,"+r+"L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e){var t=o.round(1.2*e,2),r=o.round(1.6*e,2),a=o.round(.8*e,2);return"M"+a+","+t+"L0,0M"+a+",-"+t+"L0,0M-"+r+",0L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e){var t=o.round(1.2*e,2),r=o.round(1.6*e,2),a=o.round(.8*e,2);return"M-"+a+","+t+"L0,0M-"+a+",-"+t+"L0,0M"+r+",0L0,0"},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e){var t=o.round(1.4*e,2);return"M"+t+",0H-"+t},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e){var t=o.round(1.4*e,2);return"M0,"+t+"V-"+t},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e){var t=o.round(e,2);return"M"+t+",-"+t+"L-"+t+","+t},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e){var t=o.round(e,2);return"M"+t+","+t+"L-"+t+",-"+t},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e){var t=o.round(e,2);return"M0,0L-"+t+","+o.round(2*e,2)+"H"+t+"Z"},noDot:!0},"arrow-down":{n:46,f:function(e){var t=o.round(e,2);return"M0,0L-"+t+",-"+o.round(2*e,2)+"H"+t+"Z"},noDot:!0},"arrow-left":{n:47,f:function(e){var t=o.round(2*e,2),r=o.round(e,2);return"M0,0L"+t+",-"+r+"V"+r+"Z"},noDot:!0},"arrow-right":{n:48,f:function(e){var t=o.round(2*e,2),r=o.round(e,2);return"M0,0L-"+t+",-"+r+"V"+r+"Z"},noDot:!0},"arrow-bar-up":{n:49,f:function(e){var t=o.round(e,2);return"M-"+t+",0H"+t+"M0,0L-"+t+","+o.round(2*e,2)+"H"+t+"Z"},needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e){var t=o.round(e,2);return"M-"+t+",0H"+t+"M0,0L-"+t+",-"+o.round(2*e,2)+"H"+t+"Z"},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e){var t=o.round(2*e,2),r=o.round(e,2);return"M0,-"+r+"V"+r+"M0,0L"+t+",-"+r+"V"+r+"Z"},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e){var t=o.round(2*e,2),r=o.round(e,2);return"M0,-"+r+"V"+r+"M0,0L-"+t+",-"+r+"V"+r+"Z"},needLine:!0,noDot:!0}}},17504:function(e){e.exports={visible:{valType:"boolean",editType:"calc",description:["Determines whether or not this set of error bars is visible."].join(" ")},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc",description:["Determines the rule used to generate the error bars.","If *constant`, the bar lengths are of a constant value.","Set this constant in `value`.","If *percent*, the bar lengths correspond to a percentage of","underlying data. Set this percentage in `value`.","If *sqrt*, the bar lengths correspond to the square of the","underlying data.","If *data*, the bar lengths are set with data set `array`."].join(" ")},symmetric:{valType:"boolean",editType:"calc",description:["Determines whether or not the error bars have the same length","in both direction","(top/bottom for vertical bars, left/right for horizontal bars."].join(" ")},array:{valType:"data_array",editType:"calc",description:["Sets the data corresponding the length of each error bar.","Values are plotted relative to the underlying data."].join(" ")},arrayminus:{valType:"data_array",editType:"calc",description:["Sets the data corresponding the length of each error bar in the","bottom (left) direction for vertical (horizontal) bars","Values are plotted relative to the underlying data."].join(" ")},value:{valType:"number",min:0,dflt:10,editType:"calc",description:["Sets the value of either the percentage","(if `type` is set to *percent*) or the constant","(if `type` is set to *constant*) corresponding to the lengths of","the error bars."].join(" ")},valueminus:{valType:"number",min:0,dflt:10,editType:"calc",description:["Sets the value of either the percentage","(if `type` is set to *percent*) or the constant","(if `type` is set to *constant*) corresponding to the lengths of","the error bars in the","bottom (left) direction for vertical (horizontal) bars"].join(" ")},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style",description:"Sets the stoke color of the error bars."},thickness:{valType:"number",min:0,dflt:2,editType:"style",description:"Sets the thickness (in px) of the error bars."},width:{valType:"number",min:0,editType:"plot",description:["Sets the width (in px) of the cross-bar at both ends","of the error bars."].join(" ")},editType:"calc",_deprecated:{opacity:{valType:"number",editType:"style",description:["Obsolete.","Use the alpha channel in error bar `color` to set the opacity."].join(" ")}}}},23728:function(e,t,r){var o=r(83491),a=r(62282),n=r(37762),i=r(47401),l=r(20837);function s(e,t,r,a){var s=t["error_"+a]||{},c=[];if(s.visible&&-1!==["linear","log"].indexOf(r.type)){for(var d=l(s),u=0;u<e.length;u++){var f=e[u],h=f.i;if(void 0===h)h=u;else if(null===h)continue;var p=f[a];if(o(r.c2l(p))){var y=d(p,h);if(o(y[0])&&o(y[1])){var v=f[a+"s"]=p-y[0],m=f[a+"h"]=p+y[1];c.push(v,m)}}}var g=r._id,x=t._extremes[g],b=n.findExtremes(r,c,i.extendFlat({tozero:x.opts.tozero},{padded:!0}));x.min=x.min.concat(b.min),x.max=x.max.concat(b.max)}}e.exports=function(e){for(var t=e.calcdata,r=0;r<t.length;r++){var o=t[r],i=o[0].trace;if(!0===i.visible&&a.traceIs(i,"errorBarsOK")){var l=n.getFromId(e,i.xaxis),c=n.getFromId(e,i.yaxis);s(o,i,l,"x"),s(o,i,c,"y")}}}},20837:function(e){function t(e,t){return"percent"===e?function(e){return Math.abs(e*t/100)}:"constant"===e?function(){return Math.abs(t)}:"sqrt"===e?function(e){return Math.sqrt(Math.abs(e))}:void 0}e.exports=function(e){var r=e.type,o=e.symmetric;if("data"===r){var a=e.array||[];if(o)return function(e,t){var r=+a[t];return[r,r]};var n=e.arrayminus||[];return function(e,t){var r=+a[t],o=+n[t];return isNaN(r)&&isNaN(o)?[NaN,NaN]:[o||0,r||0]}}var i=t(r,e.value),l=t(r,e.valueminus);return o||void 0===e.valueminus?function(e){var t=i(e);return[t,t]}:function(e){return[l(e),i(e)]}}},73079:function(e,t,r){var o=r(83491),a=r(62282),n=r(47401),i=r(92704),l=r(17504);e.exports=function(e,t,r,s){var c="error_"+s.axis,d=i.newContainer(t,c),u=e[c]||{};function f(e,t){return n.coerce(u,d,l,e,t)}if(!1!==f("visible",void 0!==u.array||void 0!==u.value||"sqrt"===u.type)){var h=f("type","array"in u?"data":"percent"),p=!0;"sqrt"!==h&&(p=f("symmetric",!(("data"===h?"arrayminus":"valueminus")in u))),"data"===h?(f("array"),f("traceref"),p||(f("arrayminus"),f("tracerefminus"))):"percent"!==h&&"constant"!==h||(f("value"),p||f("valueminus"));var y="copy_"+s.inherit+"style";if(s.inherit)(t["error_"+s.inherit]||{}).visible&&f(y,!(u.color||o(u.thickness)||o(u.width)));s.inherit&&d[y]||(f("color",r),f("thickness"),f("width",a.traceIs(t,"gl3d")?0:4))}}},63709:function(e,t,r){var o=r(47401),a=r(17342).overrideAll,n=r(17504),i={error_x:o.extendFlat({},n),error_y:o.extendFlat({},n)};delete i.error_x.copy_zstyle,delete i.error_y.copy_zstyle,delete i.error_y.copy_ystyle;var l={error_x:o.extendFlat({},n),error_y:o.extendFlat({},n),error_z:o.extendFlat({},n)};delete l.error_x.copy_ystyle,delete l.error_y.copy_ystyle,delete l.error_z.copy_ystyle,delete l.error_z.copy_zstyle,e.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:i,bar:i,histogram:i,scatter3d:a(l,"calc","nested"),scattergl:a(i,"calc","nested")}},supplyDefaults:r(73079),calc:r(23728),makeComputeError:r(20837),plot:r(90306),style:r(26208),hoverInfo:function(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys));(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}}},90306:function(e,t,r){var o=r(62258),a=r(83491),n=r(41707),i=r(77638);e.exports=function(e,t,r,l){var s=r.xaxis,c=r.yaxis,d=l&&l.duration>0;t.each((function(t){var u,f=t[0].trace,h=f.error_x||{},p=f.error_y||{};f.ids&&(u=function(e){return e.id});var y=i.hasMarkers(f)&&f.marker.maxdisplayed>0;p.visible||h.visible||(t=[]);var v=o.select(this).selectAll("g.errorbar").data(t,u);if(v.exit().remove(),t.length){h.visible||v.selectAll("path.xerror").remove(),p.visible||v.selectAll("path.yerror").remove(),v.style("opacity",1);var m=v.enter().append("g").classed("errorbar",!0);d&&m.style("opacity",0).transition().duration(l.duration).style("opacity",1),n.setClipUrl(v,r.layerClipId,e),v.each((function(e){var t=o.select(this),r=function(e,t,r){var o={x:t.c2p(e.x),y:r.c2p(e.y)};void 0!==e.yh&&(o.yh=r.c2p(e.yh),o.ys=r.c2p(e.ys),a(o.ys)||(o.noYS=!0,o.ys=r.c2p(e.ys,!0)));void 0!==e.xh&&(o.xh=t.c2p(e.xh),o.xs=t.c2p(e.xs),a(o.xs)||(o.noXS=!0,o.xs=t.c2p(e.xs,!0)));return o}(e,s,c);if(!y||e.vis){var n,i=t.select("path.yerror");if(p.visible&&a(r.x)&&a(r.yh)&&a(r.ys)){var u=p.width;n="M"+(r.x-u)+","+r.yh+"h"+2*u+"m-"+u+",0V"+r.ys,r.noYS||(n+="m-"+u+",0h"+2*u),!i.size()?i=t.append("path").style("vector-effect","non-scaling-stroke").classed("yerror",!0):d&&(i=i.transition().duration(l.duration).ease(l.easing)),i.attr("d",n)}else i.remove();var f=t.select("path.xerror");if(h.visible&&a(r.y)&&a(r.xh)&&a(r.xs)){var v=(h.copy_ystyle?p:h).width;n="M"+r.xh+","+(r.y-v)+"v"+2*v+"m0,-"+v+"H"+r.xs,r.noXS||(n+="m0,-"+v+"v"+2*v),!f.size()?f=t.append("path").style("vector-effect","non-scaling-stroke").classed("xerror",!0):d&&(f=f.transition().duration(l.duration).ease(l.easing)),f.attr("d",n)}else f.remove()}}))}}))}},26208:function(e,t,r){var o=r(62258),a=r(31454);e.exports=function(e){e.each((function(e){var t=e[0].trace,r=t.error_y||{},n=t.error_x||{},i=o.select(this);i.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(a.stroke,r.color),n.copy_ystyle&&(n=r),i.selectAll("path.xerror").style("stroke-width",n.thickness+"px").call(a.stroke,n.color)}))}}}]);